Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
astpanel:designer:crm2 [2014/11/14 22:32] 127.0.0.1 внешнее изменение |
astpanel:designer:crm2 [2018/07/25 10:19] (текущий) tpor |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | ====== ИНТЕГРАЦИЯ ПАНЕЛИ ТЕЛЕФОНИИ С КОНФИГУРАЦИЕЙ CRM 2.0 ====== | + | ====== ИНТЕГРАЦИЯ ПАНЕЛИ ТЕЛЕФОНИИ ====== |
- | [[astpanel:designer:crm2:crm2062|Интеграция с CRM 2.0.6.2]] | + | [[astpanel:designer|Обратно, к списку конфигураций...]] |
- | [[astpanel:designer:crm2:crm2071|Интеграция с CRM 2.0.7.2]] | + | <note important> |
+ | * Руководство составлено для **[[http://wiki.miko.ru/astpanel:designer:crm2?rev=1426591844|1С:CRM 2.0.9.3]]**. | ||
+ | * Требуется панель телефонии версии **1.4.24.7**. | ||
+ | [[astpanel:designer:crm2:crm2071|Инструкции для прочих версий CRM2...]]</note> | ||
+ | <note warning>Сделайте **РЕЗЕРВНУЮ КОПИЮ** информационной базы.</note> | ||
+ | |||
+ | ===== Предварительная настройка ===== | ||
+ | |||
+ | Выполните предварительную настройку в режиме 1С:Предприятие согласно [[astpanel:designer:crm2:enterprise|данной инструкции]]. | ||
+ | |||
+ | ===== Настройка поддержки ===== | ||
+ | |||
+ | Необходимо включить возможность изменения конфигурации. | ||
+ | |||
+ | Порядок действий следующий: | ||
+ | - Убедитесь, что все пользователи завершили свою работу с программой. | ||
+ | - Сделайте **РЕЗЕРВНУЮ КОПИЮ** информационной базы. | ||
+ | - Запустите программу в режиме **"Конфигуратор"**. | ||
+ | - Откройте окно настройки поддержки "**Конфигуратор**" - "**Поддержка**" - "**Настройка поддержки**". {{ :doc:panel1ccrm20:support.png? |}} | ||
+ | - **Включите возможность изменения конфигурации**. На предупреждение программы ответьте утвердительно. | ||
+ | - В появившемся окне укажите, что объекты поставщика редактируются с сохранением поддержки. {{ :astpanel:designer:crm2:podderjca_conf_crm2.png?nolink |}} | ||
+ | |||
+ | Конфигурация готова к внесению изменений. | ||
+ | |||
+ | ===== Создание новых объектов ===== | ||
+ | - Вставьте внешнюю обработку, которая идет в поставке, присвойте ей имя "**МИКО_ПанельТелефонииДля1С**". | ||
+ | - Добавьте новый общий модуль **"МИКО_Софтфон"**. {{ :doc:panel1ccrm20:addmodule.png? |}} | ||
+ | - Установите флажки напротив свойств **"Сервер"** и **"Вызов сервера"** модуля. {{ :doc:panel1ccrm20:moduleproperties.png? |}} | ||
+ | - Скопируйте [[astpanel:designer:crm2:modulesrc|текст, расположенный по данной ссылке]], и вставьте его в модуль **"МИКО_Софтфон"**. | ||
+ | |||
+ | ===== Настройка прав доступа ===== | ||
+ | |||
+ | - Добавьте в конфигурацию новую роль **"МИКО_Софтфон"**. | ||
+ | - Снимите все отметки о правах выставляемые по умолчанию, а для обработки **МИКО_ПанельТелефонииДля1С** ("**МИКО_ПанельТелефонииДля1С**") установите все права.{{ :astpanel:designer:crm2:pravamikosoftfon.png |}} | ||
+ | - Аналогично, для обработки **"сфпСофтФонВнешняяПанель"**.{{ :astpanel:designer:crm2:pravadlyasoftfonprof.png |}} | ||
+ | - Назначьте право на использование компанды **"ОткрытьСофтФон"** {{ :astpanel:designer:crm2:pravadlyakomandi.png |}} | ||
+ | - В конфигурации перейдите к обработке "**сфпСофтФонВнешняяПанель**" | ||
+ | - Для команды "**ОткрытьСофтФон**" измените синоним на "**Панель телефонии**" {{ :astpanel:designer:crm2:sinonim_soffon.png?nolink |}} | ||
+ | ===== Изменение общих модулей ===== | ||
+ | |||
+ | - Передите к общему модулю "**сфпСофтФонПроКлиент**", | ||
+ | - К процедуре "**сфпПриНачалеРаботыСистемы**". В начало необходимо вставить фрагмент кода: <code 1с> | ||
+ | // PT1C / Панель телефонии Asterisk / Начало | ||
+ | НазваниеПанелиТелефонии = "Панель телефонии Asterisk (МИКО)"; | ||
+ | МИКО_Софтфон.ВыполнитьПервичнуюУстановку(НазваниеПанелиТелефонии); | ||
+ | Если МИКО_Софтфон.Использовать(НазваниеПанелиТелефонии) Тогда | ||
+ | |||
+ | Отказ = Ложь; | ||
+ | Попытка | ||
+ | // Версии 1.4.25.10+ обработка переименована в "МИКО_ПанельТелефонииДля1С" | ||
+ | сфпФормаТелефонВнешняяПанель = ПолучитьФорму("Обработка.МИКО_ПанельТелефонииДля1С.Форма.Форма"); | ||
+ | сфпФормаТелефонВнешняяПанель.ИнициализироватьПанельТелефонии(Истина, Отказ); | ||
+ | Исключение | ||
+ | Отказ = Истина; | ||
+ | КонецПопытки; | ||
+ | |||
+ | Если Отказ Тогда | ||
+ | Сообщить("Не удалось запустить ""Панель телефонии Asterisk"""); | ||
+ | Иначе | ||
+ | сфпОбработаноВнешнееСобытие = Истина; | ||
+ | КонецЕсли; | ||
+ | Возврат; | ||
+ | КонецЕсли; | ||
+ | // PT1C / Панель телефонии Asterisk / Конец | ||
+ | |||
+ | </code> | ||
+ | - К процедуре "**сфпПереподключитьСофтФон**". В начало необходимо вставить фрагмент кода:<code 1c>// PT1C / Панель телефонии Asterisk / Начало | ||
+ | Если МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)") Тогда | ||
+ | Если сфпФормаТелефонВнешняяПанель = Неопределено Тогда | ||
+ | Попытка | ||
+ | сфпФормаТелефонВнешняяПанель = ПолучитьФорму("Обработка.МИКО_ПанельТелефонииДля1С.Форма.Форма"); | ||
+ | сфпФормаТелефонВнешняяПанель.ИнициализироватьПанельТелефонии(Истина, Ложь); | ||
+ | Исключение | ||
+ | Сообщить("Не удалось запустить ""Панель телефонии Asterisk (МИКО)""!"); | ||
+ | Возврат; | ||
+ | КонецПопытки; | ||
+ | Иначе | ||
+ | // Переопределение обработки команды | ||
+ | Если сфпФормаТелефонВнешняяПанель.Открыта() Тогда | ||
+ | сфпФормаТелефонВнешняяПанель.Активизировать(); | ||
+ | Иначе | ||
+ | сфпФормаТелефонВнешняяПанель.Открыть(); | ||
+ | КонецЕсли; | ||
+ | КонецЕсли; | ||
+ | Возврат; | ||
+ | КонецЕсли; | ||
+ | // PT1C / Панель телефонии Asterisk / Конец | ||
+ | |||
+ | </code> | ||
+ | - К процедуре "**сфпПроверитьДоступностьСофтФона**". В начало необходимо вставить фрагмент кода:<code 1c> // PT1C / Панель телефонии Asterisk / Начало | ||
+ | Если МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)") Тогда | ||
+ | Возврат Истина; | ||
+ | КонецЕсли; | ||
+ | // PT1C / Панель телефонии Asterisk / Конец | ||
+ | </code> | ||
+ | ===== Изменение общих форм ===== | ||
+ | - Перейти к общей форме "**CRM_СообщенияПодключения**". В модуле формы, в начало процедуры "**ПриОткрытии**" необходимо добавить фрагмент кода: <code 1c> // PT1C / Панель телефонии Asterisk / Начало | ||
+ | Если МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)") Тогда | ||
+ | Возврат; | ||
+ | КонецЕсли; | ||
+ | // PT1C / Панель телефонии Asterisk / Конец | ||
+ | </code> | ||
+ | - Перейти к общей форме "**ПечатьДокументов**". **В конец** процедуры "**ПриСозданииНаСервере**" необходимо добавить фрагмент кода: <code 1c> // PT1C / Панель телефонии Asterisk / Начало | ||
+ | МИКО_Софтфон.ДобавитьКнопкиФаксаНаФормуПечати(ЭтаФорма); | ||
+ | // PT1C / Панель телефонии Asterisk / Конец | ||
+ | </code> | ||
+ | - **После** процедуры "**ПриСозданииНаСервере**", добавить дополнительные процедуры - обработки: <code 1c> | ||
+ | &НаКлиенте | ||
+ | Процедура МИКО_ОтправитьКакФакс() | ||
+ | Если НЕ МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)") | ||
+ | ИЛИ сфпФормаТелефонВнешняяПанель = Неопределено Тогда | ||
+ | Возврат; | ||
+ | КонецЕсли; | ||
+ | |||
+ | ТабличныеДокументы = Новый СписокЗначений; | ||
+ | Для Каждого НастройкаПечатнойФормы Из НастройкиПечатныхФорм Цикл | ||
+ | Если Элементы[НастройкаПечатнойФормы.ИмяРеквизита].Вывод = ИспользованиеВывода.Разрешить И НастройкаПечатнойФормы.Печатать Тогда | ||
+ | ТабличныеДокументы.Добавить(ЭтотОбъект[НастройкаПечатнойФормы.ИмяРеквизита], НастройкаПечатнойФормы.Представление); | ||
+ | КонецЕсли; | ||
+ | КонецЦикла; | ||
+ | |||
+ | Если ТабличныеДокументы.Количество()=0 Тогда | ||
+ | Возврат; | ||
+ | Иначе | ||
+ | ТабДок = ТабличныеДокументы[0].Значение; | ||
+ | КонецЕсли; | ||
+ | // отсылаем факс | ||
+ | сфпФормаТелефонВнешняяПанель.ОтправитьФайлПоФаксу(,ТабДок); | ||
+ | КонецПроцедуры // МИКО_ОтправитьКакФакс() | ||
+ | |||
+ | &НаКлиенте | ||
+ | Процедура МИКО_Позвонить() | ||
+ | Если НЕ МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)") | ||
+ | ИЛИ сфпФормаТелефонВнешняяПанель = Неопределено Тогда | ||
+ | Возврат; | ||
+ | КонецЕсли; | ||
+ | |||
+ | ПараметрыПечати = Неопределено; | ||
+ | Если Параметры.Свойство("ПараметрыПечати",ПараметрыПечати) | ||
+ | И ТипЗнч(ПараметрыПечати) = Тип("Структура") Тогда | ||
+ | |||
+ | Если ПараметрыПечати.Свойство("ОбъектыПечати") | ||
+ | И ТипЗнч(ПараметрыПечати.ОбъектыПечати) = Тип("Массив") | ||
+ | И ПараметрыПечати.ОбъектыПечати.Количество()>0 Тогда | ||
+ | |||
+ | Участник = МИКО_Софтфон.ПолучитьСсылкуНаУчастникаИзДокумента(ПараметрыПечати.ОбъектыПечати[0]); | ||
+ | Если ТипЗнч(Участник) = Тип("Массив") | ||
+ | И Участник.Количество()>0 Тогда | ||
+ | сфпФормаТелефонВнешняяПанель.ПозвонитьВыбравТелефон(Участник); | ||
+ | ИначеЕсли Участник <> Неопределено Тогда | ||
+ | СписокУчастников = Новый Массив(1); | ||
+ | СписокУчастников[0] = Участник; | ||
+ | сфпФормаТелефонВнешняяПанель.ПозвонитьВыбравТелефон(СписокУчастников); | ||
+ | КонецЕсли; | ||
+ | КонецЕсли; | ||
+ | КонецЕсли; | ||
+ | |||
+ | КонецПроцедуры | ||
+ | </code> | ||
+ | |||
+ | ===== Документ "CRM_Событие" ===== | ||
+ | |||
+ | В форму документа с именем "**ФормаДокумента**", в начало процедуры "**ОбработкаОповещения**" добавить: | ||
+ | |||
+ | <code 1c>&НаКлиенте | ||
+ | Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) | ||
+ | |||
+ | // PT1C // + | ||
+ | Если ИмяСобытия = "PT1C_ИсходящийВызовНеУдался" | ||
+ | И Параметр <> Неопределено | ||
+ | И Параметр.ОснованиеЗвонка = Объект.Ссылка Тогда | ||
+ | врТекстСообщения = ""+Формат(ТекущаяДата(),"ДЛФ=DDT") + " : Пытались позвонить клиету на номер "+Параметр.НомерТелефона+" - не дозвонились."; | ||
+ | Объект.Результат = Объект.Результат + ?(ЗначениеЗаполнено(Объект.Результат), Символы.ПС, "") + врТекстСообщения; | ||
+ | ИначеЕсли ИмяСобытия = "PT1C_ЗаписьСобытия" | ||
+ | И Параметр <> Неопределено | ||
+ | И Параметр.Ссылка = Объект.Ссылка Тогда | ||
+ | Если Параметр.НеДозвонились = Истина Тогда | ||
+ | врТекстСообщения = ""+Формат(ТекущаяДата(),"ДЛФ=DDT") + " : " | ||
+ | + "Звонок клиенту на номер "+Параметр.НомерТелефона+" - дозвонились, но требуется перезвонить"+Символы.ПС | ||
+ | + Параметр.Содержание+Символы.ПС; | ||
+ | Иначе | ||
+ | врТекстСообщения = ""+Формат(ТекущаяДата(),"ДЛФ=DDT") + " : " | ||
+ | + "Успешно дозвонились клиенту на номер "+Параметр.НомерТелефона+". Создан документ """+Источник+""", см. структуру подчиненности"+Символы.ПС | ||
+ | + Параметр.Содержание+Символы.ПС; | ||
+ | КонецЕсли; | ||
+ | Объект.Результат = Объект.Результат + ?(ЗначениеЗаполнено(Объект.Результат), Символы.ПС, "") + врТекстСообщения; | ||
+ | КонецЕсли; | ||
+ | // PT1C // - | ||
+ | |||
+ | </code> | ||
+ | |||
+ | ===== Добавление картинок ===== | ||
+ | |||
+ | В общие картинки добавить | ||
+ | - Картинку с именем "**МИКО_ЗаписьРазговора**" {{: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:crm2:crm_personal_settings.png?nolink|}} | ||
+ | |||
+ | - Перейдите в раздел "**Общие настройки**" | ||
+ | - "**Сервис**" - "**Настройки системы**", необходимо включить использование СофтФон {{ :astpanel:designer:crm2:crm_sofphone_settings.png?nolink |}} | ||
+ | |||
+ | [[astpanel:enterprise:managed|Перейти к инструкции по настройке в режиме предприятия]] | ||
+ | ===== Коментарии ===== | ||
+ | ~~DISQUS~~ |