1

Zoom 7.2m (3g) USBモデムでSMSを送受信できるOSX 10.6.6で簡単なpython 2.6アプリケーションを作成しようとしています。

最初に USB モデムに接続したときに、TTY または CU セッションが作成されていないようです。次のセッションを開始するには、モデム ソフトウェアを実行する必要があります。

cu.LJADeviceInterface2621 cu.LJADiagConnector2620 cu.LJAMobileConnector2622 tty.LJADeviceInterface2621 tty.LJADiagConnector2620 tty.LJAMobileConnector2622

多くの「楽しい」後、読み書きできる唯一のセッションは「cu.LJADeviceInterface2621」のようです。この tty インスタンスに接続しようとすると、エラーが発生します -

serial.serialutil.SerialException: ポート /dev/tty.LJADeviceInterface2621 を開けませんでした: [Errno 16] リソースがビジーです: '/dev/tty.LJADeviceInterface2621'

それは問題ありません-私は少なくとも何かを扱う必要があります.cuに相当します。

私のスクリプトは次のとおりです。

            ser = serial.Serial("/dev/cu.LJADeviceInterface2621", 9600, timeout=1)

            print "Setting DTR..."
            ser.setDTR(True)

            sleep(3)
            print "Turning off DTR..."
            ser.setDTR(False)
            searching = True

            ser.setDTR(True)
            while searching:
                    print "Write instruction..."
                    txt=raw_input()
                    if txt.find("ZZ")>-1:
                            txt=txt.replace("ZZ",chr(13))
                    ser.write(txt)
                    
            ser.close()

現在、「cu.LJADeviceInterface2621」のメッセージを監視している別のスクリプトもあります。そのスクリプトは次のとおりです。

            ser = serial.Serial("/dev/cu.LJADeviceInterface2621", 9600, timeout=1)

            print "Attempting search."
            while True:
                    line = ser.readline()
                    print ">", line

これらのスクリプトを両方実行した状態で、WRITE コードに次の行を入力します。

(注: ZZ 入力は、上記の書き込みスクリプトを介して Ctrl-Z に置き換えられます - chr(13))

AT+CMGF=1ZZ [Enter を押して書き込みをコミット]

わかった

AT+CMGW="+447725123123"\r\n [Enter キーを押して書き込みをコミット]

エラー

メッセージのテキストを書き、その後に Ctrl-Z (chr(13)) を入力する必要がありますが、すぐにエラーが発生します。

USBモデムには有効なsimがあり、クレジットがあり、信号があり、ズームモデムソフトウェアからテキストを送信できます(ただし、これはPDUモードでのみ機能します-ただし、AT + CMGF =に従って、モデムはテキストモードをサポートしています? コマンド) とメッセージを受信します。

何か案は?

Stu に感謝

4

2 に答える 2

1

また、あなたに代わってタスクを実行するプロジェクトがたくさんあることを忘れないでください(pysmsはそのうちの1つです)

于 2011-01-26T20:09:20.803 に答える
0

私はそのモデムを使用したことがありませんが、標準の GSM AT コマンドを使用していると思います。AT+CMGW は間違っています。

送信する必要があります: AT+CMGS="+111111111"\r\n SMS TEXT Ctrl-Z

そして、それはうまくいくはずです

于 2011-01-26T20:06:39.057 に答える