====== ИНТЕГРАЦИЯ ПАНЕЛИ ТЕЛЕФОНИИ В CRM 3.0 ====== [[astpanel:designer|Обратно, к списку конфигураций...]] Инструкция проверена с конфигурациями: * 1С:CRM, версии **3.0.9.4**; * Управление торговлей и взаимоотношениями с клиентами, версии **3.0.8.12**; * Управление нашей фирмой **1.6.13.60** + CRM **3.0.6.9**; * 1С:Комплексная автоматизация **2.4.8.92** + Модуль 1C:CRM **3.0.15.7**; * 1С:ERP Управление предприятием **2.4.9.70** + Модуль 1С:CRM **3.0.15.8**. Требуется панель телефонии версии **1.4.26.31+** Сделайте **РЕЗЕРВНУЮ КОПИЮ** информационной базы. ===== Настройка поддержки ===== Необходимо включить возможность изменения конфигурации. Порядок действий следующий: - Убедитесь, что все пользователи завершили свою работу с программой. - Сделайте **РЕЗЕРВНУЮ КОПИЮ** информационной базы. - Запустите программу в режиме **"Конфигуратор"**. - Откройте окно настройки поддержки "**Конфигуратор**" - "**Поддержка**" - "**Настройка поддержки**". {{ :doc:panel1ccrm20:support.png? |}} - **Включите возможность изменения конфигурации**. На предупреждение программы ответьте утвердительно. - В появившемся окне укажите, что объекты поставщика редактируются с сохранением поддержки. {{ :astpanel:designer:9_.png |}} Конфигурация готова к внесению изменений. ===== Создание новых объектов ===== Начать рекомендуем с [[astpanel:designer:optimization_managed|инструкции по оптимизации конфигурации]]. - Вставьте внешнюю обработку, которая идет в поставке, присвойте ей имя "**МИКО_ПанельТелефонииДля1С**". - Добавьте новый общий модуль **"МИКО_Софтфон"**. {{ :doc:panel1ccrm20:addmodule.png? |}} - Установите флажки напротив свойств **"Сервер"** и **"Вызов сервера"** модуля. {{ :doc:panel1ccrm20:moduleproperties.png? |}} - Скопируйте [[astpanel:designer:crm2:modulesrc_2_0_12|текст, расположенный по данной ссылке]], и вставьте его в модуль **"МИКО_Софтфон"**. ===== Дополнительные объекты для интеграции с подсистемой CRM 3 ===== Для выполнения пункта необходим модуль оптимизации версии **1.19+** - Скачайте конфигурацию оптимизации версии 1.19. Конфигурация оптимизации доступна по ссылке, и в дистрибутиве поставки панели телефонии версии **1.4.26.25+** - **"Конфигурация" - "Сравнить и объеденить с конфигурацией из файла"** - Выберите файл конфигурации "**opt_v1_19.cf**" (дистрибутив панели телефонии, каталог "**Оптимизация**") - Снимите флажок со всех объектов конфигурации {{ :astpanel:designer:obiedinenie_conf.png?350 |}} - Меню "**Действия**" - "**Отметить по подсистемам файла**" {{ :astpanel:designer:obiedinenie_conf4.png?350 |}} - Выберите **только** подсистему "**МИКО_ПанельТелефонии_CRM3**" {{ :astpanel:designer:obiedinenie_conf5.png?300 |}} - Выполните действие "**Установить**" - Выполните действие "**Выполнить**" (сравнение и объединение будет завершено) ===== Настройка прав доступа ===== - Добавьте в конфигурацию новую роль **"МИКО_Софтфон"**. - Снимите все отметки о правах выставляемые по умолчанию, а для обработки **МИКО_ПанельТелефонииДля1С** ("**МИКО_ПанельТелефонииДля1С**") установите все права.{{ :astpanel:designer:crm2:pravamikopanel.png |}} ===== Изменение глобального модуля ===== - Откройте модуль управляемого приложения. {{ astpanel:designer:crm2:korencrm.png |}} - Перейдите к процедуре //"ПриЗавершенииРаботыСистемы"// (создайте процедуру, если ее нет). В конец процедуры вставьте код приведенный ниже. // PT1C / Панель телефонии Asterisk / Начало Если сфпПанельУправления <> Неопределено И ТипЗнч(сфпПанельУправления) = Тип("УправляемаяФорма") И Найти(сфпПанельУправления.ИмяФормы,"Обработка.МИКО_ПанельТелефонииДля1С")<>0 Тогда сфпПанельУправления.ЗавершитьРаботу(Истина); КонецЕсли; // PT1C / Панель телефонии Asterisk / Конец ===== Изменение общих модулей ===== - Передите к общему модулю "**сфпСофтФонПроКлиент**", - К процедуре "**сфпПодключитьСофтФон**". В начало необходимо вставить фрагмент кода: // PT1C / Панель телефонии Asterisk / Начало НазваниеПанелиТелефонии = "Панель телефонии Asterisk (МИКО)"; Если сфпПанельУправления = Неопределено Тогда МИКО_Софтфон.ВыполнитьПервичнуюУстановку(НазваниеПанелиТелефонии); КонецЕсли; Если МИКО_Софтфон.Использовать(НазваниеПанелиТелефонии) Тогда Если сфпПанельУправления = Неопределено Тогда Попытка сфпПанельУправления = ПолучитьФорму("Обработка.МИКО_ПанельТелефонииДля1С.Форма.Форма"); сфпПанельУправления.ИнициализироватьПанельТелефонии(Истина, Ложь); Исключение Сообщить("Не удалось запустить ""Панель телефонии Asterisk (МИКО)""!"); Возврат; КонецПопытки; Иначе // Переопределение обработки команды Если сфпПанельУправления.Открыта() Тогда сфпПанельУправления.Активизировать(); Иначе сфпПанельУправления.Открыть(); КонецЕсли; КонецЕсли; Возврат; КонецЕсли; // PT1C / Панель телефонии Asterisk / Конец - К процедуре "**сфпПозвонитьВыбравТелефон**". В начало необходимо вставить фрагмент кода: // PT1C / Панель телефонии Asterisk / Начало Если МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)") Тогда Если ДанныеЗаполнения <> Неопределено И ДанныеЗаполнения.Свойство("Основание") Тогда ОснованиеЗвонка = Новый Структура("ОснованиеЗвонка", ДанныеЗаполнения.Основание); Если ДанныеЗаполнения.Свойство("Взаимодействие") Тогда ОснованиеЗвонка.Вставить("Взаимодействие",ДанныеЗаполнения.Взаимодействие); КонецЕсли; КонецЕсли; сфпПанельУправления.ПозвонитьВыбравТелефон(СписокОбъектов,,ОснованиеЗвонка); сфпДанныеЗаполнения = ДанныеЗаполнения; Возврат; КонецЕсли; // PT1C / Панель телефонии Asterisk / Конец - К процедуре "**сфпПроверитьДоступностьСофтФон**". В начало необходимо вставить фрагмент кода: // PT1C / Панель телефонии Asterisk / Начало Если МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)") Тогда Возврат Истина; КонецЕсли; // PT1C / Панель телефонии Asterisk / Конец - К процедуре "**сфпПолучитьФайлРазговора**". В начало необходимо вставить фрагмент кода: // PT1C / Панель телефонии Asterisk / Начало Если МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)") Тогда Если сфпПанельУправления<>Неопределено Тогда сфпПанельУправления.ПрослушатьЗвонокПоИдентификатору(ИдентификаторЗаписи); КонецЕсли; Возврат; КонецЕсли; // PT1C / Панель телефонии Asterisk / Конец - К функции "**сфпПозвонить**". В начало необходимо вставить фрагмент кода: Фрагмент кода предназначен для конфигураций с подсистемой CRM версии **3.0.13.1+**. Для более ранних версий используйте код по [[astpanel:designer:crm3_0:makecall|ссылке]]. // PT1C / Панель телефонии Asterisk / Начало Если МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)") Тогда ОснованиеЗвонка = Неопределено; ДопПараметры = Вычислить("ДопПараметры"); Если ДопПараметры = Неопределено Тогда ДопПараметры = Вычислить("ДанныеЗаполнения"); КонецЕсли; Если ДопПараметры <> Неопределено И ДопПараметры.Свойство("ДанныеЗаполнения") Тогда ДанныеЗаполнения = ДопПараметры.ДанныеЗаполнения; Иначе ДанныеЗаполнения = ДопПараметры; КонецЕсли; Если ДанныеЗаполнения <> Неопределено И ДанныеЗаполнения.Свойство("Основание") Тогда ОснованиеЗвонка = Новый Структура("ОснованиеЗвонка, НомерТелефона", ДанныеЗаполнения.Основание, Телефон); Если ДанныеЗаполнения.Свойство("Взаимодействие") Тогда ОснованиеЗвонка.Вставить("Взаимодействие",ДанныеЗаполнения.Взаимодействие); КонецЕсли; КонецЕсли; сфпПанельУправления.Позвонить(Телефон,ОснованиеЗвонка); сфпДанныеЗаполнения = ДанныеЗаполнения; Возврат Истина; КонецЕсли; // PT1C / Панель телефонии Asterisk / Конец ===== Изменение общих форм ===== - Перейти к общей форме "**CRM_СообщенияПодключения**". В модуле формы, в процедуре "**ПриСозданииНаСервере**" необходимо добавить фрагмент кода: Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Если НЕ Параметры.Свойство("ВидФормы") Тогда Отказ = Истина; ИначеЕсли Параметры.ВидФормы = "СофтФон" Тогда // PT1C / Панель телефонии Asterisk / Начало Если МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)") Тогда Возврат; КонецЕсли; // PT1C / Панель телефонии Asterisk / Конец // *** *** *** // ВНИМАНИЕ ПРОПУЩЕНА ЧАСТЬ ИСХОДНОГО КОДА // *** *** *** КонецЕсли; КонецПроцедуры // ПриСозданииНаСервере() - Перейти к общей форме "**ПечатьДокументов**". В **конец** процедуры "**ПриСозданииНаСервере**" необходимо добавить фрагмент кода: // PT1C / Панель телефонии Asterisk / Начало МИКО_Софтфон.ДобавитьКнопкиФаксаНаФормуПечати(ЭтаФорма); // PT1C / Панель телефонии Asterisk / Конец - **После** процедуры "**ПриСозданииНаСервере**", добавить дополнительные процедуры - обработки: &НаКлиенте Процедура МИКО_ОтправитьКакФакс() Если НЕ МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)") ИЛИ сфпПанельУправления = Неопределено Тогда Возврат; КонецЕсли; ТабличныеДокументы = Новый СписокЗначений; Для Каждого НастройкаПечатнойФормы Из НастройкиПечатныхФорм Цикл Если Элементы[НастройкаПечатнойФормы.ИмяРеквизита].Вывод = ИспользованиеВывода.Разрешить И НастройкаПечатнойФормы.Печатать Тогда ТабличныеДокументы.Добавить(ЭтотОбъект[НастройкаПечатнойФормы.ИмяРеквизита], НастройкаПечатнойФормы.Представление); КонецЕсли; КонецЦикла; Если ТабличныеДокументы.Количество()=0 Тогда Возврат; Иначе ТабДок = ТабличныеДокументы[0].Значение; КонецЕсли; // отсылаем факс сфпПанельУправления.ОтправитьФайлПоФаксу(,ТабДок); КонецПроцедуры // МИКО_ОтправитьКакФакс() &НаКлиенте Процедура МИКО_Позвонить() Если НЕ МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)") ИЛИ сфпПанельУправления = Неопределено Тогда Возврат; КонецЕсли; ПараметрыПечати = Неопределено; Если ТипЗнч(ОбъектыПечати) = Тип("СписокЗначений") И ОбъектыПечати.Количество() > 0 Тогда Участник = МИКО_Софтфон.ПолучитьСсылкуНаУчастникаИзДокумента(ОбъектыПечати[0].Значение); Если ТипЗнч(Участник) = Тип("Массив") И Участник.Количество()>0 Тогда сфпПанельУправления.ПозвонитьВыбравТелефон(Участник); ИначеЕсли Участник <> Неопределено Тогда СписокУчастников = Новый Массив(1); СписокУчастников[0] = Участник; сфпПанельУправления.ПозвонитьВыбравТелефон(СписокУчастников); КонецЕсли; КонецЕсли; КонецПроцедуры ===== Добавление картинок ===== В общие картинки добавить - Картинку с именем "**МИКО_ЗаписьРазговора**" {{:astpanel:designer:crm2:miko_zapisrazgovora.png?nolink|}} - Картинку с именем "**МИКО_Телефон**" {{:astpanel:designer:crm2:miko_telefon.png?nolink|}} - Картинку с именем "**МИКО_ОтправитьФакс**" {{:astpanel:designer:crm2:miko_otpravitfaks.png?nolink|}} [[astpanel:designer|Обратно, к списку конфигураций...]] ===== Первый запуск ===== - Необходимо запустить 1С под учетной записью администратора 1С. - Перейдите в раздел "**Настройки**" -> "**Настройки системы**" -> "**Интеграция с телефонией(Софтфон)**" {{ :astpanel:designer:1o.png |}}\\ - Необходимо включить использование СофтФона. Для возможности прослушивания записей разговоров из документа "Телефонный звонок" нужно установить настройку "Система записи переговоров, настроенная на сервере СофтФон" {{ :astpanel:designer:CRM3_Softfon_Setup_1.png |}} - Перейдите в раздел "**Настройки**" -> **Администрирование** -> **Настройки пользователей и прав** {{ :astpanel:designer:3v.png |}} - Перейдите в раздел **"Пользователи"** {{ :astpanel:designer:4v.png |}} - Для **текущего** пользователя следует перейти в "**Персональные настройки**". {{ :astpanel:designer:5y.png |}} - Включите опции: * "**Использовать СофтФон**" * "**Панель телефонии Asterisk (МИКО)**" * "**Использовать внутреннюю панель СофтФон**" {{ :astpanel:designer:6d.png |}} ===== Как запустить панель телефонии 1С? ===== Для запуска панели телефонии перейдите в **Органайзер** -> **Интеграция** и запустите **ПанельСофтфон** {{ :astpanel:designer:7a.png |}} ===== Настройки пользователя в панели для конфигураций CRM 3 ===== Для конфигураций с подсистемой CRM 3 в настройках панели телефонии можно установить параметр "**Открывать в начале разговора**" - "**Согласно персональных настроек CRM**"(данная настройка персональная, ее нужно установить у каждого пользователя панели телефонии). При этом будут использоваться стандартные механизмы CRM. {{ :astpanel:designer:CRM3_Softfon_Setup_2.png |}} В персональных настройках пользователя CRM можно указать различные действия на входящие и исходящие звонки. {{ :astpanel:designer:CRM3_Softfon_Setup_3.png |}} [[astpanel:enterprise:managed|Перейти к инструкции по настройке в режиме предприятия]] ===== Коментарии ===== ~~DISQUS~~