You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
25 lines
813 B
25 lines
813 B
2 years ago
|
|
||
|
|
||
|
class Message(object):
|
||
|
def __init__(self, timestamp, user_name, message, event_id=None, user_id=None, room_name=None, room_id=None):
|
||
|
self.timestamp = timestamp
|
||
|
self.user_name = user_name
|
||
|
self.message = message
|
||
|
self.event_id = event_id
|
||
|
self.user_id = user_id
|
||
|
self.room_name = room_name
|
||
|
self.room_id = room_id
|
||
|
|
||
|
@classmethod
|
||
|
def from_matrix(cls, room, event):
|
||
|
return cls(event.server_timestamp/1000, room.user_name(event.sender), event.body, event.event_id, event.sender, room.display_name, room.room_id)
|
||
|
|
||
|
def is_from(self, user_id):
|
||
|
return self.user_id == user_id
|
||
|
|
||
|
def is_command(self):
|
||
|
return self.message.startswith('!')
|
||
|
|
||
|
def __str__(self):
|
||
|
return str("{}: {}".format(self.user_name, self.message))
|