花了一个月时间,我写了一个远程管理下载上传的小程序

feature-img

由于众所周知的原因,对于使用 qBittorrent、Transmission 等 BitTorrent 客户端的用户来说,ios 上一直没有一个可以远程管理下载的工具。对于已经习惯了移动端掌控一切的我们来说,在手机上访问一个没有经过适配的 PC 网页这种事情实在是难以忍受。

好在,通过小程序可以解决这个问题。

在写了人生中第一个原型图,业余时间撸了一个月前后端的代码后,TransClient 这个小程序就这么诞生了。大家可以点击文末的小程序进行体验。

TransClient 是做什么的

简单来说,它是一个远程管理下载上传的工具。

目前可以支持 qBittorrent、Transmmison、Deluge 这三个客户端。

你可以通过 TransClient 添加种子文件或链接到这三个客户端进行下载,同时可以查看下载进度、上传和下载速度,以及进行删除、暂停等操作。

需要注意的是,TransClient 默认跳转到下载服务器列表,只有添加一个可用的下载服务器,才能正常使用小程序里的各项功能。

下载服务器是什么

下载服务器其实是指可以远程访问的 BT 客户端,QB/TR/DE 都提供了远程访问的能力,这些客户端可以安装在家里的 NAS 里,也可以安装在你购买的某个服务器里。只要确保这些客户端外网可以访问,那么就可以添加到小程序的下载服务器列表,然后就可以对客户端内的种子文件进行各种操作了。

添加下载服务器需添加服务器对应的域名或 IP 以及端口号,如果设置有账号或者密码还需输入对应的账号密码。三个客户端里,Deluge 只需输入登录密码即可,而 qBittorrent 的账户和密码是必填的。输入完毕后,点击测试服务器,如果服务器可以正常连接的话,就可以添加到自己的下载服务器列表了。

我该如何添加一个下载?

添加完服务器后可以到服务器的种子列表页,也就是 TransClient 的首页,点击页面右下角的添加按钮,然后就可以添加下载了。

添加种子的方式有两种,一种是种子链接,另一种是种子文件。由于微信小程序的限制,只能从微信对话中选择文件,无法从手机的文件系统直接选择。添加完种子后还可以进行下载上传限速等操作,目前只有 Transmmison 是没办法在添加种子的同时进行限速的。

接下来送上自问自答的 QA 环节。

为什么小程序的功能比桌面客户端少了很多

以前会经常吐槽产品经理业务设计繁重交互复杂,在我自己尝试做一个原型图的时候才发现这个工作有多么难做,我面临最头疼的问题就是我想要的功能页面上放不下…

手机上屏幕空间有限,页面承载的功能不能太复杂,在没有产生灵光一现的产品思路前,我只能先把一些必要的功能保留。待后续把逻辑整理一番后,会增加一些常用的操作,比如种子列表排序、更新种子 Tracker 等功能。

为什么我下载服务器里明明有种子,但是种子列表里看不到

TransClient 默认展示活动中的种子,持续更新种子的状态和下载上传速度。如果想要查看所有的种子,可以点击页面底部的过滤按钮进行切换。

为什么我的 Deluge 在服务器列表里看不到统计数据

由于 Deluge API 的限制,需要在设置->Plugins 里将 WebUi 一项勾选上。

使用 TransClient 安全么?会不会泄漏我的账号密码?

在添加服务器之后,会把下载服务器的信息进行 AES 加密,数据库里不会保存任何跟自己服务器有关的明文信息,除了服务器别名和是否为默认服务器这两个参数。同时,TransClient 使用的小程序的云开发,服务器信息也不会暴露在外部的接口请求中。即便有人拿到了加密后的服务器信息,没有密钥他也是没办法解开的。

遇到 bug 或者想要某项功能应该如何反馈

可以点击个人主页的「联系作者」按钮,向我反馈相关问题。如果遇到 bug,建议通过「意见反馈」跟我沟通。

后续有什么规划

会支持更多的客户端,比如 μTorrent、rTorrent;增加更多操作以及种子信息的展示,敬请期待吧。