@NoXXik

Как собрать программу воедино?

Я делаю бота для вк (впервый раз), сделала парсер, написала код, где бот отправляет сообщения пользователям, но не понимаю как сейчас все это собрать воедино, потому что все работает по отдельности. Просто не понимаю как сделать одну цельную программу, что бы ее еще и улучшать можно было в дальнейшем и был читаемый код.Вот что делает бот:

Бот к которому пользователи будут подписываться с кнопки Начать или /start, бот должен узнать id пользователя, затем бот должен узнать в какой группе пользователь учится, чтобы знать какое расписание ему нужно отправлять, список id и расписание для каждой группы я буду хранить у себя, когда расписание выходит бот должен отправить сообщение с расписанием группы пользователя по всему списку, и так каждый день. (все это я реализовала в отдельных функциях и кое как работает)

Что нужно изучить для этого, что можете посоветовать. Заранее спасибо.
  • Вопрос задан
  • 100 просмотров
Пригласить эксперта
Ответы на вопрос 2
leahch
@leahch
3D специалист. Dолго, Dорого, Dерьмово.
у вас бот постоянно висит в процессах, как программа (сервис) и ждет входящих событий? У него есть несколько типов событий, подписаться, изменить расписание, разослать подписчикам расписание? Если рассылка нового расписания происходит сразу, то и вызывайте эту функцию сразу после публикации расписания. На зудой конец можно эту функцию запустить в отдельном треде, а публикацию нового расписания, или его активацию сделать через посылку специального сообщения через телеграм боту.
Ответ написан
Комментировать
@NoXXik Автор вопроса
По сути у меня два главных потока, один из них отвечает за парсинг и оформление полученного ответа как сообщение для каждой группы, а второй это работа с vk_api, т.е. добавление новых пользователей и отправка каждому свое расписание как только оно выйдет. Но там еще нужно сделать функцию которая будет ждать расписание, т.е периодически проверять, да и чтобы бот не зависал, когда много людей начнут писать. Узнал что многопоточность у питона какая то не понятная, не пойме он в итоге может несколькими потоками пользоваться или он создает несколько вирт. потоков внутри одного физ? Вот таких вопросов у меня очень много
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы