发送公众号模板消息

<?php
class wxservice
{
/**
* @todo w微信服务号接口地址
*/
private static $appid = "---------";
private static $appsecret = "----------------";
private static $template_id = [
"1"=>"==========",//服务完成提醒
"2"=>"============",//派单成功通知
];
private static $token;

public function __construct (){
self::gettoken();
}

/**
* @todo 获取access_token
*/
public static function gettoken(){
if(!file_exists("./upload/token.txt")){
fopen("./upload/token.txt", "w+");
}
$file = file_get_contents("./upload/token.txt");
$file = json_decode($file,true);
if( $file[‘date‘]<time() ){

$url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".self::$appid."&secret=".self::$appsecret;
$file = file_get_contents($url);
$file = json_decode($file,true);
$file[‘date‘] = time() + $file[‘expires_in‘] - 1200;
$fp = file_put_contents("./upload/token.txt", json_encode($file));
}
self::$token = $file[‘access_token‘];
}

public static function send_service($openid,$info = [],$type = 1){
$url = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=".self::$token;
$arr = [
"touser"=>$openid,
"template_id"=>self::$template_id[$type],
"url"=>"",
"miniprogram"=>"",
"data"=>[
"first"=>[
"value"=>"{$info[‘first‘]}",
"color"=>"#173177"
],
"keyword1"=>[
"value"=>"{$info[‘keyword1‘]}",
"color"=>"#173177"
],
"keyword2"=>[
"value"=>"{$info[‘keyword2‘]}",
"color"=>"#173177"
],
"keyword3"=>[
"value"=>"{$info[‘keyword3‘]}",
"color"=>"#173177"
],
"remark"=>[
"value"=>"{$info[‘remark‘]}",
"color"=>"#173177"
],
]
];
$msg = self::postcurl($url,json_encode($arr));
return $msg;

}

private static function postcurl($submitUrl,$postData = null)
{
//提交菜单
$curl = curl_init($submitUrl);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);//SSL证书认证
curl_setopt($curl, CURLOPT_HEADER, 0); // 过滤HTTP头
curl_setopt($curl,CURLOPT_RETURNTRANSFER, 1);// 显示输出结果
curl_setopt($curl,CURLOPT_POST,true); // post传输数据
curl_setopt($curl,CURLOPT_POSTFIELDS,$postData);// post传输数据
$responseText = curl_exec($curl);
if($responseText == false)
{
throw new IException(curl_error($curl));
}
curl_close($curl);
return json_decode($responseText,true);
}
}

原文地址:https://www.cnblogs.com/zlking/p/11447266.html

时间: 2024-10-05 22:35:02

发送公众号模板消息的相关文章

C#开发微信门户及应用(27)-公众号模板消息管理

通过模板消息接口,公众号能向关注其账号的用户发送预设模板的消息.模板消息仅用于公众号向用户发送重要的服务通知,只能用于符合其要求的服务场景中,如信用卡刷卡通知,商品购买成功通知等.不支持广告等营销类消息以及其它所有可能对用户造成骚扰的消息.本文主要介绍基于C#开发实现公众号模板消息的管理功能. “模板消息功能的推出,将极大地增强服务号的服务通知能力”,在一些一直期待微信模板消息功能开放的公众号运营者看来,微信一对一沟通的社交属性,让信息推送的触达率更加精准,这也让企业在成本.服务效率.性能上有了

公众号模板消息优势有那几点?

鱼塘公众号模板消息优势有那几点? 1.群发消息,不占用服务号规定的每月四次群发次数名额: 2.群发前,可通过标签筛选粉丝,精准触达目标客户: 3.在微信消息列表里显示,非常醒目,第一时间触达客户: 4.支持自定义文字颜色,还可添加跳转链接(图文.视频等). 想要了解鱼塘模板消息的朋友,微信搜索:公众号运营策略关注,即可免费申请体验哦! 原文地址:https://blog.51cto.com/14218567/2428848

