Skip to content

laosanyuan/fans_trunk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

fans_trunk是针对于Telegram频道运营者开发的涨粉机器人工具(互推车)。目前核心功能为频道互推,通过公平、高效的互推机制,帮助频道主交换粉丝资源,实现共同增长。 使用者(频道主)获得更多曝光实现粉丝增长,互推车部署者则可通过插入广告实现收益,达到双赢。

Home Page

核心功能

当前只支持频道互推

主菜单

\start之后显示主菜单:

  1. 添加频道:点击后用户选择将机器人加入自己的频道,并赋予相关权限。添加后自动进入审核流程。
  2. 管理频道:点击后列出当前用户所有频道列表。
  3. 查看车队信息:点击后展示各个等级车队信息
  4. 查看规则:介绍车队规则

添加频道

  • 将机器人加入频道,并授予相关权限。
  • 添加成功后进入审核流程(初期可不设审核)
  • 审核完成后消息提示用户:审核结果、当前频道评级、当前分配车队(车队覆盖人数、车队成员数量范围)

管理频道

展示当前用户频道列表

  1. 显示频道状态:暂停、运行、受限、审核不通过
  2. 显示所在车队名称
  3. 每项之后包含“暂停”和“删除”两个按钮

用户移除频道后不主动退出频道。

查看车队信息

  1. 列表信息(活跃频道数量、成员总数、平均曝光人数/天)
  2. 点击查看详情可查看每个车队具体频道信息

车队信息为动态变化数据,每次查询数量不确定

互推功能

定时轮询所有频道,判断频道最后一次消息是否为自己所发。

  • 如果不是,则删除上次发布消息,同时发布新消息。
  • 如果是,判断发布时间是否超出有效间隔,如果是,则删除旧消息,发布新消息。

消息生成规则:

  • 每次从所有频道中随机选取符合车队条件的成员数量的频道10个组合成新消息。
  • 从广告服务中获取广告消息。
  • 组合成最终消息发布。

频道巡检

  • 每天两次更新所有频道成员数量
  • 根据发布结果检查频道是否有效,如果发现无效被封禁频道,需要将频道清出
  • 根据每日检查粉丝数量减少,判断频道是否存在刷粉,刷粉则降低评级

用户通知

用户通知每日通过wxpusher发送到微信。

  • 当用户车频道粉丝发生变化时,根据当前粉丝数量更新其所在车队。发生变化后将变化信息推送给用户。
  • 当频道被封禁或者无法发送消息,通知用户:
    • 失去管理员权限
    • 频道无法发布消息,可能被封禁

隐藏菜单

  • \admin:维护者使用,查看互推车当前用户数量信息(不区分是否为管理员)

部署说明

创建Telegram机器人

Telegram机器人创建方式与常规方法一致(BotFather注册),获取到机器人token后备用。 Telegram机器人创建参考

部署Docker镜像

自行编译docker镜像或直接下载github中已编译好的.tar文件,并将镜像文件上传到服务器。所使用服务器或vps必须部署在可以正常访问Telegram的地区,通常来说国内不可使用。

更新配置

互推车的配置模板在templates文件夹中。

1. 基本设置

settings.json)将第一步中获取到的机器人token填入,如果需要日报微信通知,则获取对应token和接受用户uid(WxPusher):

{
    "bot_token": "",
    "admin_user":"",
    "proxy": "http://127.0.0.1:10809",
    "wxpusher_token":"",
    "wxpusher_uid":""
}

proxy用于国内调试,可以不填。

2. 车队配置

车队配置(fleets.json)用来分配各车队的分数分配可以自行设置,也可使用项目默认配置。

通常来说,系统评分的范围 在0-100之间,可根据自己的需求自行分配分数范围和名称。 Fleets

[
    {
        "id": 1,
        "name": "【青铜】车队",
        "min_score": -100000,
        "max_score": 20
    },
    {
        "id": 2,
        "name": "【白银】车队",
        "min_score": 20,
        "max_score": 30
    },
    {
        "id": 3,
        "name": "【黄金】车队",
        "min_score": 30,
        "max_score": 40
    },
    {
        "id": 4,
        "name": "【铂金】车队",
        "min_score": 40,
        "max_score": 60
    },
    {
        "id": 5,
        "name": "【星耀】车队",
        "min_score": 60,
        "max_score": 80
    },
    {
        "id": 6,
        "name": "【王者】车队",
        "min_score": 80,
        "max_score": 100000
    }
]

3. 自定义广告设置

广告设置用来设置广告链接,广告可以设置三个位置(head、tail、button),分别对应三种形式。如果不设置,则对应位置不显示任何内容:

[
    {
        "text": "更多精彩内容",
        "link": "https://t.me/zhong_so",
        "position": "head"
    },
    {
        "text": "加入我们的频道",
        "link": "https://t.me/zhong_so",
        "position": "tail"
    },
    {
        "text": "加入我们的频道",
        "link": "https://t.me/zhong_so",
        "position": "button"
    }
]

部署镜像

将前面更新后的三个配置文件上传到服务器,最好放在相同文件夹中,使用以下命令启动服务。

加载镜像:

docker load -i fans_trunk_1.0.11.tar

运行服务:

docker run -d \
  --name trump_trunk \
  -v /root/trump/settings.json:/app/configs/settings.json \
  -v /root/trump/data.db:/app/configs/data.db \
  -v /root/trump/ad_settings.json:/app/configs/ad_settings.json \
  -v /root/trump/fleets.json:/app/configs/fleets.json \
  fans_trunk:1.0.11

名称路径等根据自己实际情况修改

完成以上操作后,通过机器人命令即可添加频道验证使用: Demo Demo

About

Telegram 互推车

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors