Приложения
Функциональность многих компонентов CommuniGate Pro может быть расширена при помощи различных техник программирования. Эти разделы содержат информацию о концепции и об основных приёмах программирования в CommuniGate Pro, об используемых моделях данных и о доступных интерфейсах прикладного арограммирования (API).
Концепция
В сервере CommuniGate Pro используется объектно-ориентированная модель данных. Эта модель включает в себя «простые» объекты (такие, как строки, числа, блоки данных, отметки о времени и другие «атомарные» объекты), а также «структурированные» объекты (такие, как массивы и словари).
Как в API, так и в приложениях CommuniGate Pro используются одни и те же объекты.
Раздел «форматы данных» содержит описание этих объектов и их текстовое представление.
Все функции администрирования (управление пользователями, управление сервером, настройки, наблюдение) Сервера CommuniGate Pro доступны через сетевой интерфейс командной строки CLI. Этот простой текстовый TCP -ротокол используется для интегрирования системы CommuniGate Pro с различными внешними системами, включая такие, как системы управления пользователями и биллинговые системы.
Как все другие протоколы и модули, модуль CLI поддерживает SSI (Single Service Image, образ единого сервиса) CommuniGate Pro, так что одно соединение CLI, установленное с любым членом кластера, может использоваться для управления всем кластером. В действительности, компонент SSI сам использует протокол CLI для внутрикластерного взаимодействия.
Некоторые внедрения могут требовать нестандартных, сложных и / или наборов функций с большим количеством дополнительных настроек. Система CommuniGate Pro действует как платформа сервера приложений, в которой реализован очень простой, но в то же время чрезвычайно эффективный язык программирования CG/PL.
Этот язык используется для создания простых и мощных пользовательских приложений.
CG/PL приложения расширяют стандартный набор возможностей CommuniGate Pro, не уменьшая, как это обычно бывает при работе с платформами для приложений других производителей, его надёжности и производительности.
Тот же самый язык CG/PL используется в разных компонентах продукта, и единственная разница заключается в том, что каждым компонентом предлагается свой фиксированный набор встроенных функций.
Язык CG/PL использует ту же модель данных, что и внутренние компоненты продукта.
Службы CommuniGate Pro могут выполнять некоторые функции, напрямую не реализованные в самом продукте.
Продукты фильтрования содержимого (антивирусы и средства для борьбы со спамом), модули проверки правописания, обработчики биллинговой информации и любые другие продукты (или «механизмы») могут быть интегрированы с сервером CommuniGate при помощи механизма помощников.