Перейти к содержанию

Интеграция удалённого доступа в вашу систему

Поскольку наше решение работает в браузере, мы часто получаем запросы от поставщиков различных электронных сервисов, желающих встроить удалённый доступ в свои продукты. Часто процесс интеграции вызывает сложности и появляются дополнительные вопросы. Поэтому давайте подробно рассмотрим один из самых распространённых сценариев интеграции.

Предположим, у вас есть продукт, рассчитанный на работу с несколькими устройствами: ваши клиенты регистрируются в вашей системе, устанавливают ваше программное обеспечение на свои устройства и привязывают их к своему аккаунту. Затем они заходят в свою панель управления, просматривают список устройств и получают доступ к определённым функциям. Если это похоже на вашу ситуацию - продолжим.

Теперь пришло время реализовать функцию удалённого доступа, органично встроенную в вашу панель управления. Вы можете сделать это с помощью нашего решения.

Чтобы включить удалённый доступ к устройствам, вам необходимо установить наш агент на устройства пользователей и привязать его к их аккаунтам в нашей системе. Затем вы можете получать ссылку для подключения через наш HTTP API и встроить её в интерфейс вашего сервиса. Работа происходит следующим образом:

На первый взгляд может показаться сложно, но на самом деле всё достаточно просто. Давайте разберём процесс интеграции шаг за шагом.

Зарегистрируйте аккаунт в PRO32 Connect

Аккаунт необходим для привязки всех устройств, которые вы собираетесь добавить в нашу систему. Эти устройства будут доступны только вам, а их количество будет зависеть от тарифа.

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

Self-Hosted версия

Вы также можете развернуть собственный сервер PRO32 Connect в вашей инфраструктуре. Это подходит, если вы хотите хранить все данные подключений на своих серверах и готовы самостоятельно ими управлять. Такой вариант отлично подходит для среднего и крупного бизнеса.

Подробнее о Self-Hosted версии - на этой странице .

Установите агент на устройства и привяжите его к своему аккаунту

Агент - это приложение, обеспечивающая трансляцию экрана удалённого устройства и выполнение команд оператором. Для работы она должна быть установлена на устройстве и запускаться автоматически при перезагрузке.

Сначала скачайте дистрибутив агента. На странице Постоянный доступ нажмите Добавить устройство и выберите дистрибутив под нужную операционную систему:

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

Для этого вы можете использовать командны, доступные для файла дистрибутива. Например, в системах Windows вы выполните следующую команду:

pro32connect.exe -install -register pro32connect@yourcompany.com

Параметр -install запускает установку, а параметр -register привязывает устройство к вашему аккаунту.

Кроме того, вы можете настроить параметры приложения агента с помощью параметра -config. Например, в вашем случае, скорее всего, потребуется отключить одноразовые ссылки доступа:

pro32connect.exe -config "fast_access=false"

Более подробную информацию о командных параметрах и их настройках для разных систем вы можете найти в документации или просмотреть их прямо в своей панели управления:

Брендирование

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

Свяжите устройства из нашей базы данных с вашей собственной

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

Самый простой способ сделать это — задать агенту такое имя, по которому вы сможете определить устройство в вашей базе данных. Например, вы можете использовать строку, объединяющую идентификатор учётной записи и идентификатор устройства из вашей базы, разделённые символом решётки. Указать имя можно с помощью всё того же параметра -config:

pro32connect.exe -config "name='1001:1'"

Где:

  • 1001 - Идентификатор учётной записи в вашей системе..
  • 1 - Идентификатор устройства в вашей системе.

Такое именовании позволит вам эффективно сопоставлять агентов с устройствами в вашей базе данных.

Теперь, когда у нас есть список всех ваших устройств с именами, понятными вашей системе, на сервере PRO32 Connect, давайте разберёмся, как получить ссылку для подключения.

