Handle notice messages.

This commit is contained in:
poljar (Damir Jelić) 2018-02-26 19:43:52 +01:00
parent 6db44525dc
commit 01ad6e9d9a

View file

@ -262,6 +262,8 @@ class RoomMessageEvent(RoomEvent):
return RoomMessageMedia.from_dict(event) return RoomMessageMedia.from_dict(event)
elif event['content']['msgtype'] == 'm.emote': elif event['content']['msgtype'] == 'm.emote':
return RoomMessageEmote.from_dict(event) return RoomMessageEmote.from_dict(event)
elif event['content']['msgtype'] == 'm.notice':
return RoomMessageNotice.from_dict(event)
return RoomMessageUnknown.from_dict(event) return RoomMessageUnknown.from_dict(event)
def _print_message(self, message, room, buff, tags): def _print_message(self, message, room, buff, tags):
@ -361,6 +363,17 @@ class RoomMessageEmote(RoomMessageSimple):
W.prnt_date_tags(buff, date, tags_string, data) W.prnt_date_tags(buff, date, tags_string, data)
class RoomMessageNotice(RoomMessageText):
def execute(self, server, room, buff, tags):
msg = "{color}{message}{ncolor}".format(
color=W.color("irc.color.notice"),
message=self.message,
ncolor=W.color("reset"))
self._print_message(msg, room, buff, tags)
class RoomMessageMedia(RoomMessageEvent): class RoomMessageMedia(RoomMessageEvent):
def __init__(self, event_id, sender, age, url, description): def __init__(self, event_id, sender, age, url, description):