Как настроить интеграцию с n8n

Вы можете настроить интеграцию Respondo с самыми разными сервисами — telegram, CRM, Notion и другими — через инструмент n8n.

Например, можно настроить такую интеграцию:

  • при получении ответа послать сообщение в телеграм чат
  • при нажатии «интересно» создать сделку в AmoCRM в стадии «принят в работу»
  • при окончании цепочки создать задачу «прозвонить компанию» — чтобы менеджер прозвонил и добился контакта ЛПР, если на письма не ответили

В этом примере мы:
  • Приобретём виртуальный сервер на beget.com или reg.ru (нужно выбрать только один из них. Также виртуальный сервер можно приобрести на любом другом хостинге — нужен VPS сервер с ОС Ubuntu.).
  • Настроем поддомен.
  • Установим на сервер Docker и Docker-Compose.
  • Развернём на сервере через Docker-Compose инструмент n8n.
  • Установим в n8n узлы для amoCRM и Битрикс24.
  • Настроим в CRM внешнюю интеграцию.
  • Настроим интеграцию Respondo с AmoCRM и Битрикс24 — чтобы при получении ответа создавалась новая сделка в crm.

Если у вас уже есть свой виртуальный сервер, и вы хотите развернуть n8n на нём, то нужно сделать его бэкап (стандартная практика).
Приобретение виртуального сервера

В этой статье для примера мы приобретём виртуальные сервера на beget.com и reg.ru.
Beget.com

Чтобы приобрести сервер на beget, нужно перейти на эту страницу. Если вы уже зарегистрированы на этом хостинге, то сразу выполните вход, и перейдите на эту страницу снова.

На этой странице можно сразу настроить будущую конфигурацию сервера, ещё до регистрации. Однако нужно включить «Быстрая настройка ПО», чтобы параметры сохранились. Минимального тарифа хватить, при желании вы сможете его расширить в любой момент.
Важно, в качестве приложения выбрать Ubuntu. Чтобы мы могли установить последние версии Docker, Docket-Compose и n8n.

При желании вы можете сразу выбрать приложение n8n, тогда будет создан сервер сразу на Ubuntu, с предустановленными Docker и n8n. Однако скорее всего нужно будет выполнить обновление этих приложений.
После завершения настроек будущего сервера нажмите на кнопку «Создать».
Если вход не выполнен, вам будет предложено выполнить регистрацию. Можно зарегистрироваться или как физическое лицо, или как юридическое лицо.
После завершения регистрации или входа, откроется личный кабинет облака с уже настроенным сервером (при условии, что вы включили «Быстрая настройка ПО», до регистрации).

Если же этого не произошло, то нужно нажать на кнопку «Создать», чтобы установить конфигурацию будущего сервера.
Оплата

Чтобы сервер работал его нужно оплатить, для этого нужно перейти в пункт «Оплата». И далее оплатить его удобным для себя способом.
Reg.ru

Чтобы приобрести сервер на reg, нужно перейти на эту страницу. Если вы уже зарегистрированы на этом хостинге, то можно сразу выполнить вход и перейти на эту страницу снова.

На этой странице можно сразу настроить будущую конфигурацию сервера, ещё до регистрации.

Минимальной конфигурации хватить, при желании вы сможете её расширить в любой момент.
Для развёртывания инструмента n8n на reg.ru нужно выбрать тариф только с операционной системой.

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

Не рекомендуем выбирать тариф, с предустановленным файловым менеджером Ispmanager, т.к. это помещает запуску n8n (порты 80 и 443 будут заняты nginx).

Для примера, выберем самый минимальный тариф.

Далее в статье будут приведены команды для консоли, чтобы создавать папки и файлы, через неё.
Когда все параметры будут установлены, нажмите на кнопку «Заказать сервер».
Если вход ещё не выполнен, откроется страница для регистрации или входа. Зарегистрируйтесь или войдите.
После регистрации и входа откроется главная страница личного кабинета облака, с уже установленным сервером.
Оплата

Чтобы сервер работал его нужно оплатить, для этого нужно перейти в пункт «Виртуальные серверы». А далее нажать на «Пополнить счёт».
Настройка поддомена

Нам нужно чтобы у нас был доступ к инструменту n8n, для этого нужно настроить поддомен, например n8n.domain.ru.

