memcached for storing current tasksPostgreSQL database for storing users information & system configurationsUsage of Webhook, connected to Flask web serverAsyncIO for running threaded tasks
PyTelegramBotAPI for connecting with Telegram Bot API
Pure urllib2.request http requests + AsyncIO for sending requests to VK API
- Initialize files in
Backendpart - Initialize files in
Telegrampart - Initialize files in
VKpart - Edit
README.md - Create some docs. and comment
*.pyfiles - Finish
Backend - Finish
Telegram - Finish
VK - Finish documentation
-
func., that cuts list of tasks from cache - if task._time ~ current time (using threading & async)func., that saves new task to cache (using threading & async)dunder-methods
-
funcs to Manage threads and AsyncTasks
-
funcs, that will start \"timer\" Jobs
- `pymemcache Cache class defined'
*Task* class definedWebServers defined (Flask & aiohtttp)
Polling system:ThreadPool 1>:Telegram bot instance (polling)
ThreadPool 2:VK bot instance (polling)
ThreadPool 3:TaskManager.waiter
Main thread
- Each thread connects processes update and connects to main thread and sends request to TaskManager instance
- TaskManager instance starts (async?) request to database(if it's needed)
- Returns result to Bot instance
- Bot sends async requests bask to user