Ответы пользователя по тегу Telegram
  • Ошибка в download_media, что делать?

    DoNiFF
    @DoNiFF
    C++ Developer
    Может быть так?
    @client.on(events.NewMessage(chats=[ids]))
    async def my_event_handler(event):
        me = await client.get_me()
        username = me.username
        try:
            from_ = await event.client.get_entity(event.from_id)
            if event.from_id is not None:
                from_ = await event.client.get_entity(event.from_id)
        except ValueError:
            pass
        if event.file:
            path = await client.download_media(event.media, "./media/")
            if event.file.name == None:
                await client.send_message("me", f"{from_.username}: (File name is None)")
                await client.send_message("me", f"auto-downloader: (File name is None) saved to ./media/")
                print(f"file | | (File name is None) downloaded")
            else:
                await client.send_message("me", f"{from_.username}: {event.file.name}")
                await client.send_message("me", f"auto-downloader: {event.file.name} saved to ./media/")
                print(f"file | | {event.file.name} downloaded")
        else:
            await client.send_message("me", f"{from_.username}: {event.text}")
        print(f"msg | {from_.username} | {event.text}")
    Ответ написан
    7 комментариев
  • Ошибка в коде простейшего тг бота, как решить?

    DoNiFF
    @DoNiFF
    C++ Developer
    Запустил код, все работает, наверное некоторые библиотеки не установил, попробуй установить telebot и pytelegramapi через команды
    pip uninstall telebot
    pip install pytelegrambotapi -U
    Ответ написан
  • Чат поддержки между сайтом и Telegram?

    DoNiFF
    @DoNiFF
    C++ Developer
    Тут, как самый простой вариант, можно использовать Ajax-запрос. Но в ответ от сервера надо получать данные в JSON-формате (код ниже). Также кроме этого уже повсеместно используют Веб-сокеты
    $result = array('text'=>'Какой-то текст');
    echo json_encode($result);

    Тут, как самый простой вариант, можно использовать Ajax-запрос. Но в ответ от сервера надо получать данные в JSON-формате (код ниже). Также кроме этого уже повсеместно используют Веб-сокеты

    $result = array('text'=>'Какой-то текст');
    echo json_encode($result);
    А в файле js на стороне клиента что-то вроде этого:
    function sendAjaxForm(result_form, input_form, url) {
        $.ajax({
            url:     url,
            type:     "POST",
            dataType: "html",
            data: $("#"+input_form).serialize(),
            success: function(response) {
              result = $.parseJSON(response);
              $('.manager-message').text(result.text);
            },
            error: function(response) {
                $('#result_form').html('Ошибка. Данные не отправлены.');
            }
        });
    }
    Ответ написан
    Комментировать