Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

API (Application Programming Interface) — это интерфейс программирования, интерфейс создания приложений. Можно сказать, что API — готовый код для упрощения жизни программисту.

Как интерфейс, API позволяет разработчикам использовать готовые блоки для построения приложения. В случае написания веб-приложений, API может отдавать данные в отличном от стандартного HTML формате, благодаря чему им удобно пользоваться при написании собственных приложений. 

На сегодняшний день мы поддерживаем два способа интеграции приложений, WebSocket API позволит вам создавать веб-приложения для управления звонками в реальном режиме времени, а HTTP API предназначено для получения и обработки статической информации.

Также в onlinePBX есть веб-хуки. Они уведомляют сторонние сервисы об изменениях в АТС.

Note
Ваши вопросы по работе с API вы можете задать, написав на почту support@onlinepbx.ru.


Note
При отключении аккаунта запросы по API будут работать ещё семь дней. После будут отключены до продления лицензии.

Содержание

Callback API 0.3 [beta]

HTTP API

WebSockets API 3.0.0

Переход на WebSockets API 3.0

Ответы на вопросы про WebSockets API 3.0.


Expand
titleЧто такое WebSockets API?

Это API, который построен поверх протокола WebSocket. Предназначен для получения событий от нашей АТС в режиме реального времени. Благодаря этому API, у разработчиков появляется возможность для интеграции onlinePBX в ваши бизнес-процессы.


Expand
titleКого затронет смена версии?

Тех, кто пользовался WebSockets API 2.0 в самописных интеграциях. Если вы пользуетесь CRM-системой, то уточните как именно написана интеграция у техподдержки CRM, при необходимости отправьте ссылку на эту статью. Это не касается CRM-систем: amoCRM, Битрикс24, МойСклад, YClients — они написаны с нашей стороны и не используют эту технологию.


Expand
titleЗачем нужен переход на новую версию?

WebSockets API 2.0 позволяло расширить возможности АТС — написать свою интеграцию или простые запросы, реализовать своё видение работы. Со временем мы столкнулись с рядом технических проблем — в некоторых случаях некорректное использование могло излишне нагрузить сервера, было сложно разобраться во множестве команд, некоторые из них никогда не использовались, а некоторые дублировали существующие. Из-за этого было решено создать версию 3.0, в которой мы смогли избавиться от этих минусов.


Expand
titleЧем WebSockets API 3.0 лучше?

Стабильностью и чистотой архитектуры, ещё мы избавились от негативного влияния на нагрузку серверов. Осталось только нужное, теперь в документации гораздо проще ориентироваться, а наш сервис стал стабильнее.


Expand
titleКакие основные отличия версии 3.0 от 2.0?
  • Удалены неиспользовавшиеся переменные и команды (eavesdrop, reboot_phone, reloadgw, sip_message, message);

  • Часть команд перенесена в HTTP API (команды: make_call, flush_reg, trunk_list, user_list);

  • Переименованы многие контакты и события — теперь они более логичны;

  • Добавлены новые переменные, которые могут быть полезны;

  • Добавили возможность проверки номера на его наличие в чёрном списке.


Expand
titleТеперь надо переписывать всё на новой версии?

Да. Вы можете воспользоваться документацией по WebSockets API 3.0 и, если возникнут вопросы, — напишите нам на support@onlinepbx.ru.

Note
Новая версия WebSockets не поддерживает клиент socket.io-client.



Expand
titleЧто будет с WebSockets API 2.0?

Мы больше не поддерживаем эту версию, она будет отключена 1 декабря 2022 года.


Частые запросы

Наиболее частые проблемы и их решение.


Expand
titleПочему не выгружается звонок?

Звонки могут не выгружаться из-за разных факторов:

  • Проверьте в какую базу данных отправлен запрос. Старая версия API не поддерживается. Используйте новое API: OnlinePBX HTTP API — https://api2.onlinepbx.ru/documentation.
  • Проверьте корректность отправленного запроса.
  • В запросе отсутствует параметр download=1.
  • Проверьте наличие звонка в панели управления и сверьте UUID.

Для диагностики вышлите полное тело запроса на почту нашей технической поддержки: support@onlinepbx.ru .


Expand
titleКак получить историю звонков?

Историю звонков можно получить при помощи POST-запроса https://api2.onlinepbx.ru/domain.onpbx.ru/mongo_history/search.json. Вместо domain.onpbx.ru укажите название вашего домена (имеет вид example.onpbx.ru). Для запроса необходим хотя бы один параметр. 

При запросе звонков accountcode=missed вернутся звонки с accountcode=inbound. Это связано с тем, что пропущенные звонки — это входящие звонки без разговора. Пропущенные звонки хранятся в базе как входящие звонки.

Максимальный интервал, за который можно получить звонки в одном запросе (кроме запросов с uuid) — одна неделя. То есть, разница между параметром start_stamp_to и start_stamp_from, или end_stamp_to и end_stamp_from не должна превышать максимальный интервал в секундах. Если интервал превышает максимальный, то будут возвращены звонки за последний максимальный интервал из этого интервала. Если не указан ни один из этих параметров: start_stamp_to, start_stamp_from, end_stamp_to, end_stamp_from, то будут возвращены звонки за текущие сутки (GMT-0).


Expand
titleКак получать информацию о звонках?

Для получения информации о звонках в режиме реального времени используйте WebSockets API и Веб-хуки.

Если необходима простая история звонков, то рекомендуем использовать HTTP API, метод https://api2.onlinepbx.ru/domain.onpbx.ru/mongo_history/search.json.  Вместо domain.onpbx.ru укажите название вашего домена (имеет вид example.onpbx.ru). В зависимости от того, как необходимо получить историю (за определенный период, по номеру, по домену и т. д.), используйте требуемый параметр. Подробнее в документации.


Expand
titleПочему запросы долго обрабатываются?

Долгая обработка запроса может быть связана с высокой нагрузкой на сервер, а также большим объёмом отсылаемого запроса.


Вы не нашли ответ на свой вопрос?

Обратитесь в нашу техническую поддержку:

+7 (495) 669-67-21
+7 (343) 302-01-37
+7 (812) 646-51-40

Почта — support@onlinepbx.ru