Интеграция с информационными системами/1C

Материал из Call Office Wiki
Перейти к навигации Перейти к поиску

Интеграцию с 1C можно проводить следующими способами:

Взаимодействие с 1C средствами Call Office

Во время настройки конфигурации в разделе Источник данных выберите 1C и нажмите "Далее", после чего попадете на страницу конфигурирования 1C. Далее в разделе Чтение данных выберите SQL-запрос и введите SQL-запрос на выборку данных из 1C, а в разделе Запись данных введите SQL-запрос для сохранение результатов звонка. Об особенностях SQL-запросов для 1С можно подробнее узнать здесь.

1C вызывает функции Call Office как функции обычного COM-объекта

Вызовы методов Call Office можно добавить непосредственно в программный код вашего приложения 1C. Например, следующий код выполняет набор номера телефона и, если абонент снял трубку, воспроизводит звуковой файл:

 Device = Новый COMОбъект ("CallOffice.Device");

 Device.Open ();                            //  <- здесь необходимо указать название устройства, например SIP\SIP.
 Result = Device.Dial ("83852289928", 40);  //  <- номер вашего телефона, для sip следует указывать в формате <номер телефона>@<имя SIP-шлюза>

 Если Result = 0 Тогда

    Device.Say ("Нужно заплатить за интернет.wav");
    Device.HangUp ();

 КонецЕсли;

 Device.Close ();

Подробнее про объекты, методы и свойства COM-объектов Call Office можно прочитать здесь.

1C запускает командный файл, который вызывает наш продукт и выполняет необходимые функции

Создайте командный файл на языке JS, например, Dial.js, добавьте в него код, который Call Office должен выполнить, и вызовите этот файл из 1C с передачей параметров. Например, код файла на обзвон определенного телефона с воспроизведением определенного звукового файла выглядит так:

if (WScript.Arguments.Length == 2) {
   var Phone     = WScript.Arguments.Item (0); 
   var SoundFile = WScript.Arguments.Item (1); 
   var Device = new ActiveXObject ("CallOffice.Device");    
   Device.Open ();
   var Result = Device.Dial (NumberPhone, 40);
   if (Result == 0){
      Device.Say (SoundFile);
      Device.HangUp ();
   }
   Device.Close ();
} else WScript.Echo ("Недостаточно параметров: Используйте: Dial.js <Номер телефона> <Имя звукового файла>");

В этом коде используются COM-объекты программы Call Office, подробнее про которые можно прочитать здесь.

Call Office напрямую подключается к базе данных, которую использует 1C, и работает напрямую с ней

Если 1C использует стандартную базу данных, например, MySQL, то программа может подключиться к ней напрямую и работать с ее данными. В зависимости от того, какая именно база данных, будет производиться дальнейшая настройка. Про настройку баз данных с Call Office можно прочитать здесь.