raspberry pi如何使用IFTTT从webhooks接收触发事件?

2024-06-17 10:33:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图做的是一项非常基本的任务:从不同的服务向Raspberry pi发送事件触发器,并在收到这些触发器时执行一些任务,换句话说,实现“家庭自动化”

我搜索了很多网站和链接,但所有关于ifttt和raspberry pi的项目都做了相反的工作:raspberry pi发布一个web请求,另一个服务接收到这个触发器并做了一些事情

有一些项目可以在raspberry pi上接收来自google assistant的请求,但是google assistant发布了一个包含https://raspberry_ip_address:port/bla_bla的请求,该请求在本地工作,但是我想从我的手机发送请求,即使它没有连接到我家的wi-fi

我发现rpi上的ProtaOS可以用于这些任务,并且有些项目使用node red,但我不想同时使用这两种解决方案,我想自己编写python代码

是否有api或库用于获取Python的maker ifttt触发器事件的请求

任何帮助都将不胜感激。谢谢


Tags: 项目web网站链接家庭googlepi事件
2条回答

在这个场景中,我使用了许多解决方案,这取决于问题是什么以及我需要将请求推送到Pi的频率。这是我的投资组合:

  1. 获得一个类似SIM900的3G模块:https://www.amazon.co.uk/Aihasd-Quad-Band-Development-Wireless-Raspberry/dp/B01IBGDDVM/。这将允许您实时接收短信息,并通过手机按键接收指令。我喜欢这一选项用于遥感和互联网连接薄弱或不稳定的家庭
  2. 连续调用服务器以检查更新(听起来您很熟悉这种方法)。如果Wifi良好且数据便宜,那么这种方法效果很好
  3. Web套接字:这允许Raspberry Pi和服务器之间保持连续连接,尽管它需要稳定和连续的连接https://www.jaredwolff.com/raspberry-pi-getting-interactive-with-your-server-using-websockets/

如果我正确理解了你的问题,你想用你的手机触发一些东西,然后在raspi上,你会用手机或任何其他设备生成的触发器来触发一些东西

  1. 一种方法是使用thinkspeak或ifttt等外部api,因为您必须不断读取触发器将更改的特定字段 check this

  2. 另一种方法是制作您自己的api,并使用它从您的服务发布数据和您的raspi读取数据。Python是构建web api的一个非常简单的框架。对于主机,有许多免费服务,如heroku、Pythonywhere。 Flask 101Free Hosting!!!

  3. 另一种方法是将触发器侦听器托管在raspi中,并将raspi IP与Ngrok或任何其他此类服务进行端口转发。Ngrok

如果您有任何其他具体疑问,请在下面进行注释。 继续黑客攻击:)

相关问题 更多 >