비슷한 주제가이 포럼에 게시 된 것을 보았지만 AT 명령을 보내고 응답을받는 방법을 이해할 수 없습니다. (몇 달 전에 C#에서 프로그램을 시작했는데 아직도 n00b이지만 배우기 위해 열심히 노력하고 있습니다 ...).GSM 모뎀을 통한 SMS 수신
GSM USB 동글을 통해서만 SMS 메시지를받을 수있는 응용 프로그램을 만들어야합니다. 지금까지 사용 가능한 COM 포트를 통해 모뎀을 인식하고 연결하는 응용 프로그램을 만들었습니다. 이제 메시지를 받고 textBox에 표시하기 위해 AT 명령을 전달해야합니다. 누군가가 저에게 프로세스를 설명 할 수 있을지 궁금 해서요. 코드를 주석으로 수정하여 통신을 위해 serialPort를 사용하는 방법을 배우고 이해할 수 있는지 궁금합니다. 내가 알아야 할 것은, SMS가 전송 될 때,이 메시지는 GSM 모뎀에 의해 수신되고 저장되며 (일부 메시지를 읽을 때까지 저장되거나 메시지 수집을 위해 GSM 모뎀을 트리거하는 이벤트를 보내야 할 필요가있을 때까지 저장 됨) ISP로부터)? AT 명령을 푸시하고 응답을 수신하는 방법 (단, serialPort 객체를 사용하여 완료된다는 것을 알고 있지만 실마리가 없습니다.)
이것은 수신하기위한 방법입니다. 나는 그것을 알아낼 때까지 기꺼이 누군가가 도움이되면 나는 내 자신에 의해 그것을 처리해야하지 않을 경우, 나는 그것을 감사하겠습니다
private void receiveMessage()
{
//commclass is only a class for getting COM port, baud rate and timeout
CommClass cc = new CommClass();
cc.setParameters();
serialPort1.PortName = cc.getPort();
serialPort1.BaudRate = cc.getBaud();
serialPort1.ReadTimeout = cc.getTimeout();
serialPort1.Open();
if (!serialPort1.IsOpen)
{
//MessageBox is written in Croatian language, it is only an alert to check the configuration because port is not opened...
MessageBox.Show("Modem nije spojen, molimo provjerite konfiguraciju...!");
//timer1.Stop();
}
else
{
//this.label2.Text = serialPort1.PortName;
//this.label2.Visible = true;
//this.label3.Visible = true;
//this is where I need to place a code for receiving all SMS messages
this.serialPort1.Write("AT+CMGL=\"REC UNREAD\"");
}
serialPort1.Close();
}
) : ... BTW 붙어 (아마 몇 시간/일 소요 ...)
두 경우 모두 고맙습니다. 건배.