Skip to end of metadata
Go to start of metadata

HTTP — это протокол, не нуждающийся в представлении, ведь даже эта страница передана на ваш компьютер с помощью него. 

Данное руководство поможет вам получать информацию о звонках, совершать звонки и управлять настройками пользователей.

(warning) Библиотека на PHP: api.onlinepbx.ru/lib/onpbx_http_api.php_v1.1.zip . Пример запроса на PHP.

(warning) Библиотека на Javascript: api.onlinepbx.ru/lib/onpbx_http_api.js . Пример запроса на Javascript.

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


 


 

Общие принципы

HTTP API onlinePBX по принципу авторизации похож на Amazon REST API. API ключ полученный вами в панели управления используется для получения закрытого ключа и его идентификатора, все дальнейшие запросы не связанные с авторизацией должны осуществляться при помощи них. Перед отправкой запроса вам необходимо подсчитать хеш сумму (подпись) отправляемого вами запроса при помощи закрытого ключа и передать сообщение с этой подписью и идентификатором закрытого ключа. Также необходимо добавить специальные HTTP заголовки в запрос. В свою очередь, на нашем сервере, мы также подсчитываем хеш сумму принятого сообщения и сравниваем с переданной вами. Таким способом гарантируется целостность данных и защита от подделки запроса в процессе передачи.Подробнее рассмотреть механизм работы API вы можете в одной из наших библиотек, указанных ниже. Тело запроса должно быть в формате "application/x-www-form-urlencoded".

(warning) Мы используем защищенное соединение с помощью протокола HTTPS. Указывайте URL в виде https://api.onlinepbx.ru/.


 

Авторизация

Получение ключа

Таблица параметров:

ПараметрПримечаниеОписание параметра
auth_keyобязательноAPI ключ
new Параметр указывающий на необходимость обновления ключа, обязательное значение "true"
key Ключ для дальнейшей работы с API
key_id Идентификатор ключа
Запрос

URL: api.onlinepbx.ru/example.onpbx.ru/auth.json

POST /example.onpbx.ru/auth.json HTTP/1.1

Host: api.onlinepbx.ru
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:42.0) Gecko/20100101 Firefox/42.0
Accept: application/json
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded; charset=UTF-8;
Content-Length: 46
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

auth_key=cHd3PJoTc8HzLVfDP3KnkCY3fWStONDxEsES8

Ответ
HTTP/1.1 200 OK
Date: Thu, 28 Apr 2016 08:55:26 GMT
Server: Apache
X-Powered-By: PHP/5.5.18-pl0-gentoo
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: POST, GET, OPTIONS
Access-Control-Allow-Headers: Content-Type,Content-MD5,x-pbx-authentication,x-pbx-date
Content-Length: 165
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: text/json

{"status":1,"comment":"","data":{"key":"Bs5gGDsr1nOhVKB5baadoHm741NF6SYUWlKu0pXL52CyhvEz2pERiokysvrbunMY8JJjWg","key_id":"9acd73e82cbd9af4efbcf444fe04b9ff","new":0}}

(warning) Не запрашивайте ключ при каждом запросе, а только если в ответ получите: {"status":0,"comment":"not authenticated","data":""}

(warning) Здесь и далее example.onpbx.ru — это пример домена в нашем сервисе. У каждого клиента уникальный домен.

(warning) При частых запросах авторизации (4-5 запросов в секунду), некоторые сессии будут обрабатываться некорректно, так как каждая новая авторизация даёт новый ключ.

(warning) Время жизни секретного ключа 3 дня с момента последнего обращения. 


 

Звонки

Мгновенные

Таблица параметров:

ПараметрПримечаниеОписание параметра
fromобязательноКто, первый вызываемый номер (номер абонента или внешний номер)
toобязательноКому, второй вызываемый номер (любой)
gate_from Номер транка для первого номера
gate_to Номер транка для второго номера
to_domain Указываете домен на который должен быть совершен звонок (для прямых звонков)
from_orig_number Телефонный номер который увидит первый вызываемый номер
from_orig_name Имя пользователя которое увидит первый вызываемый номер
Запрос

URL: api.onlinepbx.ru/example.onpbx.ru/call/now.json

POST /example.onpbx.ru/call/now.json HTTP/1.1

Host: api.onlinepbx.ru
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:42.0) Gecko/20100101 Firefox/42.0
Accept: application/json
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
x-pbx-date: Thu, 28 Apr 2016 08:59:23 GMT
Content-Type: application/x-www-form-urlencoded; charset=UTF-8;
Content-MD5: 3b0b33c93599477dee717f94d8ecde53
x-pbx-authentication: 9acd73e82cbd9af4efbcf444fe04b9ff:ZjEyOTZmMWI1N2EzOWJjZWE5ZDUzNWE2NGQ0YzNmMTUzNTJiMGMyZQ==
Content-Length: 16
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

from=100&to=9197

Ответ

HTTP/1.1 200 OK
Date: Thu, 28 Apr 2016 08:59:23 GMT
Server: Apache
X-Powered-By: PHP/5.5.18-pl0-gentoo
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: POST, GET, OPTIONS
Access-Control-Allow-Headers: Content-Type,Content-MD5,x-pbx-authentication,x-pbx-date
Content-Length: 82
Keep-Alive: timeout=15, max=99
Connection: Keep-Alive
Content-Type: text/json

{"status":"1","comment":"","data":{"uuid":"8090e90f-5b17-4454-a724-30ee245b2af3"}}


 

С возвращением uuid сразу после запроса

uuid создаётся автоматически при вызове метода. Freeswitch создаст канал с этим uuid.

Таблица параметров:

ПараметрПримечаниеОписание параметра
fromобязательноКто, первый вызываемый номер (номер абонента или внешний номер)
toобязательноКому, второй вызываемый номер (любой)
gate_from Номер транка для первого номера
gate_to Номер транка для второго номера
to_domain Указываете домен на который должен быть совершен звонок (для прямых звонков)
from_orig_number Телефонный номер который увидит первый вызываемый номер
from_orig_name Имя пользователя которое увидит первый вызываемый номер
Запрос

URL: api.onlinepbx.ru/example.onpbx.ru/call/instantly.json

Повторяет запрос в мгновенных звонках.

Ответ

Повторяет ответ в мгновенных звонках.

 

Если в течение 0,5 сек. после запроса нет ошибки, то вернётся uuid. В противном случае ещё поступит информация об ошибке (например:USER_NOT_REGISTERED или USER_BUSY).


 

