Инструменты пользователя

Инструменты сайта


Боковая панель

ringophone:integration_upp

Интеграция Ringophone в Управление производственным предприятием 1.3 в режиме обычного приложения

Ниже описан вариант интеграции как видим его мы. Вы не обязаны использовать наш пример и можете интегрировать так, как удобно для вашей компании.

Включить возможность изменения

Меню Конфигурация→Поддержка→Настройка поддержки. В открывшемся окне нажать кнопку «Включить возможность изменения». В группе «Объекты с правилом изменения разрешены» выбрать «Объект поставщика редактируется с сохранением поддержки».

Объединение с конфигурацией телефонии

Для упрощения интеграции в УПП 1.3 мы подготовили специальную выгрузку конфигурации. Она содержит справочники, общие модули и команды которые помогут в интеграции с RingoPhone.

Конфигурация была отправлена вам в письме при скачивании RingoPhone с нашего сайта.

Для объединения конфигураций выполните меню Конфигурация→Сравнить, объединить с конфигурацией из файла и выберите скаченный файл RingoPhone_Integration_OF.cf.
Согласитесь на возможность поставки на поддержку
В открывшемся диалоге уберите галочку в дереве «УправлениеПроизводственнымПредприятием → Свойства» и нажмите кнопку «Выполнить». Наша конфигурация не изменяет элементов УПП, все наши элементы начинаются с ключевых слов «RingoPhone» и «Ринголайн» поэтому конфликтов быть не должно. В настройках правил поддержки для объектов с правилом «Изменения разрешены», выберите опцию «Объект редактируется с сохранением поддержки» После объединения необходимо сохранить и обновить конфигурацию.

Изменение конфигурации

Для совместной работы УПП и RingoPhone необходимо внести изменения в модули вашей базы.

В дереве конфигурации кликаем правой кнопкой мыши по «УправлениеПроизводственнымПредприятием» и в контекстном меню выбираем «Открыть модуль обычного приложения». В открывшемся модуле ищем процедуру «ПриНачалеРаботыСистемы» и приводим к следующему виду.

Процедура ПриНачалеРаботыСистемы()
 
        //******* код функции. Его оставляем без изменений *******	
 
	////////////////////////////////////////////////////////////////////////////////
	// Ринголайн интеграция. Выполнение при запуске. Начало
	РинголайнКлиент.ПриНачалеРаботыСистемы();		
	// Ринголайн интеграция. Выполнение при запуске. Начало
	////////////////////////////////////////////////////////////////////////////////
КонецПроцедуры

Снова в дереве конфигурации кликаем правой кнопкой мыши по «УправлениеПроизводственнымПредприятием» и в контекстном меню выбираем «Открыть модуль сеанса». В открывшемся модуле ищем процедуру «УстановитьЗначениеПараметраСеанса» и приводим к следующему виду.

Процедура УстановитьЗначениеПараметраСеанса(ИмяПараметра, УстановленныеПараметры)
 
        //******* код функции. Его оставляем без изменений *******	
 
	////////////////////////////////////////////////////////////////////////////////
	// Ринголайн интеграция. Установка параметров сеанса. Начало
        РинголайнСервер.УстановкаПараметровСеанса(ИмяПараметра,УстановленныеПараметры);
	// Ринголайн интеграция. Установка параметров сеанса. Конец
	////////////////////////////////////////////////////////////////////////////////
КонецПроцедуры

Добавление реквизитов в документ "Событие"

Будет удобно, если сотрудники смогут прослушивать записи разговора с клиентом прямо из документа события «Телефонный звонок». Поэтому необходимо создать дополнительные реквизиты по которым можно будет сопоставить событие и запись разговора.

Необходимо в конфигурации открыть реквизиты документа «Событие» Документы→Событие→Реквизиты и добавить туда новые реквизиты:

  • РинголайнИДЗвонкаНаАТС, с типом Строка длина 100
  • РинголайнЭлементЖурналаЗвонков, с типом Строка длина 100

При создании документа из RingoPhone, он найдёт эти реквизиты в документе и запишет в них ссылку на историю с записью.

Добавление команд телефонии в документ "Событие"

На обычных формах 1с не позволяет разместить сторонние команды не изменив саму форму. Возможно после обновления на новую версию УПП, наши изменения затрутся и кнопки команд пропадут, тогда снова нужно повторить эту операцию.

В документе «Событие» мы разместим 2 команды: команду для совершения звонка из документа и команду для прослушивания записи.

Необходимо в конфигурации открыть модуль формы Документы→Событие→Формы→ФормаДокумента. Найти процедуру «ПриОткрытии» и привести к следующему виду

Процедура ПриОткрытии()
	////////////////////////////////////////////////////////////////////////////////
	// Ринголайн. Добавление кнопок на форму. Начало
	RingoPhoneСерверИнтеграция.ДобавитьКнопкуЗвонкаНаПанельДействий(ЭтаФорма.ЭлементыФормы.ДействияФормы.Кнопки,"РинголайнПозвонить","RingoPhone_ОбработчикКоманд");
	RingoPhoneСерверИнтеграция.ДобавитьКнопкуПрослушатьНаПанельДействий(ЭтаФорма.ЭлементыФормы.ДействияФормы.Кнопки,"РинголайнПрослушать","RingoPhone_ОбработчикКоманд");
	// Ринголайн. Добавление кнопок на форму. Конец
	////////////////////////////////////////////////////////////////////////////////	
 
        //******* код функции. Его оставляем без изменений *******	
