背景: 利用企业微信的应用推送消息
-
在企业微信后台创建应用,一般由企业微信管理员创建,创建好应用后,在工作台上便可看到新创建的应用
-
获取企业微信应用相关的消息(CorpId, CorpSecret, AgentId), CorpId与企业账号后台的CorpId设置保持一致;CorpSecret与CorpSecret的后台设置一致; 都区分大小写;
AgentId为新创建的应用的Id{ /// <summary> /// 与微信企业账号后台的CorpId设置保持一致,区分大小写。 /// </summary> public string CorpId { get; set; } /// <summary> /// 与微信企业账号后台的CorpSecret设置保持一致,区分大小写。 /// </summary> public string CorpSecret { get; set; } /// <summary> /// 微信企业应用ID /// </summary> public string AgentId { get; set; } public string Receiver { get; set; } public string WeiXinContent { get; set; } } ```
-
使用NuGet引入第三方代码库Senparc.Weixin.* 根据自己的代码决定引入什么库及版本
-
实现自己的代码,直接调用库中的SendText方法
{ if (weixinReceivers == null || !weixinReceivers.Any() || string.IsNullOrEmpty(messageContent)) { Logger.Warn("The Parameter weixinReceivers or messageContent is invalid"); return ; } if (WeiXinInfo == null) { Logger.Warn("The Configuration Of WeiXin is invalid"); return ; } foreach (var receiver in weixinReceivers) { WeiXinInfo.Receiver = receiver; WeiXinInfo.WeiXinContent = messageContent; if (!ValidateWeixinInfo(WeiXinInfo)) { Logger.Warn("Validate WeixinInfo failed"); continue; } var result = SendText(WeiXinInfo); if (!string.IsNullOrEmpty(result.invaliduser)) { Logger.Warn($"Send {messageContent} to result.invaliduser failed"); continue; } } }
-
调用SendText实现发送消息的同步方法,调用SendTextAsync实现发送消息的异步方法
-
发送的消息,如第4步中的messageContent就htm格式的,你需要在发送前,把格式和内容准备好
-
同理,可发送图片,语音,附件等
网友评论