我已經在Windows機器上編程了一個D-Link GSM調制解調器來發送和接收SMS,用於測試我使用了超級終端。如何在linux中接收傳入的短信通知?
在windows中,連接管理器啓動COMx端口,調制解調器使用一個未列出的COMx端口,通過該端口我可以發送SMS,並通過列出的NMEA端口接收傳入的SMS,例如+ CMTI:「ME」 RING + CLIP:XXXXXXXXXXXX
我成功地解釋了消息並將其編程爲符合我在Windows中的要求。在linux(Fedora)中嘗試相同的操作時,我看到調制解調器將/ dev/ttyUSB0和/ dev/ttyUSB1初始化爲兩個新識別的設備。我使用minicom來設置設備端口並將AT命令傳遞給相同的端口。
在這兩個設備(/ dev/ttyUSB0和/ dev/ttyUSB1)中,我都沒有收到未經請求的AT結果代碼,例如+ CMTI指示,只要我期待新的SMS。僅供參考我已根據手冊和其他幾種組合設置了CNMI設置。
奇怪的是,我可以看到RING,當我打電話,但不+ + CLIP:< callerinfo>。同樣,我沒有獲得++ PSBEARER:XX,Y或+ CMTI:「ME」,XX
唯一的替代解決方案是定期輪詢UNREAD消息,這通常是一個糟糕的設計。請告訴我,如果我在配置方面做錯了什麼,我應該改變一些其他的東西嗎?
謝謝! AT + CLIP = 1用於獲取RING的UR代碼。我想,CNMI設置在獲得新的SMS的UR代碼上有所不同? – Onewildgamer
是的。您可以在[27.005](http://www.3gpp.org/ftp/Specs/html-info/27005.htm)中查找「AT + CNMI」的定義。大多數手機相關的AT命令在[27.007](http://www.3gpp.org/ftp/Specs/html-info/27007.htm)中定義,而[V.250](http://www.itu .int/rec/T-REC-V.250-200307-I/en)是AT命令的基本標準。 – hlovdal