Automatizando um telefone IP

3

Eu tenho muito interesse em automatizar um telefone IP, atualmente estou automatizando chamadas usando PuTTY para um modem dial-up através de comandos AT simples. No entanto, esse é um método ruim, porque faz pouco além da discagem e da captação; Pior ainda, ele pode discar apenas alguns números.

O que eu tentei:

Eu tenho um programa que de alguma forma pode controlar meu telefone IP através do meu computador (nível muito alto no sentido em que não possui uma API). Usando o Wireshark, consegui capturar os pacotes que ele envia ao telefone, que acredito que farão o comando de ligar para algum número.

Nesse ponto, pensei em enviar os valores hexadecimais que obtive do Wireshark através do PuTTY usando uma conexão Telnet. Meu primeiro problema é que não tenho certeza do número da porta; No entanto, tentei 23 e 80 e nos dois casos: quando estou digitando, as teclas aparecerão no PuTTY. Isso tem que ser um bom sinal, certo? Infelizmente, após cerca de 20 segundos, a janela se fecha sozinha. Eu visitei a página local do telefone IP através do meu navegador e nenhuma informação sobre o número da porta.

Também posso executar ping no telefone sem especificar um número de porta.

A questão:

Alguém pode explicar por que minha sessão PuTTY está sendo encerrada por si só e / ou uma solução alternativa para automatizar um telefone IP?

Nick Williams
fonte
Todas as informações (números de porta, etc.) devem estar nos pacotes capturados com o Wireshark. É tráfego TCP ou UDP? Quais portas? O fato de o PuTTY exibir os caracteres não tem sentido, pois provavelmente está fazendo eco local.
Ale
11
Agora que dou uma olhada mais de perto, o Wireshark diz que a porta de destino é 49922, que eu suponho que seria para o telefone. Além disso, os pacotes para o telefone são "SKINNY", enquanto os pacotes retornados são TCP.
Nick Williams #
Tentei o PuTTY novamente com a porta 49922 e ela ainda trava.
Nick Williams #
11
A porta 49922 é possivelmente a porta de origem. MAGRO usa a porta 2000.
Ale
11
@ All Ok, eu redefinir tudo e encontrei esse pacote SYN. O telefone inicializa a conexão.
Nick Williams

Respostas:

3

Veja o protocolo SKINNY (SCCP): http://en.wikipedia.org/wiki/Skinny_Call_Control_Protocol . Como é um protocolo binário (como você pode ver nas capturas do Wireshark), não é possível usar o PuTTY para comandar seu telefone com comandos do tipo AT. Digitar dígitos hexadecimais no PuTTY é inútil, pois os dados transmitidos nos pacotes não são os dígitos hexadecimais, mas os bytes binários reais. Além disso, reenviar os pacotes conforme você os captura no Wireshark provavelmente não está funcionando, pois eles contêm dados como endereços IP que podem não ser constantes, dependendo da configuração da sua rede.

Ale
fonte
Parece que tenho muita pesquisa para fazer. Obrigado por me dar uma boa base para continuar.
Nick Williams #
Seja bem-vindo! Infelizmente eu não sei nada sobre este protocolo SCCP, então eu não posso ajudá-lo mais sobre os detalhes ...
Ale