在微信开发中,经常会使用到模板消息。因此框架中对此进行了一些封装,并且提供了后台操作界面以及日志查看等功能,下面开始逐步介绍开发操作以及使用。

微信公众平台配置

首先,需要申请开通模板消息功能,如下图所示:

然后,等待审批通过:

申请成功了就可以使用这个功能,如下所示:

然后从模板库中选择自己需要的模板:

添加后,查看模板详情:

后台操作

根据上述步骤,添加到后台相应的模块中,如下图所示:

接下来,我们就可以在后台模拟了:

编辑带下划线的文字:

点击【发送】按钮,即可完成发送。

使用代码发送模板消息

Magicodes.WeiChat封装了友好的模板消息发送的API,具体您可以查看项目【Magicodes.WeiChat.Framework】下的类“TemplateMessage”。

该类提供Create方法以便我们调用,相关参数如下所示:

/// <summary>
/// 模板消息
/// </summary>
public class TemplateMessageCreateModel
{
/// <summary>
/// 接收人openId,多个请以分号分隔
/// </summary>
public string ReceiverIds { get; set; }
/// <summary>
/// 模板消息编号
/// </summary>
public string MessagesTemplateNo { get; set; }
/// <summary>
/// 顶部颜色
/// </summary>
public string TopColor { get; set; }
/// <summary>
/// 链接
/// </summary>
public string Url { get; set; }
/// <summary>
/// 模板消息数据,如:
/// serviceInfo : new TemplateDataItem("您好,您的服务单123456789有新的客服回复。")
/// remark : new TemplateDataItem("详细处理结果请点击“详情”查看。", "#173177"),
/// </summary>
public Dictionary<string, TemplateDataItem> Data { get; set; }
}

通过API,我们可以很方便的发送一条或多条模板消息,如下面代码:

//接收人openId,多个请以分号分隔

var receiverIds = "";

foreach (var item in receiverId)

{

receiverIds += item.Split(';')[] + ';';

}

//模板消息模型

TemplateMessageCreateModel tmm = new TemplateMessageCreateModel()

{

MessagesTemplateNo = id,

Data = new Dictionary<string, TemplateDataItem>(),

ReceiverIds = receiverIds.Trim(';'),

Url = url

};

foreach (var item in Request.Form.AllKeys)

{

if (item.EndsWith(".DATA"))

{

var color = Request.Form[item + "_COLOR"];

tmm.Data.Add(item.Split('.')[], new TemplateDataItem(Request.Form[item], color));

}

}

ajaxResponse.Result = WeiChatApisContext.Current.TemplateMessageApi.Create(tmm);

注意,请通过WeiChatApisContext.Current.TemplateMessageApi来调用模板消息Api。

