注:
POST /api/v0.0.1/login?type={type}
名称 | 是否必需 | 类型 | 描述 |
username | 是 | String | 在 PBX 二次开发接口界面设置的用户名。 |
password | 是 | String |
将 PBX 二次开发接口界面设置的密码通过 MD5 加密。 填写加密后的32位小写密码。 |
port | 是 | String | 端口号,此端口号为第三方应用用于监听 API 发送的事件报告的端口号。 |
url | 否 | String | 第三方应用服务器获取 API 报告的 URL。注: 如果不带此参数,则 PBX 默认向第三方应用服务器的 IP 地址发送 API 报告。 |
version | 否 | String | 发送 API 事件报告格式的版本。注: 设置“version”:“1.0.2”可以修复 API 事件报告的语句不符合 JSON 格式的问题。 |
urltag | 否 | String |
指定 URL 的类型:
例如:第三方服务器 IP 地址为110.22.2.3;监听端口为8260;url设置为 report;则 PBX 发送 API 报告到110.22.2.3:8260/report 。
例如:第三方服务器 IP 地址为110.22.2.3;url 设置为110.22.2.3:8260/report;则 PBX 发送 API 报告到110.22.2.3:8260/report 。注: 使用绝对路径,可以避免复杂网络环境下,API 报告无法发送成功的问题。 |
名称 | 类型 | 描述 |
token | String | 调用接口凭证,所有的 API 请求都需用到该 token。 |
注:
30分钟内如果 API 和第三方应用没有任何交互(如:第三方应用发送 API 请求),则该 token 将被 IPPBX 系统清除。可通过心跳包接口延长 token 的有效时长,每发送一次心跳包可使 token 的有效时长延长为30分钟。
请求示例
POST /api/v1.1.0/login?type=json HTTP/1.1
Content-Type:application/json; charset=utf-8
Host: 172.16.101.37
{
"username": "xiaoshao",
"password": "e10adc3949ba59abbe56e057f20f883e",
"port": "8260",
"version": "0.0.1",
"url": "172.16.6.150:8260",
"urltag": 1
}
POST /api/v1.1.0/login?type=xml HTTP/1.1
Content-Type:application/xml; charset=utf-8
Host: 172.16.101.37
<?xml version="1.0" encoding="UTF-8" ?>
<xml>
<username>api</username>
<password>e10adc3949ba59abbe56e057f20f883e</password>
<port>8260</port>
<version>0.0.1</version>
<url>172.16.6.150:8260</url>
<urltag>1</urltag>
</xml>
响应示例
第三方应用服务器登录成功。
HTTP/1.1 200 OK
Access-control-allow-origin: *
Access-control-allow-methods: GET, POST, OPTIONS, PUT, DELETE
{
"status": "Success",
"token": "813b621cfe8eecf445a2ce1f4a079ffe"
}
第三方应用服务器登录失败。
HTTP/1.1 200 OK
Access-control-allow-origin: *
Access-control-allow-methods: GET, POST, OPTIONS, PUT, DELETE
{
"status": "Failed",
"errno": "30003"
}