You need to enable JavaScript to run this app. 使用Telethon向个人Telegram私有频道发消息时收不到移动端推送通知
优惠活动
大模型
产品
解决方案
定价
更多

使用Telethon向个人Telegram私有频道发消息时收不到移动端推送通知

Telethon发私有频道消息无法触发移动端推送的排查与解决

核心机制原因

该问题和你已经调整过的Telegram App全局通知设置、Telethon代码运行状态无关,核心触发逻辑是Telegram官方内置规则:
当你使用已登录的个人账号向自己具备管理权限的私有频道发送消息时,Telegram会判定这条消息为"用户自主操作产生的内容",而非"他人发送的待提醒新消息",因此不会向你绑定的移动端设备推送对应通知。
无论你是通过官方App手动发消息,还是通过Telethon调用API后台发消息,只要发送主体是你自己的个人账号,这套判定逻辑就会生效——这也是你反复调整通知设置、检索相关方案都没解决的根本原因。

可行解决方法

  • 更换发送主体,绕开自我消息判定
    这是最稳定生效的方案:为私有频道添加一个专属的Telegram机器人作为管理员,后续把消息发送逻辑从个人Telethon账号切换为机器人身份发送。此时消息发送主体是独立机器人,不属于你自己的个人账号,Telegram会正常识别为新消息,触发移动端推送。
  • 排查频道专属通知设置
    打开目标私有频道的设置页,进入通知配置界面逐项核对:
    • 确认没有开启频道级的"发送消息静音"开关
    • 确认没有将该频道设置为"静音、不提示"状态
    • 注意:如果发送主体是你自己的个人账号,哪怕所有通知开关全部打开,也不会触发自我发送消息的推送提醒
  • 修正Telethon发送逻辑,避免误发静默消息
    部分场景下如果没显式设置通知参数,Telethon默认可能发送静默消息(不会触发任何设备推送),可以在send_message方法中显式加上notify=True参数确保消息是带提醒属性的:
    async def func():
        entity = await client.get_entity(channel_invite_link)
        # 显式开启消息通知,避免被判定为静默消息
        await client.send_message(entity=entity, message="Hi", notify=True)
    
  • 快速验证设置是否正常
    你可以先邀请一个非管理员的其他账号进入私有频道,从该账号给频道发一条测试消息,如果你的移动端能正常收到这条消息的推送,就证明你的App通知、频道通知设置完全正常,问题根源就是"个人账号给自己发消息不触发自我推送"的机制限制,不需要反复调整App内的通知开关。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.26 21:06:03