Faça uma chamada de saída com modem embutido em C#
-
22-09-2019 - |
Pergunta
Eu tenho que ligar para o número de telefone e detectar se o modem no lado oposto está pendurado. Como posso fazer isso em C# com Serialport?
Solução
Sim, System.io.ports.serialport é a classe para usar.
Algo assim:
// Set the port name, baud rate and other connection parameters you might need
SerialPort port = new SerialPort("COM1", 9600 );
port.Open();
port.ReadTimeout = 1000;
port.NewLine = "\r";
port.WriteLine("ATZ"); // reset the modem
port.ReadTo("OK\r\n"); // wait for "OK" from modem
port.WriteLine("ATDT 12345678"); // dial number with dialtone
string response = port.ReadTo("\r").Trim(); // read until first newline
port.Close();
Não é testado, pois não tenho um modem à mão.
Outras dicas
Você pode criar uma conexão no Windows que está configurada corretamente (para que você possa discar manualmente). Em seguida, use a API RAS para discar à conexão e verifique o resultado.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow