You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google AppSheet Webhook推送Telegram通知失败问题排查

AppSheet Webhook 推送Telegram通知格式问题修复

项目背景

基于Google AppSheet输入自动推送Telegram通知,已配置Webhook并编写JSON请求体,使用MarkdownV2解析模式,预期用户输入指定字段数据时自动推送通知。

原请求体代码:

{"chat_id":<TELEGRAM TOKEN ID>,
"text":"<<CONCATENATE(\"Notification \",text(today()))>>\n
<<CONCATENATE(\"ID: \",[ID])>>\n
<<CONCATENATE(\"Registration Status: \", [Registration Status])>>\n
<<CONCATENATE(\"No. of Customer: \", [CustomerNumberID])>>\n",
"parse_mode":"MarkdownV2"}

问题1:"No. of Customer"导致推送失败

原因

Telegram的MarkdownV2解析规则中,.(点号)属于需要转义的特殊字符,No.中的点号未转义时会被识别为Markdown语法的一部分,触发请求解析失败。

解决办法

将文本中的.转义为\.,修改为No\. of Customer。

问题2:含数字和连字符的[Registration Status]内容(如"3-Days Offline")推送失败

原因

MarkdownV2中,以数字加-开头的内容会被识别为有序列表语法,同时-本身也是需要转义的特殊字符,未转义时会触发语法错误。

解决办法

对[Registration Status]字段内容中的特殊字符(包括-、.等)进行转义处理,在AppSheet的CONCATENATE函数中添加转义逻辑。

修正后的完整请求体代码

{"chat_id":<TELEGRAM TOKEN ID>,
"text":"<<CONCATENATE(\"Notification \",text(today()))>>\n
<<CONCATENATE(\"ID: \",[ID])>>\n
<<CONCATENATE(\"Registration Status: \", SUBSTITUTE(SUBSTITUTE([Registration Status], \"-\", "\\-"), ".", "\\."))>>\n
<<CONCATENATE(\"No\\. of Customer: \", [CustomerNumberID])>>\n",
"parse_mode":"MarkdownV2"}

补充说明

  • 固定文本中的特殊字符(如No.的.)直接添加转义符\即可
  • 动态字段(如[Registration Status])可通过SUBSTITUTE函数批量转义特殊字符,若需兼容更多Markdown特殊字符(如_、*),可继续嵌套SUBSTITUTE函数扩展转义规则

内容的提问来源于stack exchange,提问作者Kevin Risto

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 18:22:43