小程序 发送模版消息

小程序开发之发送模板消息

1,小程序wxml页面form表单添加 report-submit="true"

<form bindsubmit="sub" report-submit="true">
     <button formType="submit">确认发布</button>
</form>

2,小程序js代码 (formId唯一且只有提交表单时产生,只能使用一次)

Page({
  // 页面的初始数据
  data: {},
  sub: function (e) {
    console.log(e.detail.formId); // 获取formId,发送至服务器端
  }
});

3,php程序代码

// 发送get请求
function curlGet($url){
    $curl = curl_init();
    curl_setopt($curl, CURLOPT_URL, $url);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    $output = curl_exec($curl);
    if(curl_errno($curl)){
        return ‘ERROR ‘ . curl_error($curl);
    }
    curl_close($curl);
    return $output;
}

// 获取小程序用户access_token
function getToken(){
    $appid = ‘小程序公众平台中的APPID‘; // 注意!!!
    $appsecret = ‘小程序公众平台中的APPSECRET‘; // 注意!!!
    $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={$appid}&secret={$appsecret}";
    $output = curlGet($url);
    $result = json_decode($output, true);
    return $result[‘access_token‘];
}
// 发送通知
function sendNotice(){
    $access_token = getToken();
    $url = ‘https://api.weixin.qq.com/cgi-bin/message/wxopen/template/send?access_token=‘ . $access_token;
    $post_data = [
        ‘touser‘           => ‘openid‘, // 用户的 openID,可用过 wx.getUserInfo 获取
        ‘template_id‘      => ‘SNZQnzYFJMwwgRp3Oh2fvI_PHp_SQWqZzpiXLP3pSJI‘, // 小程序后台申请到的模板编号
        ‘page‘             => ‘/pages/index/index‘, // 点击模板消息后跳转到的页面,可以传递参数
        ‘form_id‘          => $formid, // 第一步里获取到的 formID
        ‘data‘             => [
            ‘keyword1‘ => [‘value‘ => ‘信息1‘],
            ‘keyword2‘ => [‘value‘ => ‘信息2‘],
            ‘keyword3‘ => [‘value‘ => ‘信息3‘]
        ],
        ‘emphasis_keyword‘ => ‘‘ // 需要强调的关键字,会加大居中显示
    ];
    $data = json_encode($post_data, true);
    $options = [
        ‘http‘ => [
            ‘method‘  => ‘POST‘,
            ‘header‘  => ‘Content-type:application/json‘, // header 需要设置为 JSON
            ‘content‘ => $data,
            ‘timeout‘ => 60 // 超时时间
        ]
    ];
    $context = stream_context_create($options);
    $result = file_get_contents($url, false, $context);
    return $result;
}

原文地址:https://www.cnblogs.com/hui9527/p/9242071.html

时间: 2024-10-10 08:22:39

小程序 发送模版消息的相关文章

微信小程序发送模板消息(最通俗易懂)

公司需要用到微信小程序推送   经过一下午的资料查阅,得出以下经验. 首先得去微信公众平台小程序的模板消息  创建模板  也能通过接口去创建,但是我觉得挺麻烦的  还不如去后台创建 下面是我写的测试代码,只有具体数据都是测试的模拟数据,实际业务肯定需要拿到业务数据,大家后面可以自我发挥. 对了,还有一点,电脑的小程序的开发工具是拿不到formid 的  会提示 the formId is a mock one ,只能用手机测试才能拿到formid 下面看代码吧: 这个是前台页面 1 <butto

