# Разработка плагинов
Плагин - это мини-приложение, расширяющее базовый функционал SalesMan CRM и разработанное для выполнения конкретных задач.

## Схема работы

Предусмотрено 2 способа подключения плагина к интерфейсу CRM:

*     **фоновое подключение** (в основном для скриптов PHP) - плагин подключается к системе Webhook и выполняет работу в фоновом режиме
*     **подключение к интерфейсу** (в основном для JS-скриптов) - плагин подключается к интерфейсу системы и расширяет её функционал с помощью собственных js-скриптов

## Подключение плагина

Для того, чтобы система знала о наличии плагина, требуется добавить его описание в файл **/plugins/map.castom.json**, который имеет следующую структуру:

<pre><code class="json">
{
  "smsSender":{
    "name":"SMS-Sender",
    "url":"plugins/smsSender/",
    "icon":"icon-chat-1",
    "interface":"yes",
    "js":""
  }
}
</code></pre>

где:

*     **smsSender** - идентификатор плагина
*     **name** - Имя плагина для отображения в меню
*     **url** - адрес url расположения панели управления плагином
*     **icon** - иконка плагина
*     **interface** - наличие интерфейса у плагина (yes|no). Если интерфейс есть, то он появится в меню CRM - Сервисы (иконка "троеточие") / Дополнения
*     **js** - путь к js-скрипту, подключаемого к интерфейсу CRM


## Подключение плагина к интерфейсу

Подключение плагина к интерфейсу происходит в Панели управления, раздел **Интеграция / Плагины**

![](https://salesman.pro/docs.img/docs/settings_plugin_list.png)

После активации плагина требуется обновить окно браузера. Если у плагина есть веб-интерфейс, то доступ к нему будет доступен в верхнем меню системы в разделе "Сервисы" / "Дополнения":

![](https://salesman.pro/docs.img/docs/plugin_in_menu.png)
  