4,723
回編集
差分
→Asteriskから使う
無線ゲートウェイができたのでAsteriskから使いましょう。無線区間と"通話"するだけなら単にSIPの電話機として扱うだけです。Dialしてやれば無線の区間で何が話されているのかは聞くことができます。ですが、こちらから発話しようとするとPTTを押さないといけないので、PTT制御が必要になります。<br>
まず、PTT制御するAsteriskのハンドラを書きます。これはnetcat(nc)で無線ゲートウェイに対して制御を投げます。ただし、IPアドレスを明示指定して書いてしまうと無線ゲートウェイのIPアドレスが変わった場合に書き換えが必要になってしまうので、Asteriskが『知っている』エンドポイント名で指定できるようにします。<br>
PJSIP_CONTACTS DBがIPアドレスを含むコンタクトを持っているので、そこからIPアドレスだけ取り出します。netwriteする場合のポート番号はnetreadで指定したものと同じものを設定してください。無線ゲートウェイのエンドポイント名が変わった場合にはphone10の部分を書き換える必要があります。DBがIPアドレスを含むコンタクトを持っているので、そこからIPアドレスだけ取り出します。netcat(nc)する場合のポート番号はpttctlの引数で指定したものと同じものを設定してください。無線ゲートウェイのエンドポイント名が変わった場合にはphone10の部分を書き換える必要があります。
[sub-pttctl]
exten => s,1,NoOp