Как получить сведения о получателе из очереди вызовов (Asterisk Dialplan) с помощью AGI?

Я настроил один диалплан для входящего контекста.

Я следую за /etc/asterisk/extensions.conf

[incoming]
switch => Realtime

exten => _X.,1,NoOp(Incoming Call Received)
exten => _X.,n,Festival(Welcome to Asterisk)
exten => _X.,n,Answer()

;call-answer.php will be called when Member Connected to Queue
exten => _X.,n,Queue(my_queue,t,,,1000,call-answer.php)
exten => _X.,n,Hangup()

Я хотел бы получить информацию о вызывающем абоненте, у которого есть ОТВЕТСТВЕННАЯ очередь, и получить информацию об участнике вызываемой очереди, такую ​​как добавочный идентификатор и т. Д ….

колл-answer.php

#!/usr/bin/env php
<?php
set_time_limit(60);
error_reporting(0);
ini_set('display_errors', 0);

require_once ('phpagi.php');
$agi = new AGI();
$agi->verbose("AGI Started after ANSWERED QUEUE",3);
$src_extension = $agi->request['agi_callerid'];
$dst_extension = $agi->request['agi_extension'];

// I want to get CALL ANSWERED QUEUE MEMBER EXTENSION NUMBER HERE.

?>

0

Решение

Эта строка содержит ошибку (без приоритета)

exten => _X.,Festival(Welcome to Asterisk)

Вы можете получить информацию о том, кто ответил в QueueLog, нет необходимости в этом.

http://www.voip-info.org/wiki/view/Asterisk+log+queue_log

Также функция CHANNEL (имя) наверняка покажет вам агента в макросе или другой стороне (вызывающей стороне). Если он возвращает канал вызывающего абонента, вы можете получить другой канал, читая переменную BRIDGEDPEER.

Вы можете получить список всех переменных в канале по проблеме

$agi->exec("Dumpchan","");
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]