{ "id": "efbb52c9-5159-4e29-81a7-50a58c18b87c", "prevId": "b35a72cc-42c5-49a3-baba-ccc86d037c41", "version": "7", "dialect": "postgresql", "tables": { "public.announcements": { "name": "announcements", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "sound_id": { "name": "sound_id", "type": "uuid", "primaryKey": false, "notNull": true }, "destination": { "name": "destination", "type": "jsonb", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": { "announcements_sound_id_sound_files_id_fk": { "name": "announcements_sound_id_sound_files_id_fk", "tableFrom": "announcements", "tableTo": "sound_files", "columnsFrom": [ "sound_id" ], "columnsTo": [ "id" ], "onDelete": "restrict", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.api_tokens": { "name": "api_tokens", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "token_prefix": { "name": "token_prefix", "type": "text", "primaryKey": false, "notNull": true }, "token_hash": { "name": "token_hash", "type": "text", "primaryKey": false, "notNull": true }, "created_by": { "name": "created_by", "type": "uuid", "primaryKey": false, "notNull": true }, "last_used_at": { "name": "last_used_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "revoked_at": { "name": "revoked_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": { "api_tokens_created_by_users_id_fk": { "name": "api_tokens_created_by_users_id_fk", "tableFrom": "api_tokens", "tableTo": "users", "columnsFrom": [ "created_by" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": { "api_tokens_tokenHash_unique": { "name": "api_tokens_tokenHash_unique", "nullsNotDistinct": false, "columns": [ "token_hash" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.audit_log": { "name": "audit_log", "schema": "", "columns": { "id": { "name": "id", "type": "bigserial", "primaryKey": true, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "actor_user_id": { "name": "actor_user_id", "type": "uuid", "primaryKey": false, "notNull": false }, "actor_ip": { "name": "actor_ip", "type": "inet", "primaryKey": false, "notNull": false }, "action": { "name": "action", "type": "text", "primaryKey": false, "notNull": true }, "entity_type": { "name": "entity_type", "type": "text", "primaryKey": false, "notNull": false }, "entity_id": { "name": "entity_id", "type": "text", "primaryKey": false, "notNull": false }, "summary": { "name": "summary", "type": "text", "primaryKey": false, "notNull": true }, "diff": { "name": "diff", "type": "jsonb", "primaryKey": false, "notNull": false } }, "indexes": {}, "foreignKeys": { "audit_log_actor_user_id_users_id_fk": { "name": "audit_log_actor_user_id_users_id_fk", "tableFrom": "audit_log", "tableTo": "users", "columnsFrom": [ "actor_user_id" ], "columnsTo": [ "id" ], "onDelete": "set null", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.blocked_numbers": { "name": "blocked_numbers", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "number": { "name": "number", "type": "text", "primaryKey": false, "notNull": true }, "reason": { "name": "reason", "type": "text", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": { "blocked_numbers_number_unique": { "name": "blocked_numbers_number_unique", "nullsNotDistinct": false, "columns": [ "number" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.call_extensions": { "name": "call_extensions", "schema": "", "columns": { "call_id": { "name": "call_id", "type": "uuid", "primaryKey": false, "notNull": true }, "extension_id": { "name": "extension_id", "type": "uuid", "primaryKey": false, "notNull": true }, "role": { "name": "role", "type": "text", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": { "call_extensions_call_id_calls_id_fk": { "name": "call_extensions_call_id_calls_id_fk", "tableFrom": "call_extensions", "tableTo": "calls", "columnsFrom": [ "call_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "call_extensions_extension_id_extensions_id_fk": { "name": "call_extensions_extension_id_extensions_id_fk", "tableFrom": "call_extensions", "tableTo": "extensions", "columnsFrom": [ "extension_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": { "call_extensions_call_id_extension_id_role_pk": { "name": "call_extensions_call_id_extension_id_role_pk", "columns": [ "call_id", "extension_id", "role" ] } }, "uniqueConstraints": {}, "policies": {}, "checkConstraints": { "call_extensions_role_check": { "name": "call_extensions_role_check", "value": "\"call_extensions\".\"role\" in ('caller', 'rang', 'answered')" } }, "isRLSEnabled": false }, "public.calls": { "name": "calls", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "linkedid": { "name": "linkedid", "type": "text", "primaryKey": false, "notNull": true }, "direction": { "name": "direction", "type": "call_direction", "typeSchema": "public", "primaryKey": false, "notNull": true }, "status": { "name": "status", "type": "call_status", "typeSchema": "public", "primaryKey": false, "notNull": true }, "started_at": { "name": "started_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true }, "answered_at": { "name": "answered_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "ended_at": { "name": "ended_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true }, "from_number": { "name": "from_number", "type": "text", "primaryKey": false, "notNull": false }, "from_name": { "name": "from_name", "type": "text", "primaryKey": false, "notNull": false }, "to_number": { "name": "to_number", "type": "text", "primaryKey": false, "notNull": false }, "did_id": { "name": "did_id", "type": "uuid", "primaryKey": false, "notNull": false }, "answered_by_extension_id": { "name": "answered_by_extension_id", "type": "uuid", "primaryKey": false, "notNull": false }, "talk_seconds": { "name": "talk_seconds", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "recording_id": { "name": "recording_id", "type": "uuid", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "calls_started_at_index": { "name": "calls_started_at_index", "columns": [ { "expression": "started_at", "isExpression": false, "asc": false, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": { "calls_did_id_dids_id_fk": { "name": "calls_did_id_dids_id_fk", "tableFrom": "calls", "tableTo": "dids", "columnsFrom": [ "did_id" ], "columnsTo": [ "id" ], "onDelete": "set null", "onUpdate": "no action" }, "calls_answered_by_extension_id_extensions_id_fk": { "name": "calls_answered_by_extension_id_extensions_id_fk", "tableFrom": "calls", "tableTo": "extensions", "columnsFrom": [ "answered_by_extension_id" ], "columnsTo": [ "id" ], "onDelete": "set null", "onUpdate": "no action" }, "calls_recording_id_recordings_id_fk": { "name": "calls_recording_id_recordings_id_fk", "tableFrom": "calls", "tableTo": "recordings", "columnsFrom": [ "recording_id" ], "columnsTo": [ "id" ], "onDelete": "set null", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": { "calls_linkedid_unique": { "name": "calls_linkedid_unique", "nullsNotDistinct": false, "columns": [ "linkedid" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.cdr": { "name": "cdr", "schema": "", "columns": { "id": { "name": "id", "type": "bigserial", "primaryKey": true, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "uniqueid": { "name": "uniqueid", "type": "text", "primaryKey": false, "notNull": true }, "linkedid": { "name": "linkedid", "type": "text", "primaryKey": false, "notNull": true }, "start_at": { "name": "start_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "answer_at": { "name": "answer_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "end_at": { "name": "end_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "duration": { "name": "duration", "type": "integer", "primaryKey": false, "notNull": false }, "billsec": { "name": "billsec", "type": "integer", "primaryKey": false, "notNull": false }, "src": { "name": "src", "type": "text", "primaryKey": false, "notNull": false }, "dst": { "name": "dst", "type": "text", "primaryKey": false, "notNull": false }, "dcontext": { "name": "dcontext", "type": "text", "primaryKey": false, "notNull": false }, "clid": { "name": "clid", "type": "text", "primaryKey": false, "notNull": false }, "channel": { "name": "channel", "type": "text", "primaryKey": false, "notNull": false }, "dstchannel": { "name": "dstchannel", "type": "text", "primaryKey": false, "notNull": false }, "lastapp": { "name": "lastapp", "type": "text", "primaryKey": false, "notNull": false }, "lastdata": { "name": "lastdata", "type": "text", "primaryKey": false, "notNull": false }, "disposition": { "name": "disposition", "type": "text", "primaryKey": false, "notNull": false }, "accountcode": { "name": "accountcode", "type": "text", "primaryKey": false, "notNull": false }, "userfield": { "name": "userfield", "type": "text", "primaryKey": false, "notNull": false }, "sp_did": { "name": "sp_did", "type": "text", "primaryKey": false, "notNull": false }, "sp_direction": { "name": "sp_direction", "type": "text", "primaryKey": false, "notNull": false }, "sp_recording": { "name": "sp_recording", "type": "text", "primaryKey": false, "notNull": false }, "raw": { "name": "raw", "type": "jsonb", "primaryKey": false, "notNull": true } }, "indexes": { "cdr_linkedid_index": { "name": "cdr_linkedid_index", "columns": [ { "expression": "linkedid", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.conferences": { "name": "conferences", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "number": { "name": "number", "type": "text", "primaryKey": false, "notNull": true }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "pin_enc": { "name": "pin_enc", "type": "text", "primaryKey": false, "notNull": false }, "admin_pin_enc": { "name": "admin_pin_enc", "type": "text", "primaryKey": false, "notNull": false }, "max_members": { "name": "max_members", "type": "integer", "primaryKey": false, "notNull": true, "default": 20 }, "record": { "name": "record", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": { "conferences_number_unique": { "name": "conferences_number_unique", "nullsNotDistinct": false, "columns": [ "number" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.contacts": { "name": "contacts", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "owner_user_id": { "name": "owner_user_id", "type": "uuid", "primaryKey": false, "notNull": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "company": { "name": "company", "type": "text", "primaryKey": false, "notNull": false }, "email": { "name": "email", "type": "text", "primaryKey": false, "notNull": false }, "numbers": { "name": "numbers", "type": "jsonb", "primaryKey": false, "notNull": true }, "notes": { "name": "notes", "type": "text", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": { "contacts_owner_user_id_users_id_fk": { "name": "contacts_owner_user_id_users_id_fk", "tableFrom": "contacts", "tableTo": "users", "columnsFrom": [ "owner_user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.devices": { "name": "devices", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "extension_id": { "name": "extension_id", "type": "uuid", "primaryKey": false, "notNull": true }, "mac": { "name": "mac", "type": "text", "primaryKey": false, "notNull": true }, "vendor": { "name": "vendor", "type": "phone_vendor", "typeSchema": "public", "primaryKey": false, "notNull": true }, "model": { "name": "model", "type": "text", "primaryKey": false, "notNull": false }, "label": { "name": "label", "type": "text", "primaryKey": false, "notNull": false }, "provisioning_password_enc": { "name": "provisioning_password_enc", "type": "text", "primaryKey": false, "notNull": true }, "last_provisioned_at": { "name": "last_provisioned_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "last_provisioned_ip": { "name": "last_provisioned_ip", "type": "inet", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": { "devices_extension_id_extensions_id_fk": { "name": "devices_extension_id_extensions_id_fk", "tableFrom": "devices", "tableTo": "extensions", "columnsFrom": [ "extension_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": { "devices_mac_unique": { "name": "devices_mac_unique", "nullsNotDistinct": false, "columns": [ "mac" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.did_sms_users": { "name": "did_sms_users", "schema": "", "columns": { "did_id": { "name": "did_id", "type": "uuid", "primaryKey": false, "notNull": true }, "user_id": { "name": "user_id", "type": "uuid", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": { "did_sms_users_did_id_dids_id_fk": { "name": "did_sms_users_did_id_dids_id_fk", "tableFrom": "did_sms_users", "tableTo": "dids", "columnsFrom": [ "did_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "did_sms_users_user_id_users_id_fk": { "name": "did_sms_users_user_id_users_id_fk", "tableFrom": "did_sms_users", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": { "did_sms_users_did_id_user_id_pk": { "name": "did_sms_users_did_id_user_id_pk", "columns": [ "did_id", "user_id" ] } }, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.dids": { "name": "dids", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "number": { "name": "number", "type": "text", "primaryKey": false, "notNull": true }, "trunk_id": { "name": "trunk_id", "type": "uuid", "primaryKey": false, "notNull": true }, "label": { "name": "label", "type": "text", "primaryKey": false, "notNull": false }, "destination": { "name": "destination", "type": "jsonb", "primaryKey": false, "notNull": true }, "caller_id_name_prefix": { "name": "caller_id_name_prefix", "type": "text", "primaryKey": false, "notNull": false }, "record_inbound": { "name": "record_inbound", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "sms_enabled": { "name": "sms_enabled", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "e911_address": { "name": "e911_address", "type": "text", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": { "dids_trunk_id_trunks_id_fk": { "name": "dids_trunk_id_trunks_id_fk", "tableFrom": "dids", "tableTo": "trunks", "columnsFrom": [ "trunk_id" ], "columnsTo": [ "id" ], "onDelete": "restrict", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": { "dids_number_unique": { "name": "dids_number_unique", "nullsNotDistinct": false, "columns": [ "number" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.emergency_events": { "name": "emergency_events", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "extension_number": { "name": "extension_number", "type": "text", "primaryKey": false, "notNull": true }, "dialed": { "name": "dialed", "type": "text", "primaryKey": false, "notNull": true }, "caller_id_used": { "name": "caller_id_used", "type": "text", "primaryKey": false, "notNull": true }, "location": { "name": "location", "type": "text", "primaryKey": false, "notNull": false }, "notified": { "name": "notified", "type": "jsonb", "primaryKey": false, "notNull": true, "default": "'[]'::jsonb" }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.extensions": { "name": "extensions", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "number": { "name": "number", "type": "text", "primaryKey": false, "notNull": true }, "user_id": { "name": "user_id", "type": "uuid", "primaryKey": false, "notNull": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "sip_password_enc": { "name": "sip_password_enc", "type": "text", "primaryKey": false, "notNull": true }, "webrtc_enabled": { "name": "webrtc_enabled", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "max_contacts": { "name": "max_contacts", "type": "integer", "primaryKey": false, "notNull": true, "default": 5 }, "ring_seconds": { "name": "ring_seconds", "type": "integer", "primaryKey": false, "notNull": true, "default": 25 }, "voicemail_enabled": { "name": "voicemail_enabled", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "voicemail_pin_enc": { "name": "voicemail_pin_enc", "type": "text", "primaryKey": false, "notNull": true }, "voicemail_email": { "name": "voicemail_email", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "voicemail_attach_audio": { "name": "voicemail_attach_audio", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "voicemail_delete_after_email": { "name": "voicemail_delete_after_email", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "outbound_class": { "name": "outbound_class", "type": "outbound_class", "typeSchema": "public", "primaryKey": false, "notNull": true, "default": "'national'" }, "outbound_caller_id_did_id": { "name": "outbound_caller_id_did_id", "type": "uuid", "primaryKey": false, "notNull": false }, "emergency_caller_id_did_id": { "name": "emergency_caller_id_did_id", "type": "uuid", "primaryKey": false, "notNull": false }, "emergency_location": { "name": "emergency_location", "type": "text", "primaryKey": false, "notNull": false }, "record_mode": { "name": "record_mode", "type": "record_mode", "typeSchema": "public", "primaryKey": false, "notNull": true, "default": "'never'" }, "pickup_group": { "name": "pickup_group", "type": "text", "primaryKey": false, "notNull": false }, "language": { "name": "language", "type": "text", "primaryKey": false, "notNull": true, "default": "'en'" }, "moh_class": { "name": "moh_class", "type": "text", "primaryKey": false, "notNull": true, "default": "'default'" }, "blf_numbers": { "name": "blf_numbers", "type": "text[]", "primaryKey": false, "notNull": true, "default": "'{}'" }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": { "extensions_user_id_users_id_fk": { "name": "extensions_user_id_users_id_fk", "tableFrom": "extensions", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "set null", "onUpdate": "no action" }, "extensions_outbound_caller_id_did_id_dids_id_fk": { "name": "extensions_outbound_caller_id_did_id_dids_id_fk", "tableFrom": "extensions", "tableTo": "dids", "columnsFrom": [ "outbound_caller_id_did_id" ], "columnsTo": [ "id" ], "onDelete": "set null", "onUpdate": "no action" }, "extensions_emergency_caller_id_did_id_dids_id_fk": { "name": "extensions_emergency_caller_id_did_id_dids_id_fk", "tableFrom": "extensions", "tableTo": "dids", "columnsFrom": [ "emergency_caller_id_did_id" ], "columnsTo": [ "id" ], "onDelete": "set null", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": { "extensions_number_unique": { "name": "extensions_number_unique", "nullsNotDistinct": false, "columns": [ "number" ] }, "extensions_userId_unique": { "name": "extensions_userId_unique", "nullsNotDistinct": false, "columns": [ "user_id" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.generator_runs": { "name": "generator_runs", "schema": "", "columns": { "id": { "name": "id", "type": "bigserial", "primaryKey": true, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "trigger": { "name": "trigger", "type": "text", "primaryKey": false, "notNull": true }, "files_changed": { "name": "files_changed", "type": "text[]", "primaryKey": false, "notNull": true }, "commands": { "name": "commands", "type": "text[]", "primaryKey": false, "notNull": true }, "ok": { "name": "ok", "type": "boolean", "primaryKey": false, "notNull": true }, "error": { "name": "error", "type": "text", "primaryKey": false, "notNull": false }, "duration_ms": { "name": "duration_ms", "type": "integer", "primaryKey": false, "notNull": true } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.holidays": { "name": "holidays", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "start_date": { "name": "start_date", "type": "date", "primaryKey": false, "notNull": true }, "end_date": { "name": "end_date", "type": "date", "primaryKey": false, "notNull": true }, "recurring_yearly": { "name": "recurring_yearly", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.ivr_options": { "name": "ivr_options", "schema": "", "columns": { "ivr_id": { "name": "ivr_id", "type": "uuid", "primaryKey": false, "notNull": true }, "digit": { "name": "digit", "type": "text", "primaryKey": false, "notNull": true }, "destination": { "name": "destination", "type": "jsonb", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": { "ivr_options_ivr_id_ivrs_id_fk": { "name": "ivr_options_ivr_id_ivrs_id_fk", "tableFrom": "ivr_options", "tableTo": "ivrs", "columnsFrom": [ "ivr_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": { "ivr_options_ivr_id_digit_pk": { "name": "ivr_options_ivr_id_digit_pk", "columns": [ "ivr_id", "digit" ] } }, "uniqueConstraints": {}, "policies": {}, "checkConstraints": { "ivr_options_digit_check": { "name": "ivr_options_digit_check", "value": "\"ivr_options\".\"digit\" ~ '^[0-9*#]$'" } }, "isRLSEnabled": false }, "public.ivrs": { "name": "ivrs", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "number": { "name": "number", "type": "text", "primaryKey": false, "notNull": true }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "greeting_sound_id": { "name": "greeting_sound_id", "type": "uuid", "primaryKey": false, "notNull": true }, "invalid_sound_id": { "name": "invalid_sound_id", "type": "uuid", "primaryKey": false, "notNull": false }, "timeout_seconds": { "name": "timeout_seconds", "type": "integer", "primaryKey": false, "notNull": true, "default": 5 }, "max_retries": { "name": "max_retries", "type": "integer", "primaryKey": false, "notNull": true, "default": 3 }, "allow_direct_dial": { "name": "allow_direct_dial", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "timeout_destination": { "name": "timeout_destination", "type": "jsonb", "primaryKey": false, "notNull": true }, "invalid_destination": { "name": "invalid_destination", "type": "jsonb", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": { "ivrs_greeting_sound_id_sound_files_id_fk": { "name": "ivrs_greeting_sound_id_sound_files_id_fk", "tableFrom": "ivrs", "tableTo": "sound_files", "columnsFrom": [ "greeting_sound_id" ], "columnsTo": [ "id" ], "onDelete": "restrict", "onUpdate": "no action" }, "ivrs_invalid_sound_id_sound_files_id_fk": { "name": "ivrs_invalid_sound_id_sound_files_id_fk", "tableFrom": "ivrs", "tableTo": "sound_files", "columnsFrom": [ "invalid_sound_id" ], "columnsTo": [ "id" ], "onDelete": "set null", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": { "ivrs_number_unique": { "name": "ivrs_number_unique", "nullsNotDistinct": false, "columns": [ "number" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.moh_classes": { "name": "moh_classes", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "shuffle": { "name": "shuffle", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": { "moh_classes_name_unique": { "name": "moh_classes_name_unique", "nullsNotDistinct": false, "columns": [ "name" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.outbound_routes": { "name": "outbound_routes", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "position": { "name": "position", "type": "integer", "primaryKey": false, "notNull": true }, "enabled": { "name": "enabled", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "patterns": { "name": "patterns", "type": "jsonb", "primaryKey": false, "notNull": true }, "required_class": { "name": "required_class", "type": "outbound_class", "typeSchema": "public", "primaryKey": false, "notNull": true }, "trunk_ids": { "name": "trunk_ids", "type": "uuid[]", "primaryKey": false, "notNull": true }, "caller_id_did_id": { "name": "caller_id_did_id", "type": "uuid", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": { "outbound_routes_caller_id_did_id_dids_id_fk": { "name": "outbound_routes_caller_id_did_id_dids_id_fk", "tableFrom": "outbound_routes", "tableTo": "dids", "columnsFrom": [ "caller_id_did_id" ], "columnsTo": [ "id" ], "onDelete": "set null", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.paging_group_members": { "name": "paging_group_members", "schema": "", "columns": { "paging_group_id": { "name": "paging_group_id", "type": "uuid", "primaryKey": false, "notNull": true }, "extension_id": { "name": "extension_id", "type": "uuid", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": { "paging_group_members_paging_group_id_paging_groups_id_fk": { "name": "paging_group_members_paging_group_id_paging_groups_id_fk", "tableFrom": "paging_group_members", "tableTo": "paging_groups", "columnsFrom": [ "paging_group_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "paging_group_members_extension_id_extensions_id_fk": { "name": "paging_group_members_extension_id_extensions_id_fk", "tableFrom": "paging_group_members", "tableTo": "extensions", "columnsFrom": [ "extension_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": { "paging_group_members_paging_group_id_extension_id_pk": { "name": "paging_group_members_paging_group_id_extension_id_pk", "columns": [ "paging_group_id", "extension_id" ] } }, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.paging_groups": { "name": "paging_groups", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "number": { "name": "number", "type": "text", "primaryKey": false, "notNull": true }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "duplex": { "name": "duplex", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": { "paging_groups_number_unique": { "name": "paging_groups_number_unique", "nullsNotDistinct": false, "columns": [ "number" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.queue_calls": { "name": "queue_calls", "schema": "", "columns": { "id": { "name": "id", "type": "bigserial", "primaryKey": true, "notNull": true }, "queue_id": { "name": "queue_id", "type": "uuid", "primaryKey": false, "notNull": true }, "uniqueid": { "name": "uniqueid", "type": "text", "primaryKey": false, "notNull": true }, "linkedid": { "name": "linkedid", "type": "text", "primaryKey": false, "notNull": true }, "joined_at": { "name": "joined_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "outcome": { "name": "outcome", "type": "queue_outcome", "typeSchema": "public", "primaryKey": false, "notNull": false }, "wait_seconds": { "name": "wait_seconds", "type": "integer", "primaryKey": false, "notNull": false }, "agent_extension_id": { "name": "agent_extension_id", "type": "uuid", "primaryKey": false, "notNull": false } }, "indexes": { "queue_calls_queue_id_joined_at_index": { "name": "queue_calls_queue_id_joined_at_index", "columns": [ { "expression": "queue_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "joined_at", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} }, "queue_calls_uniqueid_index": { "name": "queue_calls_uniqueid_index", "columns": [ { "expression": "uniqueid", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": { "queue_calls_queue_id_queues_id_fk": { "name": "queue_calls_queue_id_queues_id_fk", "tableFrom": "queue_calls", "tableTo": "queues", "columnsFrom": [ "queue_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "queue_calls_agent_extension_id_extensions_id_fk": { "name": "queue_calls_agent_extension_id_extensions_id_fk", "tableFrom": "queue_calls", "tableTo": "extensions", "columnsFrom": [ "agent_extension_id" ], "columnsTo": [ "id" ], "onDelete": "set null", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.queue_member_state": { "name": "queue_member_state", "schema": "", "columns": { "queue_id": { "name": "queue_id", "type": "uuid", "primaryKey": false, "notNull": true }, "extension_id": { "name": "extension_id", "type": "uuid", "primaryKey": false, "notNull": true }, "paused": { "name": "paused", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": { "queue_member_state_queue_id_queues_id_fk": { "name": "queue_member_state_queue_id_queues_id_fk", "tableFrom": "queue_member_state", "tableTo": "queues", "columnsFrom": [ "queue_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "queue_member_state_extension_id_extensions_id_fk": { "name": "queue_member_state_extension_id_extensions_id_fk", "tableFrom": "queue_member_state", "tableTo": "extensions", "columnsFrom": [ "extension_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": { "queue_member_state_queue_id_extension_id_pk": { "name": "queue_member_state_queue_id_extension_id_pk", "columns": [ "queue_id", "extension_id" ] } }, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.queue_members": { "name": "queue_members", "schema": "", "columns": { "queue_id": { "name": "queue_id", "type": "uuid", "primaryKey": false, "notNull": true }, "extension_id": { "name": "extension_id", "type": "uuid", "primaryKey": false, "notNull": true }, "penalty": { "name": "penalty", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": { "queue_members_queue_id_queues_id_fk": { "name": "queue_members_queue_id_queues_id_fk", "tableFrom": "queue_members", "tableTo": "queues", "columnsFrom": [ "queue_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "queue_members_extension_id_extensions_id_fk": { "name": "queue_members_extension_id_extensions_id_fk", "tableFrom": "queue_members", "tableTo": "extensions", "columnsFrom": [ "extension_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": { "queue_members_queue_id_extension_id_pk": { "name": "queue_members_queue_id_extension_id_pk", "columns": [ "queue_id", "extension_id" ] } }, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.queues": { "name": "queues", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "number": { "name": "number", "type": "text", "primaryKey": false, "notNull": true }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "strategy": { "name": "strategy", "type": "queue_strategy", "typeSchema": "public", "primaryKey": false, "notNull": true, "default": "'rrmemory'" }, "member_ring_seconds": { "name": "member_ring_seconds", "type": "integer", "primaryKey": false, "notNull": true, "default": 15 }, "retry_seconds": { "name": "retry_seconds", "type": "integer", "primaryKey": false, "notNull": true, "default": 5 }, "wrapup_seconds": { "name": "wrapup_seconds", "type": "integer", "primaryKey": false, "notNull": true, "default": 10 }, "max_wait_seconds": { "name": "max_wait_seconds", "type": "integer", "primaryKey": false, "notNull": true, "default": 300 }, "max_callers": { "name": "max_callers", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "moh_class": { "name": "moh_class", "type": "text", "primaryKey": false, "notNull": true, "default": "'default'" }, "announce_position": { "name": "announce_position", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "announce_every_seconds": { "name": "announce_every_seconds", "type": "integer", "primaryKey": false, "notNull": true, "default": 60 }, "join_when_no_agents": { "name": "join_when_no_agents", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "record": { "name": "record", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "sla_seconds": { "name": "sla_seconds", "type": "integer", "primaryKey": false, "notNull": true, "default": 20 }, "caller_id_name_prefix": { "name": "caller_id_name_prefix", "type": "text", "primaryKey": false, "notNull": false }, "timeout_destination": { "name": "timeout_destination", "type": "jsonb", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": { "queues_number_unique": { "name": "queues_number_unique", "nullsNotDistinct": false, "columns": [ "number" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.recordings": { "name": "recordings", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "linkedid": { "name": "linkedid", "type": "text", "primaryKey": false, "notNull": true }, "file_path": { "name": "file_path", "type": "text", "primaryKey": false, "notNull": true }, "started_at": { "name": "started_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true }, "duration_ms": { "name": "duration_ms", "type": "integer", "primaryKey": false, "notNull": false }, "size_bytes": { "name": "size_bytes", "type": "bigint", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": { "recordings_filePath_unique": { "name": "recordings_filePath_unique", "nullsNotDistinct": false, "columns": [ "file_path" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.ring_group_members": { "name": "ring_group_members", "schema": "", "columns": { "ring_group_id": { "name": "ring_group_id", "type": "uuid", "primaryKey": false, "notNull": true }, "extension_id": { "name": "extension_id", "type": "uuid", "primaryKey": false, "notNull": true }, "position": { "name": "position", "type": "integer", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": { "ring_group_members_ring_group_id_ring_groups_id_fk": { "name": "ring_group_members_ring_group_id_ring_groups_id_fk", "tableFrom": "ring_group_members", "tableTo": "ring_groups", "columnsFrom": [ "ring_group_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "ring_group_members_extension_id_extensions_id_fk": { "name": "ring_group_members_extension_id_extensions_id_fk", "tableFrom": "ring_group_members", "tableTo": "extensions", "columnsFrom": [ "extension_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": { "ring_group_members_ring_group_id_extension_id_pk": { "name": "ring_group_members_ring_group_id_extension_id_pk", "columns": [ "ring_group_id", "extension_id" ] } }, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.ring_groups": { "name": "ring_groups", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "number": { "name": "number", "type": "text", "primaryKey": false, "notNull": true }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "strategy": { "name": "strategy", "type": "ring_strategy", "typeSchema": "public", "primaryKey": false, "notNull": true, "default": "'ringall'" }, "ring_seconds": { "name": "ring_seconds", "type": "integer", "primaryKey": false, "notNull": true, "default": 25 }, "caller_id_name_prefix": { "name": "caller_id_name_prefix", "type": "text", "primaryKey": false, "notNull": false }, "music_instead_of_ring": { "name": "music_instead_of_ring", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "no_answer_destination": { "name": "no_answer_destination", "type": "jsonb", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": { "ring_groups_number_unique": { "name": "ring_groups_number_unique", "nullsNotDistinct": false, "columns": [ "number" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.sessions": { "name": "sessions", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "user_id": { "name": "user_id", "type": "uuid", "primaryKey": false, "notNull": true }, "expires_at": { "name": "expires_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true }, "ip": { "name": "ip", "type": "inet", "primaryKey": false, "notNull": false }, "user_agent": { "name": "user_agent", "type": "text", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "sessions_user_id_index": { "name": "sessions_user_id_index", "columns": [ { "expression": "user_id", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": { "sessions_user_id_users_id_fk": { "name": "sessions_user_id_users_id_fk", "tableFrom": "sessions", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.settings": { "name": "settings", "schema": "", "columns": { "key": { "name": "key", "type": "text", "primaryKey": true, "notNull": true }, "value": { "name": "value", "type": "jsonb", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.sms_messages": { "name": "sms_messages", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "did_id": { "name": "did_id", "type": "uuid", "primaryKey": false, "notNull": true }, "direction": { "name": "direction", "type": "text", "primaryKey": false, "notNull": true }, "remote_number": { "name": "remote_number", "type": "text", "primaryKey": false, "notNull": true }, "body": { "name": "body", "type": "text", "primaryKey": false, "notNull": true }, "media": { "name": "media", "type": "jsonb", "primaryKey": false, "notNull": true, "default": "'[]'::jsonb" }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true }, "provider_id": { "name": "provider_id", "type": "text", "primaryKey": false, "notNull": false }, "error": { "name": "error", "type": "text", "primaryKey": false, "notNull": false }, "sent_by_user_id": { "name": "sent_by_user_id", "type": "uuid", "primaryKey": false, "notNull": false }, "read_at": { "name": "read_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "sms_messages_did_id_remote_number_created_at_index": { "name": "sms_messages_did_id_remote_number_created_at_index", "columns": [ { "expression": "did_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "remote_number", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "created_at", "isExpression": false, "asc": false, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": { "sms_messages_did_id_dids_id_fk": { "name": "sms_messages_did_id_dids_id_fk", "tableFrom": "sms_messages", "tableTo": "dids", "columnsFrom": [ "did_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "sms_messages_sent_by_user_id_users_id_fk": { "name": "sms_messages_sent_by_user_id_users_id_fk", "tableFrom": "sms_messages", "tableTo": "users", "columnsFrom": [ "sent_by_user_id" ], "columnsTo": [ "id" ], "onDelete": "set null", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": { "sms_messages_direction_check": { "name": "sms_messages_direction_check", "value": "\"sms_messages\".\"direction\" in ('in', 'out')" } }, "isRLSEnabled": false }, "public.sound_files": { "name": "sound_files", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "kind": { "name": "kind", "type": "text", "primaryKey": false, "notNull": true }, "moh_class_id": { "name": "moh_class_id", "type": "uuid", "primaryKey": false, "notNull": false }, "source": { "name": "source", "type": "text", "primaryKey": false, "notNull": true }, "tts_text": { "name": "tts_text", "type": "text", "primaryKey": false, "notNull": false }, "original_filename": { "name": "original_filename", "type": "text", "primaryKey": false, "notNull": false }, "asterisk_name": { "name": "asterisk_name", "type": "text", "primaryKey": false, "notNull": true }, "duration_ms": { "name": "duration_ms", "type": "integer", "primaryKey": false, "notNull": true }, "position": { "name": "position", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": { "sound_files_moh_class_id_moh_classes_id_fk": { "name": "sound_files_moh_class_id_moh_classes_id_fk", "tableFrom": "sound_files", "tableTo": "moh_classes", "columnsFrom": [ "moh_class_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": { "sound_files_asteriskName_unique": { "name": "sound_files_asteriskName_unique", "nullsNotDistinct": false, "columns": [ "asterisk_name" ] } }, "policies": {}, "checkConstraints": { "sound_files_kind_check": { "name": "sound_files_kind_check", "value": "\"sound_files\".\"kind\" in ('prompt', 'moh')" }, "sound_files_source_check": { "name": "sound_files_source_check", "value": "\"sound_files\".\"source\" in ('upload', 'tts', 'phone')" } }, "isRLSEnabled": false }, "public.system_events": { "name": "system_events", "schema": "", "columns": { "id": { "name": "id", "type": "bigserial", "primaryKey": true, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "severity": { "name": "severity", "type": "text", "primaryKey": false, "notNull": true }, "code": { "name": "code", "type": "text", "primaryKey": false, "notNull": true }, "source": { "name": "source", "type": "text", "primaryKey": false, "notNull": true }, "message": { "name": "message", "type": "text", "primaryKey": false, "notNull": true } }, "indexes": { "system_events_created_at_index": { "name": "system_events_created_at_index", "columns": [ { "expression": "created_at", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": { "system_events_severity_check": { "name": "system_events_severity_check", "value": "\"system_events\".\"severity\" in ('info', 'warning', 'error')" } }, "isRLSEnabled": false }, "public.time_conditions": { "name": "time_conditions", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "timezone": { "name": "timezone", "type": "text", "primaryKey": false, "notNull": true }, "open_ranges": { "name": "open_ranges", "type": "jsonb", "primaryKey": false, "notNull": true }, "use_holidays": { "name": "use_holidays", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "override_digit": { "name": "override_digit", "type": "smallint", "primaryKey": false, "notNull": false }, "override_state": { "name": "override_state", "type": "text", "primaryKey": false, "notNull": false }, "open_destination": { "name": "open_destination", "type": "jsonb", "primaryKey": false, "notNull": true }, "closed_destination": { "name": "closed_destination", "type": "jsonb", "primaryKey": false, "notNull": true }, "holiday_destination": { "name": "holiday_destination", "type": "jsonb", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": { "time_conditions_overrideDigit_unique": { "name": "time_conditions_overrideDigit_unique", "nullsNotDistinct": false, "columns": [ "override_digit" ] } }, "policies": {}, "checkConstraints": { "time_conditions_override_digit_check": { "name": "time_conditions_override_digit_check", "value": "\"time_conditions\".\"override_digit\" between 1 and 9" }, "time_conditions_override_state_check": { "name": "time_conditions_override_state_check", "value": "\"time_conditions\".\"override_state\" in ('open', 'closed')" } }, "isRLSEnabled": false }, "public.trunks": { "name": "trunks", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "provider": { "name": "provider", "type": "trunk_provider", "typeSchema": "public", "primaryKey": false, "notNull": true, "default": "'voipms'" }, "enabled": { "name": "enabled", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "server_host": { "name": "server_host", "type": "text", "primaryKey": false, "notNull": true }, "server_port": { "name": "server_port", "type": "integer", "primaryKey": false, "notNull": true, "default": 5060 }, "transport": { "name": "transport", "type": "sip_transport", "typeSchema": "public", "primaryKey": false, "notNull": true, "default": "'udp'" }, "auth_mode": { "name": "auth_mode", "type": "trunk_auth_mode", "typeSchema": "public", "primaryKey": false, "notNull": true, "default": "'registration'" }, "username": { "name": "username", "type": "text", "primaryKey": false, "notNull": false }, "password_enc": { "name": "password_enc", "type": "text", "primaryKey": false, "notNull": false }, "from_user": { "name": "from_user", "type": "text", "primaryKey": false, "notNull": false }, "from_domain": { "name": "from_domain", "type": "text", "primaryKey": false, "notNull": false }, "codecs": { "name": "codecs", "type": "text[]", "primaryKey": false, "notNull": true, "default": "'{ulaw}'" }, "srtp": { "name": "srtp", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "max_channels": { "name": "max_channels", "type": "integer", "primaryKey": false, "notNull": false }, "voipms_api_username": { "name": "voipms_api_username", "type": "text", "primaryKey": false, "notNull": false }, "voipms_api_password_enc": { "name": "voipms_api_password_enc", "type": "text", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": { "trunks_name_unique": { "name": "trunks_name_unique", "nullsNotDistinct": false, "columns": [ "name" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.user_runtime_state": { "name": "user_runtime_state", "schema": "", "columns": { "extension_id": { "name": "extension_id", "type": "uuid", "primaryKey": true, "notNull": true }, "dnd": { "name": "dnd", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "cfu": { "name": "cfu", "type": "text", "primaryKey": false, "notNull": false }, "cfb": { "name": "cfb", "type": "text", "primaryKey": false, "notNull": false }, "cfna": { "name": "cfna", "type": "text", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": { "user_runtime_state_extension_id_extensions_id_fk": { "name": "user_runtime_state_extension_id_extensions_id_fk", "tableFrom": "user_runtime_state", "tableTo": "extensions", "columnsFrom": [ "extension_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.users": { "name": "users", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "email": { "name": "email", "type": "citext", "primaryKey": false, "notNull": true }, "display_name": { "name": "display_name", "type": "text", "primaryKey": false, "notNull": true }, "password_hash": { "name": "password_hash", "type": "text", "primaryKey": false, "notNull": true }, "role": { "name": "role", "type": "user_role", "typeSchema": "public", "primaryKey": false, "notNull": true, "default": "'user'" }, "is_active": { "name": "is_active", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "totp_secret_enc": { "name": "totp_secret_enc", "type": "text", "primaryKey": false, "notNull": false }, "totp_recovery_hashes": { "name": "totp_recovery_hashes", "type": "text[]", "primaryKey": false, "notNull": true, "default": "'{}'" }, "totp_last_step": { "name": "totp_last_step", "type": "bigint", "primaryKey": false, "notNull": false }, "must_change_password": { "name": "must_change_password", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "last_login_at": { "name": "last_login_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": { "users_email_unique": { "name": "users_email_unique", "nullsNotDistinct": false, "columns": [ "email" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.voicemail_messages": { "name": "voicemail_messages", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "extension_id": { "name": "extension_id", "type": "uuid", "primaryKey": false, "notNull": true }, "msg_id": { "name": "msg_id", "type": "text", "primaryKey": false, "notNull": true }, "folder": { "name": "folder", "type": "text", "primaryKey": false, "notNull": true }, "caller_number": { "name": "caller_number", "type": "text", "primaryKey": false, "notNull": false }, "caller_name": { "name": "caller_name", "type": "text", "primaryKey": false, "notNull": false }, "duration_s": { "name": "duration_s", "type": "integer", "primaryKey": false, "notNull": true }, "received_at": { "name": "received_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true }, "file_path": { "name": "file_path", "type": "text", "primaryKey": false, "notNull": true }, "emailed_at": { "name": "emailed_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "transcript": { "name": "transcript", "type": "text", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": { "voicemail_messages_extension_id_extensions_id_fk": { "name": "voicemail_messages_extension_id_extensions_id_fk", "tableFrom": "voicemail_messages", "tableTo": "extensions", "columnsFrom": [ "extension_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": { "voicemail_messages_msgId_unique": { "name": "voicemail_messages_msgId_unique", "nullsNotDistinct": false, "columns": [ "msg_id" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.webhook_deliveries": { "name": "webhook_deliveries", "schema": "", "columns": { "id": { "name": "id", "type": "bigserial", "primaryKey": true, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "webhook_id": { "name": "webhook_id", "type": "uuid", "primaryKey": false, "notNull": true }, "event": { "name": "event", "type": "text", "primaryKey": false, "notNull": true }, "payload": { "name": "payload", "type": "jsonb", "primaryKey": false, "notNull": true }, "attempt": { "name": "attempt", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true }, "response_code": { "name": "response_code", "type": "integer", "primaryKey": false, "notNull": false }, "next_attempt_at": { "name": "next_attempt_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false } }, "indexes": {}, "foreignKeys": { "webhook_deliveries_webhook_id_webhooks_id_fk": { "name": "webhook_deliveries_webhook_id_webhooks_id_fk", "tableFrom": "webhook_deliveries", "tableTo": "webhooks", "columnsFrom": [ "webhook_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.webhooks": { "name": "webhooks", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "url": { "name": "url", "type": "text", "primaryKey": false, "notNull": true }, "secret_enc": { "name": "secret_enc", "type": "text", "primaryKey": false, "notNull": true }, "events": { "name": "events", "type": "text[]", "primaryKey": false, "notNull": true }, "enabled": { "name": "enabled", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false } }, "enums": { "public.call_direction": { "name": "call_direction", "schema": "public", "values": [ "inbound", "outbound", "internal" ] }, "public.call_status": { "name": "call_status", "schema": "public", "values": [ "answered", "missed", "voicemail", "abandoned", "busy", "failed" ] }, "public.outbound_class": { "name": "outbound_class", "schema": "public", "values": [ "internal", "local", "national", "international" ] }, "public.phone_vendor": { "name": "phone_vendor", "schema": "public", "values": [ "yealink", "grandstream", "polycom", "generic" ] }, "public.queue_outcome": { "name": "queue_outcome", "schema": "public", "values": [ "answered", "abandoned", "timed_out" ] }, "public.queue_strategy": { "name": "queue_strategy", "schema": "public", "values": [ "ringall", "leastrecent", "fewestcalls", "random", "rrmemory", "linear" ] }, "public.record_mode": { "name": "record_mode", "schema": "public", "values": [ "never", "inbound", "outbound", "all" ] }, "public.ring_strategy": { "name": "ring_strategy", "schema": "public", "values": [ "ringall", "hunt" ] }, "public.sip_transport": { "name": "sip_transport", "schema": "public", "values": [ "udp", "tcp", "tls" ] }, "public.trunk_auth_mode": { "name": "trunk_auth_mode", "schema": "public", "values": [ "registration", "ip" ] }, "public.trunk_provider": { "name": "trunk_provider", "schema": "public", "values": [ "voipms", "generic" ] }, "public.user_role": { "name": "user_role", "schema": "public", "values": [ "admin", "user" ] } }, "schemas": {}, "sequences": {}, "roles": {}, "policies": {}, "views": {}, "_meta": { "columns": {}, "schemas": {}, "tables": {} } }