КонецПроцедуры  // ПриОткрытии()  

После всех процедур и функций необходимо добавить новую процедуру

////////////////////////////////////////////////////////////////////////////////
// Ринголайн. Процедура обработки команд. Начало
Процедура RingoPhone_ОбработчикКоманд(Кнопка)
 	Действие = Кнопка.Имя;
	Если Действие = "РинголайнПозвонить" Тогда
		Открыт = RingoPhoneКлиент.ОткрытьТелефонСПодтверждением();
		Если Открыт=Истина Тогда
			ОбъектыСКонтактами = Новый Массив;
			Если ЭтаФорма.ВидОбъекта = Перечисления.ВидыОбъектовСобытия.Контрагент Тогда
				Если ЗначениеЗаполнено(ЭтаФорма.Контрагент)Тогда
					ОбъектыСКонтактами.Добавить(ЭтаФорма.Контрагент);
				КонецЕсли;				
				Если ЗначениеЗаполнено(ЭтаФорма.КонтактноеЛицо)Тогда
					ОбъектыСКонтактами.Добавить(ЭтаФорма.КонтактноеЛицо);
				КонецЕсли;				
			ИначеЕсли ЭтаФорма.ВидОбъекта = Перечисления.ВидыОбъектовСобытия.ПрочиеКонтактныеЛица Тогда
				Если ЗначениеЗаполнено(ЭтаФорма.КонтактноеЛицоБезКонтрагента)Тогда
					ОбъектыСКонтактами.Добавить(ЭтаФорма.КонтактноеЛицоБезКонтрагента);
				КонецЕсли;				
			КонецЕсли;
			ПараметрыФормы = Новый Структура();
			ПараметрыФормы.Вставить("МассивОбъектовСКонтактами",ОбъектыСКонтактами);
			ОткрытьФорму("ОбщаяФорма.РинголайнВыбратьНомерИПозвонить",ПараметрыФормы,ЭтаФорма,Истина,ВариантОткрытияОкна.ОтдельноеОкно,,,РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);		
		КонецЕсли;		
	ИначеЕсли Действие = "РинголайнПрослушать" Тогда
		Если ЗначениеЗаполнено(ЭтаФорма.РинголайнЭлементЖурналаЗвонков) Тогда
			ФайлЗаписи = RingoPhoneСерверИнтеграция.ПолучитьФайлЗаписиРазговора(ЭтаФорма.РинголайнЭлементЖурналаЗвонков);
			Если ЗначениеЗаполнено(ФайлЗаписи) Тогда
				Файл = Новый Файл(ФайлЗаписи);
				Если Файл.Существует() Тогда
					ЗапуститьПриложение(ФайлЗаписи);
				Иначе
					РинголайнОбщее.СообщитьПользователю("Файл записи не найден или удалён");
				КонецЕсли;
			КонецЕсли;					
		КонецЕсли;
	КонецЕсли;
КонецПроцедуры
// Ринголайн. Процедура обработки команд. Конец
////////////////////////////////////////////////////////////////////////////////

Теперь при открытии события «Телефонный звонок», вы будете видеть кнопки для совершения звонка и прослушивания записи из документа «Телефонный звонок».

Добавление команды "Позвонить" на форму заказа и контрагента

Как и в случае с документом «Событие» вам придётся вставить код в сам модуль формы и повторить эту операцию если при обновлении модуль формы перезапишется.

Необходимо в конфигурации открыть модуль формы Справочники→Контрагенты→Формы→ФормаЭлемента. Найти процедуру «ПриОткрытии» и привести к следующему виду

Процедура ПриОткрытии()
	////////////////////////////////////////////////////////////////////////////////
	// Ринголайн. Добавление кнопок на форму. Начало
	RingoPhoneСерверИнтеграция.ДобавитьКнопкуЗвонкаНаПанельДействий(ЭтаФорма.ЭлементыФормы.ДействияФормы.Кнопки,"РинголайнПозвонить","RingoPhone_ОбработчикКоманд");
	// Ринголайн. Добавление кнопок на форму. Конец
	////////////////////////////////////////////////////////////////////////////////	
 
        //******* код функции. Его оставляем без изменений *******	
КонецПроцедуры  // ПриОткрытии()  

После всех процедур и функций необходимо добавить новую процедуру

