====== Интеграция панели телефонии и журнала звонков в "Управление торговлей и взаимоотношениями с клиентами (CRM), редакция 2.0" ======
[[astpanel:fastintegration|Обратно к перечню инструкций]]
Инструкции составлены для **конфигурации**:
* Управление торговлей и взаимоотношениями с клиентами (CRM), редакция 2.0 (2.0.19.5)
Рекомендуемая версия **панели телефонии**: **1.4.26.20+**\\
Рекомендуемая версия **журнала звонков**: **1.0.1.15+**
===== Этап 1. Настройка правил поддержки =====
Перед началом выполнения работ обязательно сделайте **резервное копирование** конфигурации и данных!
Для начала следует разблокировать головной объект конфигурации для внесения изменений.
Порядок действий следующий:
- Убедитесь, что пользователи завершили работу с программой.
- Запустите программу в режиме //"Конфигуратор"//.
- Откройте окно настройки поддержки. {{ :doc:panel1ccrm20:support.png? |}}
- Включите возможность изменения конфигурации. На предупреждение программы ответьте утвердительно. {{ :astpanel:fastintegration:1f.png |}}
- В появившемся окне укажите, что объекты поставщика не редактируются. {{ :doc:panel1ccrm20:rules.png? |}}
- Затем для головного объекта конфигурации (//"УправлениеТорговлей_CRM_2"//) установите правило поддержки на //"Объект поставщика редактируется с сохранением поддержки"//. {{ :astpanel:fastintegration:2f.png |}}
- Для общего модуля //"**сфпСофтФонПроКлиент**"// также установите правило поддержки на //"Объект поставщика редактируется с сохранением поддержки"//.
- Для общего модуля //"**ВариантыОтчетовУТПереопределяемый**"// установите правило поддержки на //"Объект поставщика редактируется с сохранением поддержки"//.
- Для общей формы //"**CRM_СообщенияПодключения**"// установите правило поддержки на //"Объект поставщика редактируется с сохранением поддержки"//.
- Закройте окно настройки поддержки
Теперь конфигурация готова к внесению изменений.
===== Этап 2. Встраивание журнала звонков =====
- Выполните действия **"Конфигурация" - "Сравнить и объеденить с конфигурацией из файла"** {{ :astpanel:fastintegration:4f.png |}}
- Выберите файл конфигурации "**Module_Statistic_Х_Х_Х_ХХ.protect.cf**";
- Снимите флажок со всех объектов конфигурации {{ :astpanel:fastintegration:5f.png |}}
- Меню "**Действия**" - "**Отметить по подсистемам файла**" {{ :astpanel:fastintegration:6f.png |}}
- Выберите **только** те подсистемы, которые указаны на скриншоте. Выполните действие "**Установить**" {{ :astpanel:fastintegration:7f.png |}}
- Выполните действие "**Выполнить**" {{ :astpanel:fastintegration:8f.png |}}
- В появившемся окне нажимаем "**Продолжить**". Сохраняем отчет сравнения/объединения нашей конфигурации с файлом. {{ :astpanel:fastintegration:9f.png |}}
- Сравнение и объединение будет завершено. {{ :astpanel:fastintegration:10f.png |}}
==== Изменение типовых объектов ====
Для завершения этапа встраивания журнала звонков необходимо внести изменения в **общий модуль "ВариантыОтчетовУТПереопределяемый"**.
- Открываем общий модуль "**ВариантыОтчетовУТПереопределяемый**" для редактирования
- Переходим в процедуру "**ОпределитьРазделыСВариантамиОтчетов**"
- В конец **условия** процедуры добавляем строку кода: Процедура ОпределитьРазделыСВариантамиОтчетов(Разделы) Экспорт
Если НЕ ПолучитьФункциональнуюОпцию("БазоваяВерсия") Тогда
Разделы.Добавить(ВариантыОтчетовКлиентСервер.ИдентификаторНачальнойСтраницы(),
НСтр("ru = 'Главное'"));
// ВНИМАНИЕ!!! Пропущена часть исходного кода!
Разделы.Добавить(Метаданные.Подсистемы.Найти("Планирование"),
НСтр("ru= 'Отчеты по планированию'"));
// МИКО / PT1C / Подсистема "Расширенный журнал звонков"
Разделы.Добавить(Метаданные.Подсистемы.Найти("МИКО_Телефония"));
// МИКО / PT1C / Подсистема "Расширенный журнал звонков"
КонецЕсли;
КонецПроцедуры
===== Этап 3. Встраивание панели телефонии =====
==== 1. Добавление обработки в подсистему МИКО_Телефония ====
Замените обработку МИКО_ПанельТелефонииДля1С на внешнюю, которая идет в поставке, она должна называться **МИКО_ПанельТелефонииДля1С**.{{ :astpanel:fastintegration:1231.png |}}
==== 2. Правка модуля управляемого приложения ====
- Откройте модуль управляемого приложения. {{ :astpanel:fastintegration:12f.png |}}
- Перейдите к процедуре //"ПриЗавершенииРаботыСистемы"// (создайте процедуру, если ее нет). В конец процедуры вставьте код приведенный ниже.
// PT1C / Панель телефонии Asterisk / Начало
Если сфпПанельУправления <> Неопределено
И ТипЗнч(сфпПанельУправления) = Тип("УправляемаяФорма")
И Найти(сфпПанельУправления.ИмяФормы,"Обработка.МИКО_ПанельТелефонииДля1С")<>0 Тогда
сфпПанельУправления.ЗавершитьРаботу(Истина);
КонецЕсли;
// PT1C / Панель телефонии Asterisk / Конец
==== 3. Изменение общего модуля ====
- Передите к общему модулю "**сфпСофтФонПроКлиент**",
- К процедуре "**сфпПодключитьСофтФон**". В начало необходимо вставить фрагмент кода:
// PT1C / Панель телефонии Asterisk / Начало
НазваниеПанелиТелефонии = "Панель телефонии Asterisk (МИКО)";
Если сфпПанельУправления = Неопределено Тогда
МИКО_Софтфон.ВыполнитьПервичнуюУстановку(НазваниеПанелиТелефонии);
КонецЕсли;
Если МИКО_Софтфон.Использовать(НазваниеПанелиТелефонии) Тогда
Если сфпПанельУправления = Неопределено Тогда
Попытка
сфпПанельУправления = ПолучитьФорму("Обработка.МИКО_ПанельТелефонииДля1С.Форма.Форма");
сфпПанельУправления.ИнициализироватьПанельТелефонии(Истина, Ложь);
Исключение
Сообщить("Не удалось запустить ""Панель телефонии Asterisk (МИКО)""!");
Возврат;
КонецПопытки;
Иначе
// Переопределение обработки команды
Если сфпПанельУправления.Открыта() Тогда
сфпПанельУправления.Активизировать();
Иначе
сфпПанельУправления.Открыть();
КонецЕсли;
КонецЕсли;
Возврат;
КонецЕсли;
// PT1C / Панель телефонии Asterisk / Конец
- К процедуре "**сфпПозвонить**". В начало необходимо вставить фрагмент кода: // PT1C / Панель телефонии Asterisk / Начало
Если МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)") Тогда
ОснованиеЗвонка = Неопределено;
Если ДанныеЗаполнения <> Неопределено
И ДанныеЗаполнения.Свойство("Основание") Тогда
ОснованиеЗвонка = Новый Структура("ОснованиеЗвонка, НомерТелефона", ДанныеЗаполнения.Основание, Телефон);
КонецЕсли;
сфпПанельУправления.Позвонить(Телефон,ОснованиеЗвонка);
Возврат;
КонецЕсли;
// PT1C / Панель телефонии Asterisk / Конец
- К процедуре "**сфпПозвонитьВыбравТелефон**". В начало необходимо вставить фрагмент кода: // PT1C / Панель телефонии Asterisk / Начало
Если МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)") Тогда
сфпПанельУправления.ПозвонитьВыбравТелефон(СписокОбъектов);
Возврат;
КонецЕсли;
// PT1C / Панель телефонии Asterisk / Конец
- К процедуре "**сфпПроверитьДоступностьСофтФон**". В начало необходимо вставить фрагмент кода: // PT1C / Панель телефонии Asterisk / Начало
Если МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)") Тогда
Возврат Истина;
КонецЕсли;
// PT1C / Панель телефонии Asterisk / Конец
==== 4. Изменение общих форм ====
- Перейти к общей форме "**CRM_СообщенияПодключения**". В модуле формы, в процедуре "**ПриСозданииНаСервере**" необходимо добавить фрагмент кода: Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если НЕ Параметры.Свойство("ВидФормы") Тогда
Отказ = Истина;
ИначеЕсли Параметры.ВидФормы = "СофтФон" Тогда
// PT1C / Панель телефонии Asterisk / Начало
Если МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)") Тогда
Возврат;
КонецЕсли;
// PT1C / Панель телефонии Asterisk / Конец
// *** *** ***
// ВНИМАНИЕ ПРОПУЩЕНА ЧАСТЬ ИСХОДНОГО КОДА
// *** *** ***
КонецЕсли;
КонецПроцедуры // ПриСозданииНаСервере()
- Перейти к общей форме "**ПечатьДокументов**". В **конец** процедуры "**ПриСозданииНаСервере**" необходимо добавить фрагмент кода: // PT1C / Панель телефонии Asterisk / Начало
МИКО_Софтфон.ДобавитьКнопкиФаксаНаФормуПечати(ЭтаФорма);
// PT1C / Панель телефонии Asterisk / Конец
- **После** процедуры "**ПриСозданииНаСервере**", добавить дополнительные процедуры - обработки:
&НаКлиенте
Процедура МИКО_ОтправитьКакФакс()
Если НЕ МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)")
ИЛИ сфпПанельУправления = Неопределено Тогда
Возврат;
КонецЕсли;
ТабличныеДокументы = Новый СписокЗначений;
Для Каждого НастройкаПечатнойФормы Из НастройкиПечатныхФорм Цикл
Если Элементы[НастройкаПечатнойФормы.ИмяРеквизита].Вывод = ИспользованиеВывода.Разрешить И НастройкаПечатнойФормы.Печатать Тогда
ТабличныеДокументы.Добавить(ЭтотОбъект[НастройкаПечатнойФормы.ИмяРеквизита], НастройкаПечатнойФормы.Представление);
КонецЕсли;
КонецЦикла;
Если ТабличныеДокументы.Количество()=0 Тогда
Возврат;
Иначе
ТабДок = ТабличныеДокументы[0].Значение;
КонецЕсли;
// отсылаем факс
сфпПанельУправления.ОтправитьФайлПоФаксу(,ТабДок);
КонецПроцедуры // МИКО_ОтправитьКакФакс()
&НаКлиенте
Процедура МИКО_Позвонить()
Если НЕ МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)")
ИЛИ сфпПанельУправления = Неопределено Тогда
Возврат;
КонецЕсли;
ПараметрыПечати = Неопределено;
Если ТипЗнч(ОбъектыПечати) = Тип("СписокЗначений")
И ОбъектыПечати.Количество() > 0 Тогда
Участник = МИКО_Софтфон.ПолучитьСсылкуНаУчастникаИзДокумента(ОбъектыПечати[0].Значение);
Если ТипЗнч(Участник) = Тип("Массив")
И Участник.Количество()>0 Тогда
сфпПанельУправления.ПозвонитьВыбравТелефон(Участник);
ИначеЕсли Участник <> Неопределено Тогда
СписокУчастников = Новый Массив(1);
СписокУчастников[0] = Участник;
сфпПанельУправления.ПозвонитьВыбравТелефон(СписокУчастников);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
===== Этап 4. Завершение этапа встраивания =====
==== Сохранение изменений ====
- Обновите конфигурацию базы данных.{{ :astpanel:fastintegration:13f.png |}}
- В отобразившемся окне нажмите **Принять** {{ :astpanel:fastintegration:14f.png |}}
==== Обновление конфигурации ====
- Запустите процесс обновления конфигурации. В конфигураторе перейдите в меню "**Сервис**" - "**Параметры**", вкладка "**Запуск 1С:Предприятие**"
- В поле "**Параметры запуска**" укажите строку "**ЗапуститьОбновлениеИнформационнойБазы**" {{ :astpanel:statistic:startupdate.png?450 |}}
- Запустите 1С:Предприятие из конфигуратора "**Отладка**" - "**Начать отладку**"
- Дождитесь завершения обновления
- Удалите из параметров запуска строку "**ЗапуститьОбновлениеИнформационнойБазы**". Перезапустите 1С.
===== Первый запуск в режиме 1С:Предприятие =====
**ВНИМАНИЕ!**
Первый запуск необходимо производить с **полными правами**.
Выполнение регламентных и фоновых заданий следует приостановить.
- Запустите конфигурацию в **режиме 1С:Предприятие** от пользователя 1С с полными правами.
- Убедитесь, что механизм **дополнительных реквизитов и сведений** включен. В дополнительных сведениях будет храниться информация об ID звонка для документа «Событие» / «Телефонный звонок».\\ {{ :astpanel:fastintegration:100_1.png |}} {{ :astpanel:fastintegration:100_2.png |}}
- Выполните настройки для возможности работы с документами «Событие». \\ {{ :astpanel:fastintegration:100_3.png |}}
- В подсистеме "**Администрирование**" -> "**CRM: Интеграция с телефонией**" включите опцию «**Использовать Софтфон**» {{ :astpanel:fastintegration:101.png |}} {{ :astpanel:fastintegration:102.png |}}
- Перейдите в персональные настройки пользователя и установите возможность использования панели телефонии {{ :astpanel:fastintegration:103.png |}} {{ :astpanel:fastintegration:104.png |}} {{ :astpanel:fastintegration:105.png |}} {{ :astpanel:fastintegration:106.png |}} {{ :astpanel:fastintegration:107.png |}}
==== Завершение настройки ====
Операции требовательны к ресурсам ПК. Лучше их выполнить в нерабочее время.
- Запустите **1С Предприятие под полными правами** в пользовательском режиме
- **"Все функции" - "Обработки" - "МИКО: Заполнить индекс телефонов"**
- Выполните действие "**Заполнить коды городов**"
- Выполните действие "**Перезаполнить индекс номеров**"
На этом встраивание панели телефонии и журнала звонков в конфигурацию завершено. Теперь можно перейти к настройке продуктов в режиме 1С:Предприятие:
*[[astpanel:enterprise:managed#pervyj_zapusk| Настройка панели телефонии]]
*[[astpanel:statistic:settings| Настройка журнала звонков]]
[[astpanel:fastintegration|Обратно к перечню инструкций]]