Если у вас уже есть домен, то это можно сделать на нём, или можно приобрести для этой задачи отдельный домен.

Чтобы настроить поддомен, нужно создать A запись, которая будет указывать на внешний IP сервера.
Где просмотреть IP сервера?
В beget.com, его можно узнать перейдя на страницу приобретённого сервера.
В reg.ru нужно также перейти на страницу сервера, и далее выбрать пункт «Сеть».
Создание А записи
Теперь когда мы знаем адрес сервера, нужно создать А запись. Это нужно сделать на хостинге, через который управляются DNS записи вашего домена.

В качестве Subdomain(а), хоста или имени укажите, например, n8n. В качестве IP адреса укажите внешний IP вашего сервера.

По завершению установки n8n, по адресу n8n.domain.ru будет открываться личный кабинет администратора нейтэн.
Установка консоли для управления сервером

Сервером можно управлять через любую консоль, такие консоли есть и на самих серверах. Однако, лучше для этого установить специальное приложение.

Например, можно использовать приложение PuTTY. Оно бесплатное и легко в управлении.

С помощью этой программы мы получим удалённый доступ к нашему серверу.

Чтобы её скачать, перейдите на официальный сайт.

После загрузки и установки программы, в меню пуск появится приложение, запустите его.
Подключение к серверу
После создания сервера, на почту придёт письмо в котором будут написаны логин и пароль для подключения к серверу.
Откройте приложение и в поле «Host Name (IP address)» укажите внешний IP сервера и нажмите на кнопку «Open». Откроется консоль.

В консоли нужно ввести сначала логин: root.
А затем и пароль, который указан в письме.

Пароль можно скопировать и вставить правой кнопкой мыши в консоль, затем нужно нажать enter. Обратите внимание, что при воде пароля — ввод символов не будет отображаться.

Если вы ввели всё верно, то вы увидите информацию о сервере это значит, что вы подключились к нему успешно.
Небольшая сводка:
  • Комбинация CTRL+C, остановит процесс выполнения команды.
  • Правой кнопкой мыши можно вставить скопированную команду.
  • Стрелки влево и вправо управляют курсором.
  • Стрелки вверх и вниз управляют историей команд.
Установка Docker и Docker Compose
Пришло время установить приложение, с помощью которого будет развёрнут n8n на сервере.

Чтобы это сделать скопируйте следующую команду, вставьте её правой кнопкой мыши в консоль и нажмите enter.
# Удалите несовместимые или устаревшие реализации Docker, если они существуют
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
# Установить необходимые пакеты
sudo apt-get update
sudo apt-get install ca-certificates curl
# Загрузите ключ подписи репозитория
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
# Настройте репозиторий
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# Обновите и установите Docker и Docker Compose
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Начнётся установка Docker и Docker Compose. В процессе, вам нужно будет нажать на "Y", чтобы продолжить выполнение команды.
Для проверки того, что приложение установлено успешно введите следующую команду.
docker --version
docker compose version
Если в консоли отобразится подобная информация:

Docker version 28.2.2, build e6534b4
Docker Compose version v2.36.2

То установка приложения прошла успешно.
Создание новой папки на сервере
Теперь мы можем перейти в развёртыванию n8n. Однако сначала нужно создать папку.

Стоит понимать, что сейчас вы находитесь в папке сервера root (Хотя Docker и Docker Compose установились глобально). И в этой папке вы можете создавать другие папки и файлы.

Наглядно это можно увидеть через файловый менеджер.

Чтобы открыть файловый менеджер на beget.com нажмите на «Файловый менеджер».

Вы увидите папку root.
Перейдите в папку root, в ней создайте подпапку, назовите её, например «n8n-folder».
В beget.com это можно сделать через правую кнопку мыши.
Если на сервере не установлен файловый менеджер, как на reg.ru, то выполните следующую команду:
mkdir n8n-folder
После создания папки, в консоли нужно обязательно выполнить следующую команду. Эту команду нужно будет выполнять самой первой при каждом подключении к серверу.

Таким образом вы перейдёте в созданную папку.
cd n8n-folder
Развёртывание n8n на сервере
Теперь мы можем перейти к развёртыванию n8n.
Перед этим нужно создать два файла:
  • файл окружения .env
  • файл docker-compose.yaml
