API: Voice/MultiXSend - 語音模板一對多呼叫
概覽
voice/multixsend
是 SUBMAIL 的語音通知一對多(即1條API請求發(fā)送多個號碼,并可以靈活控制每個聯(lián)系人的文本變量)和群發(fā) API 。
與 voice/xsend
API 一樣,voice/multixsend
提供完整且強(qiáng)大的語音通知呼叫功能,voice/multixsend
解決開發(fā)者在應(yīng)用場景中的一對多或群發(fā)的需求,極大的提高 API 并發(fā)效率。
使用方法與 voice/xsend
相似,不同的是 voice/multixsend
去除了 to 和 vars 參數(shù)將其整合到 multi
參數(shù)中,可以將聯(lián)系人的手機(jī)號碼,和不同的文本變量整合,實(shí)現(xiàn)一對多場景中靈活控制文本變量的功能。
開發(fā)者們可在提交 voice/multixsend
API 時,將 to
和 vars
參數(shù)編碼為 JSON
字符串格式添加到 multi
參數(shù)中提交,multi
參數(shù)的數(shù)據(jù)模型請參考以下示例:
multi=[{
"to":"15*********",
"vars":{
"name":"kevin",
"code":123456
}
},{
"to":"18*********",
"vars":{
"name":"jacky",
"code":236554
}
},{
"to":"13*********",
"vars":{
"name":"tom",
"code":236554
}]
完整的 voice/multixsend
POST 請求請參考以下示例:
appid=your_app_id
project=EM9sd
multi=[{
"to":"15*********",
"vars":{
"name":"kevin",
"code":123456
}
},{
"to":"18*********",
"vars":{
"name":"jacky",
"code":236554
}
},{
"to":"13*********",
"vars":{
"name":"tom",
"code":236554
}]
signature=your_app_key
URL
https://api-v4.mysubmail.com/voice/multixsend
http 請求方式
請求方式 | content-type設(shè)置 |
---|---|
http post | multipart/form-data 、x-www-form-urlencoded 、application/json |
是否需要授權(quán)
是
參閱 API 授權(quán)和驗(yàn)證機(jī)制
請求參數(shù)
參數(shù) | 類型 | 必需/可選 | 默認(rèn) | 描述 |
---|---|---|---|---|
appid | string | 必需 | 無 | 在 SUBMAIL 應(yīng)用集成中創(chuàng)建的語音應(yīng)用 ID |
project | string | 必需 | 無 | 項(xiàng)目標(biāo)記,在 SUBMAIL > Voice >項(xiàng)目中查看你所創(chuàng)建的語音模板標(biāo)記。請參見獲取項(xiàng)目 ID |
multi | json string | 必需 | 無 | 收件人 to 聯(lián)系人參數(shù)和 vars 文本變量的整合模式,請將 to 和 vars 整合成 json字符串格式提交(數(shù)據(jù)模型請參考本頁概覽頁面提交打multi參數(shù)示例) |
timestamp | UNIX 時間戳 | 可選 | 無 | 參閱 API 授權(quán)與驗(yàn)證機(jī)制 > Timestamp UNIX 時間戳 |
sign_type | string | 可選 | normal | API 授權(quán)模式( md5 or sha1 or normal )參閱 API 授權(quán)與驗(yàn)證機(jī)制 > 授權(quán)和驗(yàn)證方式 |
sign_version | string | 可選 | 1 | signature加密計(jì)算方式(當(dāng)sign_version傳2時,multi參數(shù)不參與加密計(jì)算) |
signature | string | 必需 | 無 | 應(yīng)用密匙或數(shù)字簽名 參閱 API授權(quán)與驗(yàn)證機(jī)制 > 授權(quán)和驗(yàn)證方式 |
注意: |
multi 參數(shù)要求嚴(yán)格的 JSON 格式,以下是將參數(shù)轉(zhuǎn)換為 JSON 格式的注意事項(xiàng)
json 字符串必須以雙引號包含
json 字符串必須是 utf8 編碼
不能有多余的逗號 如:[1,2,]
json 字符串首尾必須被大括號{}包含
PS:大多數(shù)的語言都有專屬的JSON解析器( ENCODING 和 DECODEING 方法)。如 PHP,首先將需要的變量以數(shù)組形式(如 $var[‘key’]=value) 創(chuàng)建后,使用 json_encode($var)方法創(chuàng)建 JSON 字符串;
代碼示例
發(fā)送一封測試短信
POST URL
https://api-v4.mysubmail.com/voice/multixsend.json
POST DATA
appid=your_app_id
&project=ThJBE4
&multi=[{
"to":"15*********",
"vars":{
"name":"kevin",
"code":123456
}
},{
"to":"18*********",
"vars":{
"name":"jacky",
"code":236554
}
}]
&signature=your_app_key
返回
[
{
"status":"success",
"to":"15*********",
"send_id":"093c0a7df143c087d6cba9cdf0cf3738",
"fee":1,
"money_account":14197
},{
"status":"success",
"to":"18*********",
"send_id":"093c0a7df143c087d6cba9cdf0cf3738",
"fee":1,
"money_account":14196
}
]
返回值
請求成功
[
{
"status":"success",
"to":"15*********",
"send_id":"093c0a7df143c087d6cba9cdf0cf3738",
"fee":1,
"money_account":14197
},{
"status":"success",
"to":"18*********",
"send_id":"093c0a7df143c087d6cba9cdf0cf3738",
"fee":1,
"money_account":14196
},
]
請求失敗
[
{
"status":"error",
"to":"15*********",
"code":1xx,
"msg":"error message",
},{
"status":"success",
"to":"18*********",
"send_id":"093c0a7df143c087d6cba9cdf0cf3738",
"money_account":14196
}
]
注:voice/multixsend API
中返回碼將包含成功和失敗的狀態(tài) ,API 在一條API中發(fā)起對多個號碼的請求,所以返回狀態(tài)也是按多條API計(jì)算的,例如:單次請求中包含3個聯(lián)系人,其中2個聯(lián)系人請求成功,1個聯(lián)系人請求失敗時,此時的API返回狀態(tài),將包含3條狀態(tài)數(shù)組(即2條 status:success
,1條 status:error
的狀態(tài))