Envia mensagens para o serviço mensageiro do windows facilmente

Publicado por José Roberto 13/06/2007

[ Hits: 8.206 ]

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

  



Esconder código-fonte

#!/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

Scripts recomendados

Automatizar a importação de chave privada GPG (GnuPG)

zswaplig.sh - Um "Ligador" de ZSWAP, SWAP em RAM para Sabayon Linux

tagman - Editor de tags

Criação de usuário e aplicação de quota

abelhudo


  

Comentários
[1] Comentário enviado por alainx2 em 26/09/2009 - 12:19h

cara re manda a versão do deb por favor pois o link se encontra quebrado


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts