服务器配置

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