技术标签: python控制小爱同学
通过定时触发器,可以简单快速地定制一个企业微信机器人。我们可以用它来实现喝水、吃饭提醒等小功能,还能实现定时推送新闻、天气,甚至是监控告警的小功能。
使用企业微信机器人
在企业微信中,选择添加机器人:
之后,我们可以根据文档进行企业微信机器人的基础功能定制:
以下是用 curl 工具往群组推送文本消息的示例(注意要将 url 替换成机器人的 webhook 地址,content 必须是 utf8 编码):
curl '企业微信机器人地址' \
-H 'Content-Type: application/json' \
-d '
{
"msgtype": "text",
"text": {
"content": "hello world"
}
}'
通过 Python 语言实现:
url = ""
data = {
"msgtype": "markdown",
"markdown": {
"content": "hello world",
}
}
data = json.dumps(data).encode("utf-8")
req_attr = urllib.request.Request(url, data)
resp_attr = urllib.request.urlopen(req_attr)
return_msg = resp_attr.read().decode("utf-8")
此时,我们可以通过 Serverless Framework 部署一个机器人的基本功能,并且设置好 API 网关触发器:
index.py 文件如下:
import os
import json
import urllib.request
def main_handler(event, context):
url = os.environ.get("url")
data = {
"msgtype": "markdown",
"markdown": {
"content": "hello world",
}
}
data = json.dumps(data).encode("utf-8")
req_attr = urllib.request.Request(url, data)
resp_attr = urllib.request.urlopen(req_attr)
return resp_attr.read().decode("utf-8")
serverless.yaml 文件如下:
MyRobot_Base:
component: '@serverless/tencent-scf'
inputs:
name: MyRobot_Base
runtime: Python3.6
timeout: 3
codeUri: ./base_robot
description: 机器人推送接口
region: ap-guangzhou
environment:
variables:
url: webhook地址
handler: index.main_handler
memorySize: 64
tags:
app: myrobot
events:
- apigw:
name: MyRobot
parameters:
protocols:
- http
- https
description: 机器人推送接口
environment: release
endpoints:
文章浏览阅读1w次,点赞9次,收藏5次。IDEA启动项目报错:Cannot open URL.Please check this URL is correct问题截图解决方法问题IDEA启动SSM项目,使用的Tomcat,报错 Cannot open URL.Please check this URL is correct截图解决方法将图中的端口号(红色部分)改为一致即可。..._idea启动tomcat项目提示open url
文章浏览阅读7.7k次,点赞2次,收藏10次。题目:去掉列表中重复的元素分析:给定一个列表,怎么将其中重复的元素删除呢?1.只用循环的方法:思路:先从该列表中拿出第一个数(下标为0),再拿出第二个数(下标为1),进行比较,如果值相等,则把第二个数删掉。再拿出第三个数(下标为2),与第一个数比较,如果不相等,则继续取元素。以此类推: #coding:utf-8 li = [1,2,3,4,5,2,1,3,4,57,8,8,9]_第4关:列表中的重复元素 1
文章浏览阅读82次。物联网(IoT),智能硬件热火朝天, 真正解决了用户的痛点和行业痛点了吗?还是链接而链接智能而智能?就如下图:你会想要一个物联网的咖啡杯吗?不会吧!物联网(IoT)话题正热,它是时下最流行的趋势。你可能会认为世界上没有什么产品不需要以物联网来实现。然而,只因为有些事完成了,并不表示就应该这么做。当然,物联网的潜在价值主张是相当庞大的,它能够带动新公司...
文章浏览阅读873次。在表格A列上填写数字,数字顺序要从大到小填写进去 ,然后再输入公式=”按文件名称归类<>将文件名称:[{包含}]关键字:[{“&A1&”}]的文件移动到目标文件夹:[{F:\A\新建文件夹_”&A1&”}],执行前不删除原目标文件夹中的文件”。先来给大家看下目前文件是这样的,一个文件夹里面保存是图片 ,另一个文件夹保存是文档,我是需要一个图片对应一个文档,保存在同一个文件夹中。步骤5选下任务名称:按文件名称归类,将文件名称包含“41”文件“移动”目标文件夹:选择路径,再点添加本任务。_文件批量归类
文章浏览阅读221次。Raft协议_raft协议
文章浏览阅读10w+次,点赞25次,收藏277次。程序员编程艺术:第三章、寻找最小的k个数作者:July。时间:二零一一年四月二十八日。致谢:litaoye, strugglever,yansha,luuillu,Sorehead,及狂想曲创作组。微博:http://weibo.com/julyweibo。出处:http://blog.csdn.net/v_JULY_v。----------------------------------前奏_e:t∵n“?。‘:1;。::1f
文章浏览阅读94次。本文记录在使用WordPress过程中的问题和解决。安装比较顺利没有问题,具体如下(CentOS 6.5,DO的CentOS7 image里默认的yum源没有mysql-serve比较奇怪r):安装apache、mysql和phpyum install httpd mysql-server mysql php php-mysql下载wordpress安装...
文章浏览阅读9k次,点赞17次,收藏24次。Java设计模式的学习与实践对于提升软件开发水平具有重要意义。理解并熟练运用这些模式,可以帮助开发者编写出更易于维护、扩展、复用的高质量代码。然而,设计模式并非银弹,关键在于合理选择、适时运用。在实际项目中,应结合具体业务需求、技术栈特点及团队开发规范,权衡利弊,避免过度设计。持续探索、实践与反思,方能真正领略设计模式的魅力,成为更优秀的Java开发者。
文章浏览阅读14次。主营业务 Main Business;主营业务 Main Business;主营业务 Main Business;勒纳 Lerner;勒纳 Lerner;勒纳 Lerner;
文章浏览阅读225次。本系列主要参考《Unity Shaders and Effects Cookbook》一书(感谢原书作者),同时会加上一点个人理解或拓展。这里是本书所有的插图。这里是本书所需的代码和资源(当然你也可以从官网下载)。========================================== 分割线============================..._unity 怎么动态换cubemap
文章浏览阅读1.3k次,点赞2次,收藏8次。实验目的熟悉并掌握创建表,插入记录,查询记录,删除记录,修改记录。创建索引,删除索引。创建视图,使用视图,删除视图。实验内容仍然基于上次课程建立的小型图书借阅系统。如果使用实验室的机器完成实验,首先重做上次课的步骤1-4建立相应数据库。实验步骤(以用户CC的身份建立连接,并在此连接下执行后面的操作。)1、 查询记录:在Reader表中查询直接上司是“李四”的员工的名字SELECT rname from reader where rboss=’李四’;2、 修改记录:在Reader_当修改reader表元组的rno时,级联修改loan表中该读者的借阅记录。 (2)当删除reader
文章浏览阅读515次。java毕业设计校园闲置物品交易平台mybatis+源码+调试部署+系统+数据库+lw。springboot基于SSM框架的项目实训管理系统设计与实现。springboot基于JSP的企业办公管理系统设计与实现。ssm+sqlserver海城同泽中学图书仓库管理系统。ssm基于Web的医学院校大学生就业信息管理系统。ssm+sqlserver精品旅游项目管理系统。ssm基于HTML的寿光农产品的资源展示平台。ssm基于Java的摄影网上预约管理系统。ssm基于JavaWeb的好好吃查询系统。