创建telegram关于私聊和群组的限制-电报telegram技巧分享

telegram群聊怎么发消息


telegram是海外常用的聊天功能,功能很强盛,除了聊天还可以玩游戏,传文件,视频,声音,投票,群组。固然,这些跟qq,微信都很类似了。但是它毕竟是海外最常用的IM之一。telegram有个聊天机器人可以主动发消息,也是挺故意思的。它还开放了api,可以自己创建bot,通过api发送消息,视频,声音,文件等功能。下面,我简单介绍下怎么新建一个bot


telegram有两种api,一种是bot api,一种是telegram api。bot api是基于http访问,telegram api是基于mtproto访问,访问需要加密,相对要庞杂一些。后者也可以实现发送消息等功能。这里我只说第一种bot api。


首先要创建一个bot。访问


https://telegram.me/botfather


它会提示你用telegram打开。然后你就打开了botfarther的聊天对话框。输入


/newbot


回车发送。botfarther会反馈


Alright, a new bot. How are we going to call it? Please choose a name for your bot.


输入你要创建的bot名字。比方david_bot,回车发送


它会反馈


Good. Now let’s choose a username for your bot. It must end in `bot`. Like this, for example: TetrisBot or tetris_bot.


我再输入 DavidBot。这是这个机器人的名字。


它会反馈


Sorry, this username is already taken. Please try something different.


这名字已经被用了。我们换一个


GZ_David_Bot


它会反馈


BotFather, [16.02.17 14:23]


Done! Congratulations on your new bot. You will find it at t.me/Gz_David_Bot. You can now add a description, about section and profile picture for your bot, !see /help for a list of commands. By the way, when you’ve finished creating your cool bot, ping our Bot !Support if you want a better username for it. Just make sure the bot is fully operational before you do this.


Use this token to access the HTTP API:


xxx:xxx


For a description of the Bot API, see this page: https://core.telegram.org/bots/api


这里它天生了api token。我们记下它。以后api请求都市用到。假如需要帮助,输入 /help


输入/token 可以重新天生一个token。


/revoke 可以撤除一个token


我们需要用这个bot来发送消息,首先需要创建一个group,参加一些人,同时将这个bot也加进去。然后在这个group中发送消息。类似 /hello @GZ_David_Bot


然后访问


https://api.telegram.org/botxxx:xxx/getUpdates


我们会获取到一个json


    {



    “ok”


    :


    true


    ,




    “result”


    : [{




    “update_id”


    : xxx,




    “message”


    : {




    “message_id”


    :


    4


    ,




    “from”


    : {




    “id”


    : xxx,




    “first_name”


    :


    “david”


    ,




    “last_name”


    :


    “huang”


    ,




    “username”


    :


    “davidhuang”



    },



    “chat”


    : {




    “id”


    : -xxx,




    “title”


    :


    “bot”


    ,




    “type”


    :


    “group”


    ,




    “all_members_are_administrators”


    :


    true



    },



    “date”


    : xxx,




    “text”


    :


    “/hello @GZ_David_Bot”


    ,




    “entities”


    : [{




    “type”


    :


    “bot_command”


    ,




    “offset”


    :


    0


    ,




    “length”


    :


    6



    }


    ]


    }


    },


    ]


    }


这里,我们看到有个id,指的就是当前group的id。我们记下它 。然后实行以下curl。


botXXX:YYYY 指的是bot+token,肯定要加上bot前缀


chat_id就是上面的id,留意是负数,必须有-


发送内容是=my sample text


curl -X POST “https://api.telegram.org/botXXX:YYYY/sendMessage” -d “chat_id=-zzzzzzzzzz&text=my sample text”



要么在browser地点输入:


https://api.telegram.org/

botXXX:YYYY

/sendMessage?chat_id=-

zzzzzzzzzz

&text=

my sample text



实行完,这个group就收到消息了。


api git:


https://github.com/unreal4u/telegram-api/graphs/contributors


但是悲剧的是,它只支持php7.


https://github.com/unreal4u/telegram-api/wiki


别的,也可以通过webhook api获取聊天记载等功能。但是这个api要求我们的站点必须是https证书


另有个bot sdk,它只要php5.5就可以了


https://telegram-bot-sdk.readme.io/reference#forwardmessage


https://github.com/irazasyed/telegram-bot-sdk


https://telegram-bot-sdk.readme.io/v2.0/reference


sdk 文档:


https://telegram-bot-sdk.readme.io/docs


安装


composer require irazasyed/telegram-bot-sdk


