Telegram shell bot

-
-
2024-07-27

大部分翻译自https://jmendeth.com/blog/telegram-shell-bot/ 有删改。

如果你经常使用 Telegram,你可能已经听说过机器人。它们就像普通账户一样,你可以和它们聊天或者把它们加入到群组中,它们会为你做各种有用的事情。

在这篇文章中,我向你介绍 shell 机器人!与其他机器人不同,这个是自托管的:你通过在自己的服务器上运行机器人的实例来使用它。

这个方便的机器人可以按需运行命令并发送实时输出,允许你随时进行交互。它甚至可以运行图形应用程序!

 

shell-bot运行一些简单的命令。

它最初是作为 botgram 框架的一个示例而制作的,但我已经使用它一段时间了,它非常有用。在手机上,当你只想发出一些命令时,与机器人交谈可能比打开 SSH 应用并连接到服务器更方便。

它还有创造性的用途:我曾经和一些朋友一起解决服务器问题,所以我们把机器人添加到了群组中并开始尝试。每个人都能看到发生了什么,并提出可能的原因或要尝试的事情。

如果你想拥有自己的 shell 机器人,这篇文章将指导你创建 Telegram 机器人本身,并安装必要的软件。
 

创建你的机器人

首先,你需要注册一个 Telegram 机器人。别担心,只需要几秒钟。点击这里BotFather 对话,然后输入 /newbot,然后你会被问一些东西(名称、用户名等)。最后,你会得到一个看起来像下面这样的认证令牌:

123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11

准备工作

以下操作应该在你想要运行命令的计算机上完成。首先确保你已经安装了 Node.JS(你可以通过运行 npm -v 来验证)。你还需要一个可用的编译器和 git:

# debian系系统
sudo apt-get install build-essential git
# Arch系系统
sudo pacman -S base-devel npm
# redhat系 我不怎么用,没验证。

克隆项目并安装依赖:

git clone https://github.com/botgram/shell-bot.git
cd shell-bot
npm install

然后首次运行机器人,以创建配置文件:

node server

它会询问你一系列问题,包括从 BotFather 那里得到的认证令牌,并要求你与你的机器人交谈(这样它就知道谁是它的所有者)。
运行它!

现在我们已经准备好了一切,我们可以运行 shell 机器人了:

node server

尝试输入 /run uname -a 作为例子,或者输入 /help 来了解可用的命令。
 

自动启动

一旦你玩得差不多了,你可能希望机器人在启动时自动启动,并在崩溃时重新启动。为此,让我们安装 forever:

sudo npm install -g forever

然后,在你的 /etc/rc.local 或一个 init 脚本中,调用:

forever start /path/to/shell-bot/server.js

另外,与 BotFather 对话并输入 /setcommands 来定义你的机器人接受的命令列表是一个好主意。你会在 commands.txt 中找到这个列表;只需在要求时粘贴其中的内容。你可能还想更改机器人的个人资料照片和描述。

你觉得这个机器人有用吗?有什么建议吗?欢迎在评论中告诉我!

“您的支持是我持续分享的动力”

微信收款码
微信
支付宝收款码
支付宝

目录