Эта ссылка понадобится вам, когда пользователь нажмёт соответствующую кнопку на странице устройства в вашей системе. Вы можете программно получить её с помощью HTTP API в два шага.

Где найти ключ API?

Чтобы выполнить аутентификацию запросов к HTTP API, вам понадобится ключ API. Вы можете найти его в своей панели управления на странице Интеграция page.

Найдите нужного агента

Для этого используйте запрос списка agents/list и найдите нужного агента по имени в ответе. Вы можете использовать параметр search для поиска по имени:

Пример запроса
GET https://api.pro32connect.ru/v1/agents/list
 ?apikey=<string>
 &search=1001:1
Пример ответа
{
    "data":[ {
        "id":1001,
        "device_id":748268090,
        "name":"1001:1",
        "group":"Accounting",
        "disabled":false,
        "limited":false,
        "link_time":1587837997,
        "last_time":1600374761,
        "geo":{
            "ip":"94.242.23.99",
            "country":"Russia",
            "region":"St.-Petersburg",
            "city":"St Petersburg"
        },
        "permanent_url":"https://go.pro32connect.ru/paci",
        "onetime_url":"",
        "preview_url":"https://pro32connect.ru/preview/1245273f5448a704379da46f476564a592efb17c6a7695adde96247cd7874416GbBzRm6SRLMqrP0YoYFMxCopL6NTzvn8.png",
        "os":"win",
        "version":"1.9.4",
        "online":true,
        "installed":true,
        "favorite":false,
        "owner":"pro32connect@yourcompany.com",
        ...
    }, ... ]
}

Из данных устройства в ответе нам нужен поле device_id, которое является уникальным идентификатором устройства.

Получение ссылки

Как только вы получите device_id, вы можете получить ссылку для подключения, используя метод agents/connect.

Пример запроса
POST https://api.pro32connect.ru/v1/agents/connect
  ?apikey=<string>
  &device_id=<number>
Пример ответа
{
    "data":{
        "url": "https://go.pro32connect.ru/yourcompany/?connect=20177&amp;llt=66b4kj671pm3abpp5xh17elpnpze245382m9pxbrx313l2xp52hmxqe4e1dekpej&amp;s=c2c5ca25eb4fca787b74a97648e0856951e2b9c7aa02cbf83ac62c81e21a9bab"
    }
}

В ответе вы получите итоговую ссылку для подключения в поле data.url, которую можно добавить в карточку устройства в вашей системе.

Внимание

Не используйте ссылки из полей permanent_url и onetime_url в данных агента. Они предназначены для других целей и не будут корректно работать в рассматриваемом сценарии.

Добавьте кнопку подключения на панель управления

Главный вопрос, как пользователь будет открывать окно подключения. Есть два варианта:

  • В новой вкладке
  • В определённой области прямо на вашей странице

В случае открытия в новой вкладке вы просто добавляете ссылку на нужную страницу:

Пример кода
<a 
    href="https://go.pro32connect.ru/yourcompany/?connect=20177&amp;llt=66b4kj671pm3abpp5xh17elpnpze245382m9pxbrx313l2xp52hmxqe4e1dekpej&amp;s=c2c5ca25eb4fca787b74a97648e0856951e2b9c7aa02cbf83ac62c81e21a9bab" 
    target="_blank">Connect</a>

В случае области на странице вы можете использовать элемент iFrame:

Пример кода
<iframe 
    allowfullscreen
    allow="clipboard-read; clipboard-write"
    style="border:0;width:1024px;height:768px;" 
    src="https://go.pro32connect.ru/yourcompany/?connect=20177&amp;llt=66b4kj671pm3abpp5xh17elpnpze245382m9pxbrx313l2xp52hmxqe4e1dekpej&amp;s=c2c5ca25eb4fca787b74a97648e0856951e2b9c7aa02cbf83ac62c81e21a9bab"></iframe>

С помощью этих простых и понятных действий вы можете добавить функцию удалённого доступа в любую систему, связанную с устройствами.