====== ИНТЕГРАЦИЯ ПАНЕЛИ ТЕЛЕФОНИИ ======
Руководство составлено для 1С:CRM 2.0.7.1 И УТ+CRM редакции 2.0.6.2 и панели телефонии Asterisk 1.x.21 и **может быть не актуальным** для других версий.
Сделайте **РЕЗЕРВНУЮ КОПИЮ** информационной базы.
===== Предварительная настройка =====
Выполните предварительную настройку в режиме 1С:Предприятие согласно [[astpanel:designer:crm2:enterprise|данной инструкции]].
===== Этап 1. В режиме "Конфигуратор" =====
{{page>astpanel:designer:ut11:poddergka}}
- Включить возможность изменения для команды **ОткрытьСофтфон** из обработки сфпСофтФонВнешняяПанель.
{{ :astpanel:designer:ut11crm2:vkljuchitvozmozhnostizmenenijasoftfon.png |}}
{{page>astpanel:designer:crm2:crm2071#ehtap_2_vstraivanie_paneli_telefonii}}
{{page>astpanel:designer:crm2:crm2071#ehtap_3_nastrojka_prav_dostupa}}
Необходимо встроить внешнюю обработку (панель телефонии) в конфигурации, настроить права доступа и ее автоматический запуск в фоновом режиме.
==== Создание новых объектов ====
- Вставьте внешнюю обработку, которая идет в поставке, в конфигурацию и назовите ее **MIKO_Asterisk**.
- Добавьте новый общий модуль **"МИКО_Софтфон"**. {{ :doc:panel1ccrm20:addmodule.png? |}}
- Установите флажки напротив свойств **"Сервер"** и **"Вызов сервера"** для созданного модуля. {{ :doc:panel1ccrm20:moduleproperties.png? |}}
- Скопируйте [[astpanel:designer:crm2:modulesrc|текст, расположенный по данной ссылке]], и вставьте его в модуль **"МИКО_Софтфон"**.
==== Изменение типовых объектов ====
Откройте модуль управляемого приложения и перейдите к процедуре **"ПриНачалеРаботыСистемы"**.
В УТ+CRM редакции **2.0.6.2** инициализация перенесена в общий модуль **CRM_ОбщегоНазначенияКлиент.CRM_ИнициализироватьСофтФон()**
В УТ+CRM редакции **2.0.7.1** инициализация перенесена в общий модуль **CRM_ОбщегоНазначенияКлиент.CRM_ПриНачалеРаботыСистемы()**
В УНФ(1.4.9.14) + 1С:CRM(2.0.8.2) инициализация перенесена в общий модуль **ОбщегоНазначенияКлиентПереопределяемый.ПриНачалеРаботыСистемы(Параметры)**
В 1C:CRM, редакция 2.0 (**2.0.9.1**) инициализация перенесена в общий модуль **сфпСофтФонПроКлиент.сфпПриНачалеРаботыСистемы()**
- Перед строкой, начинающимся с комментария //"СофтФон"//, вставьте код
///
// *** Пропущена часть иходного текста ***
///
// PT1C / Панель телефонии Asterisk / Начало
НазваниеПанелиТелефонии = "Панель телефонии Asterisk (МИКО)";
МИКО_Софтфон.ВыполнитьПервичнуюУстановку(НазваниеПанелиТелефонии);
Если МИКО_Софтфон.Использовать(НазваниеПанелиТелефонии) Тогда
#Если НЕ ВебКлиент Тогда
Отказ = Ложь;
Попытка
сфпФормаТелефонВнешняяПанель = ПолучитьФорму("Обработка.MIKO_Asterisk.Форма.Форма");
сфпФормаТелефонВнешняяПанель.ИнициализироватьПанельТелефонии(Истина, Отказ);
Исключение
Отказ = Истина;
КонецПопытки;
Если Отказ Тогда
Сообщить("Не удалось запустить """ + НазваниеПанелиТелефонии + """");
Иначе
сфпОбработаноВнешнееСобытие = Истина;
КонецЕсли;
#КонецЕсли
// PT1C / Панель телефонии Asterisk / Конец
///
// *** Пропущена часть иходного текста ***
///
- Замените условие **Если** в начале секции софтфона на **ИначеЕсли**
///
// *** Пропущена часть иходного текста ***
// Если Не ПользователиКлиентСервер.ЭтоСеансВнешнегоПользователя() И сфпСофтФонПроСервер.сфпИспользоватьСофтФон() // для УТ+CRM редакции 2.0.6.2
// Если сфпСофтФонПроСервер.сфпИспользоватьСофтФон() Тогда // PT1C / Панель телефонии Asterisk
ИначеЕсли Не ПользователиКлиентСервер.ЭтоСеансВнешнегоПользователя() И сфпСофтФонПроСервер.сфпИспользоватьСофтФон() Тогда
// *** Пропущена часть иходного текста ***
///
- Перейдите к процедуре **"ПриЗавершенииРаботыСистемы"** и добавьте код приведенный ниже. Процедура ПриЗавершенииРаботыСистемы()
///
// *** Пропущена часть иходного текста ***
///
// PT1C / Панель телефонии Asterisk / Начало
Попытка
сфпФормаТелефонВнешняяПанель.ЗавершитьРаботу();
Исключение
КонецПопытки;
// PT1C / Панель телефонии Asterisk / Конец
КонецПроцедуры
- В начало процедуры **"ОбработкаКоманды"** для "**Обработки**" - "**сфпСофтФонВнешняяПанель**" - "**Команды**" - "**ОткрытьСофтФон**"добавьте код приведенный ниже.
&НаКлиенте
// Процедура - обработчик выполнения команды
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
// PT1C / Панель телефонии Asterisk / Начало
Если сфпФормаТелефонВнешняяПанель <> Неопределено Тогда
Если сфпФормаТелефонВнешняяПанель.Открыта() Тогда
сфпФормаТелефонВнешняяПанель.Активизировать();
Иначе
сфпФормаТелефонВнешняяПанель.Открыть();
КонецЕсли;
Возврат;
КонецЕсли;
// PT1C / Панель телефонии Asterisk / Конец
сфпСофтФонПроКлиент.сфпПереподключитьСофтФон();
КонецПроцедуры // ОбработкаКоманды()
===== Этап 3. Настройка прав доступа =====
- Добавьте в конфигурацию новую роль **"МИКО_Софтфон"**.
- Снимите все отметки о правах выставляемые по умолчанию, а для обработки **MIKO_Asterisk** отметьте все права.{{ :astpanel:designer:crm2:pravamikosoftfon.png |}}
- Тоже сделайте и для обработки **"сфпСофтФонВнешняяПанель"**.{{ :astpanel:designer:crm2:pravadlyasoftfonprof.png |}}
- Дайте право на использование компанды **"ОткрытьСофтФон"** {{ :astpanel:designer:crm2:pravadlyakomandi.png |}}
- Обновите конфигурацию базы данных. {{ :doc:panel1ccrm20:confupd.png? |}}
- Запустите программу 1С под пользователем с полными правами.
===== Этап 4. В режиме "Предприятие" =====
[[astpanel:enterprise:managed|Перейти к инструкции по настройке в режиме предприятия]]