2011-01-28 3 views
2

アクションを使用しています:crmアプリケーションからの呼び出しを開始します。オペレータがリンクをクリックし、アスタリスクがオペレータ内線番号に電話をかけ、ピックアップすると外線番号の呼び出しを開始します。これは魅力のように働いています。 しかし、私たちのウェブサイトでは、訪問者から電話番号を入手して電話したいと考えています。これは、特定の内線番号ではなく、リンググループ上で動作する必要があります。これにより、使用可能なエージェントがコールを受信します。 119はエージェント内線番号、120はリンググループです。originateを使用してもリンググループには向かない

これは動作します:
アクション:発信
チャンネル:SIP/119#(エージェント拡張)
コンテキスト:から内部
EXTEN:(番号が呼ばれる)0xxxxxxxx#
優先順位:1
WAITTIME:5
発信者番号:CRM < 0xxxxxxxx>
タイムアウト:30000
非同期:真

これは動作しません、それは環基に拡張子のいずれかの呼び出し音を鳴らしません。
アクション:SIP/120#(すべてのエージェントの拡張機能への環基)
コンテキスト::から
チャンネルを発信-internal
EXTEN:0xxxxxxxx#(と呼ばれる数)
優先順位:1
WAITTIME:5
発信者番号:CRM < 0xxxxxxxx>
タイムアウト:30000
ASYN c:true

別の形式の呼び出しグループを呼び出す必要はありますか?リングのような/ 120?

また、Teler経由でアスタリスクに接続するとCallerId:CRM < 0xxx>行が正しく動作しますが、phpソケットによって送信された場合は動作しません。 telnetと同じフォーマットに一致するエンコード(utf8_encodeやutf8_decodeなど)を行う必要がありますか?

答えて

2

このリンググループはどのように実装されていますか? SIP/120は単一のチャネルのように見えます。

 
Channel: Local/[email protected]/n 

extensions.confファイル内:それはダイヤルプランでより多くを行うローカルチャンネルに由来する試みを動作しない場合

 
Channel: SIP/118&SIP/119 

:あなたのような何かを試してみました

 
[ringgroup] 
exten => _X.,1,Dial(SIP/118&SIP/119) 

telnetとPHPの両方がAsteriskマネージャインターフェイスを使用している場合、CallerIdは両方に対して同じように動作するはずです。 Wiresharkのトレースを取り、それらを比較してください。他のすべてが失敗した場合は、私が説明したようにローカルチャネルを使用し、ダイヤルの前にダイヤラプランで発信者IDを設定します。

関連する問題