Вау-эффект для руководителей, или делаем удобную отчетность для бизнеса с уведомлениями в Telegram
4848

Расскажите подробнее про 7 пункт, пожалуйста, как все организовано.
По 8 пункту: используется по сути пароль без логина? Почему решили права доступа не привязывать к номеру телефона или username?

4
Ответить

Про организацию бота. Мне очень нравится API телеграм, оно понятное даже новичкам. Из минусов, вы не сможете получить список всех активировавших бота пользователей. Всё что вы можете, это получить последние обновления в боте через метод getUpdates.

То есть вы должны раз в какой-то период времени опрашивать телеграм на предмет новых пользователей, отправленных боту команд и обрабатывать информацию. Согласитесь — неудобно, а для пользователя будет бросаться в глаза "шов", он написал команду, а бот ему ответил через период обновления, например 20 минут.

Но в телеграме можно сделать так, чтобы бот отправлял все обновления сам на сервер, по HTTP протоколу. Это называется webhook.  Метод документации — /setWebhook

Мы можем настроить HTTP шлюз прямо на Амазоне. То есть Телеграм  будет присылать все обновления прямо в Амазон. Этот запрос будет является тригером для запуска AWS Lambda функции обновления базы данных прользователей. Она берет сообщение, ищет в нём команду и интерпретирует ее. Например если отправить боту /start он включится, а если /stop, перестанет присылать уведомления.
Можно отправить /register и бот будет ждать авторизационного ключа.
Всё поведение бота является реакцией на определенный апдейт, который присылает сам Телеграм.

>8 пункту: используется по сути пароль без логина? решение показалось изящным, одна строка, а не две или три. Плюс в принципе все пользователи являются деанонимизированными — то есть в случае необходимости отключить пользователя можно можно прямо в DynamoDB, ключ авторизации поменять тоже можно там же.

Получилось ответить? 

3
Ответить