云之讯 亿美 短信的三方接口

云之讯
model

private function getResult($url, $body = null, $method)
{
$data = $this->connection($url,$body,$method);
if (isset($data) && !empty($data)) {
$result = $data;
} else {
$result = ‘没有返回数据‘;
}
return $result;
}

/**
* @param $url 请求链接
* @param $body post数据
* @param $method post或get
* @return mixed|string
*/

private function connection($url, $body,$method)
{
if (function_exists("curl_init")) {
$header = array(
‘Accept:application/json‘,
‘Content-Type:application/json;charset=utf-8‘,
);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
if($method == ‘post‘){
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_POSTFIELDS,$body);
}
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
$result = curl_exec($ch);
curl_close($ch);
} else {
$opts = array();
$opts[‘http‘] = array();
$headers = array(
"method" => strtoupper($method),
);
$headers[]= ‘Accept:application/json‘;
$headers[‘header‘] = array();
$headers[‘header‘][]= ‘Content-Type:application/json;charset=utf-8‘;

if(!empty($body)) {
$headers[‘header‘][]= ‘Content-Length:‘.strlen($body);
$headers[‘content‘]= $body;
}

$opts[‘http‘] = $headers;
$result = file_get_contents($url, false, stream_context_create($opts));
}
return $result;
}

/**
单条发送短信的function,适用于注册/找回密码/认证/操作提醒等单个用户单条短信的发送场景
* @param $appid 应用ID
* @param $mobile 接收短信的手机号码
* @param $templateid 短信模板,可在后台短信产品→选择接入的应用→短信模板-模板ID,查看该模板ID
* @param null $param 变量参数,多个参数使用英文逗号隔开(如:param=“a,b,c”)
* @param $uid 用于贵司标识短信的参数,按需选填。
* @return mixed|string
* @throws Exception
*/
public function SendSms($appid,$templateid,$param=null,$mobile,$uid){
//填写在开发者控制台首页上的Account Sid
$accountSid =‘00c8f06b95b6dd774c8a49306fac9ac5‘;
//填写在开发者控制台首页上的Auth Token
$token =‘71634558685668f591af03f8226b2f21‘;

$url = ‘https://open.ucpaas.com/ol/sms/sendsms‘;
$body_json = array(
‘sid‘=>$accountSid,
‘token‘=>$token,
‘appid‘=>$appid,
‘templateid‘=>$templateid,
‘param‘=>$param,
‘mobile‘=>$mobile,
‘uid‘=>$uid,
);
$body = json_encode($body_json);
$data = $this->getResult($url, $body,‘post‘);
return $data;
}

controller

public function sms(){
$appid = "b934d9af50dc452b82a357ce60e4675d"; //应用的ID,可在开发者控制台内的短信产品下查看
$templateid = "385111"; //可在后台短信产品→选择接入的应用→短信模板-模板ID,查看该模板ID
$param = rand(1000,9999); //多个参数使用英文逗号隔开(如:param=“a,b,c”),如为参数则留空 验证码
$mobile = $_POST[‘yzmtel‘]; //手机号
$uid = "2d92c6132139467b989d087c84a365d8";
Cookie::set("param",$param,60);
Cookie::set("phone",$mobile,60);
$sms = $this->i->SendSms($appid,$templateid,$param,$mobile,$uid);
}

亿美

model

function http_request($url, $data)
{
$data = http_build_query($data);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
$output = curl_exec($curl);
curl_close($curl);
print_r($output);
return $output;
}

function signmd5($appId,$secretKey,$timestamp){
return md5($appId.$secretKey.$timestamp);
}

function SendSMS($rand)
{
$content = "【麦吉丽】您的验证码是".$rand;/* 短信内容请以商务约定的为准,如果已经在通道端绑定了签名,则无需在这里添加签名 */
$timestamp = date("YmdHis");
$sign = $this->signmd5(YM_SMS_APPID,YM_SMS_AESPWD,$timestamp);
// 如果您的系统环境不是UTF-8,需要转码到UTF-8。如下:从gb2312转到了UTF-8
// $content = mb_convert_encoding( $content,"UTF-8","gb2312");
// 另外,如果包含特殊字符,需要对内容进行urlencode
$data = array(
"appId" => YM_SMS_APPID,
"timestamp" => $timestamp,
"sign" => $sign,
"mobiles" => "15821150253",
"content" => $content,
"customSmsId" => "10001",
"timerTime" => "",
"extendedCode" => ""
);
$url = YM_SMS_ADDR.YM_SMS_SEND_URI;
$resobj = $this->http_request($url, $data);
return $resobj;
}

controller

public function SendSMS(){
$mobile = $_POST[‘u_phone‘];
$rand = rand(1000,9999);
Cookie::set("rand",$rand,60);
Cookie::set("mobile",$mobile,60);
$rs = $this->l->SendSMS($rand);
}

