You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决Telegram贴纸集从Client1迁移至Client2的无效集错误?

解决Telegram贴纸集跨客户端迁移的问题

你遇到的问题核心是access_hash是客户端会话绑定的,每个客户端的access_hash都不一样,直接复用必然报错。不用发消息提取的话,最优雅的方式是用贴纸集的short_name(短名称)完成迁移——这个字段是全局唯一且不随客户端变化的。

具体实现步骤

  • 从Client1的目标贴纸集中提取short_name字段
  • 在Client2中通过short_name构造InputStickerSetShortName,替代依赖会话的InputStickerSetID

修改后的代码示例

# 从Client1获取目标贴纸集的短名称
stickers = await client1(messages.GetAllStickersRequest(0))
target_sticker_set = stickers.sets[0]
sticker_short_name = target_sticker_set.short_name

# 在Client2中通过短名称安装贴纸集
go_save = await client2(messages.InstallStickerSetRequest(
    stickerset=types.InputStickerSetShortName(
        short_name=sticker_short_name
    ),
    archived=False
))

方案原理

贴纸集的short_name是公开的全局标识,无论哪个客户端访问,这个值都固定不变。Telegram服务器可以直接通过short_name定位到对应贴纸集,完全不需要依赖客户端会话相关的access_hash,完美适配跨客户端迁移的场景。

内容的提问来源于stack exchange,提问作者root

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 02:04:51