红包
  • 注册
  • Telegram开发交流 Telegram开发交流 关注:64 内容:12

    telegram bot api判断在群组发言的是否是管理员

  • 查看作者
  • 打赏作者
  • 2
  • Telegram开发交流
  • 大版主
    初学乍练
    超级VIP
    冲向2023

    一、查看api文档

    在官方文档中https://core.telegram.org/bots/api#getchatadministrators 这个链接下可以获取到该群组的管理员列表,且机器人必须要在群组内

    二、手动构造url

    查看文档后手动构造的url进行访问得到结果如下(url内容:https://api.telegram.org/bottoken/getChatAdministrators?chat_id=groupid)即可获取管理员列表

    telegram bot api判断在群组发言的是否是管理员

    三、代码逻辑

    将获取到的管理员列表与发言的用户的id或者username进行对比,如果相同就是管理员,如果不相同就不是管理员。

    四、代码实现

    <?php//假设用户id为998877$userid = "998877";//构造url$url = "https://api.telegram.org/bottoken/getChatAdministrators?chat_id=groupid";//将拿到的数据转为数组,之后应该判断ok是否为true,我这里省略了$res = json_decode(file_get_contents($url),true);//先默认不是管理员$admin = false;//遍历拿到的管理员列表foreach ($res["result"] as $item) {    //如果拿到的的管理员id跟假设的用户id一致就赋值admin为真,否则不改变    $item["user"]["id"]!=$userid?:$admin=true;}if($admin){    echo "是管理员";}else{    echo "不是管理员";}

    五、总结

    首先多看看官方的文档,官方的文档写的还是比较全面的,看不懂的小伙伴可以选择翻译

    六、出处

    https://www.oo-uu.cc/83.html

    登堂入室

    111

    回复
    初学乍练
    初级VIP

    6666666

    回复

    请登录之后再进行评论

    登录
    • 大版主
    • 小版主
  • B哥哥
    B哥哥
    电报 @buzhiguiqi
  • 暂没有数据

    Telegram开发交流
  • 今日 0
  • 内容 12
  • 关注 64
  • 赚金币
  • 实时动态
  • 偏好设置
  • 帖子间隔 侧栏位置: