|
1 / 1 / 1
Регистрация: 11.05.2012
Сообщений: 92
|
|||||||||||
Telegram API Структура файла24.07.2023, 00:51. Показов 1315. Ответов 4
Метки нет (Все метки)
Граждане. Я немного запутался, но хочу разобраться.
Делаю для сервиса бота, который будет работать с авторизованными (по номеру телефона) пользователями. Есть обработчик входящих запросов. Там то я и запутался немного. Я хочу получить примерно такую структуру:
Верна ли будет данная структура или ее как-то можно улучшить? Добавлено через 1 час 44 минуты Так же дополню вопрос. Допустим есть регионы. В каждом регионе магазины, в каждом магазине - товар. На запрос по конкретному региону мне надо выводить список магазинов. При клике на магазин - выводить список товаров. Для начала я беру данные по регионам из базы:
/region77 (расшифровка региона) /region78 (расшифровка региона) Как мне лучше "ловить" эти ссылки в своем обработчике входящих команд, что бы дальше выдать список магазинов по конкретным регионам? На ум идет только ловить по "стоп-слову" region и убирать его. В итоге останется нужный регион, с которым уже работать дальше (с товарами, соответственно, аналогично). И второй вопрос, что бы два раза не вставать: Как организовать, например, отзывы от пользователей на конкретный товар? То есть пользователь должен отправить команду в духе "хочу оставить отзыв на товар" и передать боту id товара. Далее бот ждет сообщения и он должен его правильно соотнести с конкретным товаром. Видимо где-то надо хранить "статус бота". Типа следующее сообщение от этого пользователя будет с отзывом на товар **. Тут просто прошу помощи в организации логики работы с ботом. По первому сообщению в этой теме мой бот работает только с входящими командами. Если нет команды - выводит просто меню с основными командами бота. Добавлено через 3 часа 37 минут блин. Сорян. Это раздел с апи. Сюда про логику вопрос не лезет. Могут модеры перенести тему в раздел выше?
0
|
|||||||||||
| 24.07.2023, 00:51 | |
|
Ответы с готовыми решениями:
4
Структура файла Структура файла Структура из файла |
|
467 / 431 / 118
Регистрация: 15.02.2012
Сообщений: 1,955
|
||
| 25.07.2023, 13:32 | ||
|
В целом по вашей теме: изучите API телеграм-бота и часть вопросов отпадет.
Любой пользователь подключивший телеграм регистрирует его по номеру телефона, соответственно есть команда поделится контактом, вот на нее и опирайтесь для регистрации(сохраняйте в БД); данные в бот передаются либо путем команд либо текстом, вот соответственно на это и разделите всё - пришла команда или текст ну далее if...else.. другой логики нет;
0
|
||
|
1 / 1 / 1
Регистрация: 11.05.2012
Сообщений: 92
|
||||||||||
| 25.07.2023, 22:14 [ТС] | ||||||||||
Пользователь нажимает на /оставить_отзыв. В его профиль в базу записывается json с данными: на какой id идет отзыв, метка времени написания отзыва, ну и какая-то метка, что это отзыв. Типа такого конструкция получиться должна:
Пошагово это должно быть как-то так: - пользователь нажимает на "написать отзыв на товар". Это ссылка вида /review53 (где 53 это id). Данные (json) заносятся в поле пользователя в базе. - Пользователю улетает от бота сообщение "отправьте мне сообщение с отзывом". - пользователь пишет обычное сообщение и отправляет его боту - обработчик каждый раз проверяет заполненность поля в базе (да, это лишняя нагрузка и порожний запрос, но в век современных технологий считаю достаточно малой ценой за получаемый функционал). Если поле не NULL, то по типу 'review' запускает необходимый блок кода. А в этом блоке кода мы берем пришедшее сообщение и записываем его в таблицу отзывов (или любые другие манипуляции) - если успешно записали, то очищаем поле в таблице, что бы скрипт не ждал входящее сообщение. ps метка времени чисто опциональная история. Человек всегда видит на каком этапе остановился диалог и может его продолжить. Но если надо, то смотрим, сколько прошло времени. IF более, чем n, ELSE ... и так далее. Не вижу, если честно, необходимости привязки ко времени, но это уже каждый сам решает. Как думаешь - удачное решение? *про реализацию отзывов
0
|
||||||||||
|
467 / 431 / 118
Регистрация: 15.02.2012
Сообщений: 1,955
|
||||
| 26.07.2023, 09:29 | ||||
|
Тогда У меня так сделано: каждый запрос в бота проверяет таблицу - есть ли там ID-телеграма от которого пришло сообщение, нету - отправляю кнопку "авторизоваться", это вызов поделиться контактом, и остальной функционал вообще не трогаю Если есть, то уже выдаю меню авторизованного или принимаю и обрабатываю команды. В итоге пока оставил черновой вариант начинать текст со слов "Вопрос:", "Отзыв ID если идет на товар)"... Тоже не очень удобно из-за перекладывания на клиента, ему приходится писать больше, но зато он всегда может не зависимо от того, что было набрано до этого написать в нужном ключе.
0
|
||||
|
1 / 1 / 1
Регистрация: 11.05.2012
Сообщений: 92
|
|
| 26.07.2023, 11:06 [ТС] | |
|
Кстати. Под сообщением от бота "напишите отзыв" можно присылать кнопку "отмена". Но это тоже такое себе решение.
0
|
|
| 26.07.2023, 11:06 | |
|
Помогаю со студенческими работами здесь
5
Структура из файла
Структура из файла Структура из файла Структура файла Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2.
Задача: отобразить спецтехнику, которая на данный момент находится в ремонте.
Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
|
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
|
Запрет удаления строк ТЧ документа при определенном условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
|
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут
Суть:
- Группа наркоманов из 10 человек.
- Только один инфицирован ВИЧ.
- Колются одной иглой.
- Колются раз в день.
- Колются последовательно через. . .
|
|
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
|
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
|
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . .
а удачный момент так и не приходит.
|
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица.
Задача: зафиксировать три левых колонки в отчете.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
/ / . . .
|