Webhook 的中文翻译为「网路钩手」,在维基百科的定义是:「一种通过自订回呼函式来增加或更改网页表现的方法。这些回呼可被可能与原始网站或应用相关的第三方使用者及开发者储存、修改与管理。」
以上这一段是不是有看没有懂? 没关系,接着我会用白话文解释给你听,这篇文章也会告诉你如何在 Discord 启用 Webhook。
本文章节一览1Webhook 是什麽?1.1Webhook 生活版的例子2Discord 的 Webhook 运用2.1常见的 Webhook 串接服务2.2透过 Webhook 来发布嵌入式讯息2.3透过 Discord 机器人来达到 Webhook 的效果3如何启用 Discord 的 Webhook
Webhook 是什麽?
它是连接着两个端点并且由「事件驱动」的触发器,一个端点是「起点」,另外一个端点是「终点」,这些端点可以是网路上各种不同应用的伺服器,当起点发生了特定事件後,终点就会在收到通知後执行某项动作。
运作原理示意图
Webhook 生活版的例子
大家应该或多或少都有去过百货公司的美食街,大部分都是开放式的座位,所以在点完餐以後,商家都会给消费者一个小装置,这个装置会在餐点准备好的时候发出声响并且震动提醒消费者餐点好了,这时候无论消费者在美食街的哪一个位置,集便视野范围内看不到,也会马上就知道该是时候去取餐了。
以上的例子中,那个会发出声响并且震动的装置就相当於是「Webhook」,其中的驱动事件就是「当餐点准备好的时候 」;备餐的商家就是「起点」,商家会在餐点准备好的当下启动装置来通知位在「终点」的消费者,这时候消费者会采取的行动就是去取餐。
Discord 的 Webhook 运用
现在你应该已经了解了 Webhook 的基本原理,接下来说明 Webhook 在 Discord 伺服器中的运用方式。
最常见也最普遍的运用方式就是做为订阅消息的工具,可以订阅的消息包含各种社群平台或网站,譬如: Twitter、Twitch、Reddit,当追踪的特定帐号做了特定的行为,例如: 发布了新的贴文,那麽就可以透过设定 Webhook,在指定的 Discord 频道同步发布最新的贴文,如此一来就可以做到最即时的讯息通知,甚至可以做到汇聚多个不同的平台与帐号的通知都在同一个频道的设定,达到讯息传递自动化的功能。
常见的 Webhook 串接服务
这边分享 2 个比较被大家所熟知的 Webhook 串接服务。
透过 Webhook 来发布嵌入式讯息
有在 Discord 伺服器看过讯息里面附带图片、标题和内文可以独立显示、文字居然还可以附加超连结网址的讯息吗? 这种讯息就是所谓的嵌入式讯息(embed message)。
透过像是 Discohook 这种工具就能够来发布或是编辑自订的嵌入式讯息。
延伸阅读: Discord 嵌入式讯息编辑工具 Discohook 使用教学
透过 Discord 机器人来达到 Webhook 的效果
使用 Webhook 有时候需要涉及到一些程式语法或资料交换格式的撰写,譬如 XML 或是 JSON,操作上会比较复杂一点,替代方案是寻找一些有提供类似功能的 Discord 机器人,譬如要串接一些社群媒体讯息就有以下现成的机器人可以更简单的使用:
如何启用 Discord 的 Webhook
首先打开「伺服器设定」的选单,然後在应用程式的类别下找到「整合」,然後点击右边 Webhook 下方的「查看 Webhook」。
接着就可以开启 Webhook 设定,点击「新 Webhook」就可以进行创建,每个 Webhook 都有 5 个选项可以进行操作。
- 头像: 这可以改变 Webhook 在频道中发布讯息所显示的头像。
- 名称: 这可以改变 Webhook 在频道中发布讯息所显示的名称。
- 频道: 要将接收到的资讯在哪个频道执行。
- 复制 Webhook 网址: 这是整个 Webhook 最重要的内容,也是运作的关键,切记不要让运行中的 Webhook 网址外流,否则不坏好意的人是可以透过这组网址将恶意的讯息发送到你的 Discord 频道中。
- 删除 Webhook: 将创建出来的 Webhook 删除。
Webhook 设定
有了 Webhook 网址以後就可以将其使用在 Webhook 串接服务中使其生效,或是自行撰写程式码来运用。
相关 DiscordDiscord 教学