Это старая версия документа!
Данное руководство поможет Вам самостоятельно встроить подсистему телефонии в вашу конфигурацию 1С. Следуйте инструкциям шаг-за-шагом в том порядке, в котором они представлены.
Руководство подходит только для «1С:CRM 3.0». Для других конфигураций (в том числе «1С:CRM 2.0») используйте эту инструкцию.
Встраивание подсистемы требует разблокировки головного объекта. Не забудьте сделать резервную копию информационной базы перед началом работы.
Теперь конфигурация готова для внесения изменений. Будьте особенно внимательны на данном шаге, чтобы не повредить объекты Вашей конфигурации.
Чтобы подсистема телефонии могла запускаться и полноценно функционировать нужно внести изменения в программные модули Вашей конфигурации. На этом шаге будут внесены изменения в модули приложений, подсистему отчетов и некоторые другие.
Процедура НастроитьИнтеграцию(МодулиИнтеграции) Экспорт // Интеграция с CRM 3.0 МодулиИнтеграции.Добавить("микоТелефонияИнтеграцияCRMКлиент"); КонецПроцедуры
Процедура НастроитьИнтеграцию(МодулиИнтеграции) Экспорт // Интеграция с CRM 3.0 МодулиИнтеграции.Добавить("микоТелефонияИнтеграцияCRM"); КонецПроцедуры
// PT1C / Панель телефонии / Начало Перем микоКоннекторAPI Экспорт; Перем микоПерсональныеНастройки Экспорт; // PT1C / Панель телефонии / Конец
Процедура ОбработкаВнешнегоСобытия(Источник, Событие, Данные) // ... // PT1C / Панель телефонии / Начало микоТелефонияСлужебный.ОбработатьВнешнееСобытие(Источник, Событие, Данные); // PT1C / Панель телефонии / Конец КонецПроцедуры
Процедура ПриЗавершенииРаботыСистемы() // ... // PT1C / Панель телефонии / Начало микоКоннекторAPI = Неопределено; микоПерсональныеНастройки = Неопределено; // PT1C / Панель телефонии / Конец КонецПроцедуры
Процедура сфпПодключитьСофтФон() Экспорт // PT1C / Панель телефонии / Начало Если микоТелефония.Использовать() Тогда Оповещение = Новый ОписаниеОповещения("ПослеИнициализацииКомпонента", микоТелефонияСлужебный); микоТелефонияКлиент.ИнициализироватьКомпонент(Оповещение); сфпОтключитьСофтФон(); Возврат; КонецЕсли; // PT1C / Панель телефонии / Конец // ... КонецПроцедуры
Процедура сфпПозвонить(Телефон, Объект = Неопределено, ДанныеЗаполнения = Неопределено) Экспорт Если ПустаяСтрока(Телефон) Тогда ПоказатьПредупреждение(, НСтр("ru = 'Не выбран номер телефона!'"), 5); Возврат; ИначеЕсли НЕ сфпПроверитьДоступностьСофтФон(Истина) Тогда Возврат; ИначеЕсли Телефон = сфпСофтФонПроСервер.сфпТекущийВнутреннийНомер() Тогда Возврат; КонецЕсли; // PT1C / Панель телефонии / Начало Если микоТелефония.Использовать() И (Не микоПерсональныеНастройки = Неопределено) Тогда микоТелефонияКлиент.Позвонить(Телефон, микоПерсональныеНастройки.ВнутреннийНомер); Возврат; КонецЕсли; // PT1C / Панель телефонии / Конец // ... КонецПроцедуры
Процедура сфпВыполнитьЗвонокПоНомеру(ВыбранныйНомер, ДополнительныеПараметры) Экспорт Если ВыбранныйНомер = Неопределено Тогда ПоказатьПредупреждение(, НСтр("ru = 'Не выбран номер телефона!'"), 5); Возврат; КонецЕсли; // PT1C / Панель телефонии / Начало Если микоТелефония.Использовать() И (Не микоПерсональныеНастройки = Неопределено) Тогда микоТелефонияКлиент.Позвонить(ВыбранныйНомер.Значение.Телефон, микоПерсональныеНастройки.ВнутреннийНомер); Возврат; КонецЕсли; // PT1C / Панель телефонии / Конец сфпПозвонить(ВыбранныйНомер.Значение.Телефон, ВыбранныйНомер.Значение.Контакт, ДополнительныеПараметры.ДанныеЗаполнения); КонецПроцедуры
Функция сфпПолучитьМассивТелефоновИФаксов(Ссылка) Экспорт // PT1C / Панель телефонии / Начало Если микоТелефония.Использовать() Тогда Возврат микоТелефония.ПолучитьТелефоны(Ссылка); КонецЕсли; // PT1C / Панель телефонии / Конец // ... КонецПроцедуры
Процедура ОпределитьРазделыСВариантамиОтчетов(Разделы) Экспорт // ... // PT1C / Панель телефонии / Начало микоТелефония.ОпределитьРазделыСВариантамиОтчетов(Разделы); // PT1C / Панель телефонии / Конец КонецПроцедуры