驗(yàn)證碼短信
5秒達(dá)、99%到達(dá)率
適用于用戶注冊、會(huì)員登錄等場景
PHP代碼示例
//接口類型:互億無線語音驗(yàn)證碼接口。
//賬戶注冊:請通過該地址開通賬戶http://user.ihuyi.com/register.html
//注意事項(xiàng):
//(1)調(diào)試期間,請仔細(xì)閱讀接口文檔;
//(2)請使用 APIID 及 APIKEY來調(diào)用接口,可在會(huì)員中心獲??;
//(3)該代碼僅供接入互億無線短信接口參考使用,客戶可根據(jù)實(shí)際需要自行編寫;
header("Content-type:text/html; charset=UTF-8");
function Post($curlPost,$url){
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_NOBODY, true);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $curlPost);
$return_str = curl_exec($curl);
curl_close($curl);
return $return_str;
}
function xml_to_array($xml){
$reg = "/<(\w+)[^-->]*>([\\x00-\\xFF]*)<\\/\\1>/";
if(preg_match_all($reg, $xml, $matches)){
$count = count($matches[0]);
for($i = 0; $i < $count; $i++){
$subxml= $matches[2][$i];
$key = $matches[1][$i];
if(preg_match( $reg, $subxml )){
$arr[$key] = xml_to_array( $subxml );
}else{
$arr[$key] = $subxml;
}
}
}
return $arr;
}
$target = "http://api.voice.ihuyi.com/webservice/voice.php?method=Submit";
$mobile = '136xxxxxxxx';//手機(jī)號碼
$post_data = "account=用戶名&password=密碼&mobile=".$mobile."&content=1125";
//查看用戶名 登錄用戶中心->語音驗(yàn)證碼>產(chǎn)品總覽->API接口信息->APIID
//查看密碼 登錄用戶中心->語音驗(yàn)證碼>產(chǎn)品總覽->API接口信息->APIKEY
$gets = xml_to_array(Post($post_data, $target));
if($gets['SubmitResult']['code']==2){
echo '提交成功';
}
JAVA代碼示例
import java.io.IOException;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.NameValuePair;
import org.apache.commons.httpclient.methods.PostMethod;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import util.StringUtil;
//接口類型:互億無線語音驗(yàn)證碼接口。
//賬戶注冊:請通過該地址開通賬戶http://user.ihuyi.com/register.html
//注意事項(xiàng):
//(1)調(diào)試期間,請仔細(xì)閱讀接口文檔;
//(2)請使用 APIID 及 APIKEY來調(diào)用接口,可在會(huì)員中心獲??;
//(3)該代碼僅供接入互億無線短信接口參考使用,客戶可根據(jù)實(shí)際需要自行編寫;
public class sendsms {
private static String Url = "http://api.voice.ihuyi.com/webservice/voice.php?method=Submit";
public static void main(String [] args) {
HttpClient client = new HttpClient();
PostMethod method = new PostMethod(Url);
//client.getParams().setContentCharset("GBK");
client.getParams().setContentCharset("UTF-8");
method.setRequestHeader("ContentType","application/x-www-form-urlencoded;charset=UTF-8");
NameValuePair[] data = {//提交短信
new NameValuePair("account", "用戶名"),//查看用戶名 登錄用戶中心->語音驗(yàn)證碼>產(chǎn)品總覽->API接口信息->APIID
new NameValuePair("password", "密碼"),//查看密碼 登錄用戶中心->語音驗(yàn)證碼>產(chǎn)品總覽->API接口信息->APIKEY
new NameValuePair("mobile", "139xxxxxxxx"),//手機(jī)號碼
new NameValuePair("content", "1125"),
};
method.setRequestBody(data);
try {
client.executeMethod(method);
String SubmitResult = method.getResponseBodyAsString();
//System.out.println(SubmitResult);
Document doc = DocumentHelper.parseText(SubmitResult);
Element root = doc.getRootElement();
String code = root.elementText("code");
String msg = root.elementText("msg");
String voiceid = root.elementText("voiceid");
System.out.println(code);
System.out.println(msg);
System.out.println(voiceid);
if("2".equals(code)){
System.out.println("短信提交成功");
}
} catch (HttpException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (DocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
通過POST、 GET 方式進(jìn)行短信提交,數(shù)據(jù)編碼采用utf-8格式,24小時(shí)全天發(fā)送。
http://api.voice.ihuyi.com/webservice/voice.php?method=Submit
| 參數(shù)名稱 | 參數(shù)值描述 | 必填 |
| account | APIID(請登錄用戶中心【語音驗(yàn)證碼】-【產(chǎn)品縱覽】查看) | 是 |
| password | 1、APIKEY(請登錄用戶中心【語音驗(yàn)證碼】-【產(chǎn)品縱覽】查看) 2、動(dòng)態(tài)密碼(生成動(dòng)態(tài)密碼方式請看該文檔末尾的說明) |
是 |
| mobile | 接收手機(jī)號碼,只能提交1個(gè)號碼 | 是 |
| content | 驗(yàn)證碼(4-6位數(shù)字) | 是 |
| time | Unix時(shí)間戳(10位整型數(shù)字,當(dāng)使用動(dòng)態(tài)密碼方式時(shí)為必填) | 否 |
| format | 返回格式(可選值為:xml或json,系統(tǒng)默認(rèn)為xml) | 否 |
用戶通過http 或 https提交發(fā)送短信請求到服務(wù)器后,服務(wù)器會(huì)返回一串xml格式的字符串,SubmitResult結(jié)構(gòu)說明如下:
| 參數(shù)名稱 | 類型 | 描述 |
| code | int | 返回值為2時(shí),表示提交成功 |
| smsid | string | 當(dāng)提交成功后,此字段為流水號,否則為0 |
| msg | string | 提交結(jié)果描述 |
示例(成功)
2提交成功 60495654
示例(失?。?/p>
405用戶名或密碼不正確 0
| code | msg |
| 0 | 提交失敗 |
| 2 | 提交成功 |
| 400 | 非法ip訪問 |
| 401 | 帳號不能為空 |
| 402 | 密碼不能為空 |
| 403 | 手機(jī)號碼不能為空 |
| 4030 | 手機(jī)號碼已被列入黑名單 |
| 404 | 語音內(nèi)容不能為空 |
| 405 | 用戶名或密碼不正確 |
| 4050 | 賬號被凍結(jié) |
| 4051 | 剩余條數(shù)不足 |
| 4052 | 訪問ip與備案ip不符 |
| 406 | 手機(jī)格式不正確 |
| 407 | 短信內(nèi)容含有敏感字符 |
| 4070 | 語音驗(yàn)證碼內(nèi)容必須為4-6位數(shù)字 |
| 408 | 您的帳戶疑被惡意利用,已被自動(dòng)凍結(jié),如有疑問請與客服聯(lián)系。 |
http://api.voice.ihuyi.com/webservice/voice.php?method=Submit&account=APIID&password=APIKEY&mobile=手機(jī)號碼&content=1125
| code | msg |
| 0 | 提交失敗 |
| 2 | 提交成功 |
| 400 | 非法ip訪問 |
| 401 | 帳號不能為空 |
| 402 | 密碼不能為空 |
| 403 | 手機(jī)號碼不能為空 |
| 4030 | 手機(jī)號碼已被列入黑名單 |
| 404 | 語音內(nèi)容不能為空 |
| 405 | 用戶名或密碼不正確 |
| 4050 | 賬號被凍結(jié) |
| 4051 | 剩余條數(shù)不足 |
| 4052 | 訪問ip與備案ip不符 |
| 406 | 手機(jī)格式不正確 |
| 407 | 短信內(nèi)容含有敏感字符 |
| 4070 | 語音驗(yàn)證碼內(nèi)容必須為4-6位數(shù)字 |
| 408 | 您的帳戶疑被惡意利用,已被自動(dòng)凍結(jié),如有疑問請與客服聯(lián)系。 |
| code | msg |
| 2 | 查詢成功 |
| 400 | 非法ip訪問 |
| 401 | 帳號不能為空 |
| 402 | 密碼不能為空 |
| 405 | 用戶名或密碼不正確 |
| 4050 | 賬號被凍結(jié) |
自助開通云通信賬戶
免費(fèi)試用,試用滿意再購買
免費(fèi)開通 產(chǎn)品詳情 查看語音產(chǎn)品報(bào)價(jià)
isv.INVALI狀態(tài)碼原因分析:JSON參數(shù)不合法,只接受字符串值isv.INVALI錯(cuò)誤碼歸屬:阿里平臺isv.INVALI返回值解決方案:短信接口返回值為isv.INVALI時(shí),導(dǎo)致用戶無法正常接收短信,對公司的...
CB:0054狀態(tài)碼原因分析:移動(dòng)內(nèi)部錯(cuò)誤CB:0054錯(cuò)誤碼歸屬:移動(dòng)CB:0054返回值解決方案:短信接口返回值為CB:0054時(shí),導(dǎo)致用戶無法正常接收短信,對公司的業(yè)務(wù)正常開展造成不利影響。針對短信接口錯(cuò)誤碼為CB...
R:00181狀態(tài)碼原因分析:關(guān)機(jī)R:00181錯(cuò)誤碼歸屬:聯(lián)通R:00181返回值解決方案:短信接口返回值為R:00181時(shí),導(dǎo)致用戶無法正常接收短信,對公司的業(yè)務(wù)正常開展造成不利影響。針對短信接口錯(cuò)誤碼為R:0018...
DB:0501狀態(tài)碼原因分析:網(wǎng)絡(luò)鏈接異常DB:0501錯(cuò)誤碼歸屬:移動(dòng)DB:0501返回值解決方案:短信接口返回值為DB:0501時(shí),導(dǎo)致用戶無法正常接收短信,對公司的業(yè)務(wù)正常開展造成不利影響。針對短信接口錯(cuò)誤碼為DB...
R:00705狀態(tài)碼原因分析:暫停服務(wù)R:00705錯(cuò)誤碼歸屬:電信R:00705返回值解決方案:短信接口返回值為R:00705時(shí),導(dǎo)致用戶無法正常接收短信,對公司的業(yè)務(wù)正常開展造成不利影響。針對短信接口錯(cuò)誤碼為R:00...
語音短信接口一般采用http和webservice方式進(jìn)行調(diào)用。使用語音短信http接口的效率比較高一些,它支持客戶/服務(wù)器模式,運(yùn)行速度很快,而webservice遇到一些比較復(fù)雜麻煩的數(shù)據(jù)類型時(shí),處理起來更加有效。短信平臺通常會(huì)將語音短信能力進(jìn)行API封裝,開發(fā)者僅需拷貝幾行代碼,即可在網(wǎng)站、APP、系統(tǒng)中輕松實(shí)現(xiàn)語音驗(yàn)證碼、語音通知等短信內(nèi)容的自動(dòng)化發(fā)送。開發(fā)者用戶可以通過不同開發(fā)語言,如PHP進(jìn)行語音短信接口開發(fā)。一般短信平臺提供的語音短信發(fā)送服務(wù),可支持全國移動(dòng)、聯(lián)通、電信手機(jī)號碼,免除運(yùn)營商之間不同通訊協(xié)議的煩惱。為了更方便開發(fā)者進(jìn)行語音短信接入,短信平臺會(huì)預(yù)先為開發(fā)者提供各語言的DEMO示例供開發(fā)者使用,僅需少量代碼即可創(chuàng)建語音短信API請求。
語音短信基于三大運(yùn)營商的身份認(rèn)證能力,被廣泛應(yīng)用于互聯(lián)網(wǎng)、金融、電商、游戲等多個(gè)領(lǐng)域,按照應(yīng)用的屬性,語音短信又分為語音驗(yàn)證碼和語音通知兩種,語音驗(yàn)證碼通常應(yīng)用于與身份認(rèn)證相關(guān)的場景中,例如賬號注冊、賬號登錄、支付確認(rèn),企業(yè)通過PHP接口即可接入,語音通知通常應(yīng)用于會(huì)員通知相關(guān)的場景中,常見于物流、交通、互聯(lián)網(wǎng)等行業(yè),值得注意的是,語音短信不具備營銷能力,也不可能發(fā)送營銷相關(guān)的信息。
語音短信對于酒店、旅游、汽車、健身、小商品、交通、貿(mào)易等行業(yè)具有重要意義,幫助這些行業(yè)保障用戶信息安全,完善安全體系,過去用戶在進(jìn)行登錄、注冊、支付等操作時(shí),常常會(huì)遭遇網(wǎng)絡(luò)不法分子的攻擊,面臨信息安全泄露的危險(xiǎn),有了語音驗(yàn)證碼之后,這種情況得到了有效遏制,保障了用戶和企業(yè)的權(quán)益。
語音驗(yàn)證碼具有下發(fā)速度快、觸達(dá)更精準(zhǔn)、接入更靈活的特點(diǎn),通常來說,用戶從獲取驗(yàn)證碼到驗(yàn)證碼下發(fā),這中間的過程不會(huì)超過5秒鐘,避免用戶因?yàn)榈却斐傻牧魇В瑫r(shí),語音驗(yàn)證碼高達(dá)99.99%的觸達(dá)率也讓信息遺漏的可能性降到了最低。
PHP短信接口接入流程大致分為四步:注冊、測試、認(rèn)證、充值、正式接入。語音短信支持測試使用,用戶只需注冊登陸,即可領(lǐng)取測試短信條數(shù),完成技術(shù)對接,進(jìn)行短信測試之后,用戶完成企業(yè)認(rèn)證和賬戶充值,服務(wù)即可正式上線。
目前主流的短信接口標(biāo)準(zhǔn)主要有HTTP、HTTPS、SMPP、CMPP、SMGP、SGIP等,其中最為常用的是HTTP、HTTPS兩種短信接口協(xié)議,HTTP是超文本傳輸協(xié)議,信息是明文傳輸,簡捷快速,允許傳輸任意類型的數(shù)據(jù)對象,同時(shí)限制單次鏈接只處理一個(gè)請求,節(jié)省傳輸時(shí)間,但是HTTP協(xié)議是無狀態(tài)協(xié)議,對事務(wù)處理沒有記憶能力,缺少狀態(tài)必須重傳,這樣可能導(dǎo)致每次連接傳送的數(shù)據(jù)量增大。
更多關(guān)于PHP語音短信demo進(jìn)入幫助文檔查看相應(yīng)內(nèi)容,您可以通過幫助文檔了解更多,也可以點(diǎn)擊互億無線工作人員進(jìn)行咨詢。
互億無線:記錄調(diào)用短信接口報(bào)錯(cuò)的錯(cuò)誤碼,對應(yīng)官網(wǎng)短信服務(wù)開發(fā)文檔進(jìn)行修改、完善。如問題還未解決,可在官網(wǎng)首頁咨詢技術(shù)支持幫您協(xié)助處理。...
互億無線:(1)語音通知是沒有公用的現(xiàn)成模板,每個(gè)語音模板都需要您申請; (2)發(fā)送語音驗(yàn)證碼內(nèi)容可以使用默認(rèn)驗(yàn)證碼模塊的功能進(jìn)行發(fā)送支持無需單獨(dú)報(bào)備模板; (3)專享號碼需要單獨(dú)配置,無論驗(yàn)證碼或語音通知,都需要報(bào)備模板。...
互億無線:請先查看短信調(diào)用接口時(shí)是否出現(xiàn)異常情況,存在異常則表明短信請求并未提交至短信通道; 如短信接口調(diào)用正常,客戶未收到短信,可能與客戶終端手機(jī)、所處網(wǎng)絡(luò)等有關(guān),可以提供短信下發(fā)的號碼、時(shí)間至互億無線售后團(tuán)隊(duì)協(xié)助排查原因。...
互億無線:1.注冊賬號 2.賬號認(rèn)證 3.短信接口調(diào)試 4.購買短信套餐 5.設(shè)置短信簽名、添加短信模板 6.上線使用...
互億無線:開通測試賬戶 – 下載短信接口測試 – 簽訂合同、收款 – 賬戶充值 – 設(shè)置簽名/模板 – 正式使用。...