]> git.somenet.org - pub/jan/mattermost-bot.git/blob - core/AbstractWSHandler.py
core/AbstractWSHandler.py
[pub/jan/mattermost-bot.git] / core / AbstractWSHandler.py
1 # Mattermost Bot.
2 #  Copyright (c) 2016-2021 by Someone <someone@somenet.org> (aka. Jan Vales <jan@jvales.net>)
3 #  published under MIT-License
4
5
6 class AbstractWSHandler():
7     NAME = None
8     bot = None
9
10
11     def __init__(self):
12         pass
13
14     def __str__(self):
15         return str(self.__class__)+" for team_id: "+str(self.TEAM_ID)
16
17     def __repr__(self):
18         return self.__str__()
19
20
21     # should be overridden by the user
22     def on_register_ws_evtype(self, evtype):
23         pass
24
25     # can/should be overridden by the user
26     def on_shutdown(self):
27         """Consider to override. Handles the shutdown-procedure."""
28         return
29
30     # can/should be overridden by the user
31     def on_SIGUSR1(self, sigusr1_cnt):
32         """Consider to override. Handles the SIGUSR1-signal."""
33         return
34
35     # should be overridden by the user
36     def on_WS_EVENT(self, data):
37         return False
38
39     # should be overridden by the user
40     # manual command authentication needed!
41     def on_POST_interactive(self, request, data):
42         return
43
44     def _on_register_ws_evtype(self, bot, evtype):
45         self.bot = bot
46         self.on_register_ws_evtype(evtype)
47
48     def _on_shutdown(self):
49         self.on_shutdown()
50
51     def _on_SIGUSR1(self, sigusr1_cnt):
52         self.on_SIGUSR1(sigusr1_cnt)