Отложенные

Отложенные звонки обрабатываются раз в 5 минут. Поэтому если назначить звонок через 2 минуты, то он может состояться в любой момент в промежутке от 2 до 5 минут. Если отложить звонок больше чем на 5 минут, то он произойдёт вовремя — разница во времени не больше нескольких секунд.

Таблица параметров:

ПараметрПримечаниеОписание параметра
fromобязательноКто, первый вызываемый номер (номер абонента или внешний номер)
toобязательноКому, второй вызываемый номер (любой)
gate_from Номер транка для первого номера
gate_to Номер транка для второго номера
to_domain Указываете домен на который должен быть совершен звонок (для прямых звонков)
date Дата в формате (RFC-2822)
Запрос

URL: api.onlinepbx.ru/example.onpbx.ru/call/later.json

POST /example.onpbx.ru/call/later.json HTTP/1.1

Host: api.onlinepbx.ru
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:42.0) Gecko/20100101 Firefox/42.0
Accept: application/json
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
x-pbx-date: Thu, 28 Apr 2016 09:03:03 GMT
Content-Type: application/x-www-form-urlencoded; charset=UTF-8;
Content-MD5: e5c0516a76d124bbec45274c0e435ce6
x-pbx-authentication: 9acd73e82cbd9af4efbcf444fe04b9ff:MzVlYWQ5ODBjYzI3ZTIyNWNkZGUwN2M5OGI1NDhhNzc3MWE1YTQ4Yw==
Content-Length: 65
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

from=100&to=9197&date=28%20Apr%202016%2012%3A05%3A00%20GMT%2B0300

Ответ

HTTP/1.1 200 OK
Date: Thu, 28 Apr 2016 09:03:03 GMT
Server: Apache
X-Powered-By: PHP/5.5.18-pl0-gentoo
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: POST, GET, OPTIONS
Access-Control-Allow-Headers: Content-Type,Content-MD5,x-pbx-authentication,x-pbx-date
Content-Length: 35
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: text/json

{"status":1,"comment":"","data":[]}

 

 

 

К содержанию


 

История звонков (новая база данных)

Список звонков, доступных по API, находится по адресу: https://panel3.onlinepbx.ru/calls.

URL: api.onlinepbx.ru/example.onpbx.ru/mongo_history/search.json.

Таблица параметров для запросов:

ПараметрПримечаниеОписание параметра
uuid Выдача конкретного звонка по уникальному ID. Можно указывать вместе с параметром uuid_array.
uuid_array Массив uuid. Можно указывать вместе с параметром uuid.
from_host Домен звонящего.
caller_id_number 

Номер звонящего.

caller_id_name Имя звонящего.
to_host Домен вызываемого.
destination_number Номер назначения.
start_stamp_from Метка начала звонка ОТ. Если не указать параметр — в ответе будет статистика за сутки (время GMT- 0).
start_stamp_to Метка начала звонка ДО.
end_stamp_from Метка окончания звонка ОТ.
end_stamp_to Метка окончания звонка ДО.
duration_from Длительность всего звонка ОТ.
duration_to Длительность всего звонка ДО.
user_talk_time_from Длительность разговора ОТ.
user_talk_time_to Длительность разговора ДО.
accountcode 

По типу - inbound/outbound/local/missed.

(warning) При запросе на accountcode:missed будут возвращаться все входящие звонки с длительностью разговора < 6 секунд.

download Если параметр указан, то вместо массива данных будет возвращен URL для скачивания файла записей звонков. Если найден 1 звонок, то время жизни ссылки: 200 секунд, иначе — 1 час.

(warning) Для запроса необходим хотя бы один параметр.

Таблица параметров для ответов:

ПараметрПримечаниеОписание параметра
uuid Уникальный идентификатор сессии.
caller_id_name Имя звонящего.
caller_id_number Номер звонящего.
destination_number Номер назначения.
from_host Домен звонящего.
to_host Домен вызываемого.
start_stamp Время начала звонка.
end_stamp Время окончания звонка.
duration Общая длительность звонка.
user_talk_time Длительность разговора.
hangup_cause Статус звонка. Например, NORMAL_CLEARING.
accountcode Тип звонка - inbound/outbound/local/missed.
gateway Имя транка, если в звонке был задействован транк (trunkName).

(warning) Возможна задержка до 1 минуты между завершением звонка и его доступностью при использовании API.

Поиск

Запрос

URL: api.onlinepbx.ru/example.onpbx.ru/mongo_history/search.json.

POST /example.onpbx.ru/mongo_history/search.json HTTP/1.1

Host: api.onlinepbx.ru

Date: Wed, 15 May 2019 11:28:12 +0500

Accept: application/json

Content-Type: application/x-www-form-urlencoded

x-pbx-authentication: 851820698626a8efd84bec1d50ba7435:OGE5ZWMwNzY3YTQ2Njk5OGJlYmY1YWJkYWJiOWVhNDRiZmZhMDYzYg==

Content-MD5: 4550ae37ac6dced628d114d439f6d2e0

Content-Length: 18

start_stamp_from=1557901661

 

 



Ответ

HTTP/1.1 200 OK

Date: Wed, 15 May 2019 06:37:07 GMT

Server: Apache

X-Powered-By: PHP/5.6.35-pl1-gentoo

Set-Cookie: PHPSESSID=asdjvppklt3jr87g79qmbaj2d3; path=/

Expires: Thu, 19 Nov 1981 08:52:00 GMT

Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0

Pragma: no-cache

Access-Control-Allow-Origin: *

Access-Control-Allow-Methods: POST, GET, OPTIONS

Access-Control-Allow-Headers: Content-Type,Content-MD5,x-pbx-authentication,x-pbx-date

Vary: Accept-Encoding

Content-Length: 1041

Content-Type: text/json;charset=UTF-8

{"status":1,"comment":"","data":[{"_id":[],"uuid":"04d0d625-1d79-4c71-aca8-8ec0e0deaa3b","caller_id_name":"400","caller_id_number":"400","destination_number":"100","from_host":"example.onpbx.ru","to_host":"example.onpbx.ru","start_stamp":1557901661,"end_stamp":1557901661,"duration":0,"user_talk_time":0,"hangup_cause":"NORMAL_CLEARING","accountcode":"inbound"},{"_id":[],"uuid":"aa2786e5-c160-4a2e-8038-de3e699cca5c","caller_id_name":"400","caller_id_number":"400","destination_number":"100","from_host":"example.onpbx.ru","to_host":"example.onpbx.ru","start_stamp":1557901682,"end_stamp":1557901682,"duration":0,"user_talk_time":0,"hangup_cause":"NORMAL_CLEARING","accountcode":"inbound"},{"_id":[],"uuid":"59274018-cb5c-4faa-bada-310cf022b7f1","caller_id_name":"400","caller_id_number":"400","destination_number":"100","from_host":"example.onpbx.ru","to_host":"example.onpbx.ru","start_stamp":1557901683,"end_stamp":1557901684,"duration":1,"user_talk_time":0,"hangup_cause":"NORMAL_CLEARING","accountcode":"inbound"}]}

