1 个不稳定版本
0.1.0-alpha.1 | 2020年1月11日 |
---|
在 #chatbot 中排名第 9
150KB
1.5K SLoC
Grin 机器人
Grin 机器人是一个自托管的 Keybase 或 Telegram 机器人钱包,用于 Grin 比特币。您可以在自己的桌面硬件上运行 Grin 机器人,并通过智能手机控制它。
入门指南
构建
Docker
git clone --branch v0.0.1 https://github.com/alexbyrnes/grinbot.git
cd grinbot
docker build -t grinbot .
docker run -it grinbot
从源码
git clone --branch v0.0.1 https://github.com/alexbyrnes/grinbot.git
cargo install --path grinbot --locked
从源码 — 无需安装
git clone --branch v0.0.1 https://github.com/alexbyrnes/grinbot.git
cd grinbot
cargo run
测试
cargo test --all
Rust 文档
cargo doc --no-deps --document-private-items --open --all
无需账户运行和交互
所有命令都可以在不使用 Keybase 或 Telegram 账户的情况下在本地执行。
grinbot -c "/help"
启动 Grin 钱包所有者 API
在 grin-wallet 目录下
grin-wallet owner_api
使用账户运行和交互
要求
- Grin 钱包所有者 API。 仓库
Keybase
Telegram
- 拥有用户名的 Telegram 账户。 下载
- 一个机器人实例。 说明 一旦您的机器人实例被 创建,您应该收到一条包含您的令牌的消息。在 config.yml 中输入令牌和您的用户名。
运行机器人
在包含 config.yml 和 logging.yml 的目录下运行 grinbot
启动机器人,或在仓库根目录下运行 cargo run
。
Keybase 打开 Keybase 客户端,与自己或与您的纸面密钥相关的用户名开始聊天。(密钥和用户名在 config.yml 中。)
Telegram 在安装了 Telegram 的设备或桌面上的 Telegram 中点击 Telegram 提供的链接。(链接以 https://t.me/
开头。)您应该会收到一个提示,让您与机器人打开聊天。
输入并发送 /help
查看命令列表。
注意:最佳的错误排除信息来源是dockerfile,其中从头开始设置了一个包含Grin节点和钱包的完整机器人。
docker build -t grinbot .
docker run -it grinbot
命令
/create
在config.yml中指定的目录创建一个Grin钱包。 /send 0.001 http://some-recipient123.org 将Grin发送到指定的地址。 /balance _获取您的钱包当前余额。 /help 显示此帮助文本。
架构和安全
Keybase Keybase聊天是端到端加密的,机器人作为普通用户。Keybase提供的隐私保证与与其他用户聊天的保证相同。这些保证不包括防止您的纸面密钥丢失,或Grin Bot本身的问题,或外部库的问题。可以通过Keybase客户端撤回纸面密钥。
Telegram Grin Bot使用Telegram机器人长轮询接口。这意味着不需要外部可访问的IP或端口。Grin Bot将连接到Telegram,并使用您的令牌从专门为您的机器人实例设置的端点拉取新消息(称为更新)。要了解这是如何工作的,您可以访问https://api.telegram.org/bot<your api token>/getUpdates
手动消费您发送给机器人的消息。这是Grin Bot轮询的地址。
发送到Telegram的唯一信息是聊天的内容本身——您发送给机器人的命令和它发送回的消息。命令和回复不包括密码或令牌。
注意:Telegram机器人流量不是端到端加密的,然而Telegram声称符合GDPR并能够删除消息。如果您使用Grin Bot的目的需要比这些更强的安全保证,则不应使用此版本的Grin Bot。
路线图
- 命令别名
- 确认对话框
grinbot init
用于默认配置文件
贡献
欢迎贡献。请提交一个问题,或声明一个现有问题以增加可见性,并对develop分支提交PR。
依赖项
~72MB
~1.5M SLoC