====== ИНТЕГРАЦИЯ С УНФ ред. 1.5, ред. 1.6 ====== Что дает интеграция в сравнении с без интеграционным режимом работы? - Не нужно выполнять каких-либо дополнительных действий при запуске системы. Панель телефонии начинает работу сразу после запуска 1С в свернутом виде. - Работа продолжается даже после закрытия окна панели. Если поступит входящий звонок, панель отобразиться на экране. - Сделать звонок можно не только из панели телефонии, но и кнопками "Позвонить", расположенными в карточках контрагентов и различных документах. ===== Этап 1. Настройка правил поддержки ===== Для начала следует разблокировать головной объект конфигурации для внесения изменений. Порядок действий следующий. - Убедитесь, что пользователи завершили работу с программой. - **Выполните резервное копирование** - Запустите программу в режиме //"Конфигуратор"//. - Откройте окно настройки поддержки. {{ :doc:panel1ccrm20:support.png? |}} - Включите возможность изменения конфигурации. На предупреждение программы ответьте утвердительно. - В появившемся окне укажите, что объекты поставщика не редактируются. {{ :doc:panel1ccrm20:rules.png? |}} - Затем для головного объекта конфигурации (//"УправлениеНебольшойФирмой"//) установите правило поддержки на //"Объект поставщика редактируется с сохранением поддержки"//. Теперь конфигурация готова к внесению изменений. ===== Этап 2. Встраивание панели телефонии ===== Начать рекомендуем с [[astpanel:designer:optimization_managed|инструкции по оптимизации конфигурации]]. Необходимо встроить внешнюю обработку (панель телефонии) в конфигурации, настроить права доступа и ее автоматический запуск в фоновом режиме. ==== Изменение типовых объектов ==== Для работы панели телефонии в фоне и ее автоматического запуска внесем изменения в модуль управляемого приложения. - Откройте модуль управляемого приложения. {{ :doc:korenconf.png |}} - Определите глобальную переменную в начале модуля до раздела процедур. // PT1C / Панель телефонии Asterisk / Начало Перем сфпФормаТелефон Экспорт; // PT1C / Панель телефонии Asterisk / Конец - Перейдите к процедуре //"ПриНачалеРаботыСистемы"//. В конец процедуры вставьте код приведенный ниже. // PT1C / Панель телефонии Asterisk / Начало Попытка Отказ = Ложь; // получим форму - основной "модуль" панели телефонии сфпФормаТелефон = ПолучитьФорму("Обработка.МИКО_ПанельТелефонииДля1С.Форма.Форма"); Исключение сфпФормаТелефон = Неопределено; //Нет прав на обработку КонецПопытки; Если НЕ сфпФормаТелефон = Неопределено Тогда сфпФормаТелефон.ИнициализироватьПанельТелефонии(Истина, Отказ); КонецЕсли; // проверим успешность инициализации Если Отказ Тогда Сообщить("Не удалось запустить ""МИКО Панель телефонии Asterisk"""); КонецЕсли; // PT1C / Панель телефонии Asterisk / Конец - Перейдите к процедуре //"ПриЗавершенииРаботыСистемы"// (создайте процедуру, если ее нет). В конец процедуры вставьте код приведенный ниже. // PT1C / Панель телефонии Asterisk / Начало Если сфпФормаТелефон <> Неопределено Тогда сфпФормаТелефон.ЗавершитьРаботу(Истина); КонецЕсли; // PT1C / Панель телефонии Asterisk / Конец ==== Добавление обработки и подсистемы в конфигурацию ==== * Вставьте внешнюю обработку, которая идет в поставке, в конфигурацию, она должна называться **МИКО_ПанельТелефонииДля1С**. * Добавьте в обработку **МИКО_ПанельТелефонииДля1С** команду "**ОткрытьПанельТелефонии**" * Установите для созданной команды свойство "**Группа**" в значение "**Панель навигации.Важное**".{{ :doc:panel1cunf:commandopen_new.png |}} * Далее требуется описать обработчик команды "**ОткрытьПанельТелефонии**". &НаКлиенте Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды) Если сфпФормаТелефон <> Неопределено Тогда Если сфпФормаТелефон.Открыта() Тогда сфпФормаТелефон.Активизировать(); Иначе сфпФормаТелефон.Открыть(); КонецЕсли; КонецЕсли; КонецПроцедуры * Создайте новую подсистему "**МИКО_ПанельТелефонии**" и включите в ее состав обработку **МИКО_ПанельТелефонииДля1С**. * В командном интерфейсе выполнить настройку - **отключить стандартную команду запуска обрабокти** {{ :astpanel:designer:command_interface.png?nolink |}} ==== Настройка ролей ==== - Добавьте в конфигурацию новую роль **МИКО_Софтфон**. - Снимите все отметки о правах выставляемые по умолчанию {{ :doc:panel1ccrm20:all_roles.png?450 |}} - Для обработки **МИКО_ПанельТелефонииДля1С** а также для команды //"ОткрытьПанельТелефонии"// отметьте все доступные права. {{ :doc:panel1ccrm20:role.png? | Права на обработку.}} {{ :astpanel:designer:permit_command_open_new.png?nolink&450 |Права на команду "ОткрытьПанельТелефонии"}} - Для подсистемы **МИКО_ПанельТелефонии** отметьте все доступные права. {{ :astpanel:designer:permit_csubsystem.png?nolink&450 |}} - Добавьте роль в состав подсистемы **МИКО_ПанельТелефонии**. - Обновите конфигурацию базы данных. {{ :doc:panel1ccrm20:confupd.png? |}} Далее можно переходить к [[astpanel:enterprise:managed |настройке в режиме 1С:Предприятие 8]], шаги описанные ниже являются опциональными. ===== Этап 3. Добавление кнопки "Позвонить" в область команд форм справочников и документов ===== Чтобы задействовать типовые команды вызова в формах справочников выполните инструкции по [[astpanel:designer:unf_callbutton|ссылке]] Для автоматизации набора номера телефона добавим кнопку "**Позвонить**" в область команд форм некоторых справочников и документов. Порядок действий следующий. - Создайте общий модуль //"МИКО_Софтфон"//. - Скопируйте [[astpanel:designer:unf:modulesrc|текст, расположенный по данной ссылке]], и вставьте его в модуль. - Добавьте в обработку **МИКО_ПанельТелефонииДля1С** команду "**Позвонить**" и поместите в модуль команды [[astpanel:designer:unf:modulecall|текст, расположенный по данной ссылке]]. - Установите свойство "**Группа**" в значение "**Командная панель формы.Важное**".{{ :doc:panel1cunf:commandcall.png |}} - Свойство "**Тип параметра команды**" должно иметь составной тип данных: * //СправочникСсылка.КонтактныеЛица//; * //СправочникСсылка.Контрагент//; * //ДокументСсылка.Событие//; * //ДокументСсылка.ЗаказПокупателя//; * //ДокументСсылка.ЗаказПоставщику//. Вы может указать и другие типы объектов, в которых будет отображена команда "**Позвонить**". Основным критерием для выбора таких объектов является наличие табличной части "**КонтактнаяИнформация**", если это справочник, или реквизита "**Контрагент**", если это документ. В ином случае может потребоваться изменение текста модуля команды. При желании можно добавить картинку на кнопку команды, предварительно разместив ее в библиотеке картинок. - Раскройте дерево конфигурации на группе "**Общие картинки**" и добавьте в нее новый элемент "**МИКО_Телефон**". - Загрузите в созданный объект изображение для кнопки "**Позвонить**" ({{:doc:phonegray.png|}}). - Вернитесь к команде "**Позвонить**" обработки **МИКО_ПанельТелефонииДля1С** и заполните свойства "**Отображение**" в значение "**Картинка и текст**", "**Картинка**" в значение "**МИКО_Телефон**". Для ранее созданной роли "**МИКО_Софтфон**" добавьте права на доступ к команде "**Позвонить**". {{ :astpanel:designer:permit_command_dial.png?nolink&450 |}} Обновите конфигурацию базы данных и запустите программу в режиме //"Предприятие"//. Результат работы показан на рисунке ниже. {{ :doc:panel1cunf:showcommandcall.png |}} ===== Этап 4. Добавление кнопки "Прослушать запись" в область команд документа "Событие" ===== Для создания возможности прослушать запись телефонного разговора из документа "Событие" добавим кнопку "**Прослушать звонок**" в область команд формы документа. При нажатии на кнопку запись будет воспроизведена в трубке телефона. Документ должен быть связан с телефонным звонком посредством дополнительного свойства "ID_Звонок", значение которого - хранить идентификатор звонка. Дополнительные свойства документа будут созданы автоматически по завершению работы помощника первоначальной работы. Порядок действий следующий. - Добавьте в обработку //МИКО_ПанельТелефонииДля1С// команду //"ПрослушатьЗапись"// и поместите в модуль команды [[astpanel:designer:unf:modulelistenrecord|текст, расположенный по данной ссылке]]. - Установите свойство //"Группа"// в значение //"Командная панель формы.Важное"//. - Свойство //"Тип параметра команды"// должно иметь тип данных: //ДокументСсылка.Событие//. При желании можно добавить картинку на кнопку команды, предварительно разместив ее в библиотеке картинок. - Раскройте дерево конфигурации на группе //"Общие картинки"// и добавьте в нее новый элемент //"МИКО_ЗаписьРазговора"//. - Загрузите в созданный объект изображение для кнопки //"Прослушать запись"// ({{:doc:cassetetape16.png|}}). - Вернитесь к команде //"ПрослушатьЗапись"// обработки //МИКО_ПанельТелефонииДля1С// и заполните свойства //"Отображение"// в значение //"Картинка и текст"//, //"Картинка"// в значение //"МИКО_ЗаписьРазговора"//. Данная команда будет доступна только для пользователей с полными правами. Вы можете оставить так или предусмотреть для этого отдельную роль. Не стоит добавлять доступ к этой команде в роль "МИКО_Софтфон", т.к. в этом случае все пользователи софтфона получат доступ к записям других сотрудников. Обновите конфигурацию базы данных и запустите программу в режиме //"Предприятие"//. Результат работы показан на рисунке ниже. {{ :doc:panel1cunf:showcommandlisten.png |}}