Онлайн статистика в Telegram

Вам нравится процесс ожидания? Когда необходимо сидеть и ждать, пока одна из статистик/аналитик/метрик загрузится…

«Но у нас все нормально, — ответите вы. — У нас крутые спецы, наши страницы грузятся за доли секунд, мы даже кешировать умеем.»

А как на счет мобильного интернета? Когда приходится окунаться в прошлое, лет на 10 назад и можно угадать элементы верстки по мере рендеринга страницы?

Метод, описанный ниже, не претендует на оригинальность, я думаю, что найдутся хабровчане, которые давно уже им пользуются, я лишь хочу открыть его в массы.

В наше время информацию хочется получать секунду назад, может быть в ближайшем будущем, ее научатся вживлять прямо в мозг, кто знает…

bot покажи мне статистику
……
снова думаем, опять ждем…

Такой подход используют многие, и мы тоже. Но сейчас я хочу предложить вам один вариант, который сделал мою нервную систему немного крепче. Нет никаких команд, никакого ожидания, открыл телеграмм выбрал нужный чат и… все! Данные уже там!

Все просто, нас спасет один метод:

editMessageText

Догадались? Да, все верно:

  1. Создаем новый чат и добавляем в него «нужных людей» и одного бота.
  2. Прикидываем в уме сколько метрик нам нужно выводить. С помощью метода sendMessage, создаем необходимое количество сообщений, сохранив где-то id сообщений из ответа этой команды.
  3. По крону/другой магией обновляем метрики, просто отредактировав сообщение методом editMessageText, где-то там у себя в бэкэнде.
  4. ???
  5. Profit!


На самом деле, сообщение может быть одно, и все метрики можно разделить через перенос строки, просто мне нравится разделять их отдельными сообщениями. К примеру, в последнем сообщении я вывожу время последнего обновления, для понимания, что данные актуальные.
Самое классное, что telegram после редактирования сообщения сам все обновит, и если телефон подключен к интернету вы всегда получите информацию максимально быстро.

Где-то за городом, это порой чуть ли не единственный способ, иметь актуальные данные.

И не забудьте добавить «нужных людей», до того как создадите сообщение, так как обновленные данные будут им не доступны.

Примерно вот так это выглядит у нас:

ixwa5q5wdle021f-dcsygk_6low.png

Надеюсь хак, описаный в статье, кому-нибудь пригодится, всех благ!

© Habrahabr.ru