====== ИНТЕГРАЦИЯ ПАНЕЛИ ТЕЛЕФОНИИ ======
[[astpanel:designer|Обратно, к списку конфигураций...]]
* Руководство составлено для **[[http://wiki.miko.ru/astpanel:designer:unf_crm2?rev=1426597229|1С:УНФ 1.5.2.38 с CRM 2.0.9.1]]**.
* Требуется панель телефонии версии **1.4.24.7**.
[[astpanel:designer:crm2:crm2071|Инструкции для прочих версий CRM2...]]
Сделайте **РЕЗЕРВНУЮ КОПИЮ** информационной базы.
===== Настройка поддержки =====
Необходимо включить возможность изменения конфигурации.
Порядок действий следующий:
- Убедитесь, что все пользователи завершили свою работу с программой.
- Сделайте **РЕЗЕРВНУЮ КОПИЮ** информационной базы.
- Запустите программу в режиме **"Конфигуратор"**.
- Откройте окно настройки поддержки "**Конфигуратор**" - "**Поддержка**" - "**Настройка поддержки**". {{ :doc:panel1ccrm20:support.png? |}}
- **Включите возможность изменения конфигурации**. На предупреждение программы ответьте утвердительно.
- В появившемся окне укажите, что объекты поставщика редактируются с сохранением поддержки. {{ :astpanel:designer:support_crm2_unf15238.png?nolink |}}
Конфигурация готова к внесению изменений.
===== Создание новых объектов =====
- Вставьте внешнюю обработку, которая идет в поставке, присвойте ей имя "**МИКО_ПанельТелефонииДля1С**".
- Добавьте новый общий модуль **"МИКО_Софтфон"**. {{ :doc:panel1ccrm20:addmodule.png? |}}
- Установите флажки напротив свойств **"Сервер"** и **"Вызов сервера"** модуля. {{ :doc:panel1ccrm20:moduleproperties.png? |}}
- Скопируйте [[astpanel:designer:crm2:modulesrc|текст, расположенный по данной ссылке]], и вставьте его в модуль **"МИКО_Софтфон"**.
===== Настройка прав доступа =====
- Добавьте в конфигурацию новую роль **"МИКО_Софтфон"**.
- Снимите все отметки о правах выставляемые по умолчанию, а для обработки **МИКО_ПанельТелефонииДля1С** установите все права.{{ :astpanel:designer:crm2:pravamikosoftfon.png |}}
- Аналогично, для обработки **"сфпСофтФонВнешняяПанель"**.{{ :astpanel:designer:crm2:pravadlyasoftfonprof.png |}}
- Назначьте право на использование компанды **"ОткрытьСофтФон"** {{ :astpanel:designer:crm2:pravadlyakomandi.png |}}
- В конфигурации перейдите к обработке "**сфпСофтФонВнешняяПанель**"
- Для команды "**ОткрытьСофтФон**" измените синоним на "**Панель телефонии**" {{ :astpanel:designer:crm2:sinonim_soffon.png?nolink |}}
===== Изменение общих модулей =====
- Передите к общему модулю "**сфпСофтФонПроКлиент**",
- К процедуре "**CRM_ПриНачалеРаботыСистемы**". В начало необходимо вставить фрагмент кода:
// PT1C / Панель телефонии Asterisk / Начало
НазваниеПанелиТелефонии = "Панель телефонии Asterisk (МИКО)";
МИКО_Софтфон.ВыполнитьПервичнуюУстановку(НазваниеПанелиТелефонии);
Если МИКО_Софтфон.Использовать(НазваниеПанелиТелефонии) Тогда
Отказ = Ложь;
Попытка
сфпФормаТелефонВнешняяПанель = ПолучитьФорму("Обработка.МИКО_ПанельТелефонииДля1С.Форма.Форма");
сфпФормаТелефонВнешняяПанель.ИнициализироватьПанельТелефонии(Истина, Отказ);
Исключение
Отказ = Истина;
КонецПопытки;
Если Отказ Тогда
Сообщить("Не удалось запустить ""Панель телефонии Asterisk""");
Иначе
сфпОбработаноВнешнееСобытие = Истина;
КонецЕсли;
Возврат;
КонецЕсли;
// PT1C / Панель телефонии Asterisk / Конец
- К процедуре "**сфпПереподключитьСофтФон**". В начало необходимо вставить фрагмент кода:// PT1C / Панель телефонии Asterisk / Начало
Если МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)") Тогда
Если сфпФормаТелефонВнешняяПанель = Неопределено Тогда
Попытка
сфпФормаТелефонВнешняяПанель = ПолучитьФорму("Обработка.МИКО_ПанельТелефонииДля1С.Форма.Форма");
сфпФормаТелефонВнешняяПанель.ИнициализироватьПанельТелефонии(Истина, Ложь);
Исключение
Сообщить("Не удалось запустить ""Панель телефонии Asterisk (МИКО)""!");
Возврат;
КонецПопытки;
Иначе
// Переопределение обработки команды
Если сфпФормаТелефонВнешняяПанель.Открыта() Тогда
сфпФормаТелефонВнешняяПанель.Активизировать();
Иначе
сфпФормаТелефонВнешняяПанель.Открыть();
КонецЕсли;
КонецЕсли;
Возврат;
КонецЕсли;
// PT1C / Панель телефонии Asterisk / Конец
- К процедуре "**сфпПроверитьДоступностьСофтФона**". В начало необходимо вставить фрагмент кода: // PT1C / Панель телефонии Asterisk / Начало
Если МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)") Тогда
Возврат Истина;
КонецЕсли;
// PT1C / Панель телефонии Asterisk / Конец
===== Изменение общих форм =====
- Перейти к общей форме "**CRM_СообщенияПодключения**". В модуле формы, **в начало** процедуры "**ПриОткрытии**" необходимо добавить фрагмент кода: // PT1C / Панель телефонии Asterisk / Начало
Если МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)") Тогда
Возврат;
КонецЕсли;
// PT1C / Панель телефонии Asterisk / Конец
- Перейти к общей форме "**ПечатьДокументов**". **В конец** процедуры "**ПриСозданииНаСервере**" необходимо добавить фрагмент кода: // PT1C / Панель телефонии Asterisk / Начало
МИКО_Софтфон.ДобавитьКнопкиФаксаНаФормуПечати(ЭтаФорма);
// PT1C / Панель телефонии Asterisk / Конец
- **После** процедуры "**ПриСозданииНаСервере**", добавить дополнительные процедуры - обработки:
&НаКлиенте
Процедура МИКО_ОтправитьКакФакс()
Если НЕ МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)")
ИЛИ сфпФормаТелефонВнешняяПанель = Неопределено Тогда
Возврат;
КонецЕсли;
ТабличныеДокументы = Новый СписокЗначений;
Для Каждого НастройкаПечатнойФормы Из НастройкиПечатныхФорм Цикл
Если Элементы[НастройкаПечатнойФормы.ИмяРеквизита].Вывод = ИспользованиеВывода.Разрешить И НастройкаПечатнойФормы.Печатать Тогда
ТабличныеДокументы.Добавить(ЭтотОбъект[НастройкаПечатнойФормы.ИмяРеквизита], НастройкаПечатнойФормы.Представление);
КонецЕсли;
КонецЦикла;
Если ТабличныеДокументы.Количество()=0 Тогда
Возврат;
Иначе
ТабДок = ТабличныеДокументы[0].Значение;
КонецЕсли;
// отсылаем факс
сфпФормаТелефонВнешняяПанель.ОтправитьФайлПоФаксу(,ТабДок);
КонецПроцедуры // МИКО_ОтправитьКакФакс()
&НаКлиенте
Процедура МИКО_Позвонить()
Если НЕ МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)")
ИЛИ сфпФормаТелефонВнешняяПанель = Неопределено Тогда
Возврат;
КонецЕсли;
ПараметрыПечати = Неопределено;
Если Параметры.Свойство("ПараметрыПечати",ПараметрыПечати)
И ТипЗнч(ПараметрыПечати) = Тип("Структура") Тогда
Если ПараметрыПечати.Свойство("ОбъектыПечати")
И ТипЗнч(ПараметрыПечати.ОбъектыПечати) = Тип("Массив")
И ПараметрыПечати.ОбъектыПечати.Количество()>0 Тогда
Участник = МИКО_Софтфон.ПолучитьСсылкуНаУчастникаИзДокумента(ПараметрыПечати.ОбъектыПечати[0]);
Если ТипЗнч(Участник) = Тип("Массив")
И Участник.Количество()>0 Тогда
сфпФормаТелефонВнешняяПанель.ПозвонитьВыбравТелефон(Участник);
ИначеЕсли Участник <> Неопределено Тогда
СписокУчастников = Новый Массив(1);
СписокУчастников[0] = Участник;
сфпФормаТелефонВнешняяПанель.ПозвонитьВыбравТелефон(СписокУчастников);
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецПроцедуры
===== Документ "CRM_Событие" =====
В форму документа с именем "**ФормаДокумента**", в начало процедуры "**ОбработкаОповещения**" добавить:
&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
// PT1C // +
Если ИмяСобытия = "PT1C_ИсходящийВызовНеУдался"
И Параметр <> Неопределено
И Параметр.ОснованиеЗвонка = Объект.Ссылка Тогда
врТекстСообщения = ""+Формат(ТекущаяДата(),"ДЛФ=DDT") + " : Пытались позвонить клиету на номер "+Параметр.НомерТелефона+" - не дозвонились.";
Объект.Результат = Объект.Результат + ?(ЗначениеЗаполнено(Объект.Результат), Символы.ПС, "") + врТекстСообщения;
ИначеЕсли ИмяСобытия = "PT1C_ЗаписьСобытия"
И Параметр <> Неопределено
И Параметр.Ссылка = Объект.Ссылка Тогда
Если Параметр.НеДозвонились = Истина Тогда
врТекстСообщения = ""+Формат(ТекущаяДата(),"ДЛФ=DDT") + " : "
+ "Звонок клиенту на номер "+Параметр.НомерТелефона+" - дозвонились, но требуется перезвонить"+Символы.ПС
+ Параметр.Содержание+Символы.ПС;
Иначе
врТекстСообщения = ""+Формат(ТекущаяДата(),"ДЛФ=DDT") + " : "
+ "Успешно дозвонились клиенту на номер "+Параметр.НомерТелефона+". Создан документ """+Источник+""", см. структуру подчиненности"+Символы.ПС
+ Параметр.Содержание+Символы.ПС;
КонецЕсли;
Объект.Результат = Объект.Результат + ?(ЗначениеЗаполнено(Объект.Результат), Символы.ПС, "") + врТекстСообщения;
КонецЕсли;
// PT1C // -
===== Добавление картинок =====
В общие картинки добавить
- Картинку с именем "**МИКО_ЗаписьРазговора**" {{: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С.
- Перейдите в раздел "**Настройки**"
- Для текущего пользователя следует перейти в "**Настройки приложения**" - "**Настройки пользователей и прав"**
- Перейти к справочнику "**Пользователи**"
- Для текущего пользователя открыть "**Персональные настройки**".
- Включите опции:
* "**Использовать СофтФон**"
* "**Панель телефонии Asterisk (МИКО)**"
* "**Использовать внутреннюю панель СофтФон**" {{ :astpanel:designer:personal_settings_user_unf_crm.png?nolink|}}
- Перейдите в раздел "**Настройки**"
- Перейдите по ссылке "**CRM: Работа с СофтФон**", необходимо включить использование Софтфон: {{ :astpanel:designer:softphone_crm_unf.png?nolink|}}
[[astpanel:enterprise:managed|Перейти к инструкции по настройке в режиме предприятия]]
===== Коментарии =====
~~DISQUS~~