Comments 14
То же можно сделать через asterisk manager (http://www.voip-info.org/wiki/view/Asterisk+manager+API) правда тогда нужно писать демон, подключающийся к сокету и читающий падающие оттуда сообщения, но и скорость реакции будет выше. Сам сейчас тщательно разбираюсь с AMI т.к. нужно интегрировать * с CRM, а event flow в AMI, который относится к звонкам не сильно простой.
У каждого решения есть свои плюсы и минусы. В моём конкретном случае приоритет был отдан простоте реализации, надёжности и минимизации времени на разработку. Временем ожидания реакции на событие я готов был пожертвовать изначально, потому что речь шла о домашнем сервере, и количество входящих звонков не такое большое. Решение с обработкой событий через вывод списка зарегистрированных лежало на поверхности, и не потребовало много времени на реализацию. Целью написания статьи было предоставить готовое решение для обработки событий, которое можно использовать сразу под конкретную задачу, либо с минимальными переделками. Надеюсь, скрипт получился читаемый и не вызвал дополнительных вопросов.
для manager api есть море беблиотек под все языки программирования.
все заморочки решаютсмя одной строчкой import, одной строчкой для включения мониторинга, и тремя строчками вызова хэндлера события.
наврядли это шибко сложнее, чем парсить текстовый вывод
все заморочки решаютсмя одной строчкой import, одной строчкой для включения мониторинга, и тремя строчками вызова хэндлера события.
наврядли это шибко сложнее, чем парсить текстовый вывод
А Вы это затеяли для экономии на роуминге или для чего-то еще?
В основном, действительно для роуминга. Основные плюсы осуществления звонков через домашний Asterisk-сервер уже были рассмотрены ранее в этой отличной статье. В моём случае это так же стало актуально для приёма входящих сотовых звонков при нахождении в роуминге, и совершения исходящих голосовых вызовов через 3G-модемы, подключенные к серверу, по «домашним» ценам.
Если говорить о полезности данного решения вне роуминга, то * в какой-то мере здесь просто выступает в роли дополнительного звена между вызывающим абонентом и вызываемым, позволяя управлять логикой звонков, как нам того захочется: осуществлять callback, вести запись разговоров, создавать blacklist'ы в зависимости от времени суток или номера вызывающего абонента и т. д. Т. е. при работе через сервер я просто получаю некоторые дополнительные возможности для обработки звонков.
Если говорить о полезности данного решения вне роуминга, то * в какой-то мере здесь просто выступает в роли дополнительного звена между вызывающим абонентом и вызываемым, позволяя управлять логикой звонков, как нам того захочется: осуществлять callback, вести запись разговоров, создавать blacklist'ы в зависимости от времени суток или номера вызывающего абонента и т. д. Т. е. при работе через сервер я просто получаю некоторые дополнительные возможности для обработки звонков.
На сайте Мультифона сечас лежит версия для Symbian, а Android-приложение на подходе. Так что, вопрос роуминга частично решается более простым способом.
Если же нужна доп.логика управления вызовом, то да — решение вполне изящно…
Если же нужна доп.логика управления вызовом, то да — решение вполне изящно…
На сайте выложена версия под Symbian S60v3. Попробовал установить её на своём тачфоне (S60v5), но установленное приложение не запускается и ничего не пишет.
в нокиях series 60 имеется встроенный сип=клиент, который отлично подключается к мультифону, так что все преимущества родного клиента = переключение режимов, которое элементарно делается 3мя строчками в букмарках браузера
Если Вы пользуетесь Мультифоном в одиночку, и используете его, как единственного провайдера voip-услуг, то такое решение Вам подойдет. Сомнение вызывает только вопрос удобства пользования такой схемой. Много действий, которые нужно совершить вручную (регистрация на сервере, загрузить браузер, кликнуть по закладке). Чем больше таких действий, тем больше вероятность ошибки вследствие человеческого фактора, а значит общая надёжность решения снижается. В предлагаемом мною варианте действие только одно — нажать на телефоне кнопку подключения к *. Всё остальное сделается автоматически. Даже если связь внезапно прервётся, сервер сам восстановит режим работы GSM, отправив правильный http-запрос, и Вы не пропустите входящие звонки, которые Мегафон будет направлять в отключенный SIP-транк.
Кроме того, вариант работать с Мультифоном напрямую с телефона мне не подходит по следующим причинам:
1. Для звонков по межгороду уже давно используется более 1 voip-провайдера (sipnet, multifon и pctel). Создавать несколько SIP-профилей в телефоне и потом при каждом звонке выбирать из них один нужный — это не очень правильно. Поэтому все voip-провайдеры уже давно прописаны на Asterisk'е, как транки. Направления звонков определены через dialplan. Набираю номер, а * уже сам определяет, куда его отправить.
2. По межгороду звоню не я один. К * привязана еще пара домашних SIP-телефонов, которые должны использовать любой из зарегистрированных междугородних транков для исходящих звонков. Мультифон является одним из них, и прерывать его регистрацию на сервере неправильно.
Кроме того, вариант работать с Мультифоном напрямую с телефона мне не подходит по следующим причинам:
1. Для звонков по межгороду уже давно используется более 1 voip-провайдера (sipnet, multifon и pctel). Создавать несколько SIP-профилей в телефоне и потом при каждом звонке выбирать из них один нужный — это не очень правильно. Поэтому все voip-провайдеры уже давно прописаны на Asterisk'е, как транки. Направления звонков определены через dialplan. Набираю номер, а * уже сам определяет, куда его отправить.
2. По межгороду звоню не я один. К * привязана еще пара домашних SIP-телефонов, которые должны использовать любой из зарегистрированных междугородних транков для исходящих звонков. Мультифон является одним из них, и прерывать его регистрацию на сервере неправильно.
Плюсанул в карму: голосование за сам топик закончилось раньше, чем он мне попался…
Сижу и думаю над каким вопросом: у Мультифона есть пааааршивейшая привычка хреново работать в режиме «GSM+VoIP» — народ при звонке ко мне не слышит гудка и т.д. и т.п.
Соответственно — охота сделать хитрую штуку, что-бы при моём нахождении дома включался режим VoIP для приёма на радиотрубку звонков, а когда не дома — GSM… Благо, что телефон с двумя симками и вторая симка предназначена именно для работы с АТСкой домашней — на неё дублируются вызовы…
Сижу и думаю над каким вопросом: у Мультифона есть пааааршивейшая привычка хреново работать в режиме «GSM+VoIP» — народ при звонке ко мне не слышит гудка и т.д. и т.п.
Соответственно — охота сделать хитрую штуку, что-бы при моём нахождении дома включался режим VoIP для приёма на радиотрубку звонков, а когда не дома — GSM… Благо, что телефон с двумя симками и вторая симка предназначена именно для работы с АТСкой домашней — на неё дублируются вызовы…
Sign up to leave a comment.
Asterisk: обработка регистрационных событий на сервере на примере взаимодействия с VoIP-сервисом «Мультифон»