最近,EchoIRLPをインストールしたが動かないというお問合わせをいただきました。
【問題 1】
rc.irlp実行時に,tbd の立ち上げで失敗する。
【解決案】
以前より,EchoIRLPを正しくインストールしたにもかかわらず,$ECHO_CUSTOM/tbd.confが空になってしまうという問題が報告されています。まずインストールスクリプトにより tbd.conf が内容も含めて正しく作成されているかを確認し,もし空であれば thebridge パッケージより tbd.conf.sample を取り出して,これに対して手作業で作成します。
なお,rc.irlp実行時,tbd で2回[Failed]になることがありますが,これはrc.irlpがtbdをrestart(再起動)させるからです。すなわち,まずtbdを終了させ,さらに起動します。最初 tbd を終了させようとしているにもかかわらず,動作しているtbdが無いのでFail してしまう訳です。さらに実際にtbdを動作させようとして,何かしらのエラーで動作できないことを示しています。
【問題 2】
相手EchoLinkからはコネクトできるのに,自分から他EchoLinkノードにコネクトしようとするとエラーになる。
【解決案 2-1】
EchoIRLPは,incoming callとoutgoing callをそれぞれ以下のように処理します。
-incoming call: tbd経由のコネクトイベントを,まず$ECHO_SCRIPT/echoirlp-statusというスクリプトが受取り,さらにイベント毎のハンドラーを呼び出して処理します。
-outgoing call: EchoIRLPのコネクト命令は,tbdcmdのコネクト命令に変換されて,tbdに対してコネクト要求を出します。
よって,outgoing call のみうまく動かないのであれば,まず真っ先に/usr/local/bin/tbdcmd
が正しく存在し,動作するかを確認します。このファイルはシンボリックリンクになっており実体は,/home/EchoIRLP/tbd/tbdcmd です。
【解決案 2-2】
outgoing callが動かないもう一つの原因となりやすいのは,$CUSTOM/custom_decodeです。EchoIRLPをインストールすると,インストーラがEchoLinkノードへの接続のためにcustom_decodeを変更します。この中でエラーを起こしたり,DTMFコマンドに矛盾が生じるとコネクトができなくなる可能性があります。正しいロジックになっているか確認しましょう。
【解決案 2-3】
また本問題の原因として実際にあったもう一つの例は,EchoLinkノードへ接続するためのDTMFプリフィックスをアルファベット小文字で定義していた,というものです。インストール時にプリフィックスを何にするか訊かれますので半角大文字で答えてください。また,$CUSTOM/custom_decodeの中で"#"を表す"P"や,"*"を表す"S"は半角大文字で定義してください。
最近のコメント