精华内容
下载资源
问答
  • 微信模板消息只能发给一个人,如果要群发,需要通过php循环,依次发送。 注意,如果模板消息发信息时有时无,不稳定,可能你的access_token令牌更新缓存不及时,过期了.可以根据日志文件查看.建议300秒更新一下.否则会很...
  • Java 实现微信公众号模板消息推送,demo
  • 自己在微信公众平台中申请模板消息的id;这里没有没有提供获取用户openid的方法,我在之前的一个博客中有写过获取用户openid的代码;需要注意的是,有一点很坑,那就是在获取用户openid的时候会返回给你一个token;...
  • Java开发微信公众号,开发模板消息功能,详细描述微信公众号后台设置,详细开发步骤,关键代码编写,完整功能实现。
  • 微信公众号开发-接收消息+模板消息。包含所有源代码、工具类、JAR包,MyEclipse开发的,其他软件开发的可以参考着修改。
  • 微信公众号 模板消息

    2020-09-11 10:57:01
    现有一套在线客服系统,想用微信公众号模板消息来及时提醒客服 公众号文档地址 步骤: 1.设置行业 2.选择想要用的模板 3.获取模板列表,得到模板id 这里调用接口: GET ...ar.

    现有一套在线客服系统,想用微信公众号的模板消息来及时提醒客服

    公众号文档地址

    步骤:

    • 1.设置行业
      在这里插入图片描述

    • 2.选择想要用的模板

    • 3.获取模板列表,得到模板id
      这里调用接口:

    GET 
    https://api.weixin.qq.com/cgi-bin/template/get_all_private_template?access_token=ACCESS_TOKEN
    
    • 4.根据模板参数,补充数据。
      $data = array(
                "first"=>array("value"=>$first),
                "keyword1"=>array("value"=>$keyword1),
                "keyword2"=>array("value"=>$keyword2),
                "keyword3"=>array("value"=>$keyword3),
                "remark"=>array("value"=>$remark),
                );
    
    • 5.提交数据,这里的要POST发送JSON格式的参数
      $arrPostInfo = array(
      			"touser"=>$toUser,
                "template_id"=>"5********************************HLm-xio3Iah4w",
                "url"=>$url,
                "data"=>$data
                );
     $return_content = Http::get($interface, $arrPostInfo, '', true);
    
    class Http
    {
        public static function get($url,$data,$header = null,$json = false)
        {
            $info = curl_init();
            if(!empty($header)){
                curl_setopt($info, CURLOPT_HTTPHEADER, $header);
                curl_setopt($info, CURLOPT_HEADER, 0);//返回response头部信息
            }
            curl_setopt($info, CURLOPT_URL, $url);
            curl_setopt($info, CURLOPT_POST, 1); // 发送一个常规的Post请求
            if(!empty($data)){
                if($json && is_array($data)){
                    $data = json_encode($data);
                    curl_setopt($info, CURLOPT_POSTFIELDS, $data); // Post提交的数据包
                }elseif(!$json && is_array($data)){
                    curl_setopt($info, CURLOPT_POSTFIELDS, http_build_query($data)); // Post提交的数据包
                }
            }
            curl_setopt($info, CURLOPT_TIMEOUT, 60); // 设置超时限制防止死循环
            curl_setopt($info, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($info, CURLOPT_HEADER, 0);
            curl_setopt($info, CURLOPT_NOBODY, 0);
            curl_setopt($info, CURLOPT_SSL_VERIFYPEER, false);
            curl_setopt($info, CURLOPT_SSL_VERIFYHOST, false);
            $output = curl_exec($info);
            curl_close($info);
            return $output;
        }
    }
    

    重点:

    • 1.发送给谁
      第5步中的 touser 是接收人在公众号的open_id。
    • 2.如何取到open_id
    1. 通过微信的网页授权取得
      微信的网页授权文档地址
    1 第一步:用户同意授权,获取code
    
    2 第二步:通过code换取网页授权access_token
    
    3 第三步:刷新access_token(如果需要)
    
    4 第四步:拉取用户信息(需scope为 snsapi_userinfo)
    

    其实到第二步,这里已经取得open_id了,拿来存库吧,会员取消关注公众号后再次关注的话这个open_id也不会变的。
    要不要往下3、4步,看你需要。
    这里有个坑:
    在发送模板消息时,会先从微信服务器端取得access_token保存下来,2个小时内重复使用。
    但是通过网页授权,取得open_id时,会刷新access_token。这里要记得将缓存里的清一下。
    不然会报错:

    {“errcode”:40001,”errmsg”:”invalid credential, access_token is invalid or not latest ”}。
    
    展开全文
  • java二次开发接微信公众号接口,实现根据用户授权,获取用户code,再获取openid,然后向其推送模版消息
  • thinkphp 5.0 对接微信公众号,向指定用户发送模板消息
  • 采用定时器或者时间监听机制,发送微信模板消息 微信模板消息官方文档 代码实现思路 首先需要一个微信测试号,并配置一个消息模板 第一步:拿到微信appid和secret获取到access_token,然后得到我们请求微信...

    采用定时器或者时间监听机制,发送微信模板消息
    微信模板消息官方文档
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    代码实现思路

    首先需要一个微信测试号,并配置一个消息模板
    在这里插入图片描述
    在这里插入图片描述

    第一步:拿到微信appid和secret获取到access_token,然后得到我们请求微信发送模板消息的接口
    第二步:封装发送的json数据,需要接受者的openid(唯一标识用户的id),模板id(templatedId),传输的数据(data)

    上代码

    一:根据模板封装一个map对象

        HashMap<String, String> map = new HashMap<>();
        map.put("openId", "oOTJU60hq-mQ9tGKurMuAPFcFIxg");
        map.put("template_id", "-d7t3A4gBhejn0j-feResggYBxKJIRuPdUFE-GZE2eE");
    		
        map.put("first", "尊敬的助学者,您有一张卡券即将过期失效");
        map.put("keyword1",9999);
        map.put("keyword2", 120 + "元");
        map.put("keyword3","9999年09月09日");
        String remark = "请及时使用!";
        map.put("remark", remark);
    

    二:map对象和openId,templateId封装

    @Data
    public class TemplateData {
        private Map<String,String> first;
        private Map<String,String> keyword1;
        private Map<String,String> keyword2;
        private Map<String,String> keyword3;
        private Map<String,String> keyword4;
        private Map<String,String> remark;
    }
    
    @Data
    public class TemplateMessage {
        //openId
        private String touser;
        //template_id
        private String template_id;
        //color--非必须
        private String topcolor;
        //data
        public TemplateData data;
        //url
        public String url;
    }
    
        // 封装
        TemplateData templateData = new TemplateData();
        HashMap<String, String> first = new HashMap<>();
        HashMap<String, String> keyword1 = new HashMap<>();
        HashMap<String, String> keyword2 = new HashMap<>();
        HashMap<String, String> keyword3 = new HashMap<>();
        HashMap<String, String> remark = new HashMap<>();
        
        // 此map来自上面封装的map对象
        first.put("value", map.get("first"));
        keyword1.put("value", map.get("keyword1"));
        keyword2.put("value", map.get("keyword2"));
        keyword3.put("value", map.get("keyword3"));
        remark.put("value", map.get("remark"));
        
        templateData.setFirst(first);
        templateData.setKeyword1(keyword1);
        templateData.setKeyword2(keyword2);
        templateData.setKeyword3(keyword3);
        templateData.setKeyword4(keyword4);
        templateData.setRemark(remark);
    
        TemplateMessage templateMessage = new TemplateMessage();
        templateMessage.setTouser(map.get("openId"));
        templateMessage.setTemplate_id(map.get("template_id"));
        templateMessage.setData(templateData);
    
    

    三:向用户发送模板消息

    需要两个参数,一个是需要发送的数据,一个是请求微信的接口

    获取微信发送模板消息的接口

    String urlPOST = https://api.weixin.qq.com/cgi-bin/message/template/send?access_token= 你自己的token"
    

    开始发送消息

    
      /**
      * @param templateMessage 第二步封装的数据
      * @param   urlPOST  带上自己的accesstoken 的请求路径
      */
        public void send (TemplateMessage templateMessage, String urlPOST) {
            log.info("[微信模板发送]");
            //将对象转成JSON字符串
            String message =new ObjectMapper().writeValueAsString(templateMessage) ;
            log.info("[模板发送内容:]{}",message);
            //响应头设置参数: JSON字符串|字符集
            HttpHeaders headers = new HttpHeaders();
            headers.setContentType(MediaType.parseMediaType("application/json;charset=UTF-8"));
            //这里需要一个方法,向url发送POST请求
            WeChatResponse body = HttpRequestUtil.weChatpost(urlPOST, message, headers); // 见下面代码
            log.info("[模板发送返回值:]{}",body);
        }
    
        //请求微信模板消息发送接口
        public static WeChatResponse weChatpost(String url, String params, HttpHeaders headers) {
            RestTemplate client = new RestTemplate();
            HttpMethod method = HttpMethod.POST;
            if (headers == null) {
                headers = new HttpHeaders();
            }
            //将请求头部和参数合成一个请求
            HttpEntity<String> entity = new HttpEntity<>(params, headers);
            //执行HTTP请求,将返回的结构使用ResultVO类格式化
            ResponseEntity<WeChatResponse> response = client.exchange(url, method, entity, WeChatResponse.class);
            return response.getBody();
        }
    
    
    @Data
    public class WeChatResponse {
        /**
         * 0 表示成功
         */
        Integer errcode;
        /**
         * ok 表示成功
         */
        String errmsg;
    
        Long msgid;
    }
    
    展开全文
  • 微信公众号模板消息达到上限后调用清零接口,调用成功后每日发送上限仍然没有清零,调用了10次都不行,请问有没有其他人遇到这样的问题,麻烦帮忙一下</p>
  • springboot实现微信公众号模版消息推送,用的是构架:springboot+redis,详细教程:https://blog.csdn.net/chenhongming888/article/details/95173079
  • 一、打通微信小程序和微信公众号 1、利用不同平台下,相同的unionid来判断是发送到那个用户 2、获取微信小程序openid和unionid >>官方文档 3、获取微信公众号openid和unionid (触发条件是,用户的关注公众号...

    具体思路:
    一、打通微信小程序和微信公众号
    1、利用不同平台下,相同的unionid来判断是发送到那个用户
    2、获取微信小程序openid和unionid >>官方文档
    3、获取微信公众号openid和unionid (触发条件是,用户的关注公众号和不在关注)。详情见下面代码
    需开启服务器配置的前提下

    二、开通开发者账户官方链接,需要另外再付300元
    1、保证公众号是服务号
    2、保证公众号、小程序绑定在同一开发者账户下
    3、保证公众号、小程序相互关联
    4、公众号后台开通服务器配置(开通后公众号底部板块需要自定义)公众号自定义导航文档
    5、开发者平台是不同于公众号和小程序独立的平台
    在这里插入图片描述
    文件一:url.php

    <?php
    $loadingTimeStart = microtime(true);
    ?>
    <?php
    /**
      * wechat php test
      */
    define("TOKEN", "cuangxian2021");//把这里的weixin 改成你的TOKEN
    $access_token_mp = $access_token_mp ? $access_token_mp : access_token_mp(); //这里是利用微信appid和secret换取access_token
    $wechatObj = new wechatCallbackapiTest();
    $wechatObj->valid();
    $wechatObj->responseMsg();
    class wechatCallbackapiTest
    {
        public function valid()
        {
            $echoStr = $_GET["echostr"];
            if($this->checkSignature()){
                echo $echoStr;//服务器配置验证成功
                //exit;
            }else{
            	//服务器配置验证失败
    		}
        }
        public function responseMsg()
        {
    		global $conn;
            $postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
    		if($_GET["debug"]=="true"){
    			$postStr = "<xml><ToUserName><![CDATA[gh_aef7f2518443]]></ToUserName>
    <FromUserName><![CDATA[oLT1Z6GFAZYXWO-s0bhqfyMk46n0]]></FromUserName>
    <CreateTime>1555988221</CreateTime>
    <MsgType><![CDATA[event]]></MsgType>
    <Event><![CDATA[user_get_card]]></Event>
    <CardId><![CDATA[pLT1Z6KjXab7hYXSco39gKD8LeCc]]></CardId>
    <IsGiveByFriend>0</IsGiveByFriend>
    <UserCardCode><![CDATA[146787302551]]></UserCardCode>
    <FriendUserName><![CDATA[]]></FriendUserName>
    <OuterId>0</OuterId>
    <OldUserCardCode><![CDATA[]]></OldUserCardCode>
    <IsRestoreMemberCard>0</IsRestoreMemberCard>
    <IsRecommendByFriend>0</IsRecommendByFriend>
    <SourceScene><![CDATA[SOURCE_SCENE_UNKNOW]]></SourceScene>
    <UnionId><![CDATA[oddqd1ViNaH0RgXH-6BcuNbd6hyU]]></UnionId>
    </xml>";
    		}
            if (!empty($postStr)){
    				//引用
    				global $access_token_mp;
    				//主体
                    /* libxml_disable_entity_loader is to prevent XML eXternal Entity Injection,
                       the best way is to check the validity of xml by yourself */
                    libxml_disable_entity_loader(true);
                  	$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
    				/*转换xml*/
    				/*前后加双引号,转成字符串*/
                    $ToUserName = trim($postObj->ToUserName);  //起始ID
                    $FromUserName = trim($postObj->FromUserName);  //触发事件的用户 openid
                    $CreateTime = $postObj->CreateTime;  //时间截
                    $MsgType = trim($postObj->MsgType);  //Msg类型  event[事件]、text[文本]
                    $Event = trim($postObj->Event);  //事件名
                    $EventKey = trim($postObj->EventKey);  //事件里包含的内容
                    //$EventKey = str_replace("qrscene_","", $EventKey);  //清楚字符
                    //$content = trim($postObj->Content);  //微信里面发送的内容
    				$UnionId = trim($postObj->UnionId);//领券用户的UnionId
    				$CardId = trim($postObj->CardId);//卡券ID。
    				$UserCardCode = trim($postObj->UserCardCode);//code序列号。
    				if($MsgType == "event")
    				{
    						if($Event == "subscribe"){//订阅
    								$contentStr = "欢迎关注我们啊啊啊!";
    								kefu_send($FromUserName, "text", $contentStr);
    								/*
    								 * 【客服接口-发消息】
    								 * https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547
    								 * msgtype	文本text 图片image 图文mpnews
    								 */
    								function kefu_send($openid, $msgtype ,$content) {
    									//引用
    									global $access_token_mp;
    									//主体
    									$data = array();
    									$data["touser"] = $openid;
    									$data["msgtype"] = $msgtype;
    									if($msgtype=="text"){
    										$data["text"] = array();
    										$data["text"]["content"] = $content;
    									}elseif($msgtype=="image"){
    										$data["image"] = array();
    										$data["image"]["media_id"] = $content;
    									}elseif($msgtype=="mpnews"){
    										$data["mpnews"] = array();
    										$data["mpnews"]["media_id"] = $content;
    									}elseif($msgtype=="wxcard"){
    										$data["wxcard"] = array();
    										$data["wxcard"]["card_id"] = $content;
    									}
    									$url="https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=".$access_token_mp.""; 
    									$dataRes = curl_post($url, json_encode($data,JSON_UNESCAPED_UNICODE));//传输的内容里面有汉字  需要添加(JSON_UNESCAPED_UNICODE)
    									$res = json_decode($dataRes,true);
    									//**********************************************************************************
    									return $res;
    								}
    								//获取用户信息
    								$userInfo_url = "https://api.weixin.qq.com/cgi-bin/user/info?access_token=".$access_token_mp."&openid=".$FromUserName."&lang=zh_CN";
    								$json_info = curl_get($userInfo_url);
    								$info = json_decode($json_info, true);
    								$openid = $info["openid"];
    								$unionid = $info["unionid"];//获取微信公众号unionid
    								if($unionid){
    									$rmu = _get_one('a_member_unionid',$unionid,'unionid');//利用unionid查看当前用户是否存在
    									//数据整合
    									$dataArr=array();	
    									$dataArr["openid_mp"]=$openid;//获取微信公众号openid
    									$dataArr["is_subscribe"]=1;//表示用户已关注公众号
    									if ($rmu){//存在
    										_update('a_member_unionid',$dataArr,$rmu["id"]);//修改为用户已关注公众号
    									}else{
    										$dataArr["unionid"]=$unionid;
    										$dataArr["addTime"]=time();
    										$dataArr["addip"]=formip();
    										_insert('a_member_unionid',$dataArr);//新增一条记录为用户已关注公众号
    									}
    //									//更新会员信息
    //									$rm = _get_one('a_member',$unionid,'WXunionid');
    //									if($rm){
    //										_query("update a_member set WXopenid_mp='{$FromUserName}' where id='{$rm["id"]}'");
    //									}
    								}
    						}elseif($Event == "unsubscribe"){//退订
    								//修改为用户已取消关注公众号
    								_query("update a_member_unionid set is_subscribe='0' where openid_mp='{$FromUserName}'");
    						}elseif($Event == "CLICK"){//点击
    								
    						}
    				}
    				elseif($MsgType == "text")
    				{	
    						$contentStr = "联系方式:".mainConfig("web_1"); 
    						kefu_send($FromUserName, "text", $contentStr);
    						//$content = trim($postObj->Content);
    						//jiLuRiZhi("0006【咨询的内容】\r\n".$content."",$FromUserName);
    						//回复
    						//$contentStr = "联系方式:0551-63520015\r\n服务时间:8:30-18:00";
    						//$this->return_text($postObj,$contentStr);
    				}
    				//记录结束时间
    				global $loadingTimeStart;
    				$loadingTimeEnd = microtime(true);
    				$loadingTimeTotal = $loadingTimeEnd - $loadingTimeStart;
            }else {
    			echo '';
                exit;
            }
        }
    	//回复文本信息
    	private function return_text($postObj,$contentStr){
    			$textTpl = "<xml>
    									<ToUserName><![CDATA[%s]]></ToUserName>
    									<FromUserName><![CDATA[%s]]></FromUserName>
    									<CreateTime>%s</CreateTime>
    									<MsgType><![CDATA[text]]></MsgType>
    									<Content><![CDATA[%s]]></Content>
    									</xml>";
    			$time = time();
    			$resultStr = sprintf($textTpl, $postObj->FromUserName, $postObj->ToUserName, $time, $contentStr);
    			echo $resultStr;
    			//exit;
    	}
    	//验证身份
        private function checkSignature()
        {
            // you must define TOKEN by yourself
            if (!defined("TOKEN")) {
                throw new Exception('TOKEN is not defined!');
            }
            $signature = $_GET["signature"];
            $timestamp = $_GET["timestamp"];
            $nonce = $_GET["nonce"];
            $token = TOKEN;
            $tmpArr = array($token, $timestamp, $nonce);
            // use SORT_STRING rule
            sort($tmpArr, SORT_STRING);
            $tmpStr = implode( $tmpArr );
            $tmpStr = sha1( $tmpStr );
            if( $tmpStr == $signature ){
                return true;
            }else{
                return false;
            }
        }
    }
    ?>
    

    三、发送公众号模板通知
    发送的前提是:微信小程序和微信公众号的openid以及unionid不为空

    <?php
    	//发送模板信息_mp
    	function send_template_mp($template){
    		$url= "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=" . access_token_mp() . "";
    		$res = curl_post($url,urldecode($template));
    		//登记日志
    		$logStr = "【发送模板消息-提交数据】:\r\n".json_encode($res, true);
    		log_result($logStr,"log_wxmp",date("Ymd")."_template.txt");
    		return $res;
    	}
    	//整合模板数据_mp
    	//$wxapp_template_mp["open"] true
    	//$wxapp_template_mp["open"] 消息模板ID
    	//$rum["WXopenid_mp"] 微信公众号openid
    	if(formip()!="127.0.0.1" && $wxapp_template_mp["open"] && $wxapp_template_mp["template_id"]["order_admin51"])
    	{
    		$sqlxm="select * from a_member_unionid where is_subscribe=1";
    		$arrxm=_get_all($sqlxm);
    		foreach ($arrxm as $rsxm) :	
    			$rum = _get_one("a_member",$rsxm["openid"],"WXopenid");
    			if($rum && $rum["WXopenid_mp"]){
    				$contex = "您有待支付订单已经取消";
    				$template = '{
    						   "touser":"'.$rum["WXopenid_mp"].'",		
    						   "template_id":"'.$wxapp_template_mp["template_id"]["order_admin51"].'",
    						   "url":"",  
    						   "data":{
    								   "first": {"value":"'.$contex.'","color":"#173177"},
    								   "keyword1":{"value":"'.$rsDG["danhao"].'","color":"#173177"},
    								   "keyword2": {"value":"用户手动取消", "color":"#173177"},
    								   "remark":{"value":"请注意查看!","color":"#173177"}
    						   }
    					   }';
    				$template = json_decode($template, true);
    				$template = json_encode($template);
    				$res = send_template_mp($template);
    			}
    		endforeach ;
    	}		
    
    ?>
    
    展开全文
  • 以订单推送为例,主要为大家详细介绍了java实现微信公众号发送模版消息,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • 主要为大家详细介绍了java微信公众号发送消息模板,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • 微信公众号h5页面制作,微信公众号H5吸粉模板源码 。源码参考链接:www.pikao.cn
  • 微信公众号模板消息推送代码,亲测可行。其中有一个工具类,注释啥的都有。需要的可以看看
  • 使用公众平台模板消息功能,仅支持添加模板和更改所在行业,如果想要实现更多功能效果,可以通过微号帮平台的模板消息群发功能实现,也可以自己根据公众平台的开发接口编程实现功能,均能实现微信公众号模板消息指定...

    使用公众平台模板消息功能,仅支持添加模板和更改所在行业,如果想要实现更多功能效果,可以通过微号帮平台的模板消息群发功能实现,也可以自己根据公众平台的开发接口编程实现功能,均能实现微信公众号模板消息指定用户发送,模板消息即按固定格式的消息,不支持广告等营销类消息以及其它所有可能对用户造成骚扰的消息,不支持消息插入封面图片。

    功能模板消息群发,解决微信公众号模板消息功能无法发送模板消息的问题,让公众号可以对所有用户或分组用户发送模板消息,模板消息支持换行和更改颜色,插入用户昵称,表情符号,跳转微信小程序,页面模板专辑链接,文章h5链接,定时未来30天内发送。模板消息仅用于公众号向用户发送重要的服务消息,只能用于符合其要求的服务场景中,如评测报告提醒,鉴定结果提醒,服务受理通知,订单生产通知,中标结果通知,投诉进度提醒,车辆出发提醒,留宿申请提醒,操作码提醒,课时确认通知,证书发放通知,用车申请通知等。

    使用条件

    1、已微信认证的服务号

    2、已授权服务号给微号帮

    操作教程

    1、免费注册试用7天

    在微号帮平台上完成新用户注册操作。

    e8486d30f77941eb8af4a0ea629d55e5.png

    2、用户登录

    注册成功后,通过用户名和密码登录微号帮平台。

    068f09fc2a8a73401bc59a976e9a9335.png

    3、登录成功后,进入管理中心,找到添加公众号,使用公众号管理员微信扫码授权给微号帮。

    8a3b1e4d81fadd9765e6e572b7784aa8.png

    4、公众号管理员微信扫码后,点击授权,把微信公众号全部接口授权给微号帮,这样才能让功能的效果完全实现。

    a469610a764612d492680ff742dcc147.png

    5、公众号授权成功后,点击管理中心,选择我的公众号,进入授权公众号的功能管理。

    5d36afb2acb8a69bb836f5372b89407c.png

    6、公众平台已添加过模板消息功能的公众号请跳过此步骤,未添加过模板消息功能的公众号>>查看教程:公众平台添加模板消息功能(https://w.url.cn/s/AFdN1Xm)。

    54b40a30af963081cdddaedb2e79ba32.png
    a2caeaebd91b18c81c12f1c069140bd9.png

    7、模板消息群发:获取模板数据

    进入功能管理后,找到高级功能,选择模板消息群发,然后根据页面提示完成操作,如果获取不到模板数据,>>查看教程:公众平台如何添加模板(https://w.url.cn/s/AFdN1Xm),然后再次点击获取模板数据。

    9e0ce87ba940b4a2377cb09aade607bd.png

    8、模板消息群发:编辑模板消息

    进入创建模板消息后,再根据页面提示完成模板消息内容设置,最后点击保存,支持消息换行、自定义颜色,支持消息插入粉丝昵称、表情符号,支持消息跳转文章H5链接、页面模板专辑链接、小程序,支持消息定时未来30天内发送。

    34244fab506bd6bd9259907218f1392a.png

    9、模板消息群发:开启推送任务

    保存成功后,找到对应信息主题,然后点击开启,不开启不会自动定时发送模板消息。

    e24bd26ffd4822f882cc2f243f42bf62.png

    10、微信公众号模板消息功能,在微信上的演示效果。

    856ec4202062f1f203104779d891ba70.png
    展开全文
  • 微信公众号模版消息

    2016-02-22 14:12:53
    本代码真是可用,只需要修改最后面的几个参数设置称自己的。 微信公众账号需要想指定用户推送消息时,就需要用到模版消息接口!
  • 1,微信平台配置小程序服务通知 (1)首先小程序服务通知需要在微信小程序平台配置一下【服务器地址】【令牌 - token】 (2)地址是需要配置到某个方法的,方法写的代码是用来验证 token 是否和页面上填的 token...
  • 微信公众号模板消息(带流程图)

    千次阅读 2020-06-26 23:32:54
    微信公众号模板消息功能介绍使用说明一、设置所属行业二、获得模板ID三、发送模板消息获取公众号用户的OPENID(第三方网页授权)第一步:用户同意授权,获取code第二步:通过code换取网页授权access_token第三步:...
  • 微信公众号、小程序项目开发模板源码(https://blog.csdn.net/rongbo91/article/details/112506514) 微信公众号/小程序开发项目源码(支持多公众号) 微信应用开发一步到位,结合测试公众号完成开发Demo演示,项目源码...
  • 突破群发的限制,次数不受限制,针对不同类型的粉丝,实现精准推送,帮助公众号推广H5或小程序使用模板消息群发需要什么条件?1、必须是已认证的服务号2、需要在公众平台中开通“模板消息”功能插件3、开通后,需要...
  • 微信公众号创建模板 消息模板创建成功,系统会返回一个消息模板ID。模板格式如下: {{first.DATA}} 消息正文:{{remark.DATA}} 微信调用格式 格式如下: { "touser":"用户iD", "template_id":"消息模板ID", ...
  • 微信公众号展示页面html静态模板
  • 一、首先想要对接,先要一个公众号,再就是开发文档了: ...不过请注意这一点 ok,我们继续:再来完成公众号的基本配置: ...这个URL是很重要的,需要响应微信发送的token验证 令牌(Token):必须为英文或数字,...消息加解
  • 微信公众号运营方案(模板微信公众号运营方案(模板)微信名称微信号管理员创建时间账号性质□订阅号□服务号是否认证□是□否所属中心所属部门部门负责人定位描述创建此公众号的主要目的,或品牌建设,或销售平台
  • 微信公众号消息模板推送demo,亲测能用,替换下参数就能用
  • 微信公众号模板消息推送--测试

    千次阅读 2019-08-09 13:35:30
    4、手动设置模板消息模式 时间:{{time.DATA}} 申请人:{{reqestion_user.DATA}} 审批人:{{app_user.DATA}} 任务:{{task.DATA}} 单据编号:{{billnumber.DATA}} 5、代码 public class WeixinMe...
  • 实现微信公众号模板消息推送控制层实体类官方文档地址: 控制层 package com.zjht.resourceserver.controller; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONException; import ...
  • 主要为大家详细介绍了微信公众号开发之回复图文消息java代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 28,923
精华内容 11,569
关键字:

微信公众号模板消息