11 июн. 2009 г.

Music on hold и Yate

В локалке на данный момент разведены сип клиенты, среди которых мне понравился 3CX VOIP Phone для Windows (прямая ссылка тут).

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

Технологии, тем временем, не дремлят. Поставил флафон под эйр (flaphone) - написанный на флеше софтфон, который можно также встраивать в веб-страницы. Пока не разобрался, почему он не хочет регистряться на моей сип проксе внутри локальной сети (192.168.0.100). То, что он заточен под коммерческих сип провайдеров типа sipnet, это понятно. Может быть его и не предполагали использовать в внутрикорпоративных сетях.

Сейчас разбираюсь с moh. В конфиге в качестве примеров приведены команды cat для сбрасывания музыки на stdout - интересно где он такую команду найдет под винду, скорее всего надо использовать type :)

Проблема в том, что сервер отвечает 503-ей ошибкой... Скорее всего он не может найти mpg123, хотя я эту программу скачал и она есть в путях...

moh.conf:
default=while true; do mpg123 -q -m -r 8000 -s C:\sounds\*.mp3; done

regexroute.conf:
^777$=moh/default

Лог:
<sip/1:ALL> YateSIPConnection::YateSIPConnection(011C4440,011A8E88) [011C5168]
<INFO> Could not classify call from 'sergey', wasted 0 usec
<CdrBuilder:INFO> Got message 'call.route' for untracked id 'sip/1'
<INFO> Routing call to '777' in context 'default' via 'moh/default' in 0 usec
<sip/1:MILD> Call rejected error='noconn' reason='Could not connect to target' [011C5168]
<sip/1:ALL> YateSIPConnection::~YateSIPConnection() [011C5168]
<sip/1:ALL> YateSIPConnection::hangup() state=0 trans=011A8E88 error='noconn' code=503 reason='Could not connect to target' [011C5168]
<sip:INFO> Sending code 503 011C4A48 to 192.168.0.100:3180


UPD: Ура, работает Music On Hold.... Но только в debian Linux - свежескомпиленный из исходников Йейт смог у меня проиграть музыку на холде.... Качество фиговое конечно, т.к. линукс стоит в виртуальной машине на том же относительно древнем ноутбуке, что и клиент.
Под Виндой не работает moh. Жалко. Придется дебажить как-нибудь.

3 комментария:

  1. Вот оно что, Михалыч (С)!

    Оказывается, MOH под Windows не работает просто потому, что для Windows-версии Yate нет модуля "moh.yate". Всех делов-то - это перекомпилять этот модуль для винды, сорцы же есть. Возможно, придется немного затачивать напильником сорцы.

    ОтветитьУдалить
  2. Аналог moh можно легко наваять на скрипте + wave/play

    ОтветитьУдалить
  3. У flaphone сам телефон на сервере. В этом его и основная идея. Поэтому он и не сможет зарегистрироваться в интранете.

    ОтветитьУдалить