原文地址:https://www.cnblogs.com/xin521/p/9920525.html

时间: 2024-10-16 07:55:18

云之讯 亿美 短信的三方接口的相关文章

借助云开发实现小程序短信验证码的发送

最近在做小程序验证码登陆时,用到了短信发送验证码的需求,自己也研究了下,用云开发结合云函数来实现验证码短信发送还是很方便的. 老规矩,先看效果图 这是我调用腾讯云的短信平台发送的登陆验证码.核心代码其实只有下面这么多是不是感觉实现起来特别简单,怎么说呢,我们代码调用其实就这么几行,就可以实现短信的发送,但是腾讯云短信模板的审核比较繁琐,还有我们先去申请短信模板,短信模板审核通过后才可以使用.我们就先来说代码实现,然后再带大家简单的学习下短信模板的申请. 一,安装node类库 其实我们这里用到了云

django之集成阿里云通信(发送手机短信验证码)

python3 + django2.0 集成 "阿里云通信" 服务: (SDK文档地址:https://help.aliyun.com/document_detail/55491.html?spm=5176.10629532.106.3.2fe01cbeAp0iFO) 步骤1: 在阿里云 "短信服务" 中创建一个签名 步骤2: 在阿里云 "短信服务" 中创建一个短信模板 步骤3: 下载阿里云 "短信服务" SDK 步骤4: 在

使用“互亿无线”短信验证码接口来实现发送手机验证码功能

今天 突然发神经想到要做一个发送手机验证码的功能,因为看到很多用户注册这个模块都有手机验证这个功能,于是乎,俺就上网查了很多资料,整理了一下,做了一个简单的手机验证码实现功能.不过我用的是试用账号,只可以发送30个短信,如果要更多的话,需要充值,这是我感到很遗憾的事情.下面跟着我来实现这个功能吧,大神勿喷哈. 1.首先,上互亿无线注册一个账号,http://www.ihuyi.com/,注册后你可以看到你的账号参数信息: 2.使用VS创建一个空的Web应用程序: 注册静态页面:index.htm

Java 使用阿里云短信的API接口

亲们上午好,写的不好的地方还望指正.谢谢各位! 引言 短信服务(Short Message Service)是阿里云为用户提供的一种通信服务的能力,支持快速发送短信验证码.短信通知等.(我这里只讲一个最基本的短信的发送验证码的功能) 1.第一步咱们先把环境准备好   1.1首先必须在阿里云注册一个账号,或者使用自己的淘宝账号支付宝账号 都是一样的  然后进行实名认证   1.2咱们进入控制台(在以上步骤的准备好的情况下) 然后点击左上角的产品 进来之后会叫你开通  点击开通即可  我的开通了 就

创蓝253云通讯paas平台Python短信接口demo

#!/usr/local/bin/python#-- coding:utf-8 -- Author: jacky Time: 14-2-22 下午11:48 Desc: 短信http接口的python代码调用示例 import httplibimport urllib #服务地址host = "sms.253.com" #端口号port = 80 #版本号version = "v1.1" #查账户信息的URIbalance_get_uri = "/msg/

PHP-阿里云短信服务api接口

1. accessKeyId  个人账户密钥: 2. accessKeySecret 与上是成对的: 3. SignName  个人签名,在发出去的短信中,这个签名会显示在开头,类似 [签名]亲爱的用户...... 这种格式,SignName需要通过提交审核: 4.TemplateCode  模板代码,阿里云短信是无法完全自定义短信的,需要通过审核的模板,然后自己再替换掉模板中的变量,如模板:“您的验证码是${code}” ,code就是变量,使用时需设置变量值{"code":&quo

摩杜云通用免认证的短信接口,每天单个号码100条以上

下面介绍一下摩杜云平台的短信php接口.demo下载:https://www.mordula.com/experience.html#anchor-1 // Works well with php5.3 and php5.6.namespace Moduyun\Sms;require_once('SmsSenderUtil.php');class SmsSingleSender {var $url;var $accesskey;var $secretkey;var $util;function

手机卫士07_自定义吐司_桌面小火箭_短信备份_接口和回调_应用程序信息,

1,自定义吐司显示风格 ①创建一个布局文件(代码注册的View看不出效果,所以还是定义布局文件比较好) 这里的背景是.9图片会根据包裹内容来拉伸 ②在显示自定义吐司的界面,显示的吐司通过View.inflate()创建 ③在设置中心增加一条修改归属地显示风格. {"半透明","活力橙","卫士蓝","金属灰","苹果绿"}; 点击之后弹出一个单选对话框. builder.setSingleChoiceIte

短信验证平台接口调用实例

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.d