Как передать оригинал Caller ID на Twilio? (Настройка URL-адреса голосового домена Sip) - PullRequest
0 голосов
/ 11 апреля 2019

Короче говоря, у меня есть Twilio Elastic SIP Trunk и я настроил свою УАТС (Asterisk) для исходящих звонков через домен SIP на Twilio;при входе в Twilio у меня есть возможность настроить URL-адрес голосовой конфигурации домена SIP, чтобы при наборе вызова скрипт передавал вызов по назначению.

По какой-то причине он передавал первоначального абонентаИдентификатор человека, когда я переадресовываю вызов, но теперь он продолжает перезаписывать идентификатор вызывающего абонента номером моего офиса;по существу маскирование исходного номера вызывающего абонента при переводе вызова;это довольно раздражает, и я пытаюсь найти лучший способ решить эту проблему.

Моя цель состоит в том, чтобы исправить исходящий набор, чтобы при внешнем переводе вызова вместо номера абонента отображался идентификатор вызывающего абонента.номер моего офиса;

Конфигурация Twiml, которую я имею для голосового URI моего SIP-домена, выглядит следующим образом:

<?php
echo header('content-type: text/xml');
echo '<?xml version="1.0" encoding="UTF-8"?>';
$to=$_REQUEST['To'];
$callerId=$_REQUEST["callerId"];
/** Extracting user name **/
$pos1 = strpos($to,":");
$pos2 = strpos($to,"@");
$tosip=substr($to,$pos1+1,$pos2-$pos1-1);
if(strlen($tosip) == 3)
{
/**Extracting sip endpoint**/
    $pos2 = strpos($to,":",strpos($to,":")+1);
    $tosip=substr($to,$pos1+1,$pos2-$pos1-1);

    ?>
    <Response>
        <Dial>
            <Sip>
                <?php echo $tosip; ?>
            </Sip>
        </Dial>
    </Response>
    <?php } else { if(substr($tosip,0,2)=="00") $tosip=substr($tosip,2,strlen($tosip)-1); if(substr($tosip,0,3)=="011") $tosip=substr($tosip,3,strlen($tosip)-1); ?>
    <Response>
        <Dial callerId="<?php echo $callerId; ?>" >
            <?php echo $tosip; ?>
        </Dial>
    </Response>
    <?php } ?>

Чтобы успешно передать вызов, мне нужно сделать параметр $ GET для CallerId мойномер офиса;но это перезаписывает исходный идентификатор звонящего;Раньше я мог просто вызвать глагол, и появится исходный идентификатор звонящего;но теперь это не так.

Любые советы или указания в правильном направлении приветствуются!

1 Ответ

0 голосов
/ 13 апреля 2019

Это будет проблемой. Программируемые голосовые домены SIP, необходимо, чтобы CallerID был либо подтвержденным идентификатором вызывающего абонента , либо номером телефона Twilio в вашей учетной записи при вызове в коммутируемую телефонную сеть общего пользования (PSTN).

Возможность переадресации входящего CallerID в исходящий пункт назначения будет работать только из контекста переадресации (вызов поступает в Twilio из PSTN, а затем вы перенаправляете его с глаголом Dial в PSTN в качестве примера).

"Когда вы используете в своем ответе на запрос входящего вызова Twilio, набранный номер видит номер входящего звонящего как идентификатор звонящего ."

...