Скачивание записи конкретного звонка

Запрос

URL: api.onlinepbx.ru/example.onpbx.ru/mongo_history/search.json.

POST /example.onpbx.ru/mongo_history/search.json HTTP/1.1

Host: api.onlinepbx.ru

Date: Wed, 15 May 2019 11:39:13 +0500

Accept: application/json

Content-Type: application/x-www-form-urlencoded x-pbx-authentication: 662d142961414ec862e2b86f6c2c88d0:NWJlNDExMzE2NDEwZTg4Y2Q4YzFhM2U1YmY4YmVmZmM3NDhkMjI2ZA==

Content-MD5: b7c687227c0f3f6ebb6318717b10e4d1

Content-Length: 52

uuid=59274018-cb5c-4faa-bada-310cf022b7f1&download=1

Ответ

HTTP/1.1 200 OK

Date: Wed, 15 May 2019 06:39:14 GMT

Server: Apache

X-Powered-By: PHP/5.6.35-pl1-gentoo

Set-Cookie: PHPSESSID=0t55lsg3cnrsfedu13vjbo7540; path=/

Expires: Thu, 19 Nov 1981 08:52:00 GMT

Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0

Pragma: no-cache

Access-Control-Allow-Origin: *

Access-Control-Allow-Methods: POST, GET, OPTIONS

Access-Control-Allow-Headers: Content-Type,Content-MD5,x-pbx-authentication,x-pbx-date

Vary: Accept-Encoding

Content-Length: 137

Content-Type: text/json;charset=UTF-8

{"status":1,"comment":"","data":"https:\/\/example.onpbx.ru\/download\/xZ7i85zBBNIbyyPWwo6e54Gpfg07ESxrQLuu3cuT9XaDSLRw\/rec.mp3"}

Скачивание нескольких записей звонков tar архивом

Запрос

URL: api.onlinepbx.ru/example.onpbx.ru/mongo_history/search.json.

POST /example.onpbx.ru/mongo_history/search.json HTTP/1.1

Host: api.onlinepbx.ru

Date: Wed, 15 May 2019 11:43:00 +0500

Accept: application/json

Content-Type: application/x-www-form-urlencoded x-pbx-authentication: fd47e6bfbc1ea79233c5d58005241844:ZTMyNDkwOTM2MGIwNGRjZDc2NzAyYzlkNTkwNDhjNTVhOTFiZGU0ZQ==

Content-MD5: 8c6b4b3a9abf7c3a4ab2e67290ba2f74

Content-Length: 38

start_stamp_from=1557901661&download=1

 

Ответ

HTTP/1.1 200 OK

Date: Wed, 15 May 2019 06:43:01 GMT

Server: Apache

X-Powered-By: PHP/5.6.35-pl1-gentoo

Set-Cookie: PHPSESSID=vejvfrlkahpcqnfqgbiqhnk3l6; path=/

Expires: Thu, 19 Nov 1981 08:52:00 GMT

Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0

Pragma: no-cache

Access-Control-Allow-Origin: *

Access-Control-Allow-Methods: POST, GET, OPTIONS

Access-Control-Allow-Headers: Content-Type,Content-MD5,x-pbx-authentication,x-pbx-date

Vary: Accept-Encoding

Content-Length: 141

Content-Type: text/json;charset=UTF-8

{"status":1,"comment":"","data":"https:\/\/example.onpbx.ru\/download_batch\/?key=HWq7ZkOoro8BZLjYTFQokVS1vv9Xe9RTg1HJQnMxEfD1lrBF8Q"}

 

 

(warning) При запросе звонков с accountcode=missed вернутся звонки с accountcode=inbound. Связано с тем, что пропущенные звонки — это входящий звонок (разговор меньше 6 секунд и разговор со звонящим не состоялся позже в течение суток). Пропущенные хранятся в базе как входящие.

(warning) Если сделать запрос только с одним параметром accountcode=missed, то вернутся все пропущенные звонки за текущие сутки.

К содержанию


 

ICM (Интеллектуальный менеджер контактов)

Поиск контакта

Таблица параметров:

ПараметрПримечаниеОписание параметра
out_num Внешний номер
int_num Внутренний номер сотрудника
date_from Дата последнего изменения от (RFC-2822)
date_to Дата последнего изменения до (RFC-2822)
creation_date_from Дата создания от (RFC-2822)
creation_date_to Дата создания до (RFC-2822)

(warning) Для запроса необходим хотя бы один параметр

Запрос

URL: api.onlinepbx.ru/example.onpbx.ru/icm/search.json

POST /example.onpbx.ru/icm/search.json HTTP/1.1

Host: api.onlinepbx.ru
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:42.0) Gecko/20100101 Firefox/42.0
Accept: application/json
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
x-pbx-date: Thu, 28 Apr 2016 09:18:00 GMT
Content-Type: application/x-www-form-urlencoded; charset=UTF-8;
Content-MD5: ef760dd2ac332e4648eb90d51349a7ca
x-pbx-authentication: 9acd73e82cbd9af4efbcf444fe04b9ff:NDY2N2I0MDQzODE4Y2U3MDRmYWMyZDkwMThjYTVkZTc3YmY2MzAzOQ==
Content-Length: 18
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

out_num=0123456789

Ответ

HTTP/1.1 200 OK
Date: Thu, 28 Apr 2016 09:18:00 GMT
Server: Apache
X-Powered-By: PHP/5.5.18-pl0-gentoo
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: POST, GET, OPTIONS
Access-Control-Allow-Headers: Content-Type,Content-MD5,x-pbx-authentication,x-pbx-date
Content-Length: 155
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: text/json

{"status":1,"comment":"","data":[{"out_num":"0123456789","out_name":"","num":"100","block":"","note":"","date":"1461835032","creation_date":"1461832032"}]}


 

Добавить контакт

Таблица параметров:

