ICTCore PBX Database Configuration

ICTCore manages the PBX configuration stored in PostgreSQL. All PBX objects (extensions, ring groups, IVR, etc.) are written directly to the ICTCore PBX PostgreSQL database.

PostgreSQL Credentials

Stored at /etc/ictcore/config.conf:

[database]
host     = 127.0.0.1
port     = 5432
name     = fusionpbx
username = fusionpbx
password = 
Always use -h 127.0.0.1 when connecting via psql. The pg_hba.conf requires TCP with MD5 auth — peer/socket auth is not configured.

Connecting to PostgreSQL

PGPASSWORD="" psql -h 127.0.0.1 -U fusionpbx -d fusionpbx

Key Tables

Table Content
v_extensions SIP extensions
v_devices Registered devices
v_ring_groups Ring group definitions
v_call_center_queues Call queues
v_call_center_tiers Queue agent assignments
v_ivr_menus + v_ivr_menu_options IVR definitions
v_voicemails Voicemail boxes
v_conference_centers Conference rooms
v_gateways SIP trunks
v_destinations Inbound DIDs
v_dialplans Dialplan rules
v_domains Tenant domains

Tenant Domain Mapping

Each ICTPBX tenant maps to a PBX domain via tenant.fpbx_domain_uuid. The ICTCore domain resolver handles this mapping automatically.

Reloading FreeSWITCH

ICTCore triggers an XML reload automatically after database changes. If a change isn’t taking effect:

fs_cli -x "reloadxml"
fs_cli -x "reload mod_sofia"