互億無(wú)線 > 詞條 > P > Python實(shí)現(xiàn)語(yǔ)音驗(yàn)證碼功能

Python實(shí)現(xiàn)語(yǔ)音驗(yàn)證碼功能

  • 代碼示例
  • API接口
  • 錯(cuò)誤碼參照

PHP代碼示例

//接口類型:互億無(wú)線語(yǔ)音驗(yàn)證碼接口。
//賬戶注冊(cè):請(qǐng)通過(guò)該地址開(kāi)通賬戶http://user.ihuyi.com/register.html
//注意事項(xiàng):
//(1)調(diào)試期間,請(qǐng)仔細(xì)閱讀接口文檔;
//(2)請(qǐng)使用 APIID 及 APIKEY來(lái)調(diào)用接口,可在會(huì)員中心獲??;
//(3)該代碼僅供接入互億無(wú)線短信接口參考使用,客戶可根據(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ī)號(hào)碼
$post_data = "account=用戶名&password=密碼&mobile=".$mobile."&content=1125";
//查看用戶名 登錄用戶中心->語(yǔ)音驗(yàn)證碼>產(chǎn)品總覽->API接口信息->APIID
//查看密碼 登錄用戶中心->語(yǔ)音驗(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;
  
  
//接口類型:互億無(wú)線語(yǔ)音驗(yàn)證碼接口。
//賬戶注冊(cè):請(qǐng)通過(guò)該地址開(kāi)通賬戶http://user.ihuyi.com/register.html
//注意事項(xiàng):
//(1)調(diào)試期間,請(qǐng)仔細(xì)閱讀接口文檔;
//(2)請(qǐng)使用 APIID 及 APIKEY來(lái)調(diào)用接口,可在會(huì)員中心獲??;
//(3)該代碼僅供接入互億無(wú)線短信接口參考使用,客戶可根據(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ǔ)音驗(yàn)證碼>產(chǎn)品總覽->API接口信息->APIID
                new NameValuePair("password", "密碼"),//查看密碼 登錄用戶中心->語(yǔ)音驗(yàn)證碼>產(chǎn)品總覽->API接口信息->APIKEY
                new NameValuePair("mobile", "139xxxxxxxx"),//手機(jī)號(hào)碼
                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 接口描述

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

2 請(qǐng)求地址

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

3 請(qǐng)求參數(shù)

參數(shù)名稱 參數(shù)值描述 必填
account APIID(請(qǐng)登錄用戶中心【語(yǔ)音驗(yàn)證碼】-【產(chǎn)品縱覽】查看)
password 1、APIKEY(請(qǐng)登錄用戶中心【語(yǔ)音驗(yàn)證碼】-【產(chǎn)品縱覽】查看)
2、動(dòng)態(tài)密碼(生成動(dòng)態(tài)密碼方式請(qǐng)看該文檔末尾的說(shuō)明)
mobile 接收手機(jī)號(hào)碼,只能提交1個(gè)號(hào)碼
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)

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

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

4 響應(yīng)示例

示例(成功)


 2 提交成功 60495654 

