Настройка ΠΈ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ Telegram-Π±ΠΎΡ‚Π°



Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Telegram-Π±ΠΎΡ‚ с ViTalk Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ:

  1. ΠŸΡ€ΠΎΠΉΡ‚ΠΈ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠ΅ шаги настройки ViTalk

  2. ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Docker-ΠΎΠ±Ρ€Π°Π· vitalk-tg с Telegram-Π±ΠΎΡ‚ΠΎΠΌ

  3. ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Token для Π½ΠΎΠ²ΠΎΠ³ΠΎ Π±ΠΎΡ‚Π°

  4. Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ ΠΈ Ρ„Π°ΠΉΠ» с ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠ΅ΠΉ.

  5. ΠΠ°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ доступ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Telegram ΠΊ ViTalk

  6. Настройка распознавания голоса
  7. Π—Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ docker-ΠΎΠ±Ρ€Π°Π·

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Docker-ΠΎΠ±Ρ€Π°Π·Π° vitalk-tg

Для Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ Π² ЯндСкс-Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ oauth-Ρ‚ΠΎΠΊΠ΅Π½ ΠΏΠΎ ссылкС:

https://cloud.yandex.ru/docs/container-registry/operations/authentication#oauth

Π”Π°Π»Π΅Π΅, Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ docker login Π² bash.

docker login cr.yandex

Π’ качСствС username Π²Π²Π΅Π΄ΠΈΡ‚Π΅ oauth, Π² качСствС пароля - ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ Ρ‚ΠΎΠΊΠ΅Π½.

Π”Π°Π»Π΅Π΅, ΠΏΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ доступа ΠΊ ЯндСкс-Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡŽ Visiology ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Docker ΠΎΠ±Ρ€Π°Π· ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:

docker pull cr.yandex/crpe1mi33uplrq7coc9d/visiology/dev/vitalk-tg:master


ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠΊΠ΅Π½Π° для Π½ΠΎΠ²ΠΎΠ³ΠΎ Π±ΠΎΡ‚Π°

Π’ΠΎΠΊΠ΅Π½ Π±ΠΎΡ‚Π° - это срСдство, ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ Π±ΠΎΡ‚ связываСтся с ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ‚ΠΎΠΊΠ΅Π½ Π±ΠΎΡ‚Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ:

  1. Π’ΠΎΠΉΡ‚ΠΈ Π² Telegram

  2. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ Π±ΠΎΡ‚Ρƒ @BotFather


  3. ВвСсти ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ /newbot

  4. Π’Ρ‹Π±Ρ€Π°Ρ‚ΡŒ имя Π±ΠΎΡ‚Π° (ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ Π² Π΄ΠΈΠ°Π»ΠΎΠ³Π΅ с Π½ΠΈΠΌ)


  5. Π’Ρ‹Π±Ρ€Π°Ρ‚ΡŒ username Π±ΠΎΡ‚Π° (ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π² Telegram). Π­Ρ‚ΠΎ имя Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π·Π°ΠΊΠ°Π½Ρ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π½Π° ‘bot’.


  6. Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ Ρ‚ΠΎΠΊΠ΅Π½

ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ Π±ΠΎΡ‚Π°

Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ для хранСния ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ. Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π²Ρ‹Π±Π΅Ρ€Π΅ΠΌ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ /docker-volume/vitalk-tg

sudo mkdir /docker-volume/vitalk-tg
cd /docker-volume/vitalk-tg

Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ Π² этой Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ Ρ„Π°ΠΉΠ» bot_config.json ΠΈ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ Π΅Π³ΠΎ:

{
    "token": "<ВАШ_Π’ΠžΠšΠ•Π>",
    "vitalkUrl": "<URL ViTalk>",
    "proxyUrl": "https://telegg.ru/orig/bot"
}

Π’ ΠΏΠΎΠ»Π΅ token Π²ΡΡ‚Π°Π²ΡŒΡ‚Π΅ Π·Π°Ρ€Π°Π½Π΅Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ Ρ‚ΠΎΠΊΠ΅Π½ Π±ΠΎΡ‚Π°.

Если ViTalk Π·Π°ΠΏΡƒΡ‰Π΅Π½ вмСстС с ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΎΠΉ, Π² ΠΏΠΎΠ»Π΅ vitalkUrl Π²ΡΡ‚Π°Π²ΡŒΡ‚Π΅:

<http ΠΈΠ»ΠΈ https>://<АдрСс ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹>/vitalk-core

Настройка доступа ΠΊ ViTalk Π² Telegram

Авторизация Telegram-ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ осущСствляСтся Ρ‡Π΅Ρ€Π΅Π· Π±Π΅Π»Ρ‹ΠΉ список id ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ. ΠŸΡ€Π°Π²Π° доступа ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ Ρ‡Π΅Ρ€Π΅Π· Telegram-Π±ΠΎΡ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ€ΠΎΠ»ΠΈ, прописанной Π² настройках соСдинСния.

