Sign inSign up

onellect/teams-bot-creatio

By onellect

•Updated about 6 years ago

Image
0

1.3K

onellect/teams-bot-creatio repository overview

Readme в Docker - hub:

Простой способ запустить нашего бота через docker-compose:

version: '2'
services:
  nginx-proxy:
    image: jwilder/nginx-proxy
    container_name: nginx-proxy
    labels:
      - "com.github.jrcs.letsencrypt_nginx_proxy_companion.nginx_proxy"
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - /var/run/docker.sock:/tmp/docker.sock:ro
      - ./certs:/etc/nginx/certs:ro
      - ./vhost.d:/etc/nginx/vhost.d:ro
      - /usr/share/nginx/html
    restart: always
  letsencrypt-companion:
    image: jrcs/letsencrypt-nginx-proxy-companion
    container_name: letsencrypt-companion
    volumes_from:
      - nginx-proxy
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:ro
      - ./certs:/etc/nginx/certs:rw
      - ./vhost.d:/etc/nginx/vhost.d:rw
    restart: always
  bot:
    image: "onellect/teams-bot-creatio:latest"
    ports:
        - 85:80
    depends_on:
      - redis
      - nginx-proxy
      - letsencrypt-companion
    environment:
      - VIRTUAL_HOST=dbot.westeurope.cloudapp.azure.com
      - LETSENCRYPT_HOST=dbot.westeurope.cloudapp.azure.com
      - [email protected]
    volumes:
      - ./appsettings.json:/app/appsettings.json
    links:
    - redis
    restart: always
  redis:
    image: redis
    command: redis-server --appendonly yes
    volumes:
      - ./redis:/data
    restart: always

Из настроек только:

  • VIRTUAL_HOST - домен, с которого будет проксировать nginx на вашего бота
  • LETSENCRYPT_HOST - домен, на которой letsencrypt будет генерировать ssl сертификат
  • LETSENCRYPT_EMAIL - почта, на которую будут приходить уведомления, связанные с генерацией ssl сертификата

Рядом надо положить файл настроек appsettings.json

{
  "CompanyName": "Public",
  "MicrosoftAppId": "",
  "MicrosoftAppPassword": "",
  "BotWebhookUrl": "https://localhost/api/webhook",
  "Redis": "redis",
  "CreatioUrl": "http://localhost/",
  "CreatioLogin": "Supervisor",
  "CreatioPassword": "Supervisor",
  "Querys": {
    "Conversations": "botconversations",
    "Profiles": "botuserprofiles",
    "Visa": "botvisa",
    "VisaEmail": "botvisaemail",
    "VisaSchema": "botvisaschema",
    "PhotoImageTable": "botphotoimagetable"
  }
}

В настройках необходимо указать:

  • CompanyName - имя вашей компании
  • MicrosoftAppId - Id teams бота
  • MicrosoftAppPassword - secret key teams бота
  • BotWebhookUrl - адрес, по которому будет доступен сервис бота (для ссылок на самого себя, например на иконки)
  • CreatioUrl - URL, по которому доступен Creatio для сервиса бота - для работы с визами.
  • CreatioLogin и CreatioPassword - логин и пароль пользователя, имеющего право запускать бизнесс - процессы ( как правило супервизор ).

Записи о визировании и диалоги сервис бота хранит в redis. При запуске стек создаст папку redis, в которой будет складываться файлы базы redis - очень рекомендую настроить бекап этих файлов. Чтобы сервис бота не забыл, что разговарил с пользователями (при добавлении бота пользователем - сервис записывает в редис id диалога и в последующем может присылать уведомления только тем пользователям, которые есть у него в базе).

Tag summary

Content type

Image

Digest

Size

110.3 MB

Last updated

about 6 years ago

docker pull onellect/teams-bot-creatio