Быстрый старт

Начните с установки системы из репозитория

  1. Укажите репозиторий в файле /etc/apt/sources.list

    deb http://deb.scbots.ru/debian bookworm main
    
  2. Установите сертификат подписи репозитория

    wget -qO - http://deb.scbots.ru/debian/public.gpg.key | sudo tee /etc/apt/trusted.gpg.d/scbots.asc
    
  3. Установите систему используя менеджер пакетов apt

    apt-get update
    apt-get install scbots
    
  4. Привет мир! Откройте страницу в выбранном вами браузере и перейдите по адресу http://<адрес сервера>, чтобы увидеть страницу авторизации

Авторизация при первом запуске

При первом запуске система автоматически создаст учетную запись администратора с логином и паролем по умолчанию

Логин Пароль
admin admin

Сервис

Используя сервис systemd можно управлять системой

  1. Сведения о состоянии

    systemctl status scbots
  2. Перезапуск

    systemctl restart scbots
  3. Остановка

    systemctl stop scbots

Пользователи

Создание пользователей

Для создания пользователей необходимо перейти на вкладку "Пользователи" и нажать , после чего откроется форма создания учетной записи

Назначение прав

Права Описание
Администратор Имеет полный доступ к системе и к выбранным чат-ботам
Редактор Может иметь доступ только к информационным чат-ботам
Руководитель Имеет доступ к просмотру статистики в выбранных чат-ботах
Модератор Управляет работой координаторов
Координатор

Информационные чат-боты: рассмотрение обращений

Личные кабинеты: регистрация пользователей и взаимодействие с ними (звонки, встречи, рассылки и т. д.)

Настройки

Безопасность

Параметр Описание
Максимальный срок действия сессии По истечении срока сесси пользователя будет завершена
Количество неуадчных попыток авторизации для блокировки После выбранного кол-ва неудачных попыток авторизации пользователь будет заблокирован
Разрешить вход при помощи мастер-пароля Разрешает использовать мастер-пароль
Длина мастер-пароля Задает длину генерируемого при запуске мастер-пароля

Резервные копии

Параметр Описание
Сохранение резервных копий Частота создания резервных копий
Архивировать Папка с резервной копией будет сжата в архив
Системные файлы В резервную копию будут включены системные файлы
БД В резервную копию будет включен файл базы данных

Чат-боты

Параметр Описание
Автоматическое назначение координаторов для обращений по загруженности При получении обращений от пользователей первого типа, им будет назначен координатор в соответствии с загрузкой координаторов
Отображение кнопки "Чат-бот в Telegram" Папка с резервной копией будет сжата в архив
Лимит обращений в день Максимальное кол-во обращений, которое может подать пользователь чат-бота за день
Длина пароля активации Длина генерируемого пароля для активации учетной записи зарегистрированного пользователя личного кабинета
Лимит заказанных звонков в день Максмально кол-во звонков, которое может заказать пользователь личного кабинета за день

Добавление чат-бота

Создать самостоятельно чат-бот в Telegram можно бесплатно за несколько шагов:

  1. Перейдите в диалог с инструментом для создания чат-ботов — @BotFather
  2. Нажмите кнопку «Start» или введите в диалоге команду /start
  3. Далее введите команду /newbot, чтобы создать новый чат-бот
  4. Укажите название — то, как будет отображаться чат в списке контактов
  5. Последнее — никнейм: это то, что будет ником после знака @

После успешного создания вы получите токен. Сохраните его, он понадобится для дальнейшей интеграции

img-fluid

Перейдите на вкладку "Чат-боты" на панели управления и нажмите , после чего откроется форма интеграфии чат-бота. Вставьте полученный токен и нажмите "Сохранить". Для получения информации о чат-боте может потребоваться некоторое время

Информационные чат-боты

Информационные чат-боты позволяют создавать информационный ресурс, содержащий вопросы и ответы на них

Личные кабинеты

Личные кабинеты позволяют взаимодействовать более детально с пользователями чат-бота

Дополнительные настройки

Дополнительные настройки позволяют детально настрооить систему. Они доступны в файле /opt/scbots/_internal/settings.json

База данных

Система поддерживает подключение только к базе данных SQLite

{
    "DB": {
        "path": "sqlite:////opt/scbots/_internal/data.db"
        }
    ...
}

По умолчанию БД создается в том же месте, где установлена система

Интерфейс

По умолчанию система прослушивает все доступные интерфейсы (0.0.0.0) и порт 80

{
    "INET": {
        "connection": {
            "interface": "*", #интерфейс
            "port": 80 #порт
            },
    ...
}

Возможные значения

Параметр Описание Значения
interface Прослушиваемый интерфейс

* - использовать все доступные интерфейсы (по умолчанию)

127.0.0.1 - запуск на localhost

Любые другие значение формата х.х.х.х

port Прослушиваемый порт 0 - 65536

Использование SSL-сертификата

Для работы TLS/SSL использует комбинацию открытого сертификата и закрытого ключа. Закрытый ключ хранится на сервере и не разглашается. SSL-сертификат используется открыто и доступен всем пользователям, запрашивающим контент

{
    "INET": {
        "SSL": {
            "use": false, #использовать ssl
            "cert": "", #путь к сертификату
            "key": "" #путь к ключу
        }
    ...
}

Генерация самоподписанного сертификата

Чтобы создать самоподписанный сертификат и ключ, запустите команду:

sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /путь/к/ключу/scbots-selfigned.key -out /путь/к/сертификату/scbots-selfigned.crt

Заполните появившиеся поля данными о сервере, которые будут отображаться в сертификате.

Самой важной строкой является Common Name (введите FQDN или свое имя). Как правило, в эту строку вносят доменное имя, с которым нужно связать сервер. В случае если доменного имени нет, внесите в эту строку IP-адрес сервера. В целом эти поля выглядят примерно так:

Country Name (2 letter code) [AU]:
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:
Email Address []: 

Действия при запуске

Система может автоматически очищать кэш при запуске

{
    "ADDITIONS": {
        "ONSTART": {
            "clear": {
                "temp": true #очистка кэша
                #true - включить
                #false - выключить
                }
            }
        }
    ...
}

Дополнения

Мастер-пароль

При потере доступа к учетным записям администратора можно использовать служебную учетную запись, называемую мастер-пароль

Данная учетная запись имеет полный доступ к системе и не может быть изменена администраторами

Для авторизации используйте следующий данные:

  • Логин: MASTER
  • Пароль: указан в файле /opt/scbots/_internal/password.spec
Примечание. Использование мастер-пароля доступно только при включенном параметре Разрешить вход при помощи мастер-пароля

Технические характеристики

Характеристика Значение
ОЗУ 1 ГБ
Свободное место на диске 2 ГБ
Подключение к интернету 5 МБит/с