微信小程序-发送模板消息(C#)

步骤一:获取模板ID 有两个方法可以获取模版ID 通过模版消息管理接口获取模版ID 在微信公众平台手动配置获取模版ID 步骤二:页面的 <form/> 组件,属性report-submit为true时,可以声明为需发模板消息,此时点击按钮提交表单可以获取formId,用于发送模板消息.或者当用户完成支付行为,可以获取prepay_id用于发送模板消息. 步骤三:调用接口下发模板消息 今天重要的说第三步怎么实现,前面的步骤比较简单就略过. ----------------------------

微信小程序开发模板消息的时候 出现 errcode: 41028, errmsg: &quot;invalid form id hint:

小程序开发模板消息的时候  出现 errcode: 41028, errmsg: "invalid form id hint: 我是使用的微信支付发送模板消息,提示的formid无效的 大家知道获取到的prepay id 还非常的诡异  他不是直接一个参数 而是还带了字符串 比如 prepay_id=wx2017xx 这样格式的 那传递到微信模板消息这里的formid上要怎么传值呢? 最后检验是需要去除掉prepay id 这个字符串的  然后传递过去就可以了 然后,还会有提示无效的,就是没有支

分享为小程序添加自动回复消息的5种方法!自动客服功能的微信小程序

如何通过小程序客服消息引导自动关注公众号? 小程序客服自动回复一个图文链接? 小程序客服可以发小程序卡片吗? 小程序客服能像公众号一样设置关键词回复吗? 收到消息时自动回复? 微信小程序新手如何默认自动回复功能 如果你遇到以上问题,请往下看!教大家实现微信小程序客服自动回复消息功能,以帮助我们更好地与客户进行互动. 当我们的小程序接入客服,在小程序前端增加一个客服按钮,用户可以点击按钮主动和我们的客服互动! 但是有个问题,消息那么多,如何才能接待的过来,能否想微信公众号一样自动回复,关键词回复,

微信小程序统一服务消息下发接口 公众号和小程序消息都可以在一个接口推送了

昨天晚上,2018年9月11日,微信官方又更新了一大波的小程序功能.重点我们来谈谈这个功能,微信叫做统一服务消息下发接口. 这个是官方的文档  统一服务消息 · 小程序https://developers.weixin.qq.com/miniprogram/dev/api/notice-uniform.html 统一服务消息下发接口,名字很拗口,说点人话,就是这个接口可以发送公众号或者小程序的消息.之前大家都知道,我们用小程序发送消息,有小程序的api接口,如果是发送公众号的消息,就有公众号的模

微信小程序客服消息之解决方案

小程序自公开发布起就有消息推送功能,但由于张小龙对于微信小程序的定义为极简的生活方式,所以为了避免小程序发送过多的推送消息骚扰用户对于小程序消息推送制定了许多的规则和限制. 一.小程序客服消息的意义: 为丰富小程序的服务能力,提高服务质量,微信为小程序提供客服消息能力,以便小程序用户可以方便快捷地与小程序服务提供方进行沟通. 二.小程序把推送消息定义为两大类:模板消息和客服消息 模板消息:后台可以制作消息模板,商户可以将模板消息发送给接受过服务的用户,用户接受过一次服务(以是否产生支付数据为准)

小程序客服消息接入微信教程

很多商家在咨询小程序,都会咨询手机上能不能接待客户,当然可以,但需要开通客服助手小程序,下面就和大家分享一下小程序客服消息接入微信教程? 基本流程:客服入口-添加绑定客服微信号-用绑定客服微信号扫码-进入客服工具-在线接待客户 步骤一:找到客服入口 首先需要登录微信小程序管理后台,找到客服界面,如图所示: 步骤二:添加绑定客服微信号 点击"客服",进入客服界面时,在右侧,有一个"添加"按钮,可以添加客服人员. 点击"添加",输入您需要绑定的微信号

Django后端发送小程序微信模板消息(服务通知)

模板消息 官方文档:https://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/template-message/templateMessage.send.html 模板消息如下图所示 Django中获取access_token 根据文档描述,获取access_token文档,后端必须获取一个access_token才能够发送模板消息,文档中说明该token有效期为两小时,需要后端定时去获取.我们这里使用Django

微信小程序之模板消息推送

最近在用sanic框架写微信小程序,其中写了一个微信消息推送,还挺有意思的,写了个小demo 具体见官方文档:https://developers.weixin.qq.com/miniprogram/dev/api/open-api/template-message/sendTemplateMessage.html 文档其实写的很详细清除了,包括返回数据的类型,报错信息 大致流程就是:调用微信小程序的接口,获取access_token,然后再调用发送模板信息的接口,发送消息 获取access_t