• 华为云云耀云服务器L实例评测|定时给微信群中推送每日新闻及生活小常识


    大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂

    在这里插入图片描述

    前言

    你是否遇到过这样的场景:

    • 自己的私域群或粉丝群,为了活跃群内气氛,每日早晨发送热点新闻至群中,供大家讨论
    • 自己的小团队,每天或者每周需要发送日报(周报),但是需要你每天去提醒,不然成员容易忘记
    • 做个福利群,每当有福利时,自动给微信群中推送

    类似这样的情况,其实还有好多,那么有相关的解决方案吗?

    答案当然是:有的,今天,我们就来看看,针对上述的应用场景,我们是如何通过华为云云耀云服务器L实例

    效果图

    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    上面就是我再实际应用中的场景,有的是提醒发日报,有的是主动推送新闻,有的是根据群成员发送关键词触发部分功能(签到功能),后期准备签到功能与我的小程序相结合,这样群成员在小程序中的操作和在群内操作,数据都是同步的。

    前期准备

    接下来,我们将来介绍一下如何实现上述所说的功能,需要我们准备如下环境

    1. 一个装有win系统的华为云云耀云服务器L实例,参考连接:点击这里

    在这里插入图片描述
    一定要是win系统,不然无法部署微信机器人
    2. 准备个微信小号,如果没有,用自己常用的微信号也行(免责声明:可能有风险哈,自己斟酌)
    3. 登录雄雄的小课堂-微信机器人服务端,如果没有账号,可以点击注册。

    在这里插入图片描述
    4. 打开基础配置的菜单,然后找到【自定义接口】
    在这里插入图片描述
    5. 点击【新增自定义接口】
    在这里插入图片描述
    在这里插入图片描述
    将自己自定义的接口路径填写上去,即可。

    1. 自定义接口返回格式:文档地址在这里
      在这里插入图片描述
    2. 自定义接口参考代码:(高质量热点新闻15条),注意,这个代码是在自己项目中写的,写完之后打包成jar发布到服务器中即可,通过ip的方式或者域名的方式能请求该接口即可。
     /**
         * (微信机器人)高质量热点新闻15条
         */
        @PostMapping("/getNewsByReBang")
        public JSONObject getNewsByReBang() {
            SimpleDateFormat formatChina = new SimpleDateFormat("yyyy年MM月dd日");
            StringBuilder sb = new StringBuilder();
            // 将今天日期转换为 SimpleDateFormat 格式,并将明天的日期转换为 SimpleDateFormat 格式
            String todayDate = formatChina.format(new Date());
            //根据阳历计算农历
            Calendar today = Calendar.getInstance();
            today.setTime(new Date());
            Date tomorrowDate = today.getTime();
            String dateTomorrow = new SimpleDateFormat("yyyy-MM-dd", Locale.getDefault()).format(tomorrowDate);
            sb.append("今天是:" + todayDate);
            String week = "";
            try {
                week = DateUtils.getDaysByWeekChina(dateTomorrow);
                //today.setTime(DateUtils.chineseDateFormat.parse(todayDate));
                DateUtils lunar = new DateUtils(today);
                String nongli = lunar.toString();
                nongli = nongli.substring(nongli.indexOf("年") + 1);
                sb.append(",星期")
                        .append(week)
                        .append(",农历")
                        .append(nongli);
    
            } catch (ParseException e) {
                e.printStackTrace();
            }
            sb.append("。下面是今天的热点新闻");
            sb.append("br");
            sb.append("br");
            //从缓存中获取新闻信息
            Object rebangnews = redisService.getCacheObject("reBangNews");
            if (rebangnews == null) {
                //调用方法重新执行一遍
                setReBangNewsRedis();
                rebangnews = redisService.getCacheObject("reBangNews");
            }
            //获取缓存中的新闻信息
            JSONArray array = JSONArray.parseArray(rebangnews.toString());
            int i = 1;
            for (Object o : array) {
                sb.append(i).append(".").append(o);
                if (i == 7) {
                    sb.append("#公众号:雄雄的小课堂");
                }
                sb.append("br");
                i++;
            }
            ApiGetInfoUtils apiGetInfoUtils = new ApiGetInfoUtils();
            JSONObject jsonObjectResult = JSON.parseObject(apiGetInfoUtils.getTxDataInfo(TIAN_KEY, 2, null));
            JSONObject resultObject = jsonObjectResult.getJSONObject("result");
            String jiyu = resultObject.getString("content");
            sb.append("br");
            sb.append("【微语】" + jiyu);
            sb.append("br");
            sb.append("#公众号:雄雄的小课堂,点击关注,可获得最新消息~");
            String result = sb.toString();
            JSONObject object = new JSONObject();
            object.put("code", 200);
            object.put("message", "success");
            object.put("line", "br");
            object.put("image", "");
            object.put("aiteOr", false);
            object.put("result", result);
            return object;
        }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    1. 继续回到微信机器人服务端界面,然后我们找到【定时任务】的菜单,新增一个定时任务即可。

    在这里插入图片描述
    至此,该应用场景已经实现,就等着按照自己定的时间,看看能否发送成功即可,这个案例主要用到的服务器为华为云云耀云服务器L实例,再加上一个微信机器人,即可实现。如果想要稍微复杂点儿的功能,只需要更改自己的业务代码即可。

  • 相关阅读:
    Scala基础【入门及安装】
    版本控制 Sourcetree
    【C++笔记】C++ list类模拟实现
    【安卓app毕业设计源码】基于Uniapp的掌上校园管理系统
    BigDecimal在生产上怎么用?
    《前端》css总结(下)
    《程序员考公指南》:零基础到上岸的完整攻略 | 开源日报 No.82
    5、Nacos服务注册与发现
    线性代数基础-矩阵
    汇率兑换查询易语言代码
  • 原文地址:https://blog.csdn.net/qq_34137397/article/details/133248665