IP-телефония → SIP телефония для дома — реализация, опыт, фишки
Всем привет.
В комментариях к различным топикам на Хабре нередко видел вопросы класса «А зачем вам нужна SIP-телефония дома» и «Как все это безобразие работает». Некоторые темы на хабре уже раскрывались, но многое осталось в тени. Посему решил описать используемую мной схему SIP-устройств и сервисов, и набросать некоторые планы на будущее.
Просто повторять аксиому, что SIP – это далеко не только дешевые междугородние звонки через sipnet или других операторов я не буду, и постараюсь в данном топике раскрыть все многообразие возможных вариантов применения SIP в быту.
В комментариях к различным топикам на Хабре нередко видел вопросы класса «А зачем вам нужна SIP-телефония дома» и «Как все это безобразие работает». Некоторые темы на хабре уже раскрывались, но многое осталось в тени. Посему решил описать используемую мной схему SIP-устройств и сервисов, и набросать некоторые планы на будущее.
Просто повторять аксиому, что SIP – это далеко не только дешевые междугородние звонки через sipnet или других операторов я не буду, и постараюсь в данном топике раскрыть все многообразие возможных вариантов применения SIP в быту.
Персональные блоги → Первая телефонная программа
Познакомившись с CG/PL на примере веб-сервиса, возникает резонный вопрос, а как дело обстоит со звонками?
На базе CGP можно делать сложные голосовые меню и, вообще, делать со звонками довольно интересные вещи, но для начала подойдёт какой-нибудь простенький пример.
Попробуем написать простую игру с угадыванием числа. Общий сценарий такой:
На базе CGP можно делать сложные голосовые меню и, вообще, делать со звонками довольно интересные вещи, но для начала подойдёт какой-нибудь простенький пример.
Игра
Попробуем написать простую игру с угадыванием числа. Общий сценарий такой:
- Абонент набирает наш номер и слышит приветствие.
- В этот момент загадываем число от одного до девяти.
- Затем приглашаем абонента ввести число.
- Если введённое число меньше загаданного, или больше, то сообщаем об этом абоненту звуковыми сигналами.
- Если абонент число угадал, то поздравляем его и кладём трубку.
- Всего даётся три попытки, каждая не больше десяти секунд.
Персональные блоги → CGP превращается в контейнер для скриптов
Не только позвонить
Начну издалека. Есть фирма Cisco, и делает она SIP-телефоны. Подключение таких телефонов к CGP занимает не слишком большое время, даже, если делать это в первый раз, конечно, если между телефоном и CGP нет NAT.
Будем считать, что телефон подключен, делает звонки, звенит, когда надо, и слышимость в обе стороны отличная.
В телефонах 794x и 796x есть замечательная возможность просматривать список телефонных номеров, полученный с сервера. Телефон идёт на URL, указанный в конфигурации, обычным HTTP запросом.
Можно поставить на сервер отдельный tomcat или php, чтобы обработать такие запросы. Но это слишком накладно. CGP справится лучше. Во-первых у него уже есть LDAP, во-вторых у него есть CG/PL.
То есть, мы можем рассматривать CGP, как контейнер для скриптов на CG/PL, и с лёгкостью обойтись без сторонних серверов.
Всё что нам нужно это написать скрипт. Назовём его cd.wcgp. Так как мы будем делать запрос с телефона, то исключим авторизацию и механизм сессий. Для этого используем скрипт с секцией SysEntry, а не с Main. Соответственно, хранится на сервере он должен в базовом веб-скине (http://localhost:8010/Master/Domains/WebSkinsCommon.html).
Персональные блоги → Центр коммуникаций для дома, для семьи
Если есть желание использовать дома почту, но при этом не зависить от сторонних сервисов, то стоит посмотреть в сторону CommuniGate Pro (CGP). С некоторых пор он бесплатен, если в системе не больше пяти пользователей. Во-вторых он является стабильным решением, а в-третьих в коммуникации входит не только почта.
Создав нового пользователя в CGP, мы получаем не только возможность обмена письмами, но и SIP (Session Initiation Protocol) и XMPP (Extensible Messaging and Presence Protocol).
Что кроме почты?
Создав нового пользователя в CGP, мы получаем не только возможность обмена письмами, но и SIP (Session Initiation Protocol) и XMPP (Extensible Messaging and Presence Protocol).