at commandで音声SIMを操作してみる
自番号が登録されていなくて、Unknownになっている音声SIMが手元にある。
なにやら、ATコマンドで登録出来そうなので、試して見る。
https://github.com/jstasiak/asterisk-chan-dongle/blob/master/etc/extensions.conf
の部分、
; Subscriber Number example see output of cli ‘dongle show devices’ column “Number”
; may be empty, use for save in SIM commands AT+CPBS=”ON” and AT+CPBW=1,”+123456789″,145
とあるが、その通りしてもエラーになる。
asteriskのcliから行っていたけど、本格にATコマンドで操作してみることにする。
ATコマンドは、ターミナルソフトというもので行う。今回はcuを使う。
対象のサーバーはubuntu。自分にしては珍しい。
cuのコマンドを打つと
プログラム ‘cu’ はまだインストールされていません。 次のように入力することでインストールできます:
apt install cu
なんて、優しく教えてくれるので、その通りにインストール。教えてくれないと、yum install cuとかやっているところだった。
cuを実際に使う前にも下準備が必要で、ここを参考にした。
ttyUSB0等のデバイスのパーミッションが
crw-rw— 1 root dialout 188, 0 2月 10 22:05 /dev/ttyUSB0
の様になっているので、
chmod 666 /dev/ttyUSB0
としないと、だめらしい。
cu -s 115200 -l /dev/ttyUSB0
でターミナルに入れる。
自分の入力したコマンドが表示されないので、とりあえずatzをする。
ローカルエコーするコマンドがあるはずだけど、覚えていない。
追記ateでした。
終了は~.
さて、まずは正常なSIMで行ってみた。自局番号を表示するコマンドを探しまくったけど。
AT+CNUM
+CNUM: “”,”070146****”,129
OK
な感じで自分の番号が表示される。
問題のSIMで行ってみる。
AT+CNUM
OK
と、なにも表示されずにOKが返される。
そこで、事前に調べていたコマンドを実行してみる。
AT+CPBS=”ON”
AT+CPBW=1,”+818047560000″,145
しかし、errorがでる。
http://radekp.github.io/qtmoko/api/modememulator-phonebook.html
を見て、もう少し理解をしてみる。
CPBSは、電話帳の編集を有効にする。SIM自身にも電話帳を保存できる機能がある。
CPBWで、電話帳に書き込みをする。=1で一番目のリストを編集。
“+818047560000″は電話番号。+81と国際番号が付いている点は意味ありげ。
145は「string type, phone number of format <type>; default 145 when dialling string includes “+”, otherwise 129」とある。たぶん145は+を付けた国際番号で。それ以外は129と言うことであるかな。
日本で使うので、普通に”08047560000″で載せたいなら、129を指定するのかな。
2018年12月20日追記
あくまでも、CPBSは電話帳編集のコマンド。
CNUMで自身の番号の表示は可能だが、編集が可能なのかは現在のところ不明。