C cenaly.com
免费开始

Telegram Mini App — 接入指南

如何将餐厅菜单接入为支持 deep link 和内联按钮的 Telegram Mini App

2 min read 在演示中打开此界面
On this page 17

Telegram Mini App — 分步指南

什么是?#

Telegram Mini App 允许您的客户直接在 Telegram 内打开餐厅的数字菜单——无需安装应用程序,也无需切换到浏览器。菜单看起来就像 Telegram 的本地部分:适应用户的主题,支持“返回”按钮和手势。

优势#

  • 📱 在 Telegram 内 — 客户无需切换到浏览器
  • 🎨 本地外观 — 颜色、字体和主题适应 Telegram
  • 🔗 深度链接 — 直接链接到特定餐厅的菜单
  • 🌍 自动语言 — 语言从用户的 Telegram 设置中获取
  • 🍪 无 cookies — cookie 横幅在 Telegram 内不显示

快速开始#

步骤 1 — 创建机器人#

在 Telegram 中打开 @BotFather 并发送:

/newbot
  1. 输入机器人名称(例如,Cenaly Menu Bot)
  2. 输入用户名(例如,MeniMenuBot)— 必须以 Bot 结尾
  3. 保存收到的 Bot Token(格式:123456789:ABCdefGHI...)

Bot Token 有什么用?#

Bot Token 是通过 Telegram Bot API 对机器人进行编程管理的密钥。对于 Mini App 的基本设置(步骤 2–4),它不需要——所有操作都通过 BotFather 完成。但如果您想要:

  • 向客户发送消息 — 订单状态通知、促销、欢迎消息
  • 在机器人消息中添加内联按钮(例如,“📋 打开菜单”按钮——见下文)
  • 创建用于接收订单的 Telegram 机器人 — 机器人可以接收和处理订单
  • 设置 Webhook — 从 Telegram 接收事件(按钮点击、用户命令)
  • 与 CRM 或 POS 系统集成 — 通过机器人自动处理订单

步骤 2 — 创建 Mini App#

向 BotFather 发送命令:

/newapp
  1. 选择机器人 从列表中
  2. Title — 应用名称(例如,Cenaly)
  3. Description — 描述(例如,Digital restaurant menu)
  4. Photo — 上传 640×640 px 的图片(应用图标)
  5. GIF — 动画(可选)。要跳过,请发送 /empty
  6. Web App URL — 指定您的客户端应用地址:
https://cenaly.com
  1. Short Name — 链接的短名称(例如,menu)

之后,您将获得一个工作链接,如下所示:

https://t.me/YourBot/menu

步骤 3 — 在机器人聊天中添加“菜单”按钮#

向 BotFather 发送:

/setmenubutton
  1. 选择机器人
  2. 发送 URL:
https://cenaly.com
  1. 输入按钮文本(例如,Open Menu 或 📋 菜单)

现在,当打开与机器人的聊天时,屏幕底部将出现一个按钮,打开您的应用。


步骤 4 — 允许域名#

向 BotFather 发送:

/setdomain

选择机器人并指定域名:

cenaly.com

这将允许 Telegram Web App 在您的域名及其所有子域(例如,locationid.cenaly.com)上运行。


Telegram 支持 startapp 参数,该参数在打开时传递给应用。使用它来链接到特定餐厅:

链接 打开的内容
t.me/YourBot/menu 首页
t.me/YourBot/menu?startapp=LOCATION_ID 特定餐厅的菜单
t.me/YourBot/menu?startapp=LOCATION_ID__ru 俄语菜单
t.me/YourBot/menu?startapp=LOCATION_ID__en 英语菜单

示例#

如果您的餐厅 LOCATION_ID 是 lnc2w74z:

https://t.me/YourBot/menu?startapp=lnc2w74z
https://t.me/YourBot/menu?startapp=lnc2w74z__ru
https://t.me/YourBot/menu?startapp=lnc2w74z__en

机器人中的内联按钮#

如果您的机器人向客户发送消息,您可以添加一个内联按钮来打开菜单:

方案 1 — Web App 按钮(立即打开)#

{
  "inline_keyboard": [[{
    "text": "📋 打开菜单",
    "web_app": {
      "url": "https://LOCATION_ID.cenaly.com/ru"
    }
  }]]
}

方案 2 — 深度链接按钮#

{
  "inline_keyboard": [[{
    "text": "📋 打开菜单",
    "url": "https://t.me/YourBot/menu?startapp=LOCATION_ID__ru"
  }]]
}

自动工作的功能#

连接后,以下功能在 Telegram 内自动启用:

功能 描述
🎨 主题 应用颜色适应 Telegram 主题(浅色/深色)
◀️ “返回”按钮 打开商品卡时出现 Telegram 的本地按钮
📏 视口 应用全屏显示
🔒 关闭保护 垂直滑动不会意外关闭应用
🌍 自动语言 如果未明确指定,语言从 Telegram 配置文件中获取
🍪 Cookies cookie 横幅在 Telegram 内不显示

餐厅的 QR 码#

现有的 QR 码,URL 格式为 https://lnc2w74z.cenaly.com,将继续正常工作——通过浏览器。

为了与 Telegram 进一步集成,可以在桌子上放置第二个 QR 码,链接到机器人:

https://t.me/YourBot/menu?startapp=lnc2w74z

功能检查#

  1. 在手机上打开链接 https://t.me/YourBot/menu
  2. 点击 Start(如果是第一次打开机器人)
  3. 点击聊天底部面板上的 📋 菜单 按钮
  4. 确保应用已打开并加载菜单
  5. 尝试打开深度链接:https://t.me/YourBot/menu?startapp=LOCATION_ID

常见问题#

问题 解决方案
应用无法打开 检查域名 cenaly.com 是否通过 /setdomain 允许
白屏 确保 Web App URL 指定为 https://cenaly.com(必须为 HTTPS)
startapp 无效 检查格式:LOCATION_ID(无空格、特殊字符)。语言分隔符为双下划线 __
主题未应用 必须连接 Telegram Mini App SDK(更新客户端应用)

有用的链接#

Was this article helpful?