ืขืกืงืื ืืืืจื ืืื ืชืืคืกืื ืืืคืื ืื ืงืืืืื ืืืื ืืืืืื ืืืืฉื ืช: ืชืงืฉืืจืช ืกืืืืจืืช ืืืืืื ื ืืืืืช ืืืืื ืืช ืืชืืืช ืฉื ืขืืืืื, ืจืฉืชืืช ืืืจืชืืืช ืืืฉืืจืื ืืืืืืื ืื ืขืจืืฅ ืชืงืฉืืจืช ืงื ืืืืืจ ืืืชืจ. ืืื ืืขืืื ืืงืฆื ืฉื ืืืชืืจืื ืฉืืื, ืืจืืืืืช ืืฉืจืืืืช ืืืคืืืช ืืืชืจ ืืืืชืจ ืืืืืช ืืื: ืื ืขืืืจืืช ืืขื ื, ืื ืืืืืช ืืืืฆืขืืช ืืืฉืง ืืื ืืจื ื ืืืฉืืืืืช ืืืขืจืืืช ืืืจืืช ืืืืฆืขืืช API. ืืคืืกื ืื ื ืกืคืจ ืืื ืืืื ืคืื ืงืฆืืืช ืืฉ ื-Rostelecom Virtual PBX API ืืืืฆื ืืขืืื ืขื ืืคืื ืงืฆืืืช ืืขืืงืจืืืช ืฉื ื- PBX ืืืืืจืืืืื ืืืืฆืขืืชื.
ืืืฉืืื ืืขืืงืจืืช ืฉื ื-API ืฉื PBX ืืืืจืืืืื ืฉื Rostelecom ืืื ืืื ืืจืืงืฆืื ืขื CRM ืื ืืชืจื ืืืจื. ืืืืืื, ื-API ืืืืฉื ืืืืื'ืืื ืฉื "ืืชืงืฉืจ ืืืืจื" ื"ืืชืงืฉืจ ืืืชืจ" ืขืืืจ ืืขืจืืืช ืื ืืืื ืืขืืงืจืืืช: WordPress, Bitrix, OpenCart. ื-API ืืืคืฉืจ:
- ืงืืืช ืืืืข, ืืืืขื ืขื ืกืืืืก ืืืืฆืืข ืฉืืืืช ืืคื ืืงืฉื ืืืขืจืืช ืืืฆืื ืืช;
- ืงืื ืงืืฉืืจ ืืื ื ืืืงืืืช ืืฉืืื;
- ื ืื ืืงืื ืคืจืืืจื ืืืืื ืืืฉืชืืฉืื;
- ืืฉื ืืืืข ืขื ืืฉืชืืฉ ืืืจืืืื ืืืืจืืืืืืช;
- ืืงืฉ ืืช ืืืืกืืืจืื ืฉื ืืืืืื ืืืืืืื ืืฉืืืืช;
- ืืขืื ืืืื ืฉืืืืช.
ืืื ืขืืื ื-API
ื-API ืฉื ืืืื ืืืจืฆืื ืืืืขืจืืช ืืืืฆืื ืืช ืืงืืืืื ืืื ืืจืืงืฆืื ืื ืขื ืื ืืืืฆืขืืช ืืงืฉืืช HTTP. ืืืฉืืื ืืืืฉื, ืื ืื ืืืขืจืืช ืืืืืจ ืืช ืืืชืืืืช ืืื ืฆืจืืืืช ืืืืืข ืืงืฉืืช ื-API ืืืื ืืฉ ืืฉืืื ืืงืฉืืช ืื-API. ืืืขืจืืช ืืืืฆืื ืืช ืืืืืช ืืืืืช ืืชืืืช ืฆืืืืจืืช ืื ืืืฉื ืืืืื ืืจื ื ืขื ืืืฉืืจ SSL ืืืชืงื.
ืื ืืืฉืืื ืืืืฉื, ืื ืื ืืืืืืื ืืืื ืืืืืื ืืช ืืงืืจืืช ืืืงืฉืืช ืืขืช ืืืฉื ื-API ืืืืฆืขืืช IP.
ืื ื ืืงืืืื ืืืืข ืขื ืืฉืชืืฉื ืืจืืืืืช ืืืจืืืืืืืช
ืืื ืืงืื ืจืฉืืื ืฉื ืืฉืชืืฉืื ืื ืงืืืฆืืช, ืฆืจืื ืืฉืืื ืืงืฉื ืืืจืืืืื ืืืืจืืืืืืช ืืฉืืื /users_info.
{
"domain":"example.ru"
}
ืืชืืืื ืชืงืืื ืจืฉืืื ืฉืชืืืื ืืฉืืืจ.
{
"result":0,
"resultMessage":"",
"users":[
{
"display_name":"test_user_1",
"name":"admin",
"pin":^_^quotสquot^_^,
"is_supervisor":true,
"is_operator":false,
"email":"[email protected]","recording":1
},
{
"display_name":"test_user_2",
"name":"test",
"pin":^_^quotสฟquot^_^,
"is_supervisor":true,
"is_operator":false,
"email":"",
"recording":1
}
],
"groups":
[
{
"name":"testAPI",
"pin":^_^quotวดquot^_^,
"email":"[email protected]",
"distribution":1,
"users_list":[^_^quotสquot^_^,^_^quotสฟquot^_^]
}
]
ืฉืืื ืื ืขืืืจืช ืฉื ื ืืขืจืืื. ืืื ืขื ืืฉืชืืฉื ืืืืืื, ืืื ืขื ืงืืืฆืืช ืืืืืื. ืืงืืืฆื ืืฉ ืื ืืคืฉืจืืช ืืฆืืื ืืืื ืฉืืืฉืื ืืืงืฉื.
ืขืืืื ืืืืข ืขื ืฉืืื ื ืื ืกืช
ืืืืืจ ืืืืคืื ืื ืืืจืืื ืืช ืืืขืจืืืช CRM ืฉืื ืืช ืืืกื ืืื ืืขืืืืื ืืืงืืืืื ืืื ืืจืืงืฆืื ืขื ืืงืืืืช ืืืืจื ืืช ืขืืืื ืืฉืืืืช ืื ืื ืกืืช. ืืืืืื, ืืฉืืื ืืืงืื ื ืืืื, CRM ืืืื ืืคืชืื ืืช ืืืจืืืก ืฉืื, ืื-CRM ื ืืชื ืืฉืืื ืฉืืื ืืืงืื ืืืืืจ ืืืชื ืืขืืื.
ืืื ืืงืื ืืืืข ืขื ืงืจืืืืช API, ืขืืื ืืืฉืชืืฉ ืืฉืืื /get_number_info, ืืฉืจ ืืืฆืจ ืจืฉืืืช ืฉืืืืช ืขื ืืืืข ืขื ืืงืืืฆื ืฉืืืื ืืืคืฆืช ืืฉืืื. ื ื ืื ืฉืืกืคืจ ืืืจืืืื ืืืืจืืืืืืช ืืงืื ืฉืืื ื ืื ืกืช ืืืืกืคืจ 1234567890. ืืื ืืืจืืืืื ืชืฉืื ืืช ืืืงืฉื ืืืื:
{
"session_id":"SDsnZugDFmTW7Sec",
"timestamp":"2019-12-27 15:34:44.461",
"type":"incoming",
"state":"new",
"from_number":"sip:</i^_^gt๏ฟฝlt&i;gt^_^@192.168.0.1",
"from_pin":"",
"request_number":"sip:</i^_^gt๏ฟฝlt&i;gt^_^@1192.168.0.1",
"request_pin":^_^quotษquot^_^,
"disconnect_reason":"",
"is_record":""
}
ืืืืจ ืืื ืขืืื ืืืืจ ืืช ืืืืคื /get_number_info. ืืฉ ืืืฆืข ืืช ืืืงืฉื ืืืฉืจ ืฉืืื ื ืื ืกืช ืืืืขื ืืงื ืื ืื ืก ืืคื ื ื ืืชืื ืืฉืืืืช. ืืืืื ืืื ืืชืงืืืช ืชืืืื ืืืงืฉื ืชืื ืืืื ืื ืงืื, ืืฉืืื ืื ืืชืืช ืืคื ืืืืืื ืฉื ืงืืขื ืืชืืื.
ืืืืื ืืืืคื ืืฆื ื-CRM.
if ($account) {
$data = [
'result' => 0,
'resultMessage' => 'ะะฑะพะฝะตะฝั ะฝะฐะนะดะตะฝ',
'displayName' => $account->name,
//'PIN' => $crm_users,
];
}
else
{
$data = [
'result' => 0,
'resultMessage' => 'ะะฑะพะฝะตะฝั ะฝะต ะฝะฐะนะดะตะฝ',
'displayName' => 'ะะตะธะทะฒะตััะฝัะน ะฐะฑะพะฝะตะฝั '.$contact,
//'PIN' => crm_users,
];
}
return $data;
ืชืืืื ืืืืืคื.
{
"result":0,
"resultMessage":"ะะฑะพะฝะตะฝั ะฝะฐะนะดะตะฝ",
"displayName":"ะะฒะฐะฝะพะฒ ะะฒะฐะฝ ะะฒะฐะฝะพะฒะธั +1</i> 234-56-78-90<i>"
}
ืื ื ืขืืงืืื ืืืจ ืืืฆื ืืืืจืืืื ืืงืืืืช ืฉืืืืช
ืืืจืืืืื ืืืืจืืืืืืช ืฉื Rostelecom, ืืงืืืช ืฉืืืืช ืืืคืขืืช ืืืฉืืื ืืืืฉื ืฉืื. ืืืืฆืขืืช ื-API, ืืชื ืืืื ืืขืงืื ืืืจ ืืืฆื ืฉื ืคืื ืงืฆืื ืื. ืืขืช ืขืืืื ืกืืื ืฉืืื ื ืฉืืื_ืืืจืืขืื ืืชื ืืืื ืืจืืืช ืืช ืืืื 'ืื_ืฉืื', ืืฉืจ ืืืืืข ืืืฉืชืืฉ ืขื ืืฆื ืืขืจื: ื ึธืืึนื ืคืืจืืฉื ืฉืคืื ืงืฆืืืช ืืงืืืช ืืฉืืืืช ืฉื ืืืฉืชืืฉ ืืืคืขืืช.
ืืื ืืืืจืื ืืงืืื, ืขืืื ืืืฉืชืืฉ ืืืืื ืืคืขืืช ืืฉืืื session_id ืืฉืืื ืืงืฉื ื api.cloudpbx.rt.ru/get_record.
{
"session_id":"SDsnZugDFmTW7Sec"
}
ืืชืืืื ืชืงืืื ืงืืฉืืจ ืืื ื ืืืืจืืช ืงืืืฅ ืขื ืืงืืืช ืืฉืืื.
{
"result": ^_^quot๏ฟฝquot^_^,
"resultMessage": "ะะฟะตัะฐัะธั ะฒัะฟะพะปะฝะตะฝะฐ ััะฟะตัะฝะพ",
"url": "https://api.cloudpbx.rt.ru/records_new_scheme/record/download/501a8fc4a4aca86eb35955419157921d/188254033036"
}
ืืื ืืืกืื ืืงืืฆืื ืืืืืจ ืืืืืจืืช ืืืฉืืื ืืืืฉื ืฉืื. ืืืืจ ืืื ืืงืืืฅ ืืืืืง.
ืกืืืืกืืืงื ืืืืืื
ืืืฉืืื ืืืืฉื ืฉืื ืืืฃ ื ืคืจื ืชืืื ืืจืืืช ืกืืืืกืืืงืืช ืืืืืื ืขื ืื ืืฉืืืืช ืืืืืื ืืกื ื ืื ืืคื ืกืืืืก ืืืื. ืืจื ื-API, ืชืืืื ืขืืื ืืขืื ืืช ืืงืจืืื ืืฉืืื /call_events:
{
"session_id":"SDsnZugDFmTW7Sec",
"timestamp":"2019-12-27 15:34:59.349",
"type":"incoming",
"state":"end",
"from_number":"sip:</i^_^gt๏ฟฝlt&i;gt^_^@192.168.0.1",
"from_pin":"",
"request_number":"sip:</i^_^gt๏ฟฝlt&i;gt^_^@192.168.0.1",
"request_pin":^_^quotสquot^_^,
"disconnect_reason":"",
"is_record":"true"
}
ืื ืชืงืจื ืืฉืืื call_info ืืขืืืื ืืืขืจื ืืืฆืืช ืืฉืืื ืืืขืจืืช ื-CRM.
{
"session_id":"SDsnZugDFmTW7Sec"
}
ืืชืืืื, ืชืงืื ืืขืจื ื ืชืื ืื ืฉื ืืชื ืืขืื ืืื ืืืืกื ื ืชืื ืื ืืืืื CRM.
{
"result":0,
"resultMessage":"",
"info":
{
"call_type":1,
"direction":1,
"state":1,
"orig_number":"sip:</i^_^gt๏ฟฝlt&i;gt^_^@192.168.0.1",
"orig_pin":null,
"dest_number":"sip:</i^_^gt๏ฟฝlt&i;gt^_^@192.168.0.1",
"answering_sipuri":"[email protected]",
"answering_pin":^_^quotษquot^_^,
"start_call_date":^_^quot๏ฟฝquot^_^,
"duration":14,
"session_log":"0:el:123456789;0:ru:admin;7:ct:admin;9:cc:admin;14:cd:admin;",
"is_voicemail":false,
"is_record":true,
"is_fax":false,
"status_code":^_^quot๏ฟฝquot^_^,
"status_string":""
}
}
ืชืืื ืืช PBX ืืืจืืืืืืืช ืฉืืืืฉืืืช ื ืืกืคืืช
ืืืื ื-API, ืืืจืืืืื ืืืจืืืืืืช ืืฉ ืขืื ืืื ืชืืื ืืช ืฉืืืืฉืืืช ืืื ืชืืืื ืืืฉืชืืฉ. ืื ืืืฉื, ืืืืืจ ืืชืคืจืื ืงืืื ืืื ืืจืืงืืืื ืืฉืืืื ืชืงืฉืืจืช ืกืืืืจืืช ืื ืืืืช.
ืชืืืื ืงืืืืช ืืื ืืจืืงืืืืืช (IVR) ืืื ืื ืฉืื ื ืฉืืืขืื ืืืืฉืืจ ืืคื ื ืฉืืืื ืขืื ื. ืืขืืงืจื ืฉื ืืืจ, ืืืืืจ ืืืคืขืื ืืืงืืจืื ื ืฉืืคื ื ืฉืืืืช ืืืืืงืืช ืืืชืืืืืช ืืขืื ื ืขื ืืื ืฉืืืืช ืืืืคื ืืืืืืื. ืืงืจืื ื ืืชื ืืืื ืืขืืื ืขื IVR ืืจื ื-API: ืื ื ืืคืชืืื ืืขืช ืชืืื ื ืฉืชืืคืฉืจ ืืื ืืขืงืื ืืืจ ืืชืงืืืืช ืืฉืืื ืืจื ื-IVR ืืืงืื ืืืืข ืขื ืืงืฉืืช ืืืื ืืืข ืืืฉืจ ืืื ืื ื ืืฆื ืืชืคืจืื ืืงืืื.
ืืื ืืืขืืืจ ืืืคืื ืื ืืจืืื ืืช ืืืืคืื ืื ื ืืืืื, ืืชื ืืืื ืืืฉืชืืฉ ืืืืฉืืื softphone ืื ืืืคืขืื ืื ืคืจื ืืช ืฉืืจืืช ืืชืื ืกืืช ื ืืืืช ืงืืืขื (FMC). ืืื ืืืช ืืืฉืืืืช, ืืฉืืืืช ืืชืื ืืจืฉืช ืื ืืืื ื, ืืชืืคืฉืจืช ืขืืืื ืขื ืืกืคืจืื ืงืฆืจืื, ื ืืชื ืืืงืืื ืฉืืืืช ืืืฉืืืจ ืขืืืื ืกืืืืกืืืงืืช ืืืืืืช.
ืืืืื ืืื ืฉืืืฉืืจื softphone ืืงืืงืื ืืืื ืืจื ื ืืื ืืชืงืฉืจ, ืื ืื ืืื ื ืงืฉืืจืื ืืืคืขืื, ืืขืื FMC ืงืฉืืจ ืืืคืขืื ืกืคืฆืืคื, ืืื ื ืืชื ืืืฉืชืืฉ ืืื ืืคืืื ืืืืคืื ืื ืืฉื ืื ืขื ืืคืชืืจ.
ืืงืืจ: www.habr.com