4,723
回編集
差分
→WIP
性能的にはpi zero系でもかまわないと思うのですが、OTGケーブルが要るのがちょっと面倒かも。
=WIPAsteriskから使う=無線レピータができたのでAsteriskから使いましょう。無線区間と"通話"するだけなら単にSIPの電話機として扱うだけです。Dialしてやれば無線の区間で何が話されているのかは聞くことができます。ですが、こちらから発話しようとするとPTTを押さないといけないので、PTT制御が必要になります。<br>まず、PTT制御するハンドラを書きます。これはnetwriteで無線レピータに対して制御を投げます。ただし、IPアドレスを明示指定して書いてしまうと無線レピータのIPアドレスが変わった場合に書き換えが必要になってしまうので、Asteriskが『知っている』エンドポイント名で指定できるようにします。<br>PJSIP_CONTACTS DBがIPアドレスを含むコンタクトを持っているので、そこからIPアドレスだけ取り出します。netwriteする場合のポート番号はnetreadで指定したものと同じものを設定してください。無線レピータのエンドポイント名が変わった場合にはphone10の部分を書き換える必要があります。 [sub-pttctl] exten => s,1,NoOp exten => s,n,Set(TARGET=phone10) exten => s,n,Set(RCONTACT=${PJSIP_DIAL_CONTACTS(${TARGET})}) exten => s,n,Set(RCONTACT=${CUT(RCONTACT,@,2)}) exten => s,n,Set(RCONTACT=${CUT(RCONTACT,:,1)}) exten => s,n,System(echo ${ARG1} | /usr/bin/netwrite ${RCONTACT} 5091) exten => s,n,Return