Как создать бота поддержки с использованием библиотеки telebot?

Как настроить бота, чтобы пересылать сообщения между группой и пользователем? Моя попытка написать код на Python (ниже) не сработала. Я хочу, чтобы сообщения, отправленные пользователем боту, пересылались в группу, и что бы ответы из группы пересылались обратно пользователю. При попытке реализовать это, код перестает работать после отправки определенного сообщения. Как можно исправить эту проблему, и возможно ли добиться желаемого результата?
  • 27 мая 2024 г. 16:01
Ответы на вопрос 2
Для создания бота поддержки с использованием библиотеки telebot вам необходимо сначала создать бота через BotFather в Telegram и получить токен доступа. Затем установите библиотеку telebot с помощью pip:

```bash
pip install pyTelegramBotAPI
```

Ниже приведен пример кода, который позволит вам настроить бота для пересылки сообщений между группой и пользователем:

```python
import telebot

TOKEN = 'YOUR_BOT_TOKEN'
bot = telebot.TeleBot(TOKEN)

@bot.message_handler(commands=['start'])
def start_message(message):
    bot.send_message(message.chat.id, 'Привет, я бот поддержки. Напишите мне сообщение, я перешлю его в группу')

@bot.message_handler(func=lambda message: True)
def echo_all(message):
    # Пересылка сообщения из чата с пользователем в группу
    bot.send_message(GROUP_CHAT_ID, f'Пользователь {message.from_user.username} написал: {message.text}')

@bot.message_handler(content_types=['text'])
def handle_group_message(message):
    # Пересылка сообщения из группы обратно пользователю
    if message.chat.type == 'group':
        bot.send_message(USER_CHAT_ID, f'Группа {message.chat.title} написала: {message.text}')

bot.polling()
```

В этом примере необходимо заменить `YOUR_BOT_TOKEN`, `GROUP_CHAT_ID` и `USER_CHAT_ID` на соответствующие значения. `GROUP_CHAT_ID` можно получить, например, из ссылки на группу в Telegram (https://t.me/group_name), а `USER_CHAT_ID` можно получить прочитав идентификатор чата, когда пользователь отправляет сообщение боту.

Если у вас есть проблемы с кодом и он перестает работать после отправки определенного сообщения, просьба предоставить больше информации о проблеме или ошибке, чтобы у нас была возможность помочь вам исправить ее.
import telebot
from telebot import types

bot = telebot.TeleBot('токен')


@bot.message_handler(commands=['support'])
def support(message):
    msg = bot.send_message(message.chat.id,
                           'Поддержка приветствует тебя! Зачем ты здесь?')  # тут мы задаём вопрос человеку
    bot.register_next_step_handler(msg,
                                   send_moderators)  # тут мы ожидаем ответа и как получим запускаем функцию send_moderators


def send_moderators(message):
    msg = bot.send_message(chat_id="айди группы модератора",
                           text=f'Новое обращение в поддержку от @{message.from_user.username} / {message.from_user.id}\n\n{message.text}')  # тут бот оправляет в чат модератора
    bot.register_next_step_handler(msg, ans)  # тут мы ожидаем ответа модератора и как получим запускаем функцию ans


def ans(message):
    bot.send_message(chat_id="айди группы куда должен прийти ответ от модератора", text=message.text)
Похожие вопросы