Telegram CLI 简介

话题来源: Telegram CLI - 命令行终端版完整教程

Telegram CLI(Command Line Interface)是一款在纯文本终端运行的 Telegram 客户端,专为缺乏图形界面的服务器或嵌入式设备设计。它把 Telegram 的即时通讯能力映射为一组可脚本化的命令,从而让运维人员能够在无需 X server 的环境下完成消息收发、文件传输甚至群组管理。

核心功能概览

纯文本交互让键盘操作几乎瞬间完成;内部实现了基于 MTProto 的加密层,安全性与官方客户端持平;对 Lua、Python 等脚本语言提供回调接口,能够在收到特定关键字时自动触发业务逻辑;资源占用仅在数十兆以内,即使在 1 GB 内存的 VPS 上也能保持稳定。

  • 即时消息发送与接收,支持文字、图片、文档等多媒体类型。
  • 群组创建、成员管理、权限调整,一条命令即可完成。
  • 脚本化事件处理:收到「ping」自动回复「pong」的示例代码仅需十行。
  • 后台守护模式(-d 参数)配合系统服务管理,实现 24 / 7 不间断运行。

典型使用场景

  • 监控服务器日志,一旦出现关键错误即通过 Telegram 群组推送报警。
  • 自动化部署脚本完成后,使用 CLI 向运维团队发送部署报告。
  • 在 CI/CD 流水线中嵌入消息节点,实时反馈构建状态。
  • 轻量级机器人:无需容器化,仅凭一行启动命令即可提供交互式问答。

快速上手示例

# 启动客户端并登录(首次会要求输入手机号与验证码)telegram-cli -k ~/.telegram-cli/server.pub

# 发送单条文字消息
msg user#123456 "构建已完成,版本 1.4.2"

# 简单 Lua 回调:收到 "ping" 回复 "pong"
function on_msg_receive(msg)
    if msg.text == "ping" then
        send_msg(msg.from.print_name, "pong", ok_cb, false)
    end
end

高级配置要点

配置文件位于 ~/.telegram-cli/config,常用选项包括 daemon = true(后台运行)、log_level = 2(输出调试信息)以及自定义 proxy 参数以穿透企业防火墙。若需要对外提供 API,配合 telegram-cli -P 12345 -U user 可以开启 TCP 端口,供其他语言的绑定库直接调用。

“在没有桌面环境的 VPS 上,我用 Telegram CLI 把日志告警直接推到团队的频道,省掉了专门的监控平台。”——一位资深运维工程师

如果你已经在服务器上跑起了 Cron 任务,只要在脚本末尾加上一句 telegram-cli -s notify.lua,信息就会瞬间弹到手机屏幕上。这样一来,手动登录 Web 界面查看日志的时间,基本可以用一杯速溶咖啡的时长抵消。

各类账号ID
评论(没有评论)