ПараметрПримечаниеОписание параметра
out_numобязательноВнешний номер
out_name Имя контакта
int_numобязательноВнутренний номер сотрудника
block Защита от изменений 1/0 (включена/выключена)
note Примечание
Запрос

URL: api.onlinepbx.ru/example.onpbx.ru/icm/add.json

POST /example.onpbx.ru/icm/add.json HTTP/1.1

Host: api.onlinepbx.ru
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:42.0) Gecko/20100101 Firefox/42.0
Accept: application/json
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
x-pbx-date: Thu, 28 Apr 2016 09:20:13 GMT
Content-Type: application/x-www-form-urlencoded; charset=UTF-8;
Content-MD5: df1dba2e21d11732f37a9328b63e6800
x-pbx-authentication: 9acd73e82cbd9af4efbcf444fe04b9ff:ODM2MDRiZTAxZTJjNTNmZGE5Y2FiN2FmMDk1N2FhY2JmYTFkYWZiNw==
Content-Length: 71
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

out_num=9876543210&out_name=Client&int_num=200&note=icm%20api%20example

Ответ

HTTP/1.1 200 OK
Date: Thu, 28 Apr 2016 09:20:13 GMT
Server: Apache
X-Powered-By: PHP/5.5.18-pl0-gentoo
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: POST, GET, OPTIONS
Access-Control-Allow-Headers: Content-Type,Content-MD5,x-pbx-authentication,x-pbx-date
Content-Length: 35
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: text/json

{"status":1,"comment":"","data":""}


 

Изменить контакт

Таблица параметров:

ПараметрПримечаниеОписание параметра
out_numобязательноВнешний номер
out_name Имя контакта
int_numобязательноВнутренний номер сотрудника
block Защита от изменений 1/0 (включена/выключена)
note Примечание
Запрос

URL: api.onlinepbx.ru/example.onpbx.ru/icm/edit.json

POST /example.onpbx.ru/icm/edit.json HTTP/1.1

Host: api.onlinepbx.ru
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:42.0) Gecko/20100101 Firefox/42.0
Accept: application/json
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
x-pbx-date: Thu, 28 Apr 2016 09:22:25 GMT
Content-Type: application/x-www-form-urlencoded; charset=UTF-8;
Content-MD5: 57301486b1fc5818fb0918e7b04e6f09
x-pbx-authentication: 9acd73e82cbd9af4efbcf444fe04b9ff:ODc4Yzg4YmZiMmJmNDJmZGVhNmZkMzRlZjQ4M2FmZWRiOWQ1MjQyNQ==
Content-Length: 53
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

out_num=9876543210&block=1&note=icm%20block%20example

Ответ

HTTP/1.1 200 OK
Date: Thu, 28 Apr 2016 09:22:25 GMT
Server: Apache
X-Powered-By: PHP/5.5.18-pl0-gentoo
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: POST, GET, OPTIONS
Access-Control-Allow-Headers: Content-Type,Content-MD5,x-pbx-authentication,x-pbx-date
Content-Length: 35
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: text/json

{"status":1,"comment":"","data":""}

 

 

 

К содержанию


 

Пользователи

Добавить пользователя

Таблица параметров:

ПараметрПримечаниеОписание параметра
numобязательноВнутренний номер пользователя
passобязательноПароль
name Имя (латинскими буквами)
delay1 Задержка 1
tr1 Номер при недоступности 1
delay2 Задержка 2
tr2 Номер при недоступности 2
delay3 Задержка 3
tr3 Номер при недоступности 3
Запрос

URL: api.onlinepbx.ru/example.onpbx.ru/user/add.json

POST /example.onpbx.ru/user/add.json HTTP/1.1

Host: api.onlinepbx.ru
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:42.0) Gecko/20100101 Firefox/42.0
Accept: application/json
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
x-pbx-date: Thu, 28 Apr 2016 09:34:57 GMT
Content-Type: application/x-www-form-urlencoded; charset=UTF-8;
Content-MD5: 70940e43342e9df70ab32c68fb3a0d60
x-pbx-authentication: 9acd73e82cbd9af4efbcf444fe04b9ff:OTk0MTM1OGZlODcyMDZlMGRmMTJjYTZiNDI1MTNjOGMzODM3ODg2OA==
Content-Length: 46
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

num=300&pass=uOnNcdx8YrR8H&name=Example%20User

Ответ

HTTP/1.1 200 OK
Date: Thu, 28 Apr 2016 09:34:57 GMT
Server: Apache
X-Powered-By: PHP/5.5.18-pl0-gentoo
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: POST, GET, OPTIONS
Access-Control-Allow-Headers: Content-Type,Content-MD5,x-pbx-authentication,x-pbx-date
Content-Length: 35
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: text/json

{"status":1,"comment":"","data":""}


 

Изменить пользователя

Таблица параметров:

ПараметрПримечаниеОписание параметра
numобязательноВнутренний номер пользователя
passобязательноПароль
name Имя (латинскими буквами)
delay1 Задержка 1
tr1 Номер при недоступности 1
delay2 Задержка 2
tr2 Номер при недоступности 2
delay3 Задержка 3
tr3 Номер при недоступности 3
Запрос

URL: api.onlinepbx.ru/example.onpbx.ru/user/edit.json

POST /example.onpbx.ru/user/edit.json HTTP/1.1

Host: api.onlinepbx.ru
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:42.0) Gecko/20100101 Firefox/42.0
Accept: application/json
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
x-pbx-date: Thu, 28 Apr 2016 09:36:36 GMT
Content-Type: application/x-www-form-urlencoded; charset=UTF-8;
Content-MD5: 93e4036aeea6f77edfd627396c8ec060
x-pbx-authentication: 9acd73e82cbd9af4efbcf444fe04b9ff:NGM0NWUwNmM5MjRlNGRlNDM3NmJhYTQ3NDNkYjMyMGMyMWZlYmQ4Zg==
Content-Length: 45
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

num=300&pass=cA7ApxgqJpdE3&delay1=10&tr1=5000

Ответ

HTTP/1.1 200 OK
Date: Thu, 28 Apr 2016 09:36:37 GMT
Server: Apache
X-Powered-By: PHP/5.5.18-pl0-gentoo
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: POST, GET, OPTIONS
Access-Control-Allow-Headers: Content-Type,Content-MD5,x-pbx-authentication,x-pbx-date
Content-Length: 35
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: text/json

{"status":1,"comment":"","data":""}


 

Получить

Таблица параметров:

