微信小程序订阅模板推送瞎搞哒

微信小程序订阅消息推送瞎搞哒

官方文档
一.小程序代码:
一开始用的bindsubmit发现调不起弹窗

<form  bindtap="payBtn"    report-submit='true' style="z-index:1;">
<button form-type="submit" type="default" class='settlement-pay-btn' wx:if='{{canClick&&payProduct.length>0}}'>确认支付                            </button>
        <view class='settlement-pay-btn settlement-pay-btn-dis' wx:else>确认支付</view>
</form>
Page({
    data:{
       template_list:[]   //订阅消息模板ID集合
    },
    payBtn:function(){
      var that  = this;
	  wx.requestSubscribeMessage({
	       tmplIds: this.data.template_list,
	       success (res) {
                //这里是下单代码
           }
	   })
   }
})

在这里插入图片描述
二.后台自定义模板信息,模板类型,键名,键值,模板id必填,与公众号不同的是订阅号键值发送时不能为空,否则会报错
在这里插入图片描述
三.推送

         //要发送的订单信息
		 $sendData = array(
		      'store_name'=>'测试门店',
		      'order_no'=>123456
		 );
		  //keywordList 模板信息
		  //$value['key'] 键名
		  //之前后台存的键值是订单信息的键名,$sendData[$value['field']]
		 $tempData = array();
		 $template_info = 根据推送类型查出的模板信息;
		 $keywordList = json_decode($template_info['field_json'],true);    //后台存入的模板信息键名对应键值是json字符串,查出后进行解析
	     foreach ($keywordList['list']  as $key => $value){
	        $tempData[$value['key']] = array('value' => strval($sendData[$value['field']]));
	     }
		 //获取access_token
		 $access_token = get_tokens($merchant_id);
		 //模板数据,微信要的是json数据,我这里先构建数组再转成json
		 $data = array(
	        'touser' => strval($openid),//要发送的用户
	        'template_id' => trim($template_id),//模板id,从模板库中获取,可通过接口获取或直接从小程序后台复制
	        "page" => $keywordList['page'] ? $keywordList['page'] : '',//跳转小程序的页面
	        'data' => $tempData,
	    );
	    //然后直接发送即可
	    $this->sendMsg(json_encode($data),$access_token );
     //发送模板消息
    protected function sendMsg($data, $access_token)
    {
        //这个方法里面的代码来源于百度复制,能否用于生产有待考究
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, "https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token=" . $access_token);
        curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
        curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)');
        curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
        curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        $tmpInfo = curl_exec($ch);
        if (curl_errno($ch)) {
            return curl_error($ch);
        }
        curl_close($ch);
        return $tmpInfo;
    }

注意事项:
1.用户每次触发订阅消息功能都会弹出授权窗口,如果用户勾选了不再询问则不会出现弹窗
2.不支持开发者工具,只能通过真机调试
3.你现在有两个订阅消息,第一个你勾选了不再询问,第二个没勾选,下次点击还是会提示的
4.键值的类型必须要符合官方规则
订阅消息参数值内容限制说明
参数类别 参数说明 参数值限制 说明
thing.DATA 事物 20个以内字符 可汉字、数字、字母或符号组合
number.DATA 数字 32位以内数字 只能数字,可带小数
letter.DATA 字母 32位以内字母 只能字母
symbol.DATA 符号 5位以内符号 只能符号
character_string.DATA 字符串 32位以内数字、字母或符号 可数字、字母或符号组合
time.DATA 时间 24小时制时间格式(支持+年月日) 例如:15:01,或:2019年10月1日 15:01
date.DATA 日期 年月日格式(支持+24小时制时间) 例如:2019年10月1日,或:2019年10月1日 15:01
amount.DATA 金额 1个币种符号+10位以内纯数字,可带小数,结尾可带“元” 可带小数
phone_number.DATA 电话 17位以内,数字、符号 电话号码,例:+86-0766-66888866
car_number.DATA 车牌 8位以内,第一位与最后一位可为汉字,其余为字母或数字 车牌号码:粤A8Z888挂
name.DATA 姓名 10个以内纯汉字或20个以内纯字母或符号 中文名10个汉字内;纯英文名20个字母内;中文和字母混合按中文名算,10个字内
phrase.DATA 汉字 5个以内汉字 5个以内纯汉字,例如:配送中

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
测试 006版 注意: 请输入抢拍商品的URL:先选择抢拍商品,然后复制地址栏中的地址,然后粘贴到上面. 请输抢购时间:H(小时)M(分钟)S(秒) 你的系统时间应该和拍拍的系统时间一至,不一至的话抢拍时间肯定不准确,这样会造成严重失误. 运行时会初始为系统当前时间。 抢拍时最好先运行一个网页,且为登陆状态. 建义使用方法: 一)运行本程序 二)选择抢拍的商品并将地址粘贴至上面,依次输入此商品开始抢拍的小时,分钟,以及秒(必须有值,秒和分钟可以为零),持续时间为分钟,建义不要超过十分钟,默认为五分钟不能为零或负数。 三)点击点击 ,程序会打开一个网页,如果提示需要登陆时请登陆并且最好不要关闭此网页,在使用时最好打开一个已登陆的网页,并且可以随时的点击此按钮查看登陆状态(一般登陆半小时后将需要重新登陆),如果打开一个未显示的网页,可能你的抢拍商品地址有误 四)然后点击 ,这时程序会根据预设抢拍时间和系统时间的时间差以秒为单位倒记时并在等待时间信息框中显示,直至倒记数为零,然后开始抢拍,抢拍周期时间是预设持续时间并以倒记时方式在抢拍时间框中显示倒记数,每秒钟抢拍次数根据设定的抢拍次数而定。当抢拍到时抢拍时间会停止显示并且打开一个抢拍商品的网页。 五)每秒抢拍次数设定值越大时抢拍的成功率就越高,比如设置为两次就表示每500毫秒抢拍一次,设置为五次表示每200毫秒抢拍一次。当然这是要根据系统性能而定的,测试笔记本AMD turion64*2 2.10GHz CPU,2.00GB内存设定为每秒抢拍两次就够了,如果设置过高会造成系本工具运行异常,从而出现持续刷新抢拍成功页面,而导至抢拍成功率下降。 六)要随时注意你当前是否是登陆状态。并且在开始抢购前先查看连接。 七)请在IE环境下远行本工具。 八)资源地址(以后程序更新地址,欢迎提义见和交流):http://download.csdn.net/user/binhelive 作者:小贺 通信:msn:binhelive@hotmail.com Q Q:184680584 我有开拍拍卖家和淘宝卖家,欢迎访问. 如有侵犯或违反你的相关权利请连系我,我会删除一切版本。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值