2011-12-09 43 views
3

當呼叫從隊列轉移到代理時,是否有簡單的方法將代理擴展捕獲到星號變量中?Asterisk:獲取隊列代理

編輯:我們正在使用動態代理。座席接聽電話後,他將呼叫轉接到另一部分機。在該擴展的上下文中,我們需要使用包含傳輸調用的代理擴展的星號變量。

+0

取決於您要使用的變量,如果你使用的隊列或靜態成員動態「代理」。請更精確地詢問。 – Kaii

回答

0

正如@ ywca-hello所解釋的,它可以使用管理界面(AMI)來實現,另一種選擇是利用隊列日誌從Queue()dialplan應用程序中訪問有關呼叫信息的信息。這可以從撥號方案或AGI腳本或外部腳本訪問。隊列日誌也可以與SQL集成,從而可以更輕鬆地處理數據。結構如下所示:

mysql> DESCRIBE queue_log; 
+-----------+------------------+------+-----+---------+----------------+ 
| Field  | Type    | Null | Key | Default | Extra   | 
+-----------+------------------+------+-----+---------+----------------+ 
| id  | int(10) unsigned | NO | PRI | NULL | auto_increment | 
| time  | varchar(10)  | YES |  |   |    | 
| callid | varchar(32)  | NO |  |   |    | 
| queuename | varchar(32)  | NO |  |   |    | 
| agent  | varchar(32)  | NO |  |   |    | 
| event  | varchar(32)  | NO |  |   |    | 
| data  | varchar(255)  | NO |  |   |    | 
+-----------+------------------+------+-----+---------+----------------+ 
7 rows in set (0.00 sec) 

希望幫助...

1

從撥號方案內?不是特別。 Asterisk在撥號計劃級別訪問隊列呼叫信道時,並不會給出儘可能多的配合。

解決此問題的一個不平凡的但非常可行的方法是構建一個與Asterisk Management Interface接口的應用程序。從那裏,您可以有效地觀察隊列事件,在PBX的整個生命週期中跟蹤呼叫,並將這些信息帶外提供給您的座席。這對你是否有效取決於你的特定目標。

如果你計劃採取這條路線,你會想做兩件事。

  1. 連接到AMI時,請務必在認證後立即設置Events: on
  2. 在queues.conf中爲要跟蹤的任何隊列設置eventmemberstatus=yes

希望這會有所幫助!