Ответы пользователя по тегу SIP
  • Как скрытие топологию астериска так что бы каждый транк выходил в мир через отдельный ip адрес?

    @Gansterito
    Нужно, чтобы * биндил для разных транков разные IP-адреса.
    Если речь про SIP, то:
    - модуль chan_sip биндит адрес глобально и указать конкретный IP для конкретного транка не получится.
    - модуль chan_pjsip гораздо гибче - там в каждом транке указывается транспорт, и в транспорте можно указывать и разные протоколы (udp,tcp,tls), и IP-адреса, и source-порты. Вопрос с RTP-трафиком должен решаться также - транспорт имеет возможность указать параметр external_media_address - "внешний" адрес для передачи медиа.
    Ответ написан
    Комментировать
  • Как набрать номер на телефонах Yealink через Action URI?

    @Gansterito
    http://192.168.3.101/servlet?key=number=89ХХХХХХХХ...
    где YYY - номер аккаунта с которого будет происходить вызов (хотя по документации там надо URI, работает просто номер).
    Ответ написан
  • Как показать карточку клиента при входящем звонке?

    @Gansterito
    Третий вариант - взять номер по SIP без функционала ВАТС, приземлить на свою IP АТС (Asterisk и т.д.)
    Тот факт, что у Вас самописная CRM означает, что готовых решений по интеграции с ней не будет ни у кого, а значит всё придется делать самим. В этом случае все-таки удобней когда всё под вашим контролем - и IP АТС, и CRM.
    Можете работать с Asterisk через AMI и не зависеть от API сторонних сервисов.
    Ответ написан
  • Как sip софтфон узнает ip-адрес устройства, на котором установлен?

    @Gansterito
    > или софтфон вообще сам не выполняет запросов на определение ip
    Софтфон должен знать свой IP. Если не считать IP-адреса в заголовке IP-пакета, то еще он встречается в заголовке Contact и в SDP. Что касается IP-пакета, тут все просто - пакет идет с тем source ip, какой висит на исходящем интерфейсе в сторону сервера регистрации, если жестко не задан другой адрес. Адрес в Contact - тут сложней. В справочнике сказано - "Агент пользователя не должен передавать новых сообщений регистрации (запросов, содержащих новых сообщений в заголовке Contact), пока не получит окончательный ответ от сервера регистрации на предыдущий запрос...". Еще: "Запрос Register может включать в себя заголовок Contact, содержащий ноль или более контактых адресов.".
    Какие тут могут быть варианты:
    1) SIP-клиент шлет несколько REGISTER-пакетов с разными адресами в Contact, пока не пройдет регистрация.
    2) SIP-клиент шлет один REGISTER-пакет с несколькими адресами в заголовке Contact.
    Видимо, зависит от реализации клиента.

    Если на пути между клиентом и сервером стоит NAT с функционалом SIP ALG, то заголовок Contact будет подвержен изменению в соответствии с логикой работы этого самого SIP ALG.

    Для определения адреса за NAT (а также тип NAT) SIP-клиент может использовать STUN-сервер (SIP ALG в этом случае уже не нужен и даже может мешать). В этом случае заголовок Contact будет сформирован без локального адреса, а сразу с публичным IP-адресом и портом.
    Ответ написан
    2 комментария
  • Почему может рваться связь?

    @Gansterito
    Заходите на S20 по SSH, там запускайте 2 экземпляра tcpdump - на внешний интерфейс в сторону оператора и на внутренний, в сторону телефонов. Примерно так: tcpdump -i eth0 -n -s0 -w /tmp/dump-eth0.pcap
    Еще желательно запустить asterisk -rvvvvv для сбора данных из консоли. На всякий случай.

    Далее, делаете тестовый вызов, ждете "обрыва" через 186 секунд. Прерываете tcpdump, загружаете себе на декстоп оба дампа, открываете оба уже упомянутым выше Wireshark-ом, смотрите что происходило (меню Telephony - Sip flows сильно поможет).

    Вопрос "по времени" - 186 секунд многовато, чтобы не соответствовать каким-то таймингам SIP-а на прерывание разговора. Обычно 15 или 30 секунд - потерялся "ACK". А 186 - скорее где-то ошибочно выставляется длительность звонка. Может быть NAT теряет "трансляцию", но тогда прерывался бы голос (RTP), а сам вызов продолжался бы.
    Ответ написан
    Комментировать
  • Почему не работает SIP через vpn?

    @Gansterito
    Посмотрите tcpdump-ом на стороне Asterisk доходят ли до него SIP-пакеты REGISTER, отвечает ли Asterisk.
    Ответ написан
    7 комментариев