Cover Image

Телеграмм Бот для учета рабочих часов. PHP, MySQL

13-10-2020

При почасовой оплате за работу, работник должен отправить в бухгалтерию (или специально обученному сотруднику) свои часы за день. Или за неделю.

Я видел много вариантов отчетности об отработанных часах. Кто-то шлет электронное письмо, кто-то шлет смс-ку, а есть еще вайбер, ватсап и т.д.

Бухгалтер получает информацию от многих людей в разном формате, собирает всё это в кучу и далее уже начинает расчет заработной платы.

Обычно отсылаемая информация выглядит так:

Дата – Интервал – Итого часов – Что делал
01.01.2020 – 07:00 – 15:30 – 8  – копал яму

Бот принимает от работника данные о рабочих часах за день и сохраняет данные в базу.

Детали:

При регистрации бот запрашивает 4-х значный пин от пользователя. Пользователь вводит пин и бот сохраняет пин в базе. Этот пин будет использоваться для подтверждения команд бота.

Бот выдает пользователю команды в виде кнопок, например выбор даты, выбор интервала – это можно реализовать как кнопки, чтобы избавить пользователя от долгого ввода информации.

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

Если разбить на части и задачи, то получается так:
1. база данных с таблицами (MySQL)
users – тут храним пользователей и их кренделя
hours – тут храним часы
works – тут храним работы
связываем все это по id

2. API для запроса и сохранения данных. (PHP)
(надо обсуждать)


Cover Image

Бот ImageEater (пожиратель картинок)

09-10-2020

Часть первая.

Бот должен принять изображение, или видео или всё, что может отправить пользователь и сложить это на хранение.

При просмотре фотографий на телефоне, можно нажать специальную кнопку и получить список соц сетей, в которые можно выбранное фото отправить. Если на телефоне установлен телеграмм, то естественно можно отправить выбранное фото телеграмм-боту.

Бот должен принять изображение, или видео или всё, что может отправить пользователь и сложить это на хранение.

Как хранить входящие данные?
Есть выделенный сервер.

Часть вторая Как хранить входящие данные?