示例(失?。?/p>


 405 用戶名或密碼不正確 0 

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

code msg
0 提交失敗
2 提交成功
400 非法ip訪問(wèn)
401 帳號(hào)不能為空
402 密碼不能為空
403 手機(jī)號(hào)碼不能為空
4030 手機(jī)號(hào)碼已被列入黑名單
404 語(yǔ)音內(nèi)容不能為空
405 用戶名或密碼不正確
4050 賬號(hào)被凍結(jié)
4051 剩余條數(shù)不足
4052 訪問(wèn)ip與備案ip不符
406 手機(jī)格式不正確
407 短信內(nèi)容含有敏感字符
4070 語(yǔ)音驗(yàn)證碼內(nèi)容必須為4-6位數(shù)字
408 您的帳戶疑被惡意利用,已被自動(dòng)凍結(jié),如有疑問(wèn)請(qǐng)與客服聯(lián)系。

6 請(qǐng)求示例

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

語(yǔ)音發(fā)送錯(cuò)誤碼參照:

code msg
0 提交失敗
2 提交成功
400 非法ip訪問(wèn)
401 帳號(hào)不能為空
402 密碼不能為空
403 手機(jī)號(hào)碼不能為空
4030 手機(jī)號(hào)碼已被列入黑名單
404 語(yǔ)音內(nèi)容不能為空
405 用戶名或密碼不正確
4050 賬號(hào)被凍結(jié)
4051 剩余條數(shù)不足
4052 訪問(wèn)ip與備案ip不符
406 手機(jī)格式不正確
407 短信內(nèi)容含有敏感字符
4070 語(yǔ)音驗(yàn)證碼內(nèi)容必須為4-6位數(shù)字
408 您的帳戶疑被惡意利用,已被自動(dòng)凍結(jié),如有疑問(wèn)請(qǐng)與客服聯(lián)系。

余額查詢錯(cuò)誤碼參照:

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

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

Python實(shí)現(xiàn)語(yǔ)音驗(yàn)證碼功能相關(guān)的資訊內(nèi)容

Python實(shí)現(xiàn)語(yǔ)音驗(yàn)證碼功能相關(guān)的資訊詳情

專業(yè)的語(yǔ)音驗(yàn)證碼平臺(tái)為了方便開(kāi)發(fā)者調(diào)用語(yǔ)音驗(yàn)證碼服務(wù),會(huì)將將復(fù)雜的底層通訊資源轉(zhuǎn)化成簡(jiǎn)單易用的語(yǔ)音驗(yàn)證碼API接口,包含標(biāo)準(zhǔn)HTTP或HTTPS接口,同時(shí)面向Python等開(kāi)發(fā)語(yǔ)言提供DEMO開(kāi)發(fā)示例。為了讓開(kāi)發(fā)者更快的將語(yǔ)音驗(yàn)證碼集成進(jìn)市面成熟的第三方業(yè)務(wù)系統(tǒng),一些短信平臺(tái)已預(yù)先為各大系統(tǒng)開(kāi)發(fā)插件,讓開(kāi)發(fā)者更快速的接入語(yǔ)音驗(yàn)證碼服務(wù)。語(yǔ)音驗(yàn)證碼平臺(tái)支持多種返回格式JSON/XML,并具備狀態(tài)查詢及狀態(tài)接口推送服務(wù)。平臺(tái)向開(kāi)發(fā)者提供詳盡的在線接口文檔,隨時(shí)查閱,讓開(kāi)發(fā)者僅需少量開(kāi)發(fā),就快速接入您的日常業(yè)務(wù)。

語(yǔ)音驗(yàn)證碼基于三大運(yùn)營(yíng)商的身份認(rèn)證能力,被廣泛應(yīng)用于互聯(lián)網(wǎng)、金融、電商、游戲等多個(gè)領(lǐng)域,按照應(yīng)用的屬性,語(yǔ)音短信又分為語(yǔ)音驗(yàn)證碼和語(yǔ)音通知兩種,語(yǔ)音驗(yàn)證碼通常應(yīng)用于與身份認(rèn)證相關(guān)的場(chǎng)景中,例如賬號(hào)注冊(cè)、賬號(hào)登錄、支付確認(rèn),企業(yè)通過(guò)Python接口即可接入,語(yǔ)音通知通常應(yīng)用于會(huì)員通知相關(guān)的場(chǎng)景中,常見(jiàn)于物流、交通、互聯(lián)網(wǎng)等行業(yè),值得注意的是,語(yǔ)音驗(yàn)證碼不具備營(yíng)銷能力,也不可能發(fā)送營(yíng)銷相關(guān)的信息。

現(xiàn)代企業(yè)對(duì)語(yǔ)音驗(yàn)證碼的應(yīng)用越來(lái)越重視,其在游戲、廣告、教育、五金、制造、衛(wèi)浴等多個(gè)領(lǐng)域都有舉足輕重的作用,企業(yè)通過(guò)語(yǔ)音驗(yàn)證碼解決用戶在登錄、注冊(cè)、支付等場(chǎng)景中的安全驗(yàn)證問(wèn)題,為企業(yè)完善客戶安全系統(tǒng)做出了卓越貢獻(xiàn)。

相較于其他同類型產(chǎn)品而言,語(yǔ)音驗(yàn)證碼的優(yōu)勢(shì)也更為明顯,語(yǔ)音驗(yàn)證碼的下發(fā)速度通常維持在5秒以內(nèi),同時(shí)對(duì)于用戶的觸達(dá)率更高,不容易被用戶遺漏,三大運(yùn)營(yíng)商賦予短信的身份認(rèn)證能力也是其他同類型產(chǎn)品所不具備的,這也使得語(yǔ)音驗(yàn)證碼成為構(gòu)建用戶安全體系中不可或缺的一環(huán)。

企業(yè)用戶對(duì)接短信流程非常簡(jiǎn)單,過(guò)程順暢的話通常半個(gè)小時(shí)即可對(duì)接完成,在進(jìn)行技術(shù)對(duì)接之前,用戶需先注冊(cè)短信平臺(tái)賬號(hào),領(lǐng)取測(cè)試短信,隨后即可進(jìn)行技術(shù)對(duì)接,互億無(wú)線提供完善的Python短信接口,如有疑問(wèn),也可尋求免費(fèi)的技術(shù)支持,接入服務(wù)測(cè)試跑通之后,用戶只需完成企業(yè)注冊(cè),充值賬戶即可正式上線服務(wù)。

短信api接口是一種常用的短信群發(fā)接口,是一種針對(duì)有一定開(kāi)發(fā)能力的企業(yè)提供的短信發(fā)送增值服務(wù),Python短信接口是以DLL動(dòng)態(tài)鏈接庫(kù)的形式被調(diào)用,技術(shù)人員通過(guò)調(diào)用函數(shù)來(lái)實(shí)現(xiàn)短信自動(dòng)發(fā)送的功能,需要這種服務(wù)的客戶往往是將這種服務(wù)接入到自身的產(chǎn)品中,作為產(chǎn)品內(nèi)整體功能的一部分。

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

顯示更多

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

在線咨詢
電話咨詢

服務(wù)熱線:

4008 808 898

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

4008 808 898

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

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

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

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

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