Настройка доступа:

  1. Π’ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ /docker-volume/vitalk-core/configuration ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» telegram_whitelist.json с содСрТимым:

{
  "access_mode": "whitelist",
  "whitelist": [
    <telegram_id_1>,
    <telegram_id_2>,
    <telegram_id_N>
  ]
}
  1. На мСсто <telegram_id_*> ΠΏΠΎΠ΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅ telegram-id ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΊΠ°ΠΊ Ρ†Π΅Π»ΠΎΠ΅ число. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ свой id, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ Π±ΠΎΡ‚Ρƒ @my_id_bot.

  1. ΠŸΠ΅Ρ€Π΅Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ vitalk-core:

sudo docker service update --init visiology_vitalk-core

Если список ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ помСняСтся, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π² дальнСйшСм Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ этот Ρ„Π°ΠΉΠ», послС Ρ‡Π΅Π³ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅Ρ€Π΅Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ vitalk-core.

ΠžΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ

Π‘ΠΎΡ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ (Π½ΠΎ Π½Π΅ рСкомСндуСтся) ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ доступным для всСх ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Telegram. Для этого Π½ΡƒΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ» /docker-volume/vitalk-core/configuration/telegram_whitelist.json ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

{
  "access_mode": "*"
}

ПослС измСнСния Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅Ρ€Π΅Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ vitalk-core:

sudo docker service update --init visiology_vitalk-core

Настройка распознавания голоса (ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ)

Π­Ρ‚Π°ΠΏ 1. Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ для хранСния голосовых сообщСний:

sudo mkdir /docker-volume/vitalk-tg/cache

Π­Ρ‚Π°ΠΏ 2. ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ API TOKEN сСрвиса распознавания голоса.

Wit.ai (ΠΏΠΎΠΊΠ° поддСрТиваСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ½):

  1. Для получСния Ρ‚ΠΎΠΊΠ΅Π½Π° Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΏΡ€ΠΎΡ„ΠΈΠ»ΡŒ Π² Facebook.

  2. ΠŸΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ ΠΏΠΎ ссылкС https://wit.ai/ ΠΈ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ (“Login“ ΠΈΠ»ΠΈ “Continue with Facebook“).

  3. Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π½ΠΎΠ²ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° страницС https://wit.ai/apps:

  4. Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ созданный ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π² Ρ€Π°Π·Π΄Π΅Π» “Settings“.

  5. УстановитС ΠΎΠΏΡ†ΠΈΡŽ Language: RUSSIAN (RU) .

  6. НаТмитС Π½Π° “Generate new token“ Π½Π°ΠΏΡ€ΠΎΡ‚ΠΈΠ² Client Access Token.

  7. Π‘ΠΊΠΎΠΏΠΈΡ€ΡƒΠΉΡ‚Π΅ сгСнСрированный Client Access Token Π² Π±ΡƒΡ„Π΅Ρ€.

Π­Ρ‚Π°ΠΏ 3. Π—Π°ΠΉΠ΄ΠΈΡ‚Π΅ Π² Ρ„Π°ΠΉΠ» с конфигурациями bot_config.json:

ВнСситС ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ Ρ‚ΠΎΠΊΠ΅Π½ Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ», Π΄ΠΎΠ±Π°Π²ΠΈΠ² ΠΎΠΏΡ†ΠΈΡŽ "voiceProvider":

bot_config.json
{
    "token": "<ВАШ_Π’ΠžΠšΠ•Π>",
    "vitalkUrl": "<URL ViTalk>",
    "proxyUrl": "https://telegg.ru/orig/bot"
    "voiceProvider": {
      "witAI": {
        "token": "YOUR_TOKEN"
      }
    }
}

Запуск Π±ΠΎΡ‚Π°

ПослС настройки для запуска Π±ΠΎΡ‚Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

sudo docker run -d --name vitalk-tg -v "/docker-volume/vitalk-tg:/opt/configuration" cr.yandex/crpe1mi33uplrq7coc9d/visiology/vitalk-tg:master

Π£Π±Π΅Π΄ΠΈΡ‚ΡŒΡΡ Π² отсутствии ошибок ΠΏΡ€ΠΈ запускС ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

sudo docker logs -f vitalk-tg

ΠŸΡ€ΠΎΡ‚Π΅ΡΡ‚ΠΈΡ€ΡƒΠΉΡ‚Π΅ Π±ΠΎΡ‚Π°, ΠΎΠ±Ρ€Π°Ρ‚ΠΈΠ²ΡˆΠΈΡΡŒ ΠΊ Π½Π΅ΠΌΡƒ Π² telegram, ΠΏΠΎ Ρ€Π°Π½Π΅Π΅ Π²Ρ‹Π΄Π°Π½Π½ΠΎΠΌΡƒ username:

На этой страницС: