objective-c实现语音通知推送

  • 代码示例
  • API接口
  • 错误码参照

PHP代码示例

//接口类型:互亿无线语音验证码接口。
//账户注册:请通过该地址开通账户http://user.ihuyi.com/register.html
//注意事项:
//(1)调试期间,请仔细阅读接口文档;
//(2)请使用 APIID 及 APIKEY来调用接口,可在会员中心获取;
//(3)该代码仅供接入互亿无线短信接口参考使用,客户可根据实际需要自行编写;
  
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';//手机号码
$post_data = "account=用户名&password=密码&mobile=".$mobile."&content=1125";
//查看用户名 登录用户中心->语音验证码>产品总览->API接口信息->APIID
//查看密码 登录用户中心->语音验证码>产品总览->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;
  
  
//接口类型:互亿无线语音验证码接口。
//账户注册:请通过该地址开通账户http://user.ihuyi.com/register.html
//注意事项:
//(1)调试期间,请仔细阅读接口文档;
//(2)请使用 APIID 及 APIKEY来调用接口,可在会员中心获取;
//(3)该代码仅供接入互亿无线短信接口参考使用,客户可根据实际需要自行编写;
  
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", "用户名"),//查看用户名 登录用户中心->语音验证码>产品总览->API接口信息->APIID
                new NameValuePair("password", "密码"),//查看密码 登录用户中心->语音验证码>产品总览->API接口信息->APIKEY
                new NameValuePair("mobile", "139xxxxxxxx"),//手机号码
                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 方式进行短信提交,数据编码采用utf-8格式,24小时全天发送。

2 请求地址

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

3 请求参数

参数名称 参数值描述 必填
account APIID(请登录用户中心【语音验证码】-【产品纵览】查看)
password 1、APIKEY(请登录用户中心【语音验证码】-【产品纵览】查看)
2、动态密码(生成动态密码方式请看该文档末尾的说明)
mobile 接收手机号码,只能提交1个号码
content 验证码(4-6位数字)
time Unix时间戳(10位整型数字,当使用动态密码方式时为必填)
format 返回格式(可选值为:xml或json,系统默认为xml)

用户通过http 或 https提交发送短信请求到服务器后,服务器会返回一串xml格式的字符串,SubmitResult结构说明如下:

参数名称 类型 描述
code int 返回值为2时,表示提交成功
smsid string 当提交成功后,此字段为流水号,否则为0
msg string 提交结果描述

4 响应示例

示例(成功)


 2 提交成功 60495654 

示例(失败)


 405 用户名或密码不正确 0 

5 响应参数

code msg
0 提交失败
2 提交成功
400 非法ip访问
401 帐号不能为空
402 密码不能为空
403 手机号码不能为空
4030 手机号码已被列入黑名单
404 语音内容不能为空
405 用户名或密码不正确
4050 账号被冻结
4051 剩余条数不足
4052 访问ip与备案ip不符
406 手机格式不正确
407 短信内容含有敏感字符
4070 语音验证码内容必须为4-6位数字
408 您的帐户疑被恶意利用,已被自动冻结,如有疑问请与客服联系。

6 请求示例

http://api.voice.ihuyi.com/webservice/voice.php?method=Submit&account=APIID&password=APIKEY&mobile=手机号码&content=1125

语音发送错误码参照:

code msg
0 提交失败
2 提交成功
400 非法ip访问
401 帐号不能为空
402 密码不能为空
403 手机号码不能为空
4030 手机号码已被列入黑名单
404 语音内容不能为空
405 用户名或密码不正确
4050 账号被冻结
4051 剩余条数不足
4052 访问ip与备案ip不符
406 手机格式不正确
407 短信内容含有敏感字符
4070 语音验证码内容必须为4-6位数字
408 您的帐户疑被恶意利用,已被自动冻结,如有疑问请与客服联系。

余额查询错误码参照:

code msg
2 查询成功
400 非法ip访问
401 帐号不能为空
402 密码不能为空
405 用户名或密码不正确
4050 账号被冻结

自助开通云通信账户
免费试用,试用满意再购买

语音通知接口一般采用http和webservice方式进行调用。使用语音通知http接口的效率比较高一些,它支持客户/服务器模式,运行速度很快,而webservice遇到一些比较复杂麻烦的数据类型时,处理起来更加有效。短信平台通常会将语音通知能力进行API封装,开发者仅需拷贝几行代码,即可在网站、APP、系统中轻松实现语音验证码、语音通知等短信内容的自动化发送。开发者用户可以通过不同开发语言,如objective-c进行语音通知接口开发。一般短信平台提供的语音通知发送服务,可支持全国移动、联通、电信手机号码,免除运营商之间不同通讯协议的烦恼。为了更方便开发者进行语音通知接入,短信平台会预先为开发者提供各语言的DEMO示例供开发者使用,仅需少量代码即可创建语音通知API请求。

语音通知具备运营商特有的身份认证能力,企业通过接入objective-c短信接口发送语音验证码,及时有效地确认用户身份安全,保障用户的账号安全,优化企业的服务体验,语音通知则是企业维护会员最常见的方式之一,通常具备功能性,例如系统通知、物流通知等,相较于新生的微信通知等方式,语音通知的触达率更高,更及时,也更不容易被用户所遗漏。

语音通知对于酒店、旅游、汽车、健身、小商品、交通、贸易等行业具有重要意义,帮助这些行业保障用户信息安全,完善安全体系,过去用户在进行登录、注册、支付等操作时,常常会遭遇网络不法分子的攻击,面临信息安全泄露的危险,有了语音验证码之后,这种情况得到了有效遏制,保障了用户和企业的权益。

语音通知在信息安全服务上的优势很突出,语音通知的普遍下发速度都在5s以内,及时送达信息避免了用户因等待产生的流失,同时,经过三大运营商加密、并通过语音形式下发的短信安全性也更高,避免了信息劫持造成的用户损失。

语音通知的接入通常不复杂,短信平台会提供完善的objective-c语音通知接口,用户只需按照流程接入,如有疑问可向短信平台的技术人员寻求技术帮助,此外,另一需要注意的就是如要上线语音通知服务必须完成企业认证/实名认证,如未完成企业认证,则不可上线语音通知服务。

短信api接口是一种常用的短信群发接口,是一种针对有一定开发能力的企业提供的短信发送增值服务,objective-c短信接口是以DLL动态链接库的形式被调用,技术人员通过调用函数来实现短信自动发送的功能,需要这种服务的客户往往是将这种服务接入到自身的产品中,作为产品内整体功能的一部分。

以上便是objective-c实现语音通知推送的全部内容,如果想要了解更多的相关信息,可进入帮助文档,搜索关键词objective-c实现语音通知推送查询相关内容。

显示更多

上一个:objective-c语音短信HTTP接口

下一个:objective-c调用语音短信接口代码

为您推荐
在线咨询
服务热线:
4008 808 898

免费体验

填写验证码后,点击“开通体验账户”自动开通体验账户。

收不到短信验证码?
×