+7 (495) 781 6555 
mailto:info@novion.ru sip:info@novion.ru skype:novioncompany
Интеграция ActiveX-объекта Октофон с HTML-страничкой с помощью Java Script

Мы попробуем сделать простую HTML-страничку, c которой можно позвонить, принять вызов, положить трубку, а также получить от Октофона такие данные, как номер вызывающего абонента и активность сессии.
ActiveX-объекты работают только в браузерах Internet Explorer, и мы рекомендуем использовать версию 6 или выше.
Для начала нам надо создать ActiveX-объект, который будет являться клиентом ActiveX-объекта Октофона. Добавьте внутри тэга body следующую строку:

  • <OBJECT id="userAgent" height="1" width="1" classid="CLSID:1C0A477A-54CC-43E6-884E-10ADDF37394A">
    <b>Не могу загрузить ActiveX-объект! Проверьте настройки безопасности. Проверьте, установлен ли Октофон. Страница работает только в IE версии 6 или выше.</b> <br><br>
    </OBJECT>

id="userAgent" – идентификатор создаваемого ActiveX-клиента.
classid="CLSID:1C0A477A-54CC-43E6-884E-10ADDF37394A" – ссылка на ActiveX-объект Октофон.
Теперь мы можем обращаться к вновь созданному объекту с помошью Java Script. Например, создайте кнопку «Call» и назначьте на неё функцию Java Script: "call('test')", где в качестве параметра передается номер или SIP-логин вызываемого абонента:

  • <button onclick="call('test')">call</button>

А в секции Java Script опишите эту функцию как:

  • <script language="javascript">
    function call(number){
    userAgent.CreateCall(number,"random-call-id-123457890");
    }
    </script>

При создании HTML-страницы с помощью PHP скрипта или Ajax вы можете подставить любой необходимый номер телефона. Теперь при нажатии кнопки на страничке в браузере ваш Октофон позвонит на указанный номер.

Посмотрим, как происходит обработка входящих событий Октофона. Для этого нужно написать функцию следующего вида:

  • <script language="javascript">
    function userAgent::OnConnectionAlerting(id, fromUri, fromDisplayName, toUri, reqUri, inviteMsg){
    document.getElementById("logDiv").innerHTML+= fromUri +"<br>";
    }
    </script>

Эта функция просто выводит SIP URI (содержащий также номер звонящего) на страничку. С помощью Ajax вы можете обработать эти данные любым другим способом, например, занести в базу данных или попытаться найти информацию о звонящем и вывести её на страничку.
Скачать пример странички с полным списком возможных функций можно здесь.

Octopus - это запись телефонных переговоров для контроля над ситуацией