跳到主要内容
实时事件

就在它发生的那一刻,
你的服务器就知道

审核事件在发生的那一刻就推送到你的服务器:垃圾检测、封禁、加群等等——每一次送达都带 HMAC 签名、可去重,并按时间表重试,直到你的端点确认收到。

  • 实时事件
  • HMAC 签名的载荷
  • 重试直至送达
你群组里的事件X-Telm-Signature带签名的信封你的服务器重试时间表

七种事件,直接来自引擎

按端点精确订阅你需要的事件——从垃圾裁决到成员变动。

spam.detectedmessage.suspicioususer.banneduser.kickeduser.muteduser.joineduser.left

每个事件都装在一个紧凑的 JSON 信封里:id、type、created_at、group_id 以及事件数据——id 在多次重试间保持稳定,因此去重只是一次集合查找。

重试时间表,与实际运行分毫不差

在大约八小时内尝试六次——足以扛过你这一端的一次部署、一次重启或一次彻底宕机。

1
0立即
2
+1m
3
+5m
4
+30m
5
+2h
6
+6h最后一次尝试

可以据以构建的送达

至少一次送达

每个事件都至少送达一次。你的端点用任意 2xx 来确认——其他任何响应都会回到重试队列。

用于去重的稳定 id

每个事件都有一个能挺过重试的稳定 id。你这一端的去重只是一次查找,而不是一种启发式猜测。

杜绝僵尸端点

一个连续多天失败的端点会被自动停用——你会收到一条 Telegram 私信,而不是数据里一段无声的空白。

测试 ping

一键式的测试事件,像真事件一样带签名——在任何一个真实事件依赖它之前,先验证你的处理器。

可查验的历史

每个端点都有完整的送达历史:每一次尝试、状态和时间戳——调试你的接收方从来不用靠猜。

仅限 HTTPS,始终签名

端点必须是公开的 HTTPS URL,且每个载荷都带签名。传输与来源都得到保障。

验证每一次送达

你这端三行代码——便没人能伪造或重放一个事件。

# X-Telm-Signature: v1=<hex>
expected = hmac_sha256(secret, timestamp + "." + body)
valid = constant_time_eq("v1=" + hex(expected), header)

用推送,别轮询

轮询 API 只能在你发问时告诉你发生了什么;Webhook 则在事情发生的那一刻就告诉你。注册一个 HTTPS 端点,选好你在意的事件,Telm 就会以 JSON 形式把它们推送到你的服务器——一波垃圾攻击、一次封禁、一场加群突袭——就在引擎动手的那一秒。

每一次送达都带签名。X-Telm-Signature 响应头携带的是用你端点密钥对时间戳和正文算出的 HMAC-SHA256,因此你的服务器只需三行代码就能同时验证来源与新鲜度。载荷只走 HTTPS 传输。

送达是为真实的互联网设计的——在那里接收方会宕机。事件以至少一次的方式送达,并带有一个稳定的 id 用于去重;失败会按逐渐拉长的时间表重试——立即,然后在 1 分钟和 5 分钟后、30 分钟、2 小时和 6 小时。一个连续多天失败的端点会被自动停用,你会为此收到一条 Telegram 消息,而不是一段无声的空白。

一切都可查验:上线前先发一个测试 ping,并随时浏览送达历史——一次尝试接一次尝试、一个状态接一个状态——只要你需要调试管道自己这一端。

常见问题

我如何验证一个事件确实来自 Telm?

每一次送达都携带一个 X-Telm-Signature 响应头:用你端点密钥对 "timestamp.body" 算出的 HMAC-SHA256。在你这一端重新计算它,以恒定时间比较,并拒收任何超过几分钟的内容,以排除重放。

如果事件触发时我的服务器宕机了会怎样?

Telm 会按逐渐拉长的时间表重试——立即,然后在 1 分钟、5 分钟、30 分钟、2 小时和 6 小时后。任何 2xx 响应都算作已送达。事件带有稳定的 id,因此一次重试绝不会在你的系统里变成重复。

一个坏掉的端点会永远刷屏吗?

不会。一个连续失败约二十次、且三天内没有一次成功的端点会被自动停用,你会收到一条 Telegram 通知。修好你这一端,一键即可重新启用。

上线前我如何测试我的集成?

直接从仪表盘或 API 向任意端点发一个测试 ping——它会像真实事件一样带签名到达。送达历史会显示每一次尝试及其状态。

哪些套餐包含 Webhook?

Webhook 是完整 API 套装的一部分,包含在 Pro 和 Business 套餐中。

准备好开始了吗?

立即开始保护您的社区。提供免费计划。