Telegram bot
2500 UAHПотрібен телеграм бот на php + sqlite
Структура бд початкова, можна внести свої корективи.
users
| id | chat_id | tgid | tgname | phone |
users_actions
| user_id | message |
admins
| id | chat_id | tgid | tgname | phone | status |
subbuttons1
| id | text | status |
subbuttons2
| id | text | status |
support_dialogs
поля таблиці виходячи з п.5.1.
Алгоритм роботи бота:
1. Вітальне повідомлення усім хто зайшов у бот.
1.1. Перевіряємо по бд в полі admins чи даний користувач присутній. Якщо юзера tgid чи tgname не співпадає з тим що є в бд, тоді просимо його поділитись номером телефону і звіряємо чи такий номер є в admins. Якщо знайшли такого адміна за любим ідентифікатором, то виводимо повідомлення "Адмін, Ви авторизовані, очікуйте подальших повідомлень." Любі повідомлення в такому разі від користувача ігноруються. Якщо ж такого користувача немає в таблиці admins тоді переходимо до п. 1.2.
1.2. Перевіряємо по бд в полі users чи даний користувач присутній. Якщо юзера tgid чи tgname співпадає з тим що є в бд, тоді переходимо до п.2., інакше просимо його поділитись номером телефону і звіряємо чи такий номер є в бд в таблиці users. Якщо є то також переходимо до п.2. Якщо немає то виводимо повідомлення "Ви не авторизовані".
2. Далі в діалог виводимо дві кнопки "Кнопка 1" та "Кнопка 2".
3. Якщо користувач пише довільне повідомлення в бот не обравши жодну кнопку - пишемо повідомлення що потрібно обрати один з варіантів і виводимо знову ці дві кнопки.
4. Якщо обрав "Кнопку 1" користувач, то:
4.1. Виводимо повідомлення "Текст повідомлення до кнопки 1"
4.2. Виводимо додаткові кнопки в діалог списком, які беруться з бд таблиці subbuttons1 якщо status= active. Поле text є назвою кнопки.
4.3. Далі користувач має обрати одну з виведених кнопок. Якщо пише довільне повідомлення на даному етапі не вибравши кнопки, повторно виводимо йому кнопки з п. 4.2. із повідомленням "Потрібно обрати один з варіантів для продовження". Обраний варіант кнопки запамятовуємо для подальшого використання.
4.4. Виводимо додаткові кнопки в діалог списком, які беруться з бд таблиці subbuttons2 якщо status= active. Поле text є назвою кнопки.
4.5. Далі користувач має обрати одну з виведених кнопок. Якщо пише довільне повідомлення на даному етапі не вибравши кнопки, повторно виводимо йому кнопки з п. 4.4. із повідомленням "Потрібно обрати один з варіантів для продовження". Обраний варіант кнопки запамятовуємо для подальшого використання.
4.6. Тепер маючи два варіанти натиснутих кнопок з п.4.2. та п. 4.4. виводимо повідомлення "Введіть довільне число". Перевіряємо чи то є числом, може бути і не ціле значення з округленням до тисячних. Запамятовуємо те число. Якщо було введене не коректне число або довільне повідомлення виводимо "Введіть довільне число щоб продовжити".
4.7. Виводимо повідомлення натспуного формату:
- Ви обрали: "Текст обраної кнопки із subbuttons1"
- Ви обрали: "Текст обраної кнопки із subbuttons2"
- Ваше число: "Введене число"
- Дві кнопки "ОК" та "Відміна"
4.8. Якщо натиснута "ОК" виводимо повідомлення "Повідомлення при натиснутій ОК" та записуємо повідомлення з п.4.7. в бд в таблицю users_actions і вивести його в цьому ж боті для юзерів з таблиці admins в яких статус active.
4.9. Якщо натиснуто "Відміна" виводимо самі перші дві кнопки з п.2. Якщо уведено довільне повідомлення замість обраних варіантів то виводимо текст "Потрібно обрати один з варіантів для завершення".
5. Якщо обрав "Кнопку 2" то виводимо повідомлення:
- Напишіть своє питання і ми надамо на нього відповіть.
5.1. Тут потрібно зробить збереження написаного юзером повідомлення чи кількох повідомлень у нашу бд в таблицю support_dialogs.
Відгук замовника про співпрацю з Дмитром Дереном
Telegram botПрофесійно, швидко та продумано реалізовано поставлені задачі. Дмитро передбачає наперед багато нюансів, що можуть виникати в ході роботи кінцевого продукту. Рекомендую до співпраці, і сам буду звертатись ще!
Відгук фрилансера про співпрацю з Олександром Стасюком
Telegram botУсе пройшло чудово, Олександр надав чітке ТЗ, постійно був на зв'язку, оперативно відповідав на запитання
-
Андрей Бурдин FerretGroup
Доброго дня! А принципово на пхп?
-
Актуальні фриланс-проєкти в категорії Веб-програмування
Розробка повного стеку — Панель управління Amazon PPC (Етап 1)Потрібен full-stack розробник з досвідом роботи з Amazon API для реалізації Stage 1 внутрішнього PPC-дашборда. Проект реальний, дані живі, все готово до старту. Прототип фронтенда (5 сторінок, React + TypeScript): ЩО ВЖЕ ГОТОВО — Фронтенд-прототип на React 18 + TypeScript +… Javascript та Typescript, Веб-програмування ∙ 1 година 12 хвилин тому ∙ 6 ставок |
Розробка сайту на WordPress для IT-компанії
10 000 UAH
Шукаємо WordPress-розробника для створення невеликого сайту компанії що надаватиме IT послуги. Проєкт не передбачає розробку дизайну з нуля — основні матеріали вже підготовлені. Ми вже маємо: структуру сайту та карту сторінок; готові тексти для сторінок; логотип; приклади… Веб-програмування ∙ 8 годин 49 хвилин тому ∙ 62 ставки |
OpenCart — каталог оренди спецтехніки
6000 UAH
OpenCart — каталог оренди спецтехніки Потрібно запустити каталог оренди спецтехніки на OpenCart. Тематика: екскаватори; автовишки; навантажувачі; генератори; крани; риштування; інша будівельна техніка. Бажано, щоб у вас вже був готовий шаблон або напрацювання під… Веб-програмування, Парсинг даних ∙ 9 годин 22 хвилини тому ∙ 42 ставки |
Потрібно реалізувати передачу офлайн конверсій з SalesDrive у Google Ads та Google Analytics
12 000 UAH
Сайт на OpenCart > ліди потрапляють з GA4 у CRM Salesdrive > звідти їх потрібно передати у Google Ads зв'язавши лід та закриту угоду і її цінність Разом з CRM Salesdrive використовується колтрекінг Binotel Також цікавить повернення подій про закриту угоду з CRM у GA4. Зараз… Веб-програмування ∙ 14 годин 57 хвилин тому ∙ 22 ставки |
Налаштування ПРРО Checkbox для інтернет-магазину та навчання роботи з нимБлок 1. Реєстрація та базове налаштування: Допомога з поданням необхідних заяв (20-ОПП, 1-ПРРО, 5-ПРРО) через електронний кабінет платника податків. Повне налаштування кабінету в системі Checkbox (додавання номенклатури, налаштування податкових ставок тощо).Блок 2. Інтеграція… Бухгалтерські послуги, Веб-програмування ∙ 15 годин 6 хвилин тому ∙ 16 ставок |