C#微信开发之发送模板消息完整攻略
概述
微信模板消息是一种微信提供的消息推送方式,可以让开发者向用户主动发送重要信息,如订单状态变更、交易成功、活动通知等。本文将介绍如何在C#中使用微信公众号(WeChat Official Account)的API发送模板消息,包括准备工作、代码实现和注意事项。
准备工作
- 获得微信公众号的appid和appsecret,如果没有可以在微信公众平台注册获得。
- 服务器上安装配置.NET开发环境,推荐使用Visual Studio 2017或以上版本。
- 掌握微信模板消息的基本概念,以及模板消息所需要包含的属性。
使用Wechat.SDK发送模板消息
Wechat.SDK是一款.NET下的微信公众号开发辅助组件,包含公众号API接口的封装。在使用Wechat.SDK之前,需要先安装Wechat.SDK NuGet包。
// 引入命名空间
using Senparc.Weixin.MP.AdvancedAPIs;
// 准备发送模板消息需要的信息
string openid = "user_openid";// 用户openid
string templateId = "template_id";// 模板消息id
string url = "http://www.example.com";// 跳转链接(可选)
string topColor = "#FF0000";// 消息头部颜色(可选)
var data = new
{
first = new
{
value = "您好,您有新的订单。",
color = "#173177"
},
keyword1 = new
{
value = "12345",
color = "#173177"
},
keyword2 = new
{
value = "2019年9月1日",
color = "#173177"
},
remark = new
{
value = "请及时处理,谢谢。",
color = "#173177"
}
};
// 使用Wechat.SDK发送模板消息
var result = TemplateApi.SendTemplateMessage(appId, openid, templateId, url, topColor, data);
上面的代码实现了向指定用户发送一条订单通知的模板消息。代码中的appId
是注册微信公众号时获得的,openid
是用户的唯一标识符,在用户授权登录后可以获取,templateId
是在微信公众平台申请模板消息时获得的,url
是用户点击模板消息后跳转到的链接(可选),topColor
是模板消息的头部颜色(可选),data
定义了填充模板消息内容的详细信息,其中first
、keyword1
、keyword2
、remark
是模板消息的关键字,value
是对应关键字的具体内容,color
是对应关键字的颜色。
注意事项
- 在微信公众平台中申请使用模板消息需申请“消息模板服务”并通过后才可使用,申请和审核的过程可能需要一些时间。
- 接收到模板消息的用户必须是已关注公众号的用户。
- 避免频繁发送模板消息,否则可能会被微信限制。
示例
示例一
// 准备发送模板消息需要的信息
string openid = "user_openid";// 用户openid
string templateId = "template_id";// 模板消息id
string url = "http://www.example.com";// 跳转链接(可选)
string topColor = "#FF0000";// 消息头部颜色(可选)
var data = new
{
first = new
{
value = "尊敬的员工、客户:",
color = "#173177"
},
keyword1 = new
{
value = "2019年A公司年会",
color = "#173177"
},
keyword2 = new
{
value = "2019年11月30日 18:30",
color = "#173177"
},
remark = new
{
value = "期待您的到来,谢谢。",
color = "#173177"
}
};
// 使用Wechat.SDK发送模板消息
var result = TemplateApi.SendTemplateMessage(appId, openid, templateId, url, topColor, data);
示例二
// 准备发送模板消息需要的信息
string openid = "user_openid";// 用户openid
string templateId = "template_id";// 模板消息id
string url = "http://www.example.com";// 跳转链接(可选)
string topColor = "#FF0000";// 消息头部颜色(可选)
var data = new
{
first = new
{
value = "亲爱的xxx:",
color = "#173177"
},
keyword1 = new
{
value = "西班牙探险之旅",
color = "#173177"
},
keyword2 = new
{
value = "2019年10月1日",
color = "#173177"
},
remark = new
{
value = "请准时前往集合地点,谢谢。",
color = "#173177"
}
};
// 使用Wechat.SDK发送模板消息
var result = TemplateApi.SendTemplateMessage(appId, openid, templateId, url, topColor, data);
以上两个示例分别模拟了发送公司年会通知和旅游活动提醒的模板消息。根据自己的需求和模板消息所需要的关键字,将data
中的具体信息替换即可。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#微信开发之发送模板消息 - Python技术站