diff options
author | bai | 2020-03-11 21:23:15 -0300 |
---|---|---|
committer | bai | 2020-03-11 21:23:15 -0300 |
commit | 1062b45b5710cb51c3d7530e00a7e3dd940ded9e (patch) | |
tree | 31b7f64b90f5b143cbf4e9343330bb67954ed461 /utils.py | |
download | baitv-daemon-1062b45b5710cb51c3d7530e00a7e3dd940ded9e.tar.gz baitv-daemon-1062b45b5710cb51c3d7530e00a7e3dd940ded9e.tar.xz baitv-daemon-1062b45b5710cb51c3d7530e00a7e3dd940ded9e.zip |
Commit inicial
Diffstat (limited to 'utils.py')
-rw-r--r-- | utils.py | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/utils.py b/utils.py new file mode 100644 index 0000000..5786e8b --- /dev/null +++ b/utils.py @@ -0,0 +1,50 @@ +import json + +default_state = { + 'source': 'off', + 'source_time': 0, + 'title': None, + 'welcome': None, + } + +def parse_streamers_file(filename): + streamers = {} + + with open(filename) as f: + for line in f: + psk, username = line.strip().split(":") + streamers[psk] = username + + return streamers + +def load_state(filename): + state = dict(default_state) + + try: + with open(filename) as f: + state.update(json.load(f)) + except FileNotFoundError: + pass + except json.JSONDecodeError: + pass + + return state + +def save_state(state, filename): + with open(filename, "w") as f: + json.dump(state, f) + +def is_banned(ip, filename): + try: + with open(filename) as f: + for line in f: + if line.strip() == ip: + return True + except FileNotFoundError: + pass + + return False + +def add_ban(ip, filename): + with open(filename, 'a') as f: + f.write(ip + "\n") |