我正在努力学习如何在IFTTT上使用新的WebHooks服务,我正在努力弄清楚它应该如何工作。我能在网上找到的大多数项目似乎都提到了一个被弃用的“创客”服务,而解释新频道的资源非常少。在
假设我想每隔10分钟检查一下下面json文件中“online”的值:https://lichess.org/api/users/status?ids=thibault
我可以编写一个Python脚本来提取这个值,如下所示:
response = urlopen('https://lichess.org/api/users/status?ids=thibault')
thibault = response.read()
data = json.loads(thibault)
status = data[0]['online']
如果status
等于“true”,我想通过电子邮件或短信收到通知。如何集成python脚本和webhooks服务?或者我需要使用这个脚本吗?我假设我需要某种经常运行这个Python脚本的cron
作业,但是如何将这个作业与IFTTT连接起来呢?在
当我在IFTTT上创建一个新的applet时,我可以创建一个带有随机事件名的触发器,但是不清楚这个事件名对应的是什么。在
我的IFTTT webhook服务也有类似的设置。据我所知,您的问题的答案是肯定的,您需要此脚本(或类似脚本)来废弃
online
值,并且您可能希望执行cron
作业(我的方法)或保持脚本运行(我不喜欢)。在IFTTT的webhooks一个最多包含3个值的
json
,您可以将这些值发布到给定的事件和密钥名中。在下面是我的webhook API的一个非常简单的摘录:
你可能不需要所有这些,但我的目标是建立一个通用的解决方案。归根结底,你真正需要的是这句话:
requests.post(f"https://maker.ifttt.com/trigger/{event}/with/key/{key}", data={my_json_up_to_3_values})
您将放置您的webhook
event
名称和机密key
值。我把它们存储在一个配置文件中。一旦您在IFTTT上注册webhook服务(请转到IFTTT webhook applet设置),就可以使用密钥了。您可以通过这样的快速帮助链接找到您的密钥:https://maker.ifttt.com/use/{your_secret_key}
。事件可以是您在小程序上设置的默认值,或者用户可以选择其事件名称(如果允许)。在在你的情况下,你可以做一些类似的事情:
^{pr2}$ 注:我使用了3.6版本的A1}(太好了!),但如果您的版本较低,则应将所有f字符串切换为^{相关问题 更多 >
编程相关推荐