////////////////////////////////////////////////////////////////////////////////
// Ринголайн. Процедура обработки команд. Начало
Процедура RingoPhone_ОбработчикКоманд(Кнопка)
 	Действие = Кнопка.Имя;
	Если Действие = "РинголайнПозвонить" Тогда
		Открыт = RingoPhoneКлиент.ОткрытьТелефонСПодтверждением();
		Если Открыт=Истина Тогда
			ОбъектыСКонтактами = Новый Массив;
			ОбъектыСКонтактами.Добавить(ЭтаФорма.Ссылка);
			ПараметрыФормы = Новый Структура();
			ПараметрыФормы.Вставить("МассивОбъектовСКонтактами",ОбъектыСКонтактами);
			ОткрытьФорму("ОбщаяФорма.РинголайнВыбратьНомерИПозвонить",ПараметрыФормы,ЭтаФорма,Истина,ВариантОткрытияОкна.ОтдельноеОкно,,,РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);		
		КонецЕсли;		
	КонецЕсли;
КонецПроцедуры
// Ринголайн. Процедура обработки команд. Конец
////////////////////////////////////////////////////////////////////////////////

Таким же образом добавляем команду на форму документа «ЗаказПокупателя».
Открываем в конфигурации модуль формы документа Документы→ЗаказПокупателя→Формы→ФормаДокумента. Ищем процедуру «ПриОткрытии» и приводим к следующему виду

Процедура ПриОткрытии()
	////////////////////////////////////////////////////////////////////////////////
	// Ринголайн. Добавление кнопок на форму. Начало
	RingoPhoneСерверИнтеграция.ДобавитьКнопкуЗвонкаНаПанельДействий(ЭтаФорма.ЭлементыФормы.ДействияФормы.Кнопки,"РинголайнПозвонить","RingoPhone_ОбработчикКоманд");
	// Ринголайн. Добавление кнопок на форму. Конец
	////////////////////////////////////////////////////////////////////////////////	
 
        //******* код функции. Его оставляем без изменений *******	
КонецПроцедуры  // ПриОткрытии()  

После всех процедур и функций добавляем новую процедуру

////////////////////////////////////////////////////////////////////////////////
// Ринголайн. Процедура обработки команд. Начало
Процедура RingoPhone_ОбработчикКоманд(Кнопка)
 	Действие = Кнопка.Имя;
	Если Действие = "РинголайнПозвонить" Тогда
		Открыт = RingoPhoneКлиент.ОткрытьТелефонСПодтверждением();
		Если Открыт=Истина Тогда
			ОбъектыСКонтактами = Новый Массив;
			Если ЗначениеЗаполнено(ЭтаФорма.Контрагент)Тогда
				ОбъектыСКонтактами.Добавить(ЭтаФорма.Контрагент);
			КонецЕсли;				
			Если ЗначениеЗаполнено(ЭтаФорма.КонтактноеЛицоКонтрагента)Тогда
				ОбъектыСКонтактами.Добавить(ЭтаФорма.КонтактноеЛицоКонтрагента);
			КонецЕсли;							
			ПараметрыФормы = Новый Структура();
			ПараметрыФормы.Вставить("МассивОбъектовСКонтактами",ОбъектыСКонтактами);
			ОткрытьФорму("ОбщаяФорма.РинголайнВыбратьНомерИПозвонить",ПараметрыФормы,ЭтаФорма,Истина,ВариантОткрытияОкна.ОтдельноеОкно,,,РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);		
		КонецЕсли;		
	КонецЕсли;
КонецПроцедуры
// Ринголайн. Процедура обработки команд. Конец
////////////////////////////////////////////////////////////////////////////////

Теперь на форме документа «Заказ покупателя» и форме справочника «Контрагент» можно увидеть команду «Позвонить»

Первый запуск

Первый запуск необходимо выполнить от пользователя с полными правами. При запуске должен открыться мастер установки «Ринголайн». Следуйте инструкциям мастера установки. После окончания работы мастера установки можете сразу настроить телефоны, а можете вернуться к этому позже.

Настройка прав

Для работы с телефонией, необходимо выдать роли пользователям.

  • роль «РинголайнПользователь» - позволяет запускать телефон, просматривать собственные звонки и прослушивать записи разговоров.
  • роль «РинголайнПросмотрЗвонков» - позволяет просматривать звонки всех пользователей.
  • роль «РинголайнАдминистратор» - позволяет централизованно настраивать и перенастраивать все телефоны.

В Управлении производственным предприятием есть возможность администрирования пользователей. Назначим роли пользователем через неё.

Открываем меню Пользователи→Администрирование пользователей и в открывшейся схеме кликаем 2 раза по блоку Профили. Откроется окно «Профили полномочий пользователей».

В вашей конфигурации могут быть настроены другие профили, поэтому мы рассмотрим на примере демонстрационной базы.

В демонстрационной базе мы назначим роль «РинголайнПользователь» для профиля Продажи→Менеджер по продажам. Все сотрудники обладающие профилем «менеджер по продажам» смогут запускать и использовать телефон.
Откроем в дереве Продажи→Менеджер по продажам, в правой части окна, в разделе «Роли профиля» нажимаем кнопку изменить, ставим галочку для роли «РинголайнПользователь» и нажимаем «Ок».

Таким же образом назначим для профиля Продажи→Старшие менеджеры по продажам 2 роли: «РинголайнПросмотрЗвонков» и «РинголайнПользователь». Эти сотрудники смогут просматривать все звонки совершённые из 1с и использовать телефон.

ringophone/integration_upp.txt · Последние изменения: 2016/10/13 16:54 — admin