3CX — это одна из SIP IP АТС, несмотря на относительно высокую стоимость (особенно по сравнению с бесплатным Asterisk) 3CX является довольно популярным решением для организации IP-телефонии в компаниях самого разного размера.
Также не секрет, что вся информация о звонках и сообщениях хранится во встроенной базе PostgreSQL. Следовательно, в случае необходимости, мы вполне можем получить доступ к этой информации прямо из 1С. Именно об этом я и расскажу в этой статье.
Кроме этого отмечу, что все описанное ниже действительно для 3CX версии 14 и 15, а для более старых версий основное отличие заключается в структуре таблиц.
Подготовка 3CX
Начать нужно с того, чтобы проверить и, если нужно, изменить настройки в нескольких конфигурационных файлах.
Начнем с файла конфигурации самой АТС — 3CXPhoneSystem.ini

В этом файла нам нужен следующий блок:

Здесь все понятно: можно узнать/поменять адрес сервера БД, номер порта, логин и пароль.
Затем нужно нужно проверить два файла относящиеся к PostgreSQL:

В файле pg_hba.conf нужно указать кому и откуда можно подключаться к базе:

В файле postgresql.conf нужно указать какие адреса будет слушать PostgreSQL:

После всех изменений 3CX нужно перезапустить.
Подключение и использование
Для подключения к 1С воспользуемся механизмом внешних источников данных. Об этом у меня есть отдельная статья в которой весь процесс рассмотрен более подробно. Строка подключения выглядит примерно так:
Driver={PostgreSQL Unicode};Server=localhost;Port=5480;Database=database_single;Uid=phonesystem;Pwd=password;STMT=utf8
И результат:

Всего таблиц в базе не так уж много:

Моя задача заключалась в извлечении информации о звонках, в том числе и запись разговора, если разговор имел место быть. Для этого наиболее полезными оказались следующие таблицы:
- myphone_callhistory_v14 — таблица с информацией о звонках;
- cl_participants — информация о звонках плюс имя файла записи разговора.
На этом все, надеюсь, что сумел Вам помочь.
Если Вы нашли ошибку или неточность, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
а не могли бы тогда уж и код 1с выложить? чтобы самому не воротить