ПараметрПримечаниеОписание параметра
numобязательноВнутренний номер пользователя
name Имя (латинскими буквами)
delay1 Задержка 1
tr1 Номер при недоступности 1
delay2 Задержка 2
tr2 Номер при недоступности 2
delay3 Задержка 3
tr3 Номер при недоступности 3
Запрос

URL: api.onlinepbx.ru/example.onpbx.ru/user/get.json

POST /example.onpbx.ru/user/get.json HTTP/1.1

Host: api.onlinepbx.ru
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:42.0) Gecko/20100101 Firefox/42.0
Accept: application/json
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
x-pbx-date: Thu, 28 Apr 2016 09:38:10 GMT
Content-Type: application/x-www-form-urlencoded; charset=UTF-8;
Content-MD5: 51163ef87bc2e99cb965b7a17ca85fd2
x-pbx-authentication: 9acd73e82cbd9af4efbcf444fe04b9ff:Njg2YmE4YzM5YWVkYTgzOWEyNzFmMjFlZDIxY2MyMzQ4M2Q3ZDlhNg==
Content-Length: 7
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

num=300

Ответ

HTTP/1.1 200 OK
Date: Thu, 28 Apr 2016 09:38:10 GMT
Server: Apache
X-Powered-By: PHP/5.5.18-pl0-gentoo
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: POST, GET, OPTIONS
Access-Control-Allow-Headers: Content-Type,Content-MD5,x-pbx-authentication,x-pbx-date
Content-Length: 127
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: text/json

{"status":1,"comment":"","data":{"name":"Example User","tr1":"5000","tr2":"","tr3":"","delay1":"10","delay2":"0","delay3":"0"}}


 

Получить список внутренних номеров пользователей

Запрос

URL: api.onlinepbx.ru/example.onpbx.ru/user/get.json

POST /example.onpbx.ru/user/get.json HTTP/1.1

Host: api.onlinepbx.ru
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:42.0) Gecko/20100101 Firefox/42.0
Accept: application/json
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
x-pbx-date: Thu, 28 Apr 2016 09:39:06 GMT
Content-Type: application/x-www-form-urlencoded; charset=UTF-8;
Content-MD5: d41d8cd98f00b204e9800998ecf8427e
x-pbx-authentication: 9acd73e82cbd9af4efbcf444fe04b9ff:MTFkMzc2NDQxZjNiYjA3ZTk2YTU4YzA0ZTExZmE4ODBkZTE1NWM2Yg==
Content-Length: 0
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

Ответ

HTTP/1.1 200 OK
Date: Thu, 28 Apr 2016 09:39:06 GMT
Server: Apache
X-Powered-By: PHP/5.5.18-pl0-gentoo
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: POST, GET, OPTIONS
Access-Control-Allow-Headers: Content-Type,Content-MD5,x-pbx-authentication,x-pbx-date
Content-Length: 64
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: text/json

{"status":1,"comment":"","data":["103","101","100","102","300"]}

 

 

К содержанию


 

Информация о балансе на аккаунте

URL: api.onlinepbx.ru/example.onpbx.ru/balance/get.json

Таблица параметров:

ПараметрПримечаниеОписание параметра
data Баланс на аккаунте в onlinePBX.
Ответ

{"status":1,"comment":"","data":"100"}

К содержанию


 

Получение статуса номеров

URL: api.onlinepbx.ru/example.onpbx.ru/trunks/get.json

Таблица параметров:

ПараметрПримечаниеОписание параметра
number Номер телефона.
name Имя номера телефона, передаваемое в поле.
display name  
description 

Название модуля внешнего номера в onlinePBX.

destination Номер назначения.
use_for_call_forwarding Использовать этот номер для переадресации.
gateway id модуля внешнего номера в onlinePBX.
status Статус регистрации номера.
Ответ