这个sdk包含了全部的telegram bot api,比方支持command,keyboard,webhook


参考文档:


https://fullmeter.com/blog/?p=14


http://stackoverflow.com/questions/32423837/telegram-bot-how-to-get-a-group-chat-id-ruby-gem-telegram-bot


https://core.telegram.org/bots


https://core.telegram.org/bots/api

Telegram 私聊限定

Telegram 给或人发送私聊消息时碰到如下提示:

Sorry,you can only send messages to mutual contacts at the momet.

中文:抱歉,您如今只能给双向联系人发送消息。

缘故:

前段时间币圈使用Telegram 的便利,大量发广告和拉人进群。

Telegram 限定了+86 大陆手机号绑定的账号的私聊。

+86 的账号不能给非+86 的账号主动发起私聊,+86 的账号能给+86 主动发起私聊的;

方才注册的+86 账号也不能发起私聊的,过段时间就OK了。

解决措施:

向官方 @SpamBot 发送消息申请(跟着提示操作就行),半小时左右即可排除限定

步骤:/start → But I can’t message non-contacts! → NO,I’ll never do any of this! → accident

动图:

Telegram 群限定

Telegram 假如你进入某个群/频道碰到如下提示:

This channel is blocked because it was used to spread pornograhic content.

翻译:此频道被屏蔽,由于它用于流传色情内容

缘故:有人在群内发了某些内容,被多次举报导致被 Telegram 限定访问

碰到这个提示有两种环境:

此群/频道被 Telegram 彻底封了,各个平台全部客户端都不能进去了; 此群/频道在 iOS 和 macOS 的 App Store 下载的客户端不能进入,而其他平台客户端能进入;

这是由于 Apple 的限定,对上架 App Store 的内容限定,假如 Telegram 不做限定就会被 App Store 下架。

第一种环境是无解的。

第二种环境的解决措施:

iOS 上: 使用网页版可以进入,网页版地点:https://web.telegram.org 使用第三方客户端 Nicegram, 详情:https://t.me/yxbjx/120864 使用 Telegram X

本文内容来自以下官方文档

Bots: An introduction for developers Telegram Bot API

Creating a new bot

Telegram 添加 BotFather 进入聊天界面

点击输入框中 /start

回答内容中点击 /newbot

阅读提示分别输入 name 和 username

紧接着回答内容中包含了接下来需要使用的 token,看起来像这样:123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11

以上步骤可同步参考 官方文档:Creating a new bot

sendMessage


curl 'https://api.telegram.org/bot123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11/getMe'

以上下令请参考 官方文档:getMe


curl -d 'chat_id=700049303&text=hello' 'https://api.telegram.org/bot123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11/sendMessage'

以上下令请参考 官方文档:sendMessage

此时你大概会迷惑,你的 chat_id 那里来的?与 Bot 发起私聊,在群聊里添加 Bot,之后均可以通过 getUpdates 接口请求到内容,message.chat.id 便是我们想要的 chat_id 啦,私聊为正,群聊为负


curl 'https://api.telegram.org/bot123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11/getUpdates'

以上下令请参考 官方文档:getUpdates

总结

具备以上知识,监控程序中集成 通知到Telegram 应该不成问题

官方文档:Telegram Bot API 中有几节比较短,建议看一下啊

Authorizing your bot Making requests Getting updates

本文网址:

http://www.1cm8858.com/d/202069115516_3257_2117931422/home

Ten articles before and after

【telegram官网app】telegram最新官方下载电脑版-电报telegram技巧分享

最新telegram关闭敏感内容过滤方法苹果ios的如何解除限制?-电报telegram技巧分享

如何在小技巧:电脑快截键截图法-电报telegram技巧分享

【内附视频教程】及【最详细步骤图】手把手教你下载使用telegram(pc端、ios端、安卓端)华为手机怎么安装?-电报telegram技巧分享

telegram有什么优点?为什么使用.由于政府审查和管制太多-电报telegram技巧分享

telegramtg抱歉你只能给双向联系人发送消息-电报telegram技巧分享

保护隐私:老司机手把手教你注册telegram(电报)账号+86手机号的如何解除不能私聊问题-电报telegram技巧分享

telegram怎么改用户名(username)有什么用?一定要设置吗如何@TGgeek-电报telegram技巧分享

微信偷看聊天记录?拒绝提供用户加密会话密钥-电报telegram技巧分享

华为p40现在可以安装google和play商店的服务预装应用反受欢迎?手机上70个流行Android应用程序-电报telegram技巧分享