Разворачиваем TG-бота для отправки сообщений

แชร์
ฝัง
  • เผยแพร่เมื่อ 6 ก.ย. 2024
  • Развернём Telegram-бота, используя приложение из каталога сервиса Yandex Cloud Apps. После чего вручную реализуем основу для бота, создавая и настраивая компоненты serverless-сервисов Yandex Cloud.
    Хотите узнать больше? Вступайте в сообщество Serverless в Telegram - t.me/YandexClo.... Нас уже более 1600!

ความคิดเห็น • 16

  • @serjapastukhov
    @serjapastukhov 10 หลายเดือนก่อน +1

    Полезно, спасибо. Более полным руководством было бы классно показать деплой web app в Object Storageи и взаимодействие с функциями без пресловутых модулей аутентификаций.

    • @YandexCloudPlatform
      @YandexCloudPlatform  10 หลายเดือนก่อน

      Здравствуйте, Сергей! Спасибо за фидбек. Передали ваше предложение команде 👌

  • @burundukoff8450
    @burundukoff8450 11 หลายเดือนก่อน +1

    а что под капотом у serverless сервисов и cloud apps , это докер разворачивается или что-то другое ?

    • @romanchutak
      @romanchutak 10 หลายเดือนก่อน

      th-cam.com/video/5CSY-3o6g4Q/w-d-xo.htmlsi=sAVVVMCsUlt2gCOW

    • @YandexCloudPlatform
      @YandexCloudPlatform  10 หลายเดือนก่อน +1

      Под капотом собственная разработка на основе open source решений, но это не докер - у нас свой внутренний формат упаковки и исполнения.

  • @user666000
    @user666000 หลายเดือนก่อน

    Спасибо. Подскажите , а как сделать что бы из очереди бралось только одно сообщение и пока оно не отработает другие не брались ?

    • @YandexCloudPlatform
      @YandexCloudPlatform  หลายเดือนก่อน

      Здравствуйте! Ваш вопрос не теряем, уже скоро вернёмся с подробностями.

    • @user666000
      @user666000 หลายเดือนก่อน

      @@YandexCloudPlatform спасибо большое. буду ждать. пока вариант только в файл или бд записывать некое значение и если например оно 1 то блок и ждать, но кажется так себе вариант

    • @YandexCloudPlatform
      @YandexCloudPlatform  หลายเดือนก่อน

      Спешим к вам! Когда сообщение поступает, оно может находиться в одном из трёх состояний:
      1. Отправлено в очередь отправителем,
      2. Принято получателем,
      3. Удалено из очереди.
      Чтобы реализовать требуемый функционал, нужно прописать функцию обработки сообщения таким образом, чтобы обработка следующего сообщения начиналась только после удаления из очереди предыдущего. Например, в состав каждого сообщения входит идентификатор сообщения (MessageId) и идентификатор получения (ReceiptHandle). Можно использовать их как зависимость, то есть пока сообщение не будет удалено из очереди, не обрабатывать другие. Чтобы выцепить одно сообщение, можно использовать ReceiveMessage с нужными параметрами: ya.cc/t/Aa05qVIh5GJKDE
      Также будет удобно использовать дедупликацию в очереди FIFO: ya.cc/t/iVPzcmHC5GJKi2
      Это позволит с помощью набора параметров обеспечить доставку и обработку сообщений только один раз в порядке их отправки.
      Подробнее о Message Queue можно узнать в документации: ya.cc/t/0fFKBdc-5GJL3D

    • @user666000
      @user666000 หลายเดือนก่อน

      @@YandexCloudPlatform спасибо , буду пробовать. в FIFO вроде нет тригера на запуск функции (
      А при стандартной очереди, тригер при получении запускает функцию, которая не видит другие ( эту же функцию но запущенную буквально секунду назад тригером из очереди ) Либо что то не так делаю ( я использую пока как в уроке Apps Телеграм бот.

  • @user-gd6tr8ye2q
    @user-gd6tr8ye2q 3 หลายเดือนก่อน

    а как подключить YDB, чтобы сохранять данные пользователей?

    • @YandexCloudPlatform
      @YandexCloudPlatform  3 หลายเดือนก่อน

      Здравствуйте! Если правильно понимаем вопрос, при подключении к YDB аутентификационные данные передаются в файле. Пример на странице: ya.cc/t/x5lvHSH_56Wdza
      Можно настроить их передачу в переменных.
      Если неверно вас поняли, опишите, пожалуйста, подробнее вашу задачу.

  • @bolatmukashev2830
    @bolatmukashev2830 3 หลายเดือนก่อน

    что то я не понял. всё создалось. но кода нет. просто пусто

    • @YandexCloudPlatform
      @YandexCloudPlatform  3 หลายเดือนก่อน

      Здравствуйте! Правильно ли мы поняли, что вы создали обычную облачную функцию? Чтобы функция создалась вместе с кодом, необходимо на дашборде сервисов выбрать «Cloud App» и уже там выбрать «Demo Telegram Bot» - тогда создадутся необходимые ресурсы вместе с кодом.

    • @bolatmukashev2830
      @bolatmukashev2830 3 หลายเดือนก่อน

      @@YandexCloudPlatform там надо было токен указать не tg_token а TG_TOKEN - тогда все работает и все создается