服务器配置
config.toml、服务器存放文件的位置,以及用于令牌、中继、已保存代理和 Webhook 的 CLI 命令。
本页为译文。如与英文版不一致,以英文版为准。 English
文件位置
| 系统 | 文件夹 |
|---|---|
| Windows | %APPDATA%\Droidline |
| macOS | ~/Library/Application Support/Droidline |
| Linux | ~/.config/droidline |
DROIDLINE_HOME 或 --home <folder> 可以指定另一个文件夹,这样一台电脑可以运行多个相互独立的服务器。droidline doctor 会打印当前使用的文件夹。
| 文件 | 写入者 | 内容 |
|---|---|---|
config.toml | 你 | 端口、语言、远程地址、Webhook |
state.json | 服务器 | 已配对的手机和经过哈希的客户端令牌 |
secrets.dpapi(Windows)或 secrets.json | 服务器 | 服务器密钥、TLS 密钥、中继令牌、已保存的代理、Webhook 密钥 |
tls.crt | 服务器 | 手机在直连路由上固定信任的证书 |
config.toml
服务器首次启动时会写入这个文件,并附带注释。编辑之后请重启 droidline serve。
name = "" # 手机上显示的这台电脑的名称;留空表示使用计算机名
lang = "" # 错误消息的语言:en、ko 或 zh;留空表示使用系统语言
offline_wait = 30 # 命令等待离线手机的秒数
[agent]
listen = ":8779" # 手机连接到这里
[client]
listen = "127.0.0.1:8780" # 你的代码连接到这里
require_token = false # true:每个连接都需要令牌,本地连接也一样
allowed_origins = [] # 允许调用 HTTP API 的网页
[discovery]
listen = ":8778" # 设为 "off" 会关闭 Wi-Fi 发现
[pairing]
code = true # 允许在同一 Wi-Fi 下用 6 位代码配对
[remote]
addresses = [] # 例如 "tls://203.0.113.5:8779"、"wss://droid.example.com/agent"
[relay]
url = "" # 用 droidline relay set 设置
[[webhooks]]
url = "https://example.com/hooks/droidline"
package = "com.kakao.talk"
text_contains = ""
device = ""
管理命令
这些命令会修改服务器文件夹中的文件;修改中继设置后需要重启服务器。
droidline token create "build server" # 输出客户端令牌,只显示这一次
droidline token list
droidline token revoke <id>
droidline relay set <url> <token>
droidline relay status
droidline relay off
droidline proxy add kr1 socks5://user:pass@203.0.113.10:1080
droidline proxy list
droidline proxy remove kr1
droidline webhook secret
droidline rename <device> <name>
droidline revoke <device>
作为服务运行
droidline serve 在前台运行,日志输出到标准错误。要让它持续运行,请使用系统的服务管理器:在 Windows 上使用登录时运行的计划任务或服务包装程序,在 macOS 上使用 launchd agent,在 Linux 上使用 systemd 用户单元:
[Unit]
Description=Droidline server
[Service]
ExecStart=%h/.local/bin/droidline serve
Restart=on-failure
[Install]
WantedBy=default.target