CREATE TABLE IF NOT EXISTS "telephony_trunks" ( "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL, "tenant_id" bigint NOT NULL, "provider" text DEFAULT 'telekom' NOT NULL, "enabled" boolean DEFAULT false NOT NULL, "registrar" text DEFAULT 'tel.t-online.de' NOT NULL, "sip_user" text, "auth_user" text, "password" text, "caller_id" text, "inbound_extension" text DEFAULT '1001' NOT NULL, "outbound_prefix" text DEFAULT '0' NOT NULL, "created_at" timestamp with time zone DEFAULT now() NOT NULL, "updated_at" timestamp with time zone, "created_by" uuid, "updated_by" uuid ); DO $$ BEGIN IF NOT EXISTS ( SELECT 1 FROM pg_constraint WHERE conname = 'telephony_trunks_tenant_id_tenants_id_fk' ) THEN ALTER TABLE "telephony_trunks" ADD CONSTRAINT "telephony_trunks_tenant_id_tenants_id_fk" FOREIGN KEY ("tenant_id") REFERENCES "public"."tenants"("id") ON DELETE cascade ON UPDATE no action; END IF; IF NOT EXISTS ( SELECT 1 FROM pg_constraint WHERE conname = 'telephony_trunks_created_by_auth_users_id_fk' ) THEN ALTER TABLE "telephony_trunks" ADD CONSTRAINT "telephony_trunks_created_by_auth_users_id_fk" FOREIGN KEY ("created_by") REFERENCES "public"."auth_users"("id") ON DELETE no action ON UPDATE no action; END IF; IF NOT EXISTS ( SELECT 1 FROM pg_constraint WHERE conname = 'telephony_trunks_updated_by_auth_users_id_fk' ) THEN ALTER TABLE "telephony_trunks" ADD CONSTRAINT "telephony_trunks_updated_by_auth_users_id_fk" FOREIGN KEY ("updated_by") REFERENCES "public"."auth_users"("id") ON DELETE no action ON UPDATE no action; END IF; END $$; CREATE UNIQUE INDEX IF NOT EXISTS "telephony_trunks_tenant_provider_idx" ON "telephony_trunks" USING btree ("tenant_id", "provider");