微信公众号模板消息开发小结

总结: 遇到的坑: ①要想调用微信的模版消息,我们就需要获取该用户关注的这个公众号openId, 要获取openId就要获取进入时候的code参数,code参数通过一个链接获取.那么我们在进入公众号后的时候就需要回调这个链接,然后获取到openId. 这里回调里面有一个redirect_uri参数,这个是回调的URL编码后的值.我们既然要回调,就需要在公众号管理端将回调域名设置为我们请求的域名(注意域名一个月只能修改三次). ②在调用微信获取code的链接时,不能是ajax请求,否则回调将无法完

Java对接微信公众号模板消息推送

内容有点多,请耐心! 最近公司的有这个业务需求,又很凑巧让我来完成: 首先想要对接,先要一个公众号,再就是开发文档了:https://developers.weixin.qq.com/doc/offiaccount/Getting_Started/Overview.html 不过请注意这一点 ok,我们继续:再来完成公众号的基本配置: 服务器地址(URL):必须以http://或https://开头,分别支持80端口和443端口.这个URL是很重要的,需要响应微信发送的token验证 令牌(To

微信公众号 模板消息 定时推送 java

前提:业务需要,要做一个关于月报的微信消息推送.即每个月定时自动发送一条消息 给关注 公众号的人 用的是 公众号的测试账号(实际开发需要认证的公众号) 微信官网的 模板消息接口规则: 1.所有服务号都可以在功能->添加功能插件处看到申请模板消息功能的入口,但只有认证后的服务号才可以申请模板消息的使用权限并获得该权限:2.需要选择公众账号服务所处的2个行业,每月可更改1次所选行业:3.在所选择行业的模板库中选用已有的模板进行调用:4.每个账号可以同时使用25个模板.5.当前每个账号的模板消息的日调

asp群发微信公众号模板消息代码

刚刚做的一个项目需要用到asp群发微信公众号的模板消息, 以前没做过,想了一会用了下面这种方法实现的模板消息群发推送,效果很好. 原文地址:https://www.cnblogs.com/yjed/p/10843634.html

微信服务号模板消息接口新增&quot;设置行业&quot;和&quot;添加模板&quot;及细节优化

微信服务号模板消息可以向用户发送重要的服务通知,如信用卡刷卡通知,商品购买成功通知等.昨日,微信团队发布公告称模板消息新增“设置行业”和“添加模板”接口及细节优化,详细变动如下 模板消息[业务通知]自2014年8月27日向认证服务号开放后使用效果良好,现做出如下优化: 1. 认证服务号日调用模板消息上限为10w条,当前每个模板的日调用上限为100000次[2014年11月18日将接口调用频率从默认的日10000次提升为日100000次,可在MP登录后的开发者中心查看]: 2. 每条消息长度限制为

.net微信公众号开发——消息与事件

1 消息(事件)概况 当普通微信用户向公众号发消息或者微信服务器向公众号推送事件时,微信服务器将POST消息(事件)的XML数据包到开发者填写的公众号服务器URL上:公众号服务器然后对消息作出响应. 1.1 消息的流转过程 为了便于区分,我们将微信服务器发往公众号服务器的消息称为请求(Request)消息:将公众号服务器发往微信服务器的消息称为响应(Response)消息:将推送事件看成特殊的请求消息. 请求与响应消息的流转过程如下图所示: 1.2 请求消息 请求消息有很多种,我们为其一一建立了

PHP 微信公众号开发 - 消息推送

项目微信公众号开发,需要做用户消息推送,记录下来以便日后使用 1,接上一篇文章,可以查看如何获取用户openid PHP 微信公众号开发 - 获取用户信息 2,添加模板消息 3,查看模板详情 根据模板详情设置对应推送消息 4,代码实现 1 <?php 2 // 字符编码 3 header("Content-Type:text/html; charset=utf-8"); 4 5 // 微信接口类 6 class WeChat{ 7 private static $appid; 8