Envia mensagens para o serviço mensageiro do windows facilmente

Publicado por José Roberto 13/06/2007

[ Hits: 8.112 ]

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

Estrutura HTML básica no nano

Backup Remoto com rsync, automatico, para varias maquinas, sem senha.

Juros compostos usando bc

Manipular um arquivo txt como se fosse uma planilha de calculo

usando o jSMS direto do pendrive (v2.0)


  

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