diff options
Diffstat (limited to 'velascobot2/utils.py')
| -rw-r--r-- | velascobot2/utils.py | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/velascobot2/utils.py b/velascobot2/utils.py new file mode 100644 index 0000000..e89e1d4 --- /dev/null +++ b/velascobot2/utils.py @@ -0,0 +1,48 @@ +from enum import StrEnum + + +class GraphicType(StrEnum): + STICKER = "STICKER" + ANIMATION = "ANIMATION" + VIDEO = "VIDEO" + + +class Response(StrEnum): + TEXT = "TEXT" + GRAPHIC = "GRAPHIC" + + +class ChatData: + def __init__( + self, + id: str, + chat_type: str, + name: str, + processed_messages: int = 0, + message_period: int = 10, + answer_chance: float = 0.5, + restricted: bool = False, + silenced: bool = False, + ) -> None: + self.id = id + self.type = chat_type + self.name = name + self.processed_messages = processed_messages + self.message_period = message_period + self.answer_chance = answer_chance + self.restricted = restricted + self.silenced = silenced + + @staticmethod + def from_sql_row(row: tuple[str, str, str, int, int, float, int, int]): + print("From SQL row:", repr(row)) + return ChatData( + row[0], + row[1], + row[2], + int(row[3]), + int(row[4]), + float(row[5]), + int(row[6]) == 1, + int(row[7]) == 1, + ) |
