开篇语

这两天看见有大佬分享使用钉钉和企业微信的机器人来做通知报警,然后我想到了我使用的另一个第三方软件捷易快信(可能大家都不知道这个东西,我也忘了我最开始是咋知道的),该服务的优点是可以通过微信进行提醒,不过每条需要收费0.0080元,但是不要担心每月可能会赠送4元(因为我的就是),对于我来说,够我玩了。

注册配置

访问网址:http://jy.erpit.cn/login

我是直接使用的微信进行登录的,看个人爱好进行登录。

下面模拟一个服务器告警来做一个演示消息通知。

注意看红框的内容,需要让消息接收方扫码关注该公众号

代码开发

查看接口文档

找到我们想要的群发消息接口

也可以通过接口添加删除用户,支持给单独用户推送消息等。

下面开始编写代码,还在原来的项目上进行添加接口操作。

代码仓库地址:https://gitee.com/AZRNG/my-example 需要请自取

新建Model类,构建请求参数

            var data = new SendMessageVm
{
App_key = "xxx",
Secret = "xxx",
Template_id = "xxx",
Data = new SendMessDataVm
{
First = new Details { Value = "服务告警测试" },
Keyword1 = new Details { Value = "告警服务器地址:上海" },
Keyword2 = new Details { Value = "原因:数据库连接不上" },
Keyword3 = new Details { Value = "当前服务:拼团活动" },
Remark = new Details { Value = $"当前时间{DateTime.Now:yy:MM:dd HH:mm:ss} 请工程师尽快查看!" }
}
};

Model类有点长就不粘贴了,需要的话可以去下载源码查看。

通过post形式去请求该接口,本次示例为了方便起见,我直接使用了自己学习使用的Nuget包:Common.RestSharpClient

ConfigureServices注入服务

services.AddHttpClientService();

控制器依赖注入服务

        private readonly IHttpClientHelper _httpClientHelper;

        public InformController(IHttpClientHelper httpClientHelper)
{
_httpClientHelper = httpClientHelper;
}

请求接口

var result = await _httpClientHelper.PostAsync<string>("http://jy.erpit.cn/api/message/send", data).ConfigureAwait(false);

请求返回参数

查看微信是否有消息通知

本次示例到此结束。

结束

通过这次演示才发现还可以推荐用户,然后将得到推荐用户消费金额的10%作为奖励,不过免费的已经够我用了,哈哈。我也想像那些大佬一样为社区做出一些贡献,为dotNet社区发展添砖加瓦,虽然我菜,但是我可以搬砖呀,搬砖也是做贡献的。

微信公众号

.Net之简单通知服务的更多相关文章

  1. (转)苹果推送通知服务教程 Apple Push Notification Services Tutorial

    本文译自http://www.raywenderlich.com/.原文由iOS教程团队 Matthijs Hollemans 撰写,经原网站管理员授权本博翻译. 在iOS系统,考虑到手机电池电量,应 ...

  2. AWS邮件通知服务:实时监控邮件状态

    以下为译文: 订阅“AWS中文技术社区”微信公众号,实时掌握AWS技术及产品消息! AWS中文技术社区为广大开发者提供了一个Amazon Web Service技术交流平台,推送AWS最新资讯.技术视 ...

  3. 苹果推送通知服务APNs编程(转)

    add by zhj: 下面的几篇文章也非常好, http://www.raywenderlich.com/32960/apple-push-notification-services-in-ios- ...

  4. 简单聊聊服务发现(redis, zk,etcd, consul)

    什么是服务发现? 服务发现并没有怎样的高深莫测,它的原理再简单不过.只是市面上太多文章将服务发现的难度妖魔化,读者被绕的云里雾里,顿觉自己智商低下不敢高攀. 服务提供者是什么,简单点说就是一个HTTP ...

  5. grpc使用记录(三)简单异步服务实例

    目录 grpc使用记录(三)简单异步服务实例 1.编写proto文件,定义服务 2.编译proto文件,生成代码 3.编写服务端代码 async_service.cpp async_service2. ...

  6. 基于ZooKeeper实现简单的服务注册于发现

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/Shaun_luotao/article/ ...

  7. WP7推送通知服务

    原文地址http://www.cnblogs.com/Joetao/articles/2214482.html (一)为什么使用推送通知服务(1)Windows Phone执行模型决定只有一个第三方的 ...

  8. 【阿里云产品公测】简单日志服务SLS使用评测 + 教程

    [阿里云产品公测]简单日志服务SLS使用评测 + 教程 评测介绍 被测产品: 简单日志服务SLS 评测环境: 阿里云基础ECS x2(1核, 512M, 1M) 操作系统: CentOS 6.5 x6 ...

  9. 苹果推送通知服务Push Notification探究总结(序)

    刚才发了两篇几个月前写的文档,觉得太敷衍了,想了想,还是来一发实在的. 再者,刚好上周研究了苹果的推送通知服务Push Notification,还是很有心得的,赶紧趁热打铁,记录一下,望与大家谈论下 ...

随机推荐

  1. 【C++】从零开始,只使用FFmpeg,Win32 API,实现一个播放器(一)

    前言 起初只是想做一个直接读取视频文件然后播放字符动画的程序.我的设想很简单,只要有现成的库,帮我把视频文件解析成一帧一帧的原始画面信息,那么我只需要读取里面的每一个像素的RGB数值,计算出亮度,然后 ...

  2. 06- web兼容性测试与web兼容性测试工具

    web兼容性概述 定义:软件兼容性测试是指检查软件之间能否正确地进行交互和共享信息.随着用户对来自各种类型软件之间共享数据能力和充分利用空间同时执行多个程序能力的要求,测试软件之间能否协作变得越来越重 ...

  3. Django Ajax序列化与反序列化

    序列化与反序列是最常用的功能,有时我们需要将一个表单组打包成Json格式等然后再提交给服务端,这样可以提高效率节约带框,如下是Django配合Ajax实现的序列化与反序列化,文件上传等操作. Ajax ...

  4. hdu1247 字典树或者hash

    题意:      给你一些串,问你哪些串是由其他两个串连接成的. 思路:        我用了两种方法,一个是hash,hash的时候用map实现的,第二种方法是字典树,字典树我们枚举每个一字符串,查 ...

  5. hdu4829 带权并查集(题目不错)

    题意: Information Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Tot ...

  6. hdu 5059 判断数字表示方式以及范围合法(int型之内)

    题意:       给你一个串和两个整数a,b,问你这个串表示的数字是否合法,并且在a,b之间, 和法的要求是无论是正数还是负数都没有前导0,并且注意 -0 是不合法的. 思路:       写了将近 ...

  7. hdu1568斐波那契前4位

    题意:      就是求斐波那契数,但是只要求输出前四位,(n<=100000000). 思路:      这个要用到斐波那契的公式和一些log的规律,直接打看着很乱,直接在网上偷张图片吧:   ...

  8. jquery遍历json的几种方法

    for循环: 1 <script> 2 var obj = { 3 "status":1, 4 "bkmsg":"\u6210\u529f ...

  9. 【axios】get/post请求params/data传参总结

    axios中get/post请求方式 1. 前言 最近突然发现post请求可以使用params方式传值,然后想总结一下其中的用法. 2.1 分类 get请求中没有data传值方式 2.2 get请求 ...

  10. Conda基本使用方法

    anaconda/miniconda的安装 请点击查看我的博客 本教程全部命令操作均在CMD(win).terminal(win).终端(linux/Macos)中执行 使用前配置 因为anacond ...