HTTP - 将 IFTTT 用于 Web 服务

IFTTT 介绍

IFTTT (If This Then That) 为一个云端平台提供免费网路服务来创建applets 或是简单的条件陈述来指定网路服务触发条件使其他像是Gmail, Facebook, Telegram, Instagram, Pinterest 等网路服务进行特定的反应动作。

材料准备

1

*Note: 登入后有多个云端服务整合在 IFTTT 平台

范例说明

  • 生成 IFTTT Applet

接下来示范如何透过 IFTTT Applet 来寄信至特定的收件者

这个范例中,利用 ameba HTTP POST 功能来发布一个简单的webhook服务,IFTTT 收到后触发另一个网路服务(发送信件)

登录 https://ifttt.com/后,点选 Create

1

点选 “Add” 来新增触发服务

1

选择 Webhooks 服务,如下所示。或者,通过在搜索栏中键入内容来搜索服务。

1

接着会出现可用的触发服务,选择 Receive a Web request

1

需要填入 event name 来成功辨别触发服务 范例中使用 “test_event” 来当作事件名称。

1

接着选择 Then That 栏位中的 Add 来创建 action service 对应的服务

1

范例中选择 Email 来当作触发后的执行动作

1

点选 Send me an email

1

Send me an Email 模板下, email 主旨与内文的内容是可编辑的。点选 Create Action 来完成执行的动作。注意 Email服务是基于IFTTT帐号下注册的 email ID。

1

  • 透过 Ameba 发布触发事件

一旦Applet在IFTTT仪表板中准备就绪, 范例程式即可烧录至 Ameba 来发布 HTTP 请求.

打开范例 “File” -> “Examples” -> “AmebaHttp” -> “HTTP_IFTTT_Post”

1

在程式码中编辑下列三项使程式可以顺利执行。

1. 编辑 wi-fi 凭证来连接至 wi-fi 热点或是无线接入点

2. 在 host name 栏位中输入 IFTTT 服务的 hostname “maker.ifttt.com”

3. 在 Path 栏位中输入 EventName 并在 Key 栏位中输入 “trigger//with/key/”

-Event name: 必须与 IFTTT applet 所指定的名子一致, 此范例中的 event name 为 “test_event”
-Key Field: 在 IFTTT 帐户中的 Webhook 服务下可以找到

1

要从 Webhooks 的documentation选项中获取key,请在Explore选项中找到 Webhook 服务。

1

在 Webhooks 服务页面中点选 Documentation 页面

1

可以在 documentation 页面中找到所需的key。另外, 如何使用HTTP请求如下图所示

1

范例准备就绪后,透过 USB 连接 Ameba。
在 Arduino IDE 上,编译代码并将代码上传到 Ameba,然后按重置按钮。事件成功触发后,可以在串行监视器上看到“Congratulations! You have fired the test_event event”与将发送此事件的电子邮件提醒。

1

在 IFTTT Applet 所注册的接收者将会收到 email 通知

1

  • IFTTT Line 通知

或者,可以使用 IFTTT Applet 透过 iPhone 或 Android 上的 LINE 应用程序发送消息的范例。可以通过修改“Then That”设置来实现。
您可以按照之前“Generate Applet from IFTTT”部分中的相同步骤来创建 Webhooks 服务作为触发器。识别触发器所需的事件名称将保留为“test_event”。接下来,单击“Then That”字段中的“Add”按钮以创建响应上次触发所采取的操作服务。

1

选择Line作为服务。

1

点选 “Send message”。

1

点选 “Connect” 并登入Line 帐号。

1

选择LINE帐号,将Recipient设置为“1-on-1 chat with LINE Notify”,即IFTTT触发的消息会直接发送到你的聊天室中。接下来,在“Message”下方的输入框中输入您想要的消息。要发送图片,您可以在“Photo URL”下的输入框中插入照片的链接。

1

在 Arduino IDE 上,编译代码并将代码上传到 Ameba 并按下重置按钮。事件成功触发后,您将在手机或 PC 上收到来自“LINE Notify”的消息。

1

请先确认已安装QQ通讯软体