Посмотрел краем глаза
1. routing.py: замени регулярки на что-нибудь более читабельное, например:
if 'some' in text:
2.main.py: class Register: вынеси компиляцию регулярки в начало кода:
import re
MY_RE = re.compile(f'some pattern')
class Register:
user_response = MY_RE.findall(self.text)
3. не оборачивай большие куски кода в try-except
4. Сделай над собой усилие и откажись от global
5. Это что-то страшное:
# Keep main program running while bot runs threaded
if __name__ == "__main__":
while True:
try:
sleep(120)
except KeyboardInterrupt:
break
6. Используй f-стринги, вместо format
7. Зачем класс наследует классметод?
class InterfaceInteraction(classmethod):
8. Сделай функции короче, пусть лучше их будет больше, чем такие простыни