互億無線 > 詞條 > P > PHP實(shí)現(xiàn)語音通知功能

PHP實(shí)現(xiàn)語音通知功能

  • 代碼示例
  • API接口
  • 錯誤碼參照

PHP代碼示例

//接口類型:互億無線語音驗(yàn)證碼接口。
//賬戶注冊:請通過該地址開通賬戶http://user.ihuyi.com/register.html
//注意事項(xiàng):
//(1)調(diào)試期間,請仔細(xì)閱讀接口文檔;
//(2)請使用 APIID 及 APIKEY來調(diào)用接口,可在會員中心獲??;
//(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)用接口,可在會員中心獲取;
//(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();
        }
  
    }
  
}
                    
                    
                    
                    

1 接口描述

通過POST、 GET 方式進(jìn)行短信提交,數(shù)據(jù)編碼采用utf-8格式,24小時全天發(fā)送。

2 請求地址

http://api.voice.ihuyi.com/webservice/voice.php?method=Submit

3 請求參數(shù)

參數(shù)名稱 參數(shù)值描述 必填
account APIID(請登錄用戶中心【語音驗(yàn)證碼】-【產(chǎn)品縱覽】查看)
password 1、APIKEY(請登錄用戶中心【語音驗(yàn)證碼】-【產(chǎn)品縱覽】查看)
2、動態(tài)密碼(生成動態(tài)密碼方式請看該文檔末尾的說明)
mobile 接收手機(jī)號碼,只能提交1個號碼
content 驗(yàn)證碼(4-6位數(shù)字)
time Unix時間戳(10位整型數(shù)字,當(dāng)使用動態(tài)密碼方式時為必填)
format 返回格式(可選值為:xml或json,系統(tǒng)默認(rèn)為xml)

用戶通過http 或 https提交發(fā)送短信請求到服務(wù)器后,服務(wù)器會返回一串xml格式的字符串,SubmitResult結(jié)構(gòu)說明如下:

參數(shù)名稱 類型 描述
code int 返回值為2時,表示提交成功
smsid string 當(dāng)提交成功后,此字段為流水號,否則為0
msg string 提交結(jié)果描述

4 響應(yīng)示例

示例(成功)


 2 提交成功 60495654 

示例(失?。?/p>


 405 用戶名或密碼不正確 0 

5 響應(yīng)參數(shù)

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 您的帳戶疑被惡意利用,已被自動凍結(jié),如有疑問請與客服聯(lián)系。

6 請求示例

http://api.voice.ihuyi.com/webservice/voice.php?method=Submit&account=APIID&password=APIKEY&mobile=手機(jī)號碼&content=1125

語音發(fā)送錯誤碼參照:

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 您的帳戶疑被惡意利用,已被自動凍結(jié),如有疑問請與客服聯(lián)系。

余額查詢錯誤碼參照:

code msg
2 查詢成功
400 非法ip訪問
401 帳號不能為空
402 密碼不能為空
405 用戶名或密碼不正確
4050 賬號被凍結(jié)

自助開通云通信賬戶
免費(fèi)試用,試用滿意再購買

PHP實(shí)現(xiàn)語音通知功能相關(guān)的資訊內(nèi)容

PHP實(shí)現(xiàn)語音通知功能相關(guān)的資訊詳情

語音通知接口被廣泛應(yīng)用于網(wǎng)站、APP等互聯(lián)網(wǎng)及移動互聯(lián)網(wǎng)產(chǎn)品中,為了方便開發(fā)者集成語音通知服務(wù),語音通知平臺會面向開發(fā)者用戶提供完整的語音通知開發(fā)相關(guān)文檔,包含開放的語音通知接口api,采用通用的http或webservice,webservice就是使用soap協(xié)議且能處理一些比較復(fù)雜的數(shù)據(jù),而http?service通過post和get方式,方便集成各種軟件系統(tǒng)。同時,一些語音通知平臺也會針對如PHP等開發(fā)語言提供語音通知DEMO實(shí)例代碼,支持語音通知接口二次開發(fā)。語音通知平臺也會提供簡單易用的SUBHOOK?,在設(shè)置的事件觸發(fā)后,將消息發(fā)送到你指定的回調(diào)?URL,通過SUBHOOK功能,開發(fā)者能夠?qū)崟r接收從網(wǎng)關(guān)發(fā)回的短信回執(zhí)數(shù)據(jù)和語音通知的發(fā)送狀態(tài),甚至能實(shí)時接收到用戶回復(fù)的內(nèi)容。