В файле окружения мы пропишем домен и поддомен, а также часовой пояс и почту для создания SSL сертификата.

К этим данным мы будет обращаться в файле docker-compose.yaml.
В файле docker-compose.yaml прописываются настройки контейнеров, в которых будет работать n8n.
Создание файла окружения .env
Файлы на сервере, через файловый менеджер, создаются по аналогии с созданием папки.
Если файловый менеджер не установлен, то выполните следующую команду.
nano .env
Скопируйте следующий код и вставьте его в файл. Важно заменить домен, поддомен и почтовый ящик на свои данные.
# DOMAIN_NAME и SUBDOMAIN вместе определяют, откуда будет доступен n8n
# Домен верхнего уровня для обслуживания
DOMAIN_NAME=example.com

# Субдомен для обслуживания
SUBDOMAIN=n8n

# Приведенный выше пример обслуживает n8n по адресу: https://n8n.example.com

# Необязательный часовой пояс для установки, который используется Cron и другими узлами планирования
# Нью-Йорк — значение по умолчанию, если не задано
GENERIC_TIMEZONE=Europe/Moscow

# Адрес электронной почты, который будет использоваться для создания сертификата TLS/SSL
SSL_EMAIL=user@example.com
Создание файла .env в менеджере файлов
Создание файла .env в консоли
Если файл создаёте через консоль, то откроется режим создания файла, и вы сможете перемещать курсор вверх, вниз, вправо, влево.

После того, как пропишите данные, нажмите на CTRL+O, затем нажмите ENTER. После нажмите на CTRL+X.
Создание файла docker-compose.yaml
Этот файл создаётся аналогично предыдущему. Если создаёте файл через консоль, то выполните следующую команду.
nano docker-compose.yaml
И вставьте следующий код. Его редактировать не нужно.
services:
  traefik:
    image: "traefik"
    restart: always
    command:
      - "--api.insecure=true"
      - "--providers.docker=true"
      - "--providers.docker.exposedbydefault=false"
      - "--entrypoints.web.address=:80"
      - "--entrypoints.web.http.redirections.entryPoint.to=websecure"
      - "--entrypoints.web.http.redirections.entryPoint.scheme=https"
      - "--entrypoints.websecure.address=:443"
      - "--certificatesresolvers.mytlschallenge.acme.tlschallenge=true"
      - "--certificatesresolvers.mytlschallenge.acme.email=${SSL_EMAIL}"
      - "--certificatesresolvers.mytlschallenge.acme.storage=/letsencrypt/acme.json"
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - ./traefik_data:/letsencrypt
      - /var/run/docker.sock:/var/run/docker.sock:ro

  n8n:
    image: docker.n8n.io/n8nio/n8n
    restart: always
    ports:
      - "127.0.0.1:5678:5678"
    labels:
      - traefik.enable=true
      - traefik.http.routers.n8n.rule=Host(`${SUBDOMAIN}.${DOMAIN_NAME}`)
      - traefik.http.routers.n8n.tls=true
      - traefik.http.routers.n8n.entrypoints=web,websecure
      - traefik.http.routers.n8n.tls.certresolver=mytlschallenge
      - traefik.http.middlewares.n8n.headers.SSLRedirect=true
      - traefik.http.middlewares.n8n.headers.STSSeconds=315360000
      - traefik.http.middlewares.n8n.headers.browserXSSFilter=true
      - traefik.http.middlewares.n8n.headers.contentTypeNosniff=true
      - traefik.http.middlewares.n8n.headers.forceSTSHeader=true
      - traefik.http.middlewares.n8n.headers.SSLHost=${DOMAIN_NAME}
      - traefik.http.middlewares.n8n.headers.STSIncludeSubdomains=true
      - traefik.http.middlewares.n8n.headers.STSPreload=true
      - traefik.http.routers.n8n.middlewares=n8n@docker
    environment:
      - N8N_HOST=${SUBDOMAIN}.${DOMAIN_NAME}
      - N8N_PORT=5678
      - N8N_PROTOCOL=https
      - NODE_ENV=production
      - WEBHOOK_URL=https://${SUBDOMAIN}.${DOMAIN_NAME}/
      - GENERIC_TIMEZONE=${GENERIC_TIMEZONE}
    volumes:
      - ./n8n_data:/home/node/.n8n
      - ./local-files:/files