{"status":1,"comment":"","data":

[{"number":"1101","name":"88001006729","description":"88001006729","destination":"6100","use_for_call_forwarding":"0","gateway":"0b2ffb284748173c2134174c03b35843","status":"REGED"},

{"number":"74999385724","name":"74999385724","description":"test number

OnlinePBX","destination":"","use_for_call_forwarding":"0","gateway":"d094581e3ad02fdc493e15fae7996594","status":"REGED"}]}

К содержанию


 

Факсы

Загрузить PDF на сервер

Таблица параметров:

ПараметрПримечаниеОписание параметра
lineобязательноВнутренний номер факс линии
fileобязательно

Наша библиотека обратится к файлу на вашем сервере и перекодирует его в base64, после чего отправит его на наш сервер

Запрос

URL: api.onlinepbx.ru/example.onpbx.ru/fax/upload.json

POST /example.onpbx.ru/fax/upload.json HTTP/1.1

Host: api.onlinepbx.ru
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:42.0) Gecko/20100101 Firefox/42.0
Accept: application/json
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
x-pbx-date: Thu, 12 May 2016 15:44:24 GMT
Content-Type: application/x-www-form-urlencoded; charset=UTF-8;
Content-MD5: 235540fefe40fda840309c5a4edecd6a
x-pbx-authentication: 9acd73e82cbd9af4efbcf444fe04b9ff:ZmE5MDk2MTk0MDYzZWUwZTU3ZjljNzFkZjJlMDZjMjVjNDBkODUyYQ==
Content-Length: 10935
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

line=32&file%5Bname%5D=pdf-sample.pdf&file%5Bdata%5D=JVBERi0xLjMNJeLjz9MNCjcgMCBvYmoNPDwvTGluZWFyaXplZCAxL0wgNzk0NS9PIDkvRSAzNTI0L04gMS9UIDc2NTYvSCBbIDQ1MSAxMzddPj4NZW5kb2JqDSAgICAgICAgICAgICAgICAgICAgICAgDQoxMyAwIG9iag08PC9EZWNvZGVQYXJtczw8L0NvbHVtbnMgNC9QcmVkaWN0b3IgMTI%2BPi9GaWx0ZXIvRmxhdGVEZWNvZGUvSURbPDREQzkxQTE4NzVBNkQ3MDdBRUMyMDNCQjAyMUM5M0EwPjxGNkM5MkIzNjhBOEExMzQwODQ1N0ExRDM5NUEzN0VCOT5dL0luZGV4WzcgMjFdL0luZm8gNiAwIFIvTGVuZ3RoIDUyL1ByZXYgNzY1Ny9Sb290IDggMCBSL1NpemUgMjgvVHlwZS9YUmVmL1dbMSAyIDFdPj5zdHJlYW0NCmjeYmJkEGBgYmCyARIMIIKxAUgwpwIJNkcg8eUYAxMjwzSQLAMjucR%2Fxp1fAAIMAEykBvANCmVuZHN0cmVhbQ1lbmRvYmoNc3RhcnR4cmVmDQowDQolJUVPRg0KICAgICAgICANCjI3IDAgb2JqDTw8L0ZpbHRlci9GbGF0ZURlY29kZS9JIDY5L0xlbmd0aCA1OC9TIDM4Pj5zdHJlYW0NCmjeYmBgYGFgYPzPAATcNgyogJEBJMvRgCzGAsUMDA0M3Azc0x50JoA4zAwMWgIQLYwsAAEGAL%2FiBRkNCmVuZHN0cmVhbQ1lbmRvYmoNOCAwIG9iag08PC9NZXRhZGF0YSAxIDAgUi9QYWdlcyA1IDAgUi9UeXBlL0NhdGFsb2c%2BPg1lbmRvYmoNOSAwIG9iag08PC9Db250ZW50cyAxMSAwIFIvQ3JvcEJveFswIDAgNTk1IDg0Ml0vTWVkaWFCb3hbMCAwIDU5NSA4NDJdL1BhcmVudCA1IDAgUi9SZXNvdXJjZXMgMTQgMCBSL1JvdGF0ZSAwL1R5cGUvUGFnZT4%2BDWVuZG9iag0xMCAwIG9iag08PC9GaWx0ZXIvRmxhdGVEZWNvZGUvRmlyc3QgOTQvTGVuZ3RoIDc3My9OIDEzL1R5cGUvT2JqU3RtPj5zdHJlYW0NCmjevFRtb9owEP4r%2FgPgl9hxIlVI0I6u0lqhJls%2FRPmQgguRQoISV6P%2FfncJLoG1K6XSiMz55e58vue545IwwhXhnibcJyKAlSaeCAgPiOeDCImUighGVMiI4CQUoCYIZ1oS4YGt5kRIsGIhEeAokLAGFcYkubigl1VR1dEmmxtcNAovY%2BR%2BNKLftvY6spnFg%2BuI4%2FXdwbQqLexNBcYAWzSOBQbQTSXe3k19vLibBnhnZz6rq3lkbEJnV1Mam61NR6OEXmbF%2FfUEr8rW6ywRQwE%2FiPRQpvQ2s3W%2BTdhQcnQ%2BFBwdDxkPPRCe0rjSXEFe2JDzUKAImEIdjZENQ8VUSh9WuTWzKi9t0m0ReOGQBSFEk0IY0Zg8ZUVjaHSLpoLG9%2FRmYUqb2xcav2zMPj%2BjEehf5U9Ppjbl3DQJp4%2FPRWFsulMs59UiL5et3iRrDCaQRi%2Frx6p4PURYMVXR86NFI7TkNK5%2BljkoGMJ3ScUztG%2BdjZs5RERCpiB%2Fm%2B8mX64sYfTKdPsDwTmdFtmyAca0VpNJtU0GPtBn4GkkgQfMYDJI29O7bG3ouM6zYjCpisVtTG9sVuTzcbksDPiNrFn%2FAip6%2BzDwqjrf2Ko%2BfN2BF%2FdG%2BpCX47LJX9fTvG7s5SqrXXx7d0hsfPCPbKfBub9PTv1sYpel1hBcL%2ByqSYRGSn7ta2nyKn3O39Dxff2hH6X81rovuxMXpZPuDi8IWy3P89I%2BwEHI3wPYdwDLHsDKR4CZBoCxUzCmewDH%2Bdo0d%2Bb3fbXOyln0DsrsY4z%2FdnQW0IIfAa3lKUCrw2RDjWPa2tGmVu3%2FT4UcQe1me6iOAXXQO8hCKd%2FQlLCr2KHEyHCOo08ADcPt49i9A6ggeie7uBgj%2F%2BvTPku%2F1GV8BSQUypHQ08dd5nzqOfPzCOcdEg40Tmosny3JMOiXpNRdSXLBfMyGeL8k277ZZeYoRQOuPtOF%2F%2Bn3vNypo2IV%2FIxi3X%2BnFuipPfeDjsxccbr%2FrqgP%2BzHu9IoRCtEVo4tiV9JAiD8CDAA%2B0IrxDQplbmRzdHJlYW0NZW5kb2JqDTExIDAgb2JqDTw8L0ZpbHRlci9GbGF0ZURlY29kZS9MZW5ndGggMTUzMD4%2Bc3RyZWFtDQpIibRXS2%2FjNhBGr%2F4Vc1uqiBW9H8d0tynQ02IroIduD7LEJCpk0RDppPlT%2FY2dB2l7nS0KLFoEUPgacuabmW%2FGP3Sb267LIIXuYZMWcVJAgn8yytI8rqukgrqscZ7k0O03t%2B9tCYPlYwnYYXP70y8pPNrNNomTJKugGzY0qhroXja%2FqbsoTeJMjdG2jlNldhqibUpD3GjiWg3RNlNrtK3iCnd7Bx8%2F3MP9RAuNmrWNfu9%2BJh0Lr2MmCmbQtHGbkXJZG%2BeZKMc6JK3XIaMR6zDiu3%2FBR7O6fjdr%2BGBQhyRu1XDc68XBfVTGucJFWlv3uJmjgqjLZ4Xa8ObnCCZLqieqh%2BMyPevV9rMsPEwzWZXhyKx7FONV9xRGh5WMb5W2en32L%2Bsow2%2B4cZ7ZzAS2aZyW0H1gCJPGG9K2mRhiHqIcYYGI79dRgaDxRNbN4uzN5TxK8LvymKyKC9WzjHPTEm1b9MsjuadRN3ySRQc%2BIaKzOYq05S0RXkZ4lFWZH54mkbFRosDIvV5RL8GXvcpTYrLFm0XKWzEamR5JUdJUX4i6G5AXdbQtcc9r3dMs9waOorGIWQuIFWHafe%2BjogiRSSMCEwGE%2FnCYp6F3k1mgR8MOc%2B%2FIiXC0rEam9AjOwLBqCdEe3yqU0zC5OPgsi3PvspTC8BRxjJkEUCvYTh7HRWYjX1rypaWaxXMSQg8Somgc6NkfG%2FiYW80yDYQXQ5XhEsXwOFm3TrujmGJRPzAYpIPZawsUK1cBJqDUJ1BqUfywGsyQvQUU3Jtl5hda8h1mmQK9sFqYtua4OM2BXRNGL5N7Ik0HVs9LDcCpYZ96MgBTC4M%2BV9PyGNFlgt%2FtvWcfAbJhJFkrUkh9F3V%2FUPpX%2FlBcVJj%2BeAYBlZ3GE4NwV0id0htWtSXfc7e8mkXfoJNfX540elOEPaugEV6YYUm9cJ0KKDCgx8xBI7BIT9G2wUAjr2aKDYzhbiYqyBPGSZmjxPiiCR4OIZ4HAqHAE%2BJA%2FDCm%2FYxihoJOhfmw%2BoUeccMkYLy2rCu5sQjGpj6006SpROFPmrXr%2BTtGkk40XjE7ChVzpH3SA69NxHuNOkxyZOHjTiIVk4gEZExRdL7E8wwNEQOPBk8N3yCn9nK5aOJkYsFiVMrK5AcYcBcqL4Rxpd5FmIJVEEMPyPKlnvClBhZ2%2BvKiIx%2ByXj0yYIu1jbjoq%2BnwhiNGs7zDYEXw4akX7iYoiQPgzB%2BeGij1LDLHP1EGCZzTtqK0tVdJgPqU35gHxdfyQEJjG4ZkEhFSTYx7jVyotD6hsAUoLy4qzxeVclE%2Fv%2FSvXByR%2BJEF4LBOSESDL6ZoiVpXzTNZc%2FPrVTXHRGov8i7JTvj7ggfMy1RbUUUmoca%2FMwkTUQXjxVE%2FiyPEP%2FU1vZDfi%2BK%2FxDb0GWndppfQpgRtjnQ3cTGqEdqe%2FxOZIgwvyIYp4fEaZdQKEHoogwSO1efLrWufUOvwluXkcS6NtfqzH97inF3hHDRvQ4dEFYNJh6OWbOi5QXF6pNIr7YtsEN5hex1n3yz5fobKLtYu7kOseXBkKwmtTL2jMBgKNPmZwr5MvSqkHvLt2gc3F%2Fysb3awNGdpiAes9Q7rlVAakfJlG0QlXQTZBmx%2FqFkJzQxnJ9WkSkmtXoyD2VgspkdNKRy6gbMtLIG2SNvmDbpq29LsnCo%2BjJ8xDZgQM%2FY2Zh3G9bRgWnCiZGp%2FQL5CNtxN8%2BSIiNX%2FyQzbs5oUvkHLDvnpQfyPSQR3g4xWbss%2F6X4MLdFKvbA%2F1zN%2B5BJ2CJVGgm40L8ts%2BpG7KoksrKG7U%2BELr2D8ZESPQfTUxiCJ7i5Z%2BhwqeXMR9UQOFE90QYW6YdtEs7CqsSX9dyC%2FmV1zgbBoGt8%2BvTfsSYz4gb9OflOcOsEaSfFUOHNPvumpvabxKnksG2D3sjr7kyvLYSmRZSqCPKXKGIQm%2F0NGjlKnzaPBX3n9tL9p9D6Tm2QR3fdVF4SI4ah9pHAFjl9EXUYghV0eY680%2FEukCF0CF2hl3QXtEelReBHnc6uh4Ff67sSBP3abvwcArRiH3QoNCmVuZHN0cmVhbQ1lbmRvYmoNMTIgMCBvYmoNPDwvRmlsdGVyL0ZsYXRlRGVjb2RlL0xlbmd0aCAyMDg%2BPnN0cmVhbQ0KSIlUkL0OwjAMhPc%2BhUcQQ9rOVRdYOvAjCuxp4laRiBO56dC3JykFxBBL9uXTnS32zaEhE0Bc2KkWA%2FSGNOPoJlYIHQ6GoChBGxXWbqnKSg8iwu08BrQN9Q6qKhPXKI6BZ9i0s%2B3cc5dvQZxZIxsaYHMr7o84aCfvn2iRAuRQ16Cxz8T%2BKP1JWozyii7zYjV0GkcvFbKkAaHKi%2FpdkPS%2F9iG6%2Ft3%2BvlZlXpZ1FomPluC0yddbTcwx1rLukihlMITfi3jnk2V62UuAAQBDyGk%2FCg0KZW5kc3RyZWFtDWVuZG9iag0xIDAgb2JqDTw8L0xlbmd0aCAzNjU2L1N1YnR5cGUvWE1ML1R5cGUvTWV0YWRhdGE%2BPnN0cmVhbQ0KPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNC4yLjEtYzA0MyA1Mi4zNzI3MjgsIDIwMDkvMDEvMTgtMTU6MDg6MDQgICAgICAgICI%2BCiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI%2BCiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyI%2BCiAgICAgICAgIDxkYzpmb3JtYXQ%2BYXBwbGljYXRpb24vcGRmPC9kYzpmb3JtYXQ%2BCiAgICAgICAgIDxkYzpjcmVhdG9yPgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaT5jZGFpbHk8L3JkZjpsaT4KICAgICAgICAgICAgPC9yZGY6U2VxPgogICAgICAgICA8L2RjOmNyZWF0b3I%2BCiAgICAgICAgIDxkYzp0aXRsZT4KICAgICAgICAgICAgPHJkZjpBbHQ%2BCiAgICAgICAgICAgICAgIDxyZGY6bGkgeG1sOmxhbmc9IngtZGVmYXVsdCI%2BVGhpcyBpcyBhIHRlc3QgUERGIGZpbGU8L3JkZjpsaT4KICAgICAgICAgICAgPC9yZGY6QWx0PgogICAgICAgICA8L2RjOnRpdGxlPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdGVEYXRlPjIwMDAtMDYtMjlUMTA6MjE6MDgrMTE6MDA8L3htcDpDcmVhdGVEYXRlPgogICAgICAgICA8eG1wOkNyZWF0b3JUb29sPk1pY3Jvc29mdCBXb3JkIDguMDwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8eG1wOk1vZGlmeURhdGU%2BMjAxMy0xMC0yOFQxNToyNDoxMy0wNDowMDwveG1wOk1vZGlmeURhdGU%2BCiAgICAgICAgIDx4bXA6TWV0YWRhdGFEYXRlPjIwMTMtMTAtMjhUMTU6MjQ6MTMtMDQ6MDA8L3htcDpNZXRhZGF0YURhdGU%2BCiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczpwZGY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vcGRmLzEuMy8iPgogICAgICAgICA8cGRmOlByb2R1Y2VyPkFjcm9iYXQgRGlzdGlsbGVyIDQuMCBmb3IgV2luZG93czwvcGRmOlByb2R1Y2VyPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iPgogICAgICAgICA8eG1wTU06RG9jdW1lbnRJRD51dWlkOjA4MDVlMjIxLTgwYTgtNDU5ZS1hNTIyLTYzNWVkNWMxZTJlNjwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ%2BdXVpZDo2MmQ2YWU2ZC00M2M0LTQ3MmQtOWIyOC03YzRhZGQ4ZjllNDY8L3htcE1NOkluc3RhbmNlSUQ%2BCiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY%2BCjwveDp4bXBtZXRhPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw%2FeHBhY2tldCBlbmQ9InciPz4NCmVuZHN0cmVhbQ1lbmRvYmoNMiAwIG9iag08PC9GaWx0ZXIvRmxhdGVEZWNvZGUvRmlyc3QgNC9MZW5ndGggNDgvTiAxL1R5cGUvT2JqU3RtPj5zdHJlYW0NCmjeMlUwULCx0XfOL80rUTDU985MKY62BIoFxeqHVBak6gckpqcW29kBBBgA1ncLgA0KZW5kc3RyZWFtDWVuZG9iag0zIDAgb2JqDTw8L0ZpbHRlci9GbGF0ZURlY29kZS9GaXJzdCA0L0xlbmd0aCAxNjcvTiAxL1R5cGUvT2JqU3RtPj5zdHJlYW0NCmjePMvBCsIwEEXRX5mdDaKdxCpVSqFY3AkuBNexSelA6EAyRfx7A4qPu3znAAhNU3aLTByLwVkKb1Weo7dCPPdWfNGfDOYdzFGj0VivtV4hrn6vrK40RE48Cjw4Oqi3qMoruz%2FWuwxrvTeV3m2w%2BuJbZLcMPhZdxk8r0FMSCsFHqLYII0d40Oz4lVR5Jwm%2BuE%2BUIGdBfBK49RcYKXjVth8BBgBnZztkDQplbmRzdHJlYW0NZW5kb2JqDTQgMCBvYmoNPDwvRGVjb2RlUGFybXM8PC9Db2x1bW5zIDMvUHJlZGljdG9yIDEyPj4vRmlsdGVyL0ZsYXRlRGVjb2RlL0lEWzw0REM5MUExODc1QTZENzA3QUVDMjAzQkIwMjFDOTNBMD48RjZDOTJCMzY4QThBMTM0MDg0NTdBMUQzOTVBMzdFQjk%2BXS9JbmZvIDYgMCBSL0xlbmd0aCAzNy9Sb290IDggMCBSL1NpemUgNy9UeXBlL1hSZWYvV1sxIDIgMF0%2BPnN0cmVhbQ0KaN5iYmBgYGLkPcLEwD%2BViYGhh4mBkYWJ8bEkkM0IEGAAKlkDFA0KZW5kc3RyZWFtDWVuZG9iag1zdGFydHhyZWYNCjExNg0KJSVFT0YNCg%3D%3D

Ответ

HTTP/1.1 200 OK
Date: Thu, 12 May 2016 15:44:24 GMT
Server: Apache
X-Powered-By: PHP/5.5.18-pl0-gentoo
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: POST, GET, OPTIONS
Access-Control-Allow-Headers: Content-Type,Content-MD5,x-pbx-authentication,x-pbx-date
Content-Length: 35
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: text/json

{"status":1,"comment":"","data":""}

 

 

 

К содержанию


 

Примеры использования

Пример на PHP

Таблица параметров:

ПараметрПримечаниеОписание параметра
domain Ваш SIP домен
apikey API ключ, возьмите его из панели управления
new Указание на обязательное получение нового ключа
data_key_array Получаем готовый PHP массив с ключами
secret_key Секретный ключ, полученный в предыдущем запросе
key_id Открытый ключ, точнее его идентификатор
url Указываем URL запроса
post Указываем POST данные запроса
data_array Получаем готовый массив с ответом

(warning) Для запроса необходим хотя бы один параметр

Запрос

Библиотека api.onlinepbx.ru/lib/onpbx_http_api.php_v1.1.zip

// Подключение библиотеки
require_once './onpbx_http_api.php';


// Получение секретного ключа
$domain = 'demo.onpbx.ru';
$apikey = '56ofsz1scn3r790324l4fw2843597822';
$new = false;
$data_key_array = onpbx_get_secret_key($domain, $apikey, $new);


// Совершение запросов
$secret_key = $data_key_array['data']['key'];
$key_id = $data_key_array['data']['key_id'];
$url = 'api.onlinepbx.ru/'.$domain.'/call/now.json';
$post = array('from' => '202', 'to'=>'203');
$data_array = onpbx_api_query($secret_key, $key_id, $url, $post);


 

Пример на Javascript

Таблица параметров:

ПараметрПримечаниеОписание параметра
var domain Ваш SIP домен
var apikey API ключ, возьмите его из панели управления
var new_key Сгенерировать новый ключ
var secret_key Секретный ключ
var key_id Идентификатор ключа
var url Указываем URL запроса
var post Указываем POST данные запроса

(warning) Для запроса необходим хотя бы один параметр

Запрос

Библиотека api.onlinepbx.ru/lib/onpbx_http_api.js

// Подключение библиотеку
<script type="text/javascript" src="https://api.onlinepbx.ru/lib/onpbx_http_api.js">>
<script type="text/javascript" >

// Определение переменных
var domain = 'demo.onpbx.ru';
var apikey = '56ofsz1scn3r790324l4fw2843597822';
var new_key = false;
var secret_key = "";
var key_id = "";

// Получение секретного ключа и идентификатора

onpbx_get_secret_key(domain, apikey, new_key, function(json){
if(!json['status']){
return alert(json['status'] + ':' + json['comment']); //Ошибка при получении секретного ключа
}

var secret_key = json['data']['key'];
var key_id = json['data']['key_id'];

// Определение переменных запроса
var url = 'api.onlinepbx.ru/' + domain + '/call/now.json';
var post = {'from':'202', 'to':'203'};

// Объявление callback функции, которая будет вызвана после получения ответа от сервера
function query_callback(json){ alert(json['status'] + ':' + json['comment']); }

// Совершаем запрос
onpbx_api_query(secret_key, key_id, url, post, query_callback ); // Получение готового объекта с ответом

});
</script>

Write a comment…