通過PHP短信接口接入語音通知之后,企業(yè)可根據(jù)自身需求將語音通知服務(wù)應(yīng)用于多種場景中,常見的場景有賬號注冊、賬號登陸、支付確認(rèn)、系統(tǒng)通知、到賬通知、支付確認(rèn)等等,一經(jīng)接入,系統(tǒng)會根據(jù)相應(yīng)設(shè)置自動觸發(fā)短信發(fā)送,將相應(yīng)類型的語音通知實(shí)時反饋給用戶,有效提升用戶體驗(yàn),同時優(yōu)化商務(wù)、售后、運(yùn)營等流程,節(jié)約企業(yè)人力物力成本。

在IT、化工、建材、能源、房產(chǎn)、工商等多個領(lǐng)域,語音通知都具有難以替代的作用,其在身份驗(yàn)證、及時觸達(dá)領(lǐng)域有著其他產(chǎn)品所不具備的能力,是現(xiàn)代企業(yè)安全體系中不可或缺的一環(huán)。

語音驗(yàn)證碼通過PHP短信接口實(shí)現(xiàn)系統(tǒng)對接之后可以實(shí)現(xiàn)全自動發(fā)送,用戶在發(fā)送請求之后的5秒內(nèi)即可收到語音驗(yàn)證碼,簡單快捷,在過去,人們登錄賬號通常只有賬密登陸一種方式,不同網(wǎng)站的賬密往往又不盡相同,忘記密碼是常有的事情,但現(xiàn)在,用戶可以選擇用語音驗(yàn)證碼登錄,有效解決了用戶需要記住不同賬號密碼的問題,提升了用戶體驗(yàn)!

語音通知的接入通常不復(fù)雜,短信平臺會提供完善的PHP語音通知接口,用戶只需按照流程接入,如有疑問可向短信平臺的技術(shù)人員尋求技術(shù)幫助,此外,另一需要注意的就是如要上線語音通知服務(wù)必須完成企業(yè)認(rèn)證/實(shí)名認(rèn)證,如未完成企業(yè)認(rèn)證,則不可上線語音通知服務(wù)。

短信接口對接是短信平臺上的基本數(shù)據(jù)提交方式,主要有HTTP/HTTPS接口、webservice接口和cmpp接口,其中HTTP/HTTPS接口是最常用的數(shù)據(jù)提交方式,通常分為GET和POST兩種方式,GET方式提交數(shù)據(jù)的速度更快,post方式提交數(shù)據(jù)的量更大。短信接口接入的方式主要應(yīng)用于企業(yè)自身的產(chǎn)品。

想要了解更多關(guān)于PHP實(shí)現(xiàn)語音通知功能的相關(guān)內(nèi)容,請點(diǎn)擊查看助文檔,十分鐘即可快速接入語音短信服務(wù)。

顯示更多

PHP實(shí)現(xiàn)語音通知功能相關(guān)的問答內(nèi)容

5分鐘快速自助開通免費(fèi)試用賬戶

在線咨詢
電話咨詢

服務(wù)熱線:

4008 808 898

服務(wù)熱線(工作時間):

4008 808 898

業(yè)務(wù)咨詢(非工作時間):

售后咨詢(非工作時間):

驗(yàn)證碼已發(fā)送到您的手機(jī),請查收!

輸入驗(yàn)證碼后,點(diǎn)擊“開通體驗(yàn)賬戶”按鈕可立即開通體驗(yàn)賬戶。

收不到短信驗(yàn)證碼?
互億無線不提供接碼服務(wù),接碼用戶請勿點(diǎn)擊開通按鈕。
×