Как я могу отправить 182 сообщение SIP в очереди из CCXML? - PullRequest
1 голос
/ 05 апреля 2011

Я создаю голосовое приложение, для которого требуется длительный период звонка, пока мое приложение пытается настроить исходящий вызов. В течение этого времени звонок должен оставаться без ответа.

Я использую Genesys GVP 8.1 IVR на основе SIP, подключенный к медиа-шлюзу.

У меня проблема в том, что на звонок нет ответа, он истекает через 30 секунд. Мне нужно отправить какое-то сообщение проверки активности на медиа-шлюз, чтобы сказать, что вызов все еще продолжается.

Я пытался использовать это:

<send target="inConnectionID" targettype="'x-connection'" data="'connection.progressing'"/>

, который сгенерирует звонок 180 ... но я уже отправил сообщение 180 звонка, и я думаю, что SIP-сервер не передает его по сети, поскольку он уже обработал сообщение 180.

В идеале я хочу попробовать отправить сообщение 182 в очереди, но я не могу найти ничего в документации CCXML или расширенной документации GVP CCXML, чтобы сказать, как это сделать.

Моя трассировка SIP Wireshark выглядит следующим образом:

Wireshark

Вы можете видеть, что второй 180 Звонок через 24 секунды не передается в шлюз.

Как я могу заставить GVP / CCXML отправлять 182 сообщения SIP в очереди?

Ответы [ 2 ]

1 голос
/ 30 июля 2011

Я согласен, что медиа-шлюз не должен отменяться в 34.7. Я также думаю, что SIP-сервер должен отправить 100 попыток на leg1, прежде чем он отправит исходящее приглашение для leg2. Это остановит все повторные передачи, поступающие от leg1 UAC, и предотвратит любое аварийное переключение, если медиа-шлюз использует алгоритм опрокидывания SRV.

1 голос
/ 08 апреля 2011

Сервер должен переслать ваши 180, хотя он не имеет , но это должно произойти, поскольку первые 180 могут быть потеряны между ним и медиасервером (хотя сервер будет повторно отправлять сообщение INVITE).наверное).

Однако, как указывает sipwiz, вероятной проблемой является максимальное время ожидания, установленное медиасервером для приема вызова.182 вряд ли поможет (хотя без понимания медиасервера трудно быть окончательным).

Кроме того, вы должны повторно передавать 180 (и sip-сервер должен проходить через него) каждую около 1 минуты, чтобы избежать возможного 3-минутного тайм-аута, разрешенного спецификацией.Некоторые SIP-стеки, такие как eXosip, по умолчанию рассчитывают на тайм-аут INVITE, если прошло 3 минуты без ответа 1xx.

...