C# 企业微信消息推送对接,实现天气预报推送

准备工作

需要获取的东西1. 企业Id,2.应用secret 和 应用ID

获取企业id

注册完成后,在我的企业=》企业信息=》最下面企业id59e7322e112cd377122a46740f9e410c.png

获取应用secret 和  应用ID

a26f200455808067640d3cd07d1ea8f5.pngc6dd107c576e8e46a98067a427bcec56.png

发送微信消息

class WeCom{public static string weComCId = "ww2b b0bf8";//企业Id①public static string weComSecret = "EbKnQqG2y1qAVNL42 6 E"; //应用secret②public static string weComAId = "100 "; //应用ID③public static string weComTouId = "@all";/// <summary>/// 发送微信通知/// </summary>/// <param name="text">消息</param>/// <returns></returns>public string SendToWeCom(string text){// 获取Tokenstring getTokenUrl = $"https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid={weComCId}&corpsecret={weComSecret}";string token = JsonConvert.DeserializeObject<dynamic>(new RestClient(getTokenUrl).Get(new RestRequest()).Content).access_token;System.Console.WriteLine(token);if (!String.IsNullOrWhiteSpace(token)){var request = new RestRequest();var client = new RestClient($"https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token={token}");var data = new{touser = weComTouId,agentid = weComAId,msgtype = "text",text = new{content = text},duplicate_check_interval = 600};string serJson = JsonConvert.SerializeObject(data);System.Console.WriteLine(serJson);request.Method = Method.POST;request.AddHeader("Accept", "application/json");request.Parameters.Clear();request.AddParameter("application/json", serJson, ParameterType.RequestBody);return client.Execute(request).Content;}return "-1";}}

直接调用

new WeCom().SendToWeCom("你好");

就会发送消息

实现天气的推送

主要是天气接口的获取,还有就是定时任务任务 可以通过  .NET Core 基于 IHostedService 实现后台定时任务或者 QuartzJob(目前用的这个)

var RESULT=  DoRequest.SendRequest_Get("http://t.weather.itboy.net/api/weather/city/101020100");var Jo = JObject.Parse(RESULT);if (Jo["status"].ToString()=="200"){var AA = Jo["data"]["forecast"].ToString().JsonToList<Forecast>();var entity=  AA.Where(x => x.ymd == DateTime.Now.ToString("yyyy-MM-dd")).FirstOrDefault();if (entity != null){var str = $"  ---上海天气--- \n" +$"  时间:  { entity.ymd} \n" +$"  农历: { CnCanlendar_nongli.GetChineseDateTime(DateTime.Now)}  \n" +$"  星期: { entity.week}  \n" +$"  天气: { entity.type}  \n" +$"  风速: { entity.fl} + { entity.fx}  \n" +$"  提示: { entity.notice}  ";new WeCom().SendToWeCom(str);}                         }

效果

83431fa78c1054f9c72a60574aec115f.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/293869.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

通信协议——HTTP、TCP、UDP

TCP HTTP UDP:都是通信协议&#xff0c;也就是通信时所遵守的规则&#xff0c;只有双方按照这个规则“说话”&#xff0c;对方才能理解或为之服务。TCP HTTP UDP三者的关系:TCP/IP是个协议组&#xff0c;可分为四个层次&#xff1a;网络接口层、网络层、传输层和应用层…

++i 与 i++

i 与 i都能实现自增,它们的区别在哪? i:先自增,然后返回引用. i:先进行一个本地备份(可以理解为定义一个临时变量),自增,然后返回临时变量的引用. 理论上来讲,i操作会快于i,但由于现代编译器做了优化.所以,i与i在性能上的并无差别.转载于:https://www.cnblogs.com/heavenyes/p…

Visual Studio 远程调试正在运行的进程

使用场景当项目在测试环境上有bug&#xff0c;需要运行代码调试一下&#xff0c;这时就需要在测试环境上安装一个调试工具&#xff0c;然后在本地运行代码&#xff0c;远程链接到测试环境服务器来调试代码&#xff1b;&#xff08;假期鸽了这末长的时间&#xff09;方式一&…

直男约会能有多奇葩​?

1 六根烟来了七位领导怎么办&#xff08;素材来源网络&#xff0c;侵删&#xff09;▼2 和36号鞋垫一样大的毛肚&#xff08;素材来源网络&#xff0c;侵删&#xff09;▼3 直男约会能有多奇葩&#xff1f;&#xff08;素材来源网络&#xff0c;侵删&#xff09;▼4 高情商v…

Android之如何解决adb server is out of date,killing...ADB server didn't ACK

今天&#xff0c;久未出现的著名的“adb server is out of date. killing”又发生了&#xff0c;在此&#xff0c;将解决方法记下&#xff0c;以便日后查看。 1. 错误信息&#xff1a; C:\Users\lizy>adb devices adb devicesadb server is out of date. killing... ADB …

计算机如何实现共享接入,局域网内电脑实现共享设置方法

不同局域网内电脑怎么实现互访实现文件或打印机共享设置?下面由学习啦小编给你做出详细的实现共享设置方法介绍!希望对你有帮助!局域网内电脑实现共享设置方法&#xff1a;一、使用一条网线将两个路由器连接&#xff0c;网线插在路由器的LAN口上;二、两个路由器要设置两个不同…

python的内建函数详解

python内建函数最近一直在学习python&#xff0c;在网上看到和学习了关于python内建函数的一些分类和个内建函数的作用&#xff0c;下面是一些关于python内建函数的罗列&#xff0c;初学者的了解&#xff0c;分类可能不准确&#xff0c;一起交流。一、数学运算类abs(x)求绝对值…

【另类见解】一致性哈希就能解决分库分表问题了?

“开局一问&#xff1a;分库分表行为中&#xff0c;一致性哈希到底用处大不大&#xff1f;装B脑图现在是大数据的时代&#xff0c;其中一个体现就是数据量非常庞大。当然大数据的概念绝非是数据量就可以定义的&#xff0c;我自己给大数据下的定义是&#xff1a;无处不在的大量数…

DNS resolving 占用大量日志

公司内部DNS配置好后&#xff0c;测试解析正常&#xff0c;只是几乎每秒都有无法解析的日志产生。但分析日志时发现&#xff0c;每天的日志都有2G左右。日志中几乎全是类似network unreachable resolving www.baidu.com/A/IN:2001:5023:c27::2:30#53network unreachable resolv…

SQL Server 2008之DMF

陈述式管理架构&#xff0c;一个用于SQL Server数据库引擎的新的基于策略的管理框架 DMF是一个基于政策的用于管理一个或多个SQL Server 2008实例的系统。要使用DMF&#xff0c;SQL Server政策管理员使用SQL Server 管理套件创建政策&#xff0c;这些政策管理服务器上的实体&am…

Android之ActivityManage长用方法总结

Android 如何判断一个应用在运行 在一个应用中&#xff0c;或一个Service 、Receiver中判断一个应用是否正在运行&#xff0c;以便进行一些相关的处理。这个时候我们需要得到一个ActivityManager&#xff0c;这个Manager顾名思意就是管理Activity的&#xff0c;它有一个方法叫g…

计算机网络就业范围分析,计算机网络技术专业就业前景怎么样「就业形势分析」...

计算机网络技术专业作为目前的热门专业之一&#xff0c;在就业方向上可以有哪些选择?计算机网络技术专业就业前景如何?下文小编给大家整理了计算机网络技术专业的最新就业形势分析&#xff0c;供参考!1.掌握计算机网络技术专业的基本理论、基本知识;2.掌握计算机网络技术专业…

Codeforces Round #358 (Div. 2) A. Alyona and Numbers 水题

A. Alyona and Numbers题目连接&#xff1a; http://www.codeforces.com/contest/682/problem/A Description After finishing eating her bun, Alyona came up with two integers n and m. She decided to write down two columns of integers — the first column containing…

pomForSSH

2019独角兽企业重金招聘Python工程师标准>>> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation"http://maven.apache.org/POM/4.0.0 http://maven.apache…

WPF 实现展示反应盘、者试剂仓控件

WPF开发者QQ群&#xff1a; 340500857 | 微信群 -> 进入公众号主页 加入组织由于微信群人数太多入群请添加小编微信号&#xff08;yanjinhuawechat&#xff09;或&#xff08;W_Feng_aiQ&#xff09;邀请入群&#xff08;需备注WPF开发者&#xff09;PS&#xff1a;有更好的…

向linux内核版本号添加字符/为何有时会自动添加“+”号

转载&#xff1a;http://blog.csdn.net/adaptiver/article/details/7225980 1. 引子 编译2.6.35.7 kernel版本的时候发现&#xff0c;“2.6.35.7“的内核版本编译成功后生成的版本号变成了“2.6.35.7”&#xff0c;为什么后面会多一个加号呢&#xff1f;问题出现在linux的版本…

渣男劈腿,两个女生逼他做出选择,结果......

1 生一个女儿有多重要&#xff08;素材来源网络&#xff0c;侵删&#xff09;▼2 真实版眼睛瞪得像铜铃&#xff08;素材来源网络&#xff0c;侵删&#xff09;▼3 地表最强撞衫&#xff08;素材来源网络&#xff0c;侵删&#xff09;▼4 过年时最怕遇见的人&#xff08;素材…

安卓判断服务器返回的状态码,AppsFlyer返回状态码400

我实现Appsflyer我的样本项目&#xff0c;但是当我运行它&#xff0c;服务器返回错误代码400AppsFlyer返回状态码400I/AppsFlyer_1.18-117182240: response code: 400还有就是我MainActivty.javapublic class MainActivity extends AppCompatActivity {public static final Str…

java多进程、多线程讲解

一、 什么是进程、线程&#xff1f;线程和进程的区别&#xff1f; 1. 进程 当一个程序进入内存运行时&#xff0c;即变成一个进程。进程是处于运行过程中的程序。 进程是操作系统进行资源分配和调度的一个独立单位。 进程的三个特征&#xff1a; 独立性 独立存在的实体&#xf…