API
批量提交呼叫请求
POST
参数为json数组,数组元素为json对象,json对象包含如下属性:
Parameters | Description |
---|---|
server | SIP outbound服务器, 为invite协议的请求行地址,例如:
没有指定transport的默认都是udp协议,没有指定端口,默认就是5060,如果上一字段transport没有指定,则会根据server的transport来自动匹配走哪个transport发送。 如果指定上一字段的transport,会尝试使用指定的transport发送。 |
from | INVITE消息的from字段 |
to | INVITE消息的to字段 |
transport | transport的名字,使用获取transport列表中的字符串,用于指定注册信息通过哪个transport发送,可以不写此字段,不写则根据其他注册信息自动匹配。 |
report | 指定呼叫结束时回调的url,可以不指定,默认为配置文件配置的回调地址,否则提交到指定的url |
play | 指定媒体文件路径,在接通后,给对端播放RTP的内容,文件内容为已经编码的音频,例如目前支持PCMU通话,文件内容应当为PCMU编码格式。不指定则给对方播放全0的数据。 |
mode | 整数,指定媒体文件播放方式,需要结合play指定的文件。0 表示不会主动挂断,一直循环播放play文件,大于 0,则表示播放次数,例如 1 表示播放 play 文件 1 遍后自动挂机,10则表示播放10 遍后挂机。 |
time | 整数,单位秒,控制通话时长。不写本属性,或者设置为0,则表示不控制,设置为大于0的数,表示通话时间长短,例如设置10,则在接通10秒后,本方会主动挂断。 |
user | 帐号认证信息,在呼叫遇到服务器返回鉴权需求的时候,会使用user帐号下的认证信息进行认证,不写则没有认证信息。 |
$ curl -H 'Content-type:application/json' -d '[{"server":"sip:1009@192.168.1.67:6060","from":"<sip:1009@client.astercc.com>","to":"<sip:58889888@client.astercc.com>","user":"1009","play":"/usr/src/out.wav","mode":0,"time":60}]' http://127.0.0.1:11111/MakeCall
返回json数组,每个数组元素为json对象,包含3个属性,分别为
[
{
"call_id" : "4b9c7be8-ec16-4844-b8d0-0477cc8b6339", # 请求生成的通话标识,后面和呼叫有关的操作均需要。
"from" : "<sip:1009@client.astercc.com>", # 对应请求的from字段
"to" : "<sip:58889888@client.astercc.com>" # 对应请求的to字段
}
]