2011-01-25 11 views
1

ズーム7.2m(3g)USBモデムでSMSを送受信できる、単純なPython 2.6アプリケーションをOSX 10.6.6上に作成しようとしています。ズーム7.2mトライバンドUSBモデムでSMSコマンドを使用してSMSを送信するにはどうすればよいですか?

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

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

ずっと "楽しい" は、それが唯一のセッションだ後、私は読んで」であるために書くことができますcu.LJADeviceInterface2621 "と表示されます。オープンできませんでしたポート/dev/tty.LJADeviceInterface2621:[errnoを16]リソース忙しい「は/ dev/ttyの

serial.serialutil.SerialException - このTTYインスタンスに接続しようと、私はエラーを取得します.LJADeviceInterface2621 '

これはうまくいきますが、私は少なくとも同等の機能を持っています。

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

  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))+ CMGF = 1zzがAT

[プレス書き込みをコミットするために入力]

OK

AT + CMGW = "+ 447725123123" \ rを\ nは[Enterキーを押して書き込みをコミットするために入力]

ERROR

私はメッセージのテキストを書いた後、Ctrl-Z(chr(13))を押すべきですが、すぐにエラーが出ます。

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

アイデア?必要に応じてより多くの情報を提供させていただき

、感謝 ステュー

答えて

1

はまた、タスクを行うそこに多くのプロジェクトがあることを覚えて動作するはずですあなたのために(pysmsはそれらの一つです)

+0

ねえ、時には明白なことが最善の方法です!ナッジのおかげで、私はpyMobile(http://sourceforge.net/projects/pymobile/)を使い終わった。それは2003年から更新されていませんが、モデムを使ってすぐに動作しました。コードを書くことで2日間議論した後、非常にイライラします。私は、パッケージでサポートされていないコマンドをモデム上で実行するための小さなコードを書かなければなりませんでした。誰かがそのコードを実装する方向性を望むなら、教えてください。もう一度乾杯! –

0

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

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

そして、それは

+0

/\ thatsすぐにメッセージを送信する。私は記憶に保存しておきたい。乾杯 –

関連する問題