Envia mensagens para o serviço mensageiro do windows facilmente
Publicado por José Roberto 13/06/2007
[ Hits: 8.621 ]
Homepage: http://www.thesims2br.com/
Download shnetsend_source.tar.gz
Este script permite que você envie mensagens para usuários Windows com o serviço mensageiro ativdo.
Exemplos:
netsend fulando 'Oi!'
netsend fulano eu 'Oi!'
netsend '192.168.253.2' fulano eu 'Oi!'
netsend (vai ser questinado com janelas se tiver Xdialog instalado)
netsend --text-only (força a não usar janelas, são 2 "-" )
netsend moo
netsend -v moo
netsend -vv moo (vai pondo v :P )
Um pacote deb destá disponível em:
http://www.4shared.com/dir/2922728/45e60dbc/Softwares.html
#!/bin/bash
function usage(){
echo -e "\e[39;1mUsage:\e[m $0 'netbios name' 'message'";
echo " $0 'netbios name' 'from name' 'message'";
echo " $0 'ip address' 'netbios name' 'from name' 'message'";
echo " $0";
echo " $0 --text-only";
echo
echo -e "\e[39;2mIf nothing is given you will be prompted.";
echo "If you are having problems when being prompted try the option --text-only";
echo -e "This requires the software Xdialog installed on your system\e[m";
exit;
}
function xdial(){
if [ "$Xdialog" -eq "1" ]; then
case "$2" in
"input") Xdialog --title "$1" --center --inputbox "$3" 0 0 2> ~/.netsendtmp/last_dialog ; last_dialog=`cat ~/.netsendtmp/last_dialog`; rm ~/.netsendtmp/last_dialog ;;
"msg") Xdialog --title "$1" --center --stdout --msgbox "$3" 0 0 ;;
"info") Xdialog --title "$1" --center --stdout --infobox "$3" 0 0 "$5" ;;
*) echo -e "\e[31;1mAlerta: Situação inesperada em xdial()\a\e[m" ;;
esac
elif [ ! -z "$4" ]; then
case "$2" in
"input") echo -e "$4"; read last_dialog ;;
"msg") echo -e "$4" ;;
"info") echo -e "$4";;
*) echo -e "\e[31;1mAlerta: Situação inesperada em xdial()\a\e[m" ;;
esac
fi;
}
function version(){
echo "Version 1.0.0";exit;
}
# mooooooo
moo(){ echo -e "$1"; exit; }
if [ "$1" = "moo" -a -z "$2" ]; then
if [ -f ~/.netsendtmp/moo ]; then rm ~/.netsendtmp/moo ; fi;
moo "Ainda não é pascoa ;)";
fi;
if [ "$2" = "moo" ]; then
case "$1" in
"-v") moo "Se quiser Ovos de Páscoa vá para um super-mercado!" ;;
"-vv") moo "Porque não pede uma moeda pra fada dos dentes?" ;;
"-vvv") moo "ahnn, não tem mais dente de leite? =/" ;;
"-vvvv") moo "então... você é inteligente?" ;;
"-vvvvv")
echo -e "é??? Então quero ver!\nQuanto é (2x10¹²):4";
read moo;
if [ "$moo" -eq "500000000000" ]; then
echo "1" >> ~/.netsendtmp/moo;
moo "Não é que tu é inteligente mesmo! Usou calculadora cinteifica né??? HAHAHAHA\nPode ir ao próximo estagio ;D";
else
moo "HAHAHAHA eu sabia que você não ia acertar! ;D\nTava na cara!";
fi
;;
"-vvvvvv")
if [ -f ~/.netsendtmp/moo ]; then moo=`cat ~/.netsendtmp/moo`; else moo="0"; fi;
if [ "$moo" -eq "1" ];then
moo "como você... como você.... como você é inteligente, lá vai o seu prêmio! ;D\n\n(o)(o)\n ) (\n( v )";
else
moo "estagio apenas para inteligentes ;D";
fi
;;
"-vvvvvvv")
if [ -f ~/.netsendtmp/moo ]; then moo "O que foi aquilo????\nUm ser venusiano olhando pra você!! O que você viu afinal? O.o'"
else moo "Para continuar você precisa acertar o calculo ;)";
fi;
;;
esac
fi;
moo=`echo "$1" | grep '^-v\+'`;
if [ ! -z "$moo" ]; then version; fi;
# mooooooo
if [ "$1" = '--version' -o "$1" = '-v' ]; then
version;
fi;
if [ -e /usr/bin/Xdialog -a -x /usr/bin/Xdialog -a "$1" != "--text-only" ]; then
Xdialog="1";
else
Xdialog="0";
fi;
x="0";
if [ "$#" -lt "2" ]; then
if [ "$1" = '--text-only' -o -z "$1" ]; then
if [ ! -d ~/.netsendtmp ]; then
mkdir ~/.netsendtmp
fi
x="1";
xdial "Enviar mensagem" "input" "Digite o nome do computador no campo abaixo" "\e[33;1mDigite o nome do computador no campo abaixo\e[m";
netbios_name="$last_dialog";
if [ -z "$netbios_name" ]; then
xdial "Enviar mensagem" "msg" "Você não digitou o nome do computador" "\e[31;1m\aVocê não digitou o nome do computador\e[m";
exit;
fi;
xdial "Enviar mensagem" "info" "Localizando o destino...." "\e[30;1mLocalizando o destino....\e[m" 3000 &
netbios_ip=`nmblookup $netbios_name |grep "<"|cut -f 1 -d " "`
if [ -z "$netbios_ip" ]; then
xdial "Enviar mensagem" "msg" "O destino não pode ser localizado com o endereço $netbios_name" "\e[31;1m\aO destino não pode ser localizado com o endereço \e[32;1m$netbios_name\e[m"
exit;
fi;
xdial "Enviar mensagem" "input" "Digite a mensagem no campo abaixo" "\e[33;1mDigite a mensagem no campo abaixo\e[m"
message="$last_dialog";
if [ -z "$message" ]; then
xdial "Enviar mensagem" "msg" "Você não digitou a mensagem" "\e[31;1m\aVocê não digitou a mensagem\e[m"
exit;
fi;
from_name=$USER;
else
usage
fi
elif [ "$#" -gt "4" ]; then
usage;
fi;
if [ "$x" != "1" ]; then
netbios_ip=`echo "$1" |grep '^[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}$'`
if [ -z "$netbios_ip" ]; then
netbios_name=$1;
echo -e "\e[30;1mLocalizando o destino....\e[m";
netbios_ip=`nmblookup $1 |grep "<"|cut -f 1 -d " "`
if [ -z "$netbios_ip" ]; then
echo -e "\e[31;1mErro:\a O destino não pode ser localizado com o endereço \e[32;1m$netbios_name\e[m";
exit;
fi;
if [ "$#" -eq "3" ]; then
from_name="$2"
message="$3"
elif [ "$#" -eq "2" ]; then
from_name=$USER
message="$2"
else
usage;
fi;
else
if [ "$#" != "4" ]; then
usage;
fi;
netbios_name="$2"
from_name="$3"
message="$4"
fi
fi;
xdial "Enviar mensagem" "info" "Enviando a mensagem...." "\e[30;1mEnviando a mensagem....\e[m" 500 &
result=`echo "$message" | smbclient -U "$from_name" -I "$netbios_ip" -M "$netbios_name"`;
if [ "$?" -eq "0" ]; then
xdial "Mensagem enviada" "msg" "A mensagem foi enviada com sucesso para $netbios_name. ($netbios_ip)"
echo -e "\e[32;1mA mensagem foi enviada com sucesso para \e[34;1m$netbios_name\e[32;1m. (\e[34;1m$netbios_ip\e[32;1m)\e[m";
else
xdial "Mensagem não enviada" "msg" "Ocorreu um erro ao enviar a mensagem."
echo -e "\e[31;1mErro:\a Ocorreu um erro ao enviar a mensagem.\e[m";
fi
Colocar palavras em minúsculas
Grave arquivos em pendrive sem sistema de arquivos
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
[Resolvido] VirtualBox can't enable the AMD-V extension
Como verificar a saúde dos discos no Linux
Como instalar , particionar, formatar e montar um HD adicional no Linux?
Como automatizar sua instalação do Ubuntu para desenvolvimento de software.
Fiz uma pergunta no fórum mas não consigo localizar (20)
Quais os códigos mais dificeis que vcs sabem fazer? (8)
Pfsense inacessivel após um periodo de tempo (1)
Não consigo instalar distro antiga no virtualbox nem direto no hd (9)









