跳转至内容
  • 版块
  • 最新
  • 标签
  • 热门
  • 用户
  • 群组
皮肤
  • 浅色
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • 深色
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(LCZ-Blue)
  • 不使用皮肤
  • LCZ-Green
  • LCZ-Blue
折叠
品牌标识

抡锤者

  1. 主页
  2. 版块
  3. AI Agent
  4. 修改 forkgram/tdesktop 实现 跳转到前一条后一条@我的消息

修改 forkgram/tdesktop 实现 跳转到前一条后一条@我的消息

已定时 已固定 已锁定 已移动 AI Agent
1 帖子 1 发布者 12 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • crazypeaceC 离线
    crazypeaceC 离线
    crazypeace
    编写于 最后由 编辑
    #1

    前言

    我们之前已经实现了 有@我消息的群 置顶 方便我们"快速到达战场"

    又进一步实现了 跳转到最后一条@我的消息

    但是, 如果群组里面新 @我的消息多于一条呢?

    面向Agent开发

    Hermes 对接 oc/deepseek-v4-flash-free

    https://zelikk.blogspot.com/2026/08/omniroute-hermes-agent-oracle-arm-ubuntu-root-sudo-.html

    下面的引用框里面都是我发给Agent的自然语言

    基于 https://github.com/crazypeace/forkgram-tdesktop/tree/goto-last-mention 的代码, 进行增强开发

    当 点击 "Go to the last msg mentioned me" 之后, 实现了跳转消息的效果,

    然后, 在这个时候, 再次点击 "Go to the last msg mentioned me", 希望能继续跳转到再上一条 @消息

    你说一下你是怎么理解 我的需求的, 与我讨论.

    Agent分析了一通, 问我, 向前跳转的时候, 以什么为锚点?

    是把上一次跳转的消息id保存下来, 作为锚点?

    还是以当前群组消息视口可见的消息为锚点?

    锚点=当前视口

    把原来的 "Go to the last message mentioned me" 菜单项 改为 "Go to the Pre msg @me"

    效果为, 以当前视口为锚点, 跳转上一条 @我 的消息

    增加一项 "Go to the Next msg @me"

    效果为, 以当前视口为锚点, 跳转下一条 @我 的消息

    成果

    群组菜单

    c4358f0e-b7dc-4587-b102-751ae5a263af-image.jpeg

    跳转效果

    替代文字

    https://www.youtube.com/watch?v=Rwl81yzRdms

    Github

    代码

    https://github.com/crazypeace/forkgram-tdesktop/tree/goto-pre-next-mention

    Release

    https://github.com/crazypeace/forkgram-tdesktop/releases/tag/goto-pre-next-mention

    ========

    后记

    跳转下一条 @我 的消息 这个功能有缺陷

    Telegram API里面, 搜索群组消息是 messages.search, 这个API只能从指定消息id往 旧时间的方向搜索, 不能往新时间的方向搜索. 所以严格意义上这个功能是无法实现的.

    现在实施的本质算法是:
    先从群组的最新消息作为锚点, 向旧时间的方向搜索10条 @我 的消息, 得到这些消息的id; (1)
    获取当前群组消息视口可见的消息id; (2)
    从 (1) 中得到的 10个 消息id中, 找到刚好比 (2) 的id 大的那一个, 跳转.

    换句话说, "跳转下一条 @我 的消息 这个功能" 只在群组最后10条@我的消息范围内有效.

    1 条回复 最后回复
    0

    你好!看起来您对这段对话很感兴趣,但您还没有一个账号。

    厌倦了每次访问都刷到同样的帖子?您注册账号后,您每次返回时都能精准定位到您上次浏览的位置,并可选择接收新回复通知(通过邮件或推送通知)。您还能收藏书签、为帖子顶,向社区成员表达您的欣赏。

    有了你的建议,这篇帖子会更精彩哦 💗

    注册 登录
    回复
    • 在新帖中回复
    登录后回复
    • 从旧到新
    • 从新到旧
    • 最多赞同


    • 登录

    • 没有帐号? 注册

    • 登录或注册以进行搜索。
    • 第一个帖子
      最后一个帖子
    0
    • 版块
    • 最新
    • 标签
    • 热门
    • 用户
    • 群组