Создать идентификатор чата в телеграмме из API или динамический для отправки сообщения боту

Я подготовил один API в php для отправки сообщения боту. Каждый раз мне нужно пройти chat_id в вызове API. Кто-нибудь знает, как я могу создать уникальный идентификатор чата для отправки сообщения боту.

Заранее спасибо.

2 ответа

ChatID каждого пользователя уникален, и поэтому вы можете отправить сообщение из своей учетной записи Telegram своему боту и сохранить chatID. После этого, когда пользователь веб-сайта отправляет сообщение на ваш сайт, вы можете передать это сообщение своему боту через php и заставить бота отправить его себе, используя свой chatID.

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

Обратите внимание, что боты могут отправлять сообщения только тем людям, которые ранее отправили им хотя бы одно сообщение.

По документации:

Боты не могут инициировать разговоры с пользователями. Пользователь должен либо добавить их в группу, либо сначала отправить им сообщение. Люди могут использовать telegram.me/ ссылки или поиск по имени пользователя, чтобы найти вашего бота.

Вы должны написать (или пользователь должен написать) сначала бот. После этого в ответ (получая через webhook или метод getUpdates) вы можете получить chat_id, который используется для написания сообщений пользователю.

Обновление: Если я правильно понимаю ваш комментарий, вы можете сделать это:

  1. Создайте страницу или модальное окно, которое можно использовать для отправки сообщения в службу поддержки.
  2. Поймайте это сообщение и отправьте его через метод sendMessage в службу поддержки.

Кому? Вы можете управлять этим. Я вижу два варианта:

  1. Вы можете создать группу для группы поддержки в telegram и добавить своего бота в эту группу.
  2. Вы можете хранить идентификаторы чата для всех членов команды поддержки на своей стороне и выбирать, как получить сообщение для каждого веб-сайта формы запроса поддержки.
  3. Когда бот получает сообщение, оно отправляется в бэкэнд (webhook или getUpdates), а из бэкэнда оно может быть показано конечному пользователю.
Другие вопросы по тегам