- 3CX Phone System
- Оборудование
- VoIP гарнитуры Plantronics
- Гарнитуры Jabra для Call Center
- VoIP E1 PRI платы BeroNet bero*fix
- VoIP FXO / FXS шлюзы Grandstream Networks
- VoIP SIP FXO / FXS шлюзы Hanlong Unicorn
- VoIP FXO / FXS шлюзы D-link Systems
- VoIP GSM / CDMA шлюзы Portech
- VoIP GSM / CDMA шлюзы GoIP
- VoIP SIP телефоны Yealink
- VoIP SIP телефоны Cisco Small Business
- VoIP SIP телефоны Grandstream Networks
- VoIP SIP телефоны D-link Systems
- VoIP SIP видеотелефоны
- VoIP SIP телефоны DECT Siemens Gigaset
- Техподдержка
- Другое ПО 3CX
- Call Center Edition
- Дизайнер голосовых VoXML приложений
- Skype SIP шлюз
- VoIP видео телефон 3CX Phone
- 3CX Phone для Android
- 3CX Phone для iPhone
- SIP Proxy Tunnel и SIP Proxy Tunnel Manager
- CRM модуль
- 3CX Hotel Module v. 2.0 - модуль гостиничной АТС для 3CX Phone System
- 3CX Multi Tenant для аренды и бизнес центров
- Модуль 1С 3CX
- Стороннее ПО для 3CX
- Сервисы для 3CX
- 3CX в Украине
Работа с модулем интеграции 1С 3CX
Опубликовано admin в Чт, 04/11/2010 - 14:55
Интеграция 3CX Phone System обеспечивается путем вызова внешней компоненты 1С client_3cxTo1c.dll, которая регистрируется как DLL библиотека Windows.
Попытка
//Для демо-версии 1С 7.X
ПодключитьВнешнююКомпоненту("AddIn.3cxTo1cIntegratorDemo");
Интегратор3СХ=СоздатьОбъект("AddIn.3cxTo1cIntegrator");
//Для демо-версии 1С 8.X
ПодключитьВнешнююКомпоненту("AddIn.3cxTo1cIntegratorDemo");
Интегратор3СХ=Новый("AddIn.3cxTo1cIntegrator");
//Для рабочей версии 1С 7.X
ПодключитьВнешнююКомпоненту("AddIn.3cxTo1cIntegrator");
Интегратор3СХ=СоздатьОбъект("AddIn.3cxTo1cIntegrator");
//Для рабочей версии 1С 8.X
ПодключитьВнешнююКомпоненту("AddIn.3cxTo1cIntegrator");
Интегратор3СХ=Новый("AddIn.3cxTo1cIntegrator");
//Для терминальной версии версии 1С 7.X
ПодключитьВнешнююКомпоненту("AddIn.3cxTo1cIntegratorTerminal");
Интегратор3СХ=СоздатьОбъект("AddIn.3cxTo1cIntegrator");
//Для терминальной версии 1С 8.X
ПодключитьВнешнююКомпоненту("AddIn.3cxTo1cIntegratorTerminal");
Интегратор3СХ=Новый("AddIn.3cxTo1cIntegrator");
Исключение
Сообщить(ИнформацияОбОшибке().Описание);
КонецПопытки;
В дальнейшем используются методы полученного объекта Интегратор3СХ, например вызов инициируется так:
Попытка
Результат=Интегратор3СХ.Вызвать(ВнутрНомер, НомерКуда );
Сообщить("Вызов от "+ВнутрНомер+" к "+НомерКуда+" "+Результат );
Исключение
Сообщить(ИнформацияОбОшибке().Описание);
КонецПопытки;
Все подаваемые таким образом команды сразу возвращают строковые значения - результат передачи команды в 3СХ. Это или <<OK>>, или <<Ошибка>> текст ошибки. При возникновении системной ошибки, такой, например, как обрыв связи, генерируется исключение.
Для получения информации о событиях, происходящих на сервере 3СХ, необходимо определить обработчик внешнего события.
Процедура ОбработкаВнешнегоСобытия(Источник, Событие, Данные )
Если Источник = "3cxTo1c" Тогда
Сообщить(Событие+" >> "+Данные);
//дальнейшая обработка .....
КонецЕсли;
КонецПроцедуры
Например, при звонке из софтфона 3CX Phone с номера 100 на номер "эхо" (*777) этот код выдаст примерно такие строки:
Дозвон >> 2010.10.14 02:27:26.640&8&100&*777
Звонок >> 2010.10.14 02:27:26.875&8&100&*777
НачалоРазговора >> 2010.10.14 02:27:26.968&8
Соединение >> 2010.10.14 02:27:26.968&8&100
Соединение >> 2010.10.14 02:27:27.031&8&*777
Отсоединение >> 2010.10.14 02:27:28.250&8&100&1.281
Отсоединение >> 2010.10.14 02:27:28.328&8&*777&1.297
КонецРазговора >> 2010.10.14 02:27:28.328&8&1.360
Поскольку в 1С нет возможности получить из внешней компоненты информацию сразу в несколько переменных, работу по обработке и анализу входящих данных приходится делать разработчику 1С. Пример такой разработки - прилагаемая демонстрационная конфигурация.
Строка Данные состоит из нескольких частей, разделенных символом "&". Если в какой-либо части присутствовал символ "&", он будет заменен на "$amp". Первая часть - это всегда время возникновения события в формате гггг.мм.дд чч:мн:ск.мил, независимо от региональных установок. Вторая часть - идентификатор разговора в 3СХ. При инициализации любого разговора, еще до его начала, сервер 3СХ присваивает ему свой номер. Номера идут по порядку, начиная с 0 при старте сервиса 3СХ, потому номер глобально не уникален. Формат остальных частей строки Данные зависит от значения параметра Событие.