Magicodes.WeiChat——发送模板消息的更多相关文章

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

    步骤一:获取模板ID 有两个方法可以获取模版ID 通过模版消息管理接口获取模版ID 在微信公众平台手动配置获取模版ID 步骤二:页面的 <form/> 组件,属性report-submit ...

  2. PHP实现发送模板消息到微信公众号

    简述:在这里会具体讲述到如何实现:如何通过后台的代码来实现发送模板消息到已经关注了"心想"公众号的用户. (本人新手,目前实习中,我的所有文档都是在自己开发过程中的记录,有些言语跟 ...

  3. php之微信公众号发送模板消息参观模仿

    上篇文章中鞋到了公众号发送末班消息,他是最后调用两个方法,本文章简化一下 将下面的php方法放到一个可以引入的公共类中即可 构建模板消息: 我把需要用到的模板消息 都写成一个个方法,放在公共类文件中了 ...

  4. php之微信公众号发送模板消息

    讲一下开发项目中微信公众号发送模板消息的实现过程(我用的还是Thinkphp5.0). 先看一下效果,如图: 就是类似于这样的,下面讲一下实现过程: 第一步:微信公众号申请模板消息权限: 立即申请: ...

  5. JAVA微信公众号通过openid发送模板消息~

    1,问题产生 在微信公众号开发过程中,我们有时候做不同权限的时候,比如在注册的时候,需要审核,然后我们要想办法让对方知道审核的结果.这时候我们可以通过模板消息来通知. 2,第一步,首先在微信公众号上获 ...

  6. 微信小程序之发送模板消息(通过openid推送消息给用户)

    一.获取access_token access_token是接口调用的凭证,目前有效期为两个小时,需要定时刷新,重复获取将导致上次获取的access_token失效.(注:不建议每次调用需要acces ...

  7. h5 录音 自动生成proto Js语句 UglifyJS-- 对你的js做了什么 【原码笔记】-- protobuf.js 与 Long.js 【微信开发】-- 发送模板消息 能编程与会编程 vue2入坑随记(二) -- 自定义动态组件 微信上传图片

    得益于前辈的分享,做了一个h5录音的demo.效果图如下: 点击开始录音会先弹出确认框: 首次确认允许后,再次录音不需要再确认,但如果用户点击禁止,则无法录音: 点击发送 将录音内容发送到对话框中.点 ...

  8. 微信小程序发送模板消息

    微信小程序发送模板消息 标签(空格分隔): php 看小程序文档 [模板消息文档总览]:https://developers.weixin.qq.com/miniprogram/dev/framewo ...

  9. PHP实现发送模板消息(微信公众号版)

    以下为开发步骤: 1.微信公众号为服务号且开通微信认证(其他类型账号不能发送) 2.ip白名单设置你的服务器ip(用于获取access_token) 3.网页授权你的域名(用于获取用户的openid) ...

随机推荐

  1. git 实际操作

    1.把文件添加到版本库中. 所有的版本控制系统只能跟踪文本文件的改动 下面先看下demo如下演示: 我在版本库gittest目录下新建一个记事本文件 1.txt 内容如下:1111111 第一步:使用 ...

  2. 可道云kodexplorer网盘未清理造成linux服务器爆满的解决方法

    今天登陆宝塔面板的时候发现硬盘占用37GB,已经变红提示我空间不足了,惊呆了, 还以为是宝塔抽风了,去远程连接服务器看了一下,懵逼了. df -h 查看挂载目录使用情况 还是不相信现实的我又重启了一下 ...

  3. Windows下编译jcef

    依赖软件参考 本文参考官方网站上的jcef编译过程 编译成功的环境如下: windows 10 64 bit JDK 1.8.0_121 64 bit Python 2.7.13 git versio ...

  4. Java当中的IO二

    1.大文件的读写方法 由于文件很大,我们不能一下子把文件内的所有内容都读取出来,所以只能一段一段的读取 注意:在关闭read()和write()的时候可能会产生IOException,需要对其进行处理 ...

  5. Android APT

    APT APT(Annotation Processing Tool)是一种处理注释的工具,它对源代码文件进行检测找出其中的Annotation,使用Annotation进行额外的处理. Annota ...

  6. 基于jQuery的控件:弹框

    ★页面展示 ★属性 属性 值 说明 默认值 div Object jQuery对象 $('body') width Number 控件的宽度 auto height Number 控件的高度 auto ...

  7. [Swift]LeetCode291. 单词模式 II $ Word Pattern II

    Given a pattern and a string str, find if strfollows the same pattern. Here follow means a full matc ...

  8. [Swift]LeetCode522. 最长特殊序列 II | Longest Uncommon Subsequence II

    Given a list of strings, you need to find the longest uncommon subsequence among them. The longest u ...

  9. [Swift]LeetCode664. 奇怪的打印机 | Strange Printer

    There is a strange printer with the following two special requirements: The printer can only print a ...

  10. iOS学习——图片压缩到指定大小以内

    一.图片压缩简述 在我们开发过程中,有可能会遇到拍照.或者从相册中选择图片,要么单选或者多选,然后上传图片到服务器,一般情况下一张图片可能3-4M,如果类似微信朋友圈上传9张图片大约是 35M左右,如 ...