Создание новых папок
Папки создадутся автоматически после установки и запуска n8n, однако рекомендуем их создать самостоятельно, чтобы быть уверенным, что они точно будут существовать на сервере.

Если папки создаёте через консоль, то выполните следующие команды.
mkdir traefik_data
mkdir n8n_data
mkdir local-files
Если команды выполнены успешно, то консоль просто будет ждать новой команды.
Права доступа к новым папкам
Нужно быть уверенным в том, что у контейнеров будет доступ к только что созданным папкам. Поэтому выполните следящие команды.
chmod 600 traefik_data
chmod 777 n8n_data
chmod 777 local-files
Если команды выполнены успешно, то консоль просто будет ждать новой команды.
Установка n8n
Мы на завершающей стадии развёртывания n8n. Чтобы запустить установку инструмента n8n, введите в консоли следующую команду.
docker compose pull
Начнётся процесс установки. Дождитесь её завершения.
Запуск n8n
Чтобы запустить контейнеры, в которых работает n8n, выполните следующую команду.
docker compose up -d
Регистрация в n8n
Перейдите на поддомен, который вы создавали ранее, через А-запись, например: n8n.domain.ru.

Откроется страница регистрации в n8n.
Откроется личный кабинет, пропустите анкету, нажав на кнопку «Get starting». И получение лицензионного ключа. Он нужен только если вы решите использовать коммерческую версию n8n.

По завершению регистрации, вы сможете начать пользоваться инструментом n8n.
Установка узлов для amoCRM и Битрикс24
Чтобы установить узлы, перейдите в пункт «Settings»->«Community nodes».
Нажмите на кнопку «Install community nodes».
В появившееся в окно введите:
  • n8n-nodes-amocrm, для установки узлов amoCRM.
  • n8n-nodes-bitrix24 для установки узлов Битрикс24.
Нажмите на кнопку «Install».
По завершению установки вы увидите информацию об установленных узлах. Это значит, что вы сможете использовать их в работе.
Создание интеграции Respondo c amoCRM
Теперь всё готово для создания интеграции личного кабинета с amoCRM.

Нужно выполнить несколько шагов.
  1. Создать рабочую область в n8n.
  2. Импорт настроенных узлов в рабочую область.
  3. Создать внешнюю интеграцию в amo.
  4. Настроить узлы.
Создание рабочей области
Для создания рабочей области нажмите на кнопку «Create Workflow».
Импорт настроенных узлов в рабочую область
Скачайте готовое решение с нашего Яндекс Диска.
Нажмите на кнопку «···», а затем выберите «Import from File...».
Выберите скаченный файл.
Таким образом вы установите сразу уже настроенные узлы. Останется только настроить подключение к amoCRM.
Создать внешнюю интеграцию в amo
Перед созданием интеграции в amo, дважды нажмите на узел «Авторизация с AmoCRM».
В появившемся окне для настройки узла, нажмите на поле «Credential to connect with» и выберите «Create new credential».
В появившемся окне для настройки подключения, выберите «OAuth2», затем нажмите на поле «OAuth Redirect URL», чтобы скопировать ссылку.
Теперь нужно перейти в amoCRM в пункт «amoМаркет».
Нажмите на кнопку «···», а затем выберите «Создать интеграцию».
В появившемся окне выберите «Внешняя интеграция».
Нажмите на кнопку «Создать».
В поле «Cылка для перенаправления», вставьте ссылку, которую скопировали в n8n.
Заполните другие поля, как на скриншоте.
Нажмите на кнопку «Сохранить».
Перейдите в пункт «Установленные» и нажмите на созданную интеграцию.
В появившемся окне перейдите в пункт «Ключи и доступы».
Сгенерируйте «Секретный ключ», и вставьте его в n8n, в поле «Client Secret»
Скопируйте «ID интеграции» и вставьте его в n8n в поле «Client ID».
Также, в n8n в поле «Subdomain» вставьте, то что у вас указано тут вместо company: https://company.amocrm.ru/

После того, как все нужные поля будут заполнены нажмите в n8n на кнопку «Connect my account»