DAY 12 群组相关事件及命令

event

群组相关事件有4种

  • Join event 加入事件
  • Leave event 离开事件
  • Member join event 成员加入事件
  • Member leave event 成员离开事件
from linebot.models.events import (
    JoinEvent,
    LeaveEvent,
    MemberJoinedEvent,
    MemberLeftEvent
)

Join event

当你的官方帐号加入群组聊天室或多人聊天室时触发

{"destination":"U91f0036fffbdfc3ead599a54d4883026","events":[{"type":"join","timestamp":1632490426295,"source":{"type":"group","groupId":"C1f357266e227528c3a247b992c6418e7"},"replyToken":"9e5f8c4cf7ea41d7853c71030831b8ba","mode":"active"}]}

Join event可得到的资讯
https://ithelp.ithome.com.tw/upload/images/20210924/20140165yl42NZ27Oc.jpg

Leave event

当你的官方帐号离开群组聊天室或多人聊天室时触发

{"destination":"U91f0036fffbdfc3ead599a54d4883026","events":[{"type":"leave","timestamp":1632490394283,"source":{"type":"group","groupId":"C1f357266e227528c3a247b992c6418e7"},"mode":"active"}]}

Leave event资料没有replyToken,其他和Join event一样

Member join event

当成员加入群组触发

{"destination":"U91f0036fffbdfc3ead599a54d4883026","events":[{"type":"memberJoined","joined":{"members":[{"type":"user","userId":"Ufd738a53faa5ffea5de965c8e0d5a913"}]},"timestamp":1632489956072,"source":{"type":"group","groupId":"C1f357266e227528c3a247b992c6418e7"},"replyToken":"01ff21658b634dd390098fd44185d3b4","mode":"active"}]}

https://ithelp.ithome.com.tw/upload/images/20210924/20140165Nno6rXedHk.jpg

Member leave event

当成员离开群组触发

{"destination":"U91f0036fffbdfc3ead599a54d4883026","events":[{"type":"memberLeft","left":{"members":[{"type":"user","userId":"Ufd738a53faa5ffea5de965c8e0d5a913"}]},"timestamp":1632489890949,"source":{"type":"group","groupId":"C1f357266e227528c3a247b992c6418e7"},"mode":"active"}]}

Leave event资料没有replyToken,Member join event成员资讯是joined,Member leave event是left,其他和Join event一样

群组资讯

群组概括(group summary)

if(event.message.text=="Get group summary"):
        summary=line_bot_api.get_group_summary(event.source.group_id)
        message_text="Group summary\n"
        message_text+="group id"+summary.group_id+"\n"
        message_text+="group name"+summary.group_name+"\n"
        message_text+="picture url"+summary.picture_url
        message=TextSendMessage(message_text)

https://ithelp.ithome.com.tw/upload/images/20210924/201401659S7PRPCSz1.jpg

群组人数(group members count)

if(event.message.text=="Get group members count"):
        message=TextSendMessage(line_bot_api.get_group_members_count(event.source.group_id))

https://ithelp.ithome.com.tw/upload/images/20210924/20140165jaOwnHZlkt.jpg

群组成员使用者id(group member user IDs)

这个功能只有验证过的官方帐号或premium帐号可以使用

member_ids_res = line_bot_api.get_group_member_ids(group_id)

print(member_ids_res.member_ids)
print(member_ids_res.next)

群组成员资料(group member profile)

profile = line_bot_api.get_room_member_profile(room_id, user_id)

print(profile.display_name)
print(profile.user_id)
print(profile.picture_url)

离开群组(Leave group)

if(event.message.text=="Leave group"):
        message=TextSendMessage(line_bot_api.leave_group(event.source.group_id))

https://ithelp.ithome.com.tw/upload/images/20210924/20140165AU4SvFjpIe.jpg
参考:
https://developers.line.biz/en/reference/messaging-api#Group
https://developers.line.biz/en/reference/messaging-api/#webhook-event-objects
https://github.com/line/line-bot-sdk-python


<<:  《角色扮演,就能超越原点》

>>:  ESP32_DAY9 开发好夥伴-电阻

理解网际网路协定(二):浮动 IP、固定 IP、虚拟 IP,这麽多种 IP 都是什麽?

理解了 IP 位置的组成,我们接着来看看一些常被提到的相关名词:浮动、固定及虚拟 IP 位置。 浮动...

IIS WordPress 永久连结如何移除 index.php 路径

WordPress 文章的永久连结有分几种模式,预设是「?p=123」这种方式 实际上的连结就变成这...

Day 02:Vue 个专案先

本篇以 Vue CLI 开始这一回合。 Vue CLI 提供快速建置的开发环境,使用者只需透过简易设...

ADV campaigns: why it is important to monitor conversions

In recent years, with the development of web marke...

Day24 - Toast

Toast功能是可以在萤幕的下方显示一段即时的讯息文字 但文字会在几秒後消失 在Toast跳出来时,...