AliBot
功能齐全的阿里云盘资源投稿和搜索机器人,本人学习 JavaScript 的练手作。Written in JavaScript, powered by Telegraf.js.
功能列表
前台(用户)
资源投稿
分步投稿:引导式操作
快速投稿:免引导操作,快速投稿
自动提取分享链接和提取码
资源搜索
Telegram 内搜索(基于 Inline Mode)
普通搜索:检索资源
高级搜索:搜索特定用户的投稿(
@AliYunPanBot UID [可选关键词]
)支持自定义搜索结果排序方式(默认、时间升序 / 降序)
命令式搜索
资源站点 (https://ar.ataw.top)
基础检索功能
反馈失效资源
用户系统及投稿等功能(咕咕咕中)
资源管理
反馈失效资源
收藏系统
在私聊中调出资源详情,并添加至收藏
查看、删除收藏内容
收藏的资源失效时自动通知,自动在收藏列表中标出
随机资源
使用高级搜索,检索自己的投稿记录
以 Excel 格式导出自己的投稿记录,分步投稿和快速投稿分表展示
热门资源列表:20 条 / 页,至多 1000 条,每 5 分钟刷新
后台
注册制
用户权限:只有注册用户可使用机器人的完整功能
用户过滤:连续 180 天不使用机器人则自动清退
准入门槛:关闭注册期间需贡献一定数量的有效资源,才可获得注册资格
关注频道或加入群组以投稿
黑白名单:白名单无需审核,黑名单禁止使用机器人功能(可自定义)
待审列表(投稿 & 删除失效资源请求)
定时发送功能,按一定时间间隔发送至频道
过审资源同时发布至主频道和备份频道
过审资源在群内发送通知
清理判定为失效的资源
维护(Owner)
数据统计(见下文)
手动保存 / 重载数据
自动备份数据至 Telegram
自动清理闲置超 24 h 的投稿操作
自动清理超过 180 个天不活跃的用户数据
在线和离线(维护)模式
进入维护模式时,通知正在投稿中的用户
维护期间,使用过机器人的用户加入通知名单,维护结束后批量通知
统计数据
🗂️ 资源数据
贡献用户数:1020
收录资源:16846 条
资源详情 PV:131409 次
被收藏资源:2639 条
总收藏次数:5151 次
🔍 搜索功能
内联搜索 (2022/2/6 上线): 402449 次
文本搜索 (2022/4/25 上线): 337736 次
📑 用户系统
用户数:11071
过去 24 小时活跃:740
更新于 2022/12/4 23:38:15
Sponsors
昵称 | 来源 | 金额 | 赞助时间 |
---|---|---|---|
Ooz | 爱发电 | ¥100 | 2022/05/15 |
蹭我的吧 | 爱发电 | ¥50 | 2022/05/23 |
巫伟 | 微信 | ¥50 | 2022/04/24 |
柒十三 | 爱发电 | ¥40 | 2022/04/07 |
ANG.eth | 微信 | ¥20 | 2022/08/31 |
Paul@dockone | 微信 | ¥20 | 2022/07/13 |
佚名 | 微信 | ¥10 | 2022/09/06 |
翘家人 | 微信 | ¥10 | 2022/08/18 |
佚名 | 微信 | ¥10 | 2022/06/04 |
飞舞 | 微信 | ¥10 | 2022/05/28 |
飞逝、年华 | 微信 | ¥10 | 2022/04/09 |
小果冻 | 微信 | ¥10 | 2022/04/09 |
离恨白头 | 微信 | ¥10 | 2022/04/09 |
佚名 | 微信 | ¥10 | 2022/04/19 |
枯冷 | 微信 | ¥10 | 2022/04/27 |
爱发电用户_9rEj | 爱发电 | ¥5 | 2022/08/20 |
佚名 | 微信 | ¥5 | 2022/08/16 |
Z、 | 微信 | ¥5 | 2022/08/10 |
爱发电用户_dXbV | 爱发电 | ¥5 | 2022/07/20 |
喜多🍒 | 微信 | $5 | 2022/06/21 |
妈妈咪呀 | 爱发电 | ¥5 | 2022/05/28 |
羊羊运动会羊羊 | 爱发电 | ¥5 | 2022/05/23 |
azhuo | 爱发电 | ¥5 | 2022/04/08 |
jealous | 微信 | ¥5 | 2022/04/25 |
Nicholás | 微信 | ¥5 | 2022/04/26 |
慕云白 | 微信 | ¥5 | 2022/04/29 |
佚名 | 微信 | ¥2 | 2022/08/31 |
小胖子 | 微信 | ¥2 | 2022/08/17 |
kz6669 | 微信 | ¥2 | 2022/07/11 |
流星雨晨 | 微信 | ¥2 | 2022/06/22 |
Silver Lining | 微信 | ¥2 | 2022/06/08 |
费争 | 微信 | ¥2 | 2022/05/16 |
梁 * 涛 | 微信 | ¥1 | 2022/05/29 |
皮皮凯 | 微信 | ¥1 | 2022/05/03 |
更新日志
v4.0.0
发布日期:2023/08/17
[重构] Definitely Typed! 现已将项目迁移至 TypeScript,修复了
AnyScript带来的数个潜藏的问题。[修复] 预览收藏的资源列表时,资源的收藏状态显示异常的问题
v3.10.0
发布日期:2022/12/04
[新增] 获取随机资源后,可以收藏 / 关注发布者 / 再获取一条;
[新增] 内联搜索中,滑动到列表底部后会继续获取更多结果;
[新增 (VIP)] 收到新资源通知后,可以直接收藏资源;
[优化] 优化查询效率;
[优化] 在资源操作面板中,给 “反馈失效” 操作增加了二次确认;
[修复] 解决了一些已知问题。
v3.9.0
发布日期:2022/10/18
[新增] 会员系统;
[新增/重构] 可以在 搜索结果、我的收藏 和 热门收藏 列表中直接进行收藏/关注;
[新增] 可在频道中使用 /report 反馈失效资源;
[新增] 支持关注特定用户,在对方发布新资源后收到通知;
[新增] 会员收藏的资源在被编辑/删除时,用户会收到通知;
[新增] 在资源标签前自动添加
#
号,无需手动输入;[新增] 投稿时支持返回上一步;
[新增] 快速投稿中可自动移除来自模板的等宽;
[新增] 会员可将机器人拉入自己群组中,供群员使用;
[重构] 将收藏机制合并入订阅系统;
[重构] 优化清理用户/会员的逻辑;
[优化] 避免长时间 await 占用 handler,导致触发 Telegraf 默认超时;
[优化] 计算热门资源时,降低请求数据库的速度以避免影响正常服务;
[优化] 在私聊的底部键盘添加更多操作按钮;
[优化] Broadcast 由长 await 改为非阻塞,支持取消广播;
[优化] 编辑资源消息遇到 429 Too Many Request 自动重试;
[修复] 无法发送错误日志的问题;
[修复] 添加投稿锁,避免重复操作;
✨ 目前会员功能:
在会员期限内,不会因为太久不使用机器人而被清退;
可收藏的资源数量由 100 条提高至 300 条;
可关注最多 200 位投稿者,在对方发布新资源后收到通知;
收藏的资源更新或失效时,会收到通知;
可以将机器人拉入最多 3 个群组中,供群员使用搜索等功能。
v3.8.2
发布日期:2022/09/28
[新增] 投稿时支持退回上一步;
[新增] 投稿时支持自动为标签添加
#
号;[优化] 快速投稿时,自动移除来自模板的等宽格式;
[优化] 编辑频道消息收到 429 错误时自动延时重试;
[修复] 修复给用户推送消息会多次重复的异常;
[修复] 对投稿添加锁机制,避免多个管理同时审核造成重复操作;
[修复] 修复使用“内联搜索”选择要编辑的投稿时,有概率提示找不到投稿的问题。
v3.8
发布日期:2022/09/13
[新增] 选择要编辑的稿件时,可以调用内联搜索进行查找;
[新增] 分析工具,借助
svg-chartist
绘制用户活跃情况的统计图;[重构] 获取随机资源的功能;
[优化] 将资源更新提醒改为发至频道;
[优化] 根据使用情况,降低了热门资源的刷新频率;
[优化] 在用户持续输入时,降低请求数据库的频率;
[优化] 提高整体稳定性;
[修复] 搜索对大小写敏感的问题;
[修复] 编辑投稿过程中无法识别退出命令的问题;
[修复] 调用数据库过程中的数个问题;
[修复]
me
命令中,用户投稿数量显示有误的问题;
v3.7.1
发布日期:2022/07/28
[重构] 将数据迁移至数据库,提高检索效率;
[修复] 少数情况下搜索结果偏少的问题;
[修复] 其它一些问题。
v3.7
发布日期:2022/07/13
[新增] 支持编辑投稿;
[新增] 黑名单的封禁权限增加 “编辑投稿”;
[新增] 支持 “预览模式”:命令搜索、热门资源和收藏资源列表支持直接显示资源详情,无需点击链接再跳转;
[新增] 支持随机获取资源(命令
/r [条数]
);[新增] 支持主动销毁账号;
[优化] 对于被拉黑的用户,扩宽搜索功能的禁止范围;
[优化] 管理收藏资源的相关逻辑;
[优化] 优化广播消息(broadcast)功能;
[优化] 机器人维护期间,点击过按钮的用户也会被加入通知列表;
[优化] 支持识别不同大小写的命令;
[优化] 保存数据改为异步操作;
[优化] 在经过授权的群内,搜索资源等操作不再要求用户注册;
[优化] 日期显示格式改为 “年/月/日”;
[重构] 将推送审核的相关函数进行了统一;
[重构] 将涉及批量通知用户的函数进行了统一;
[重构] 重构
User
类;[重构] 新增
Time
类,统一处理和时间有关的操作;[重构] 注册命令由
/register
缩短为/reg
;[重构] 优化命令、回调查询和内联查询的 handler 的结构;
[重构] 优化代码结构;
[修复] 维护模式中,与机器人交互过的用户无法被成功加入通知名单的问题;
[修复] 白名单中用户投稿后,键盘未恢复正常的问题;
[修复] 部分场景收藏资源未限制数量的问题;
[修复] 搜索时特殊字符及保留字可能导致的解析问题;
[修复] 统计逻辑错误;
v3.6
发布日期:2022/05/21
[新增] 可将频道的资源转发给机器人进行收藏;
[新增] 白名单用户投稿后,向审核群内发送通知;另外若开启了定时推送,将投稿加入推送队列;
[新增] 注册用户可使用命令
/me
,查自己的信息、上次使用时间和账户过期时间等;[新增] 命令
/s
支持搜索用户投稿记录,参数格式与内联搜索一致(如搜索用户12345678
的 4K 资源:12345678 4K
);[新增] 关闭定时发送功能时,若队列中有残余投稿,以 5 秒 / 条的速度全部推送至频道;
[重构] 命令搜索支持直接在结果面板中更改排序方式,扩充翻页范围(效果示意);
[重构] 分页按钮支持弹性变动;
[改进] 优化搜索逻辑:提高内联搜索精准度,减少命令搜索处理耗时,改进结果标题的美化效果;
[改进] 收藏和取消收藏资源时,在回复中指出对应资源标题;
[改进] 支持启用 / 禁用注册制;
[改进] 改进部分文字表述;
[改进] 优化热门收藏资源缓存的生成速度;
[改进] 审核 删除失效资源请求 时支持拒绝并留言,将投稿与失效资源请求的回调数据统一;
[改进] 如果命令中含 @,只在被 @ 对象为自己时响应;
[改进] 如果因用户搜索方式不对被 tag(如
@AliYunPanBot 4K电影
),发送一条 30 秒后自焚的消息,告知正确的搜索方法;[改进] 优化检查数据完整性的逻辑;
[改进] 优化 error handling;
[改进] 在内联搜索中,为 “用户未注册” 的响应结果添加了图标;
[修复] 因为部分标题使用了特殊字符,导致裁切字符串引起编码错误的问题;
[修复] 使用命令搜索用户投稿记录时,切换至大于第 1 页会显示无结果的问题;
[修复] 搜索用户投稿记录时进入错误循环,导致用时较久的问题;
v3.5
发布日期:2022/04/25
[新增] 纯文本搜索:发送
/search [搜索内容]
进行搜索,支持分页(效果示意);[新增] 封闭注册:重构用户系统,支持限制注册后才可使用完整功能。若用户注册后超过 180 天未使用机器人,自动清除其数据;
[新增] 新增 “继续搜索”:在设置中开启后,点击搜索结果下方的 ”继续搜索“ 按钮,自动输入上次搜索的内容;
[新增] 黑名单支持编辑要禁止用户使用的功能(效果示意),重构部分相关代码;
[新增] 支持重载配置;
[重构] 重构回调查询部分,以适应未来更新;
[重构] 部分重构命令相关代码;
[优化] popular 和 collection 命令支持直接指定页数,如
/popular 10
跳转至第 10 页;[优化] 热门收藏资源的展示数量上调至 1000;
[优化] 使用 throttler 中间件防洪;
[优化] 内联搜索使用 @node-rs/jieba 进行分词,提高搜索自由度;
[优化] 黑白名单改为三列展示;
[优化] 改进内联搜索的结果,以及私聊调出资源的键盘的样式;
[优化] 尝试自动删除确认失效的资源(大概率不成功,因为消息发送超过 48 小时即无法删除);
[优化] 改进部分文字表述;
v3.4
发布时间:2022/04/06
[新增] 新增通知功能,便于在紧急情况下(如数据丢失)联系用户;
[重构] 重构维护模式:
可提供本次维护的原因;
扩大维护期间不响应的操作范围;
新增通知名单。维护开始后,与机器人交互过的用户将被加入通知列表(waitlist),在维护完成后收到私聊通知(如果未私聊过或封禁了机器人,则无法通知成功)。
[重构] 重构大量代码;
[重构] 重构审核群中 /member 指令;
[改进] 反馈失效资源前要求确认;
[改进] 内联搜索增加显示资源总数和搜索用时;
[改进] 优化热门收藏生成逻辑,减少资源消耗;
[改进] 收藏和热门收藏列表支持循环切换;
[改进] 优化内联搜索逻辑,减少用时;
[改进] 将搜索结果的缓存时间上调为 60 秒;
[改进] 不再存储未过审的投稿记录;
[改进] 改进搜索功能的一些细节;
[改进] 改进统计功能;
[修复] 修复内联搜索概率报错的问题。
v3.3
发布时间:2022/03/12
[新增] 支持 /popular 命令展示热门收藏,最多展示 500 条,数据每 5 分钟刷新;
[改进] 搜索结果顶端展示结果数量和搜索用时;
[改进] 在资源被删除后,尝试通知收藏了该资源的用户;
[改进] 新资源通知和搜索结果增加收藏按钮;
[改进] /stats 命令在审核群中可用;
[改进] 在删除用户数据前自动备份;
[改进] 优化统计数据排版;
[改进] 优化收藏和热门资源面板;
[改进] 在私聊获取资源详情后,如未收藏,询问是否要收藏资源;
[修复] 修复新用户收藏资源失败的 bug;
[修复] 修复已知 bug。
v3.2
发布时间:2022/03/02
[新增] 用户可以自定义搜索结果的排序方式,支持 “默认”、“收录时间(顺序 / 倒序)”;
[新增] 支持 /export 命令,将用户投稿记录导出为 Excel 文档;
[新增] 支持收藏资源和管理已收藏的资源;
[改进] 在私聊中,搜索按钮会在当前聊天继续搜索;在群聊中则为跳转新聊天(避免刷屏);
[改进] 投稿标题不允许为按钮关键词(如“快速投稿”);
[改进] 如果搜索结果在频道内有推送,展示前往查看按钮;
[改进] 例行优化。
v3.1
发布时间:2022/02/14
投稿相关
[新增] 自动清理闲置超过 24 小时的投稿操作;
[新增] 失效资源反馈:删除标记为失效的资源,并通知分享者;
[改进] 搜索逻辑,标题匹配的结果靠前展示;
[改进] 将投稿须知 & FAQ 移至 Telegraph,支持 Instant View;
[改进] 添加了几个搜索入口;
[改进] 调整部分文字表述;
[改进] 优化操作键盘。
审核 & 其它
[新增] 自动备份数据;
[新增] 清理用户数据;
[改进] 改进审核面板;
[改进] 一些看不到的优化。
v3.0
发布时间:2022/02/06
使用 ECMAScript 6 标准重写项目,规范代码结构,重构大量功能
修改数据结构,更加通用化
数据存储方式由 log 改为 JSON 数据库,提高检索效率
添加内联搜索功能,搜索过审的投稿:
普通搜索:@AliYunPanBot [搜索内容] (2 ~ 15 个字符)
高级搜索:@AliYunPanBot [UID] [内容 (可选)] 搜索特定用户的投稿
改善数据备份和加载功能
添加了旧版数据迁移至新版的工具
添加判断:未入群或关注频道的用户不允许投稿
定时发送功能由 Cron 改为内置 Interval 实现
v2.4
发布时间:2022/01/03
新增 重新支持单用户多个投稿,无需等待投稿结果
新增 白名单,白名单中的用户无需审核,投稿直接发送至频道
新增 黑名单,黑名单中的用户不允许投稿
新增 群内新投稿通知;
新增 待审核投稿列表
完善 投稿统计功能
修复 已知问题
v2.3
发布时间:2021/12/07
调整部分文字
修复 bug
支持生成投稿数据统计
支持生成投稿排行榜
推送待审投稿后自动置顶并删除通知消息
v2.2
发布时间:2021/11/11
启用 Webhook 代替 Polling,缩短响应时间,降低负载;
修复了键盘不刷新出 “确认” 按钮的问题
优化对分享链接和提取码的识别
v2.1.2
增加几个管理命令,增加维护模式;
对于投稿历史功能,为新通过的投稿增加了频道的跳转链接;
修复自由投稿无法提交纯文字的问题;
修复审核过程中 bot 命令不可用的问题;
修复多图投稿通过后推送错误消息的问题;
修复数个 bug
v2.1.1
发布时间:2021/11/09
新增 “自由投稿”。支持发送多图,步骤更少、形式更自由,但是对格式要求更严格。
新增 OTA 更新;
投稿历史较长时,改为发送 TXT 文件;
修复 bug。
v2.1
发布时间:2021/11/08
新增 /history 命令,私聊查询自己的投稿记录(10 月 16 日之后);
为新投稿添加了 “待审核” “已通过” “已拒绝” 的状态,会显示在投稿记录中;
完善推送队列功能;
修复 bug。
补丁 #1:投稿历史支持识别多条链接
v2.0
发布时间:2021/10/28
支持按一定时间间隔发送消息(即排队功能);
支持识别特殊文本格式;
修复潜在的问题。
v1.7
发布时间:2021/10/15
优化几处代码结构;
增加群组和频道的邀请链接;
增加日志记录功能及简单调用,方便管理索引;
针对附加图片环节发文字的情况加了应对措施;
修复 bug。
v1.6
发布时间:2021/10/10
针对投稿详情过长作了预防措施;
调整部分不准确的文字描述,调整投稿须知;
修复少量 bug。
v1.5
发布时间:2021/09/23
根据频道置顶 (https://t.me/shareAliyun/4026),调整了投稿须知;
调整打赏方式;
投稿链接不合规时,自动剔除无关文字
(有的人就是懒)。
v1.4
发布时间:2021/09/17
管理可以通过机器人告知审核被退回的具体原因;
审核和结果通知改为使用 Inline Keyboard ,精简代码;
v1.3
发布时间:2021/09/14
投稿通过审核后,机器人会告知你投稿在频道中的链接;
调整部分文字描述。
链接不符合规范时,自动处理链接
v1.2
发布时间:2021/09/07
优化代码结构;
用户可提交多个投稿(无需等待当前审核结果);
修复其他一些问题。
v1.1
增加 /save 命令,缓解丢配置的问题;
增加 /donate 命令;