Files
aimaq-call-center/docker-compose.minimal.yml
T
arystanbek 7d049e83fe
deploy / deploy (push) Successful in 44s
fix: commit pending host drift, enable emotive ack rotation
docker-compose.override.yml: VAD tuning (RMS threshold, min speech, trailing
silence), no-speech reprompt, immediate_short ack mode, media idle timeout --
all previously live on prod but uncommitted. AI_VOICE_V2_EMOTIVE_ACK_ENABLED
flipped 0 -> 1: this flag was silently disabling filler-phrase rotation
regardless of the app-level 36c2acb fix.

docker-compose.minimal.yml: removed the voice-ai (Magzhan legacy) service
and its dependency, matching what was actually running.

docker-compose.yml: added common_network to api-gateway.
2026-08-30 07:56:40 +00:00

196 lines
5.0 KiB
YAML

name: aimaq-call-center
x-app-env: &app_env
CC_DATA_DIR: /app/.data_local
DATABASE_URL: postgresql+psycopg://${POSTGRES_USER}:${POSTGRES_PASSWORD}@postgres:5432/${POSTGRES_DB}
SCHEMA_MANAGEMENT_MODE: migrations
AUTH_SERVICE_URL: http://auth-service:8000
AUDIT_SERVICE_URL: http://audit-service:8000
CUSTOMER_SERVICE_URL: http://customer-service:8000
INTERACTION_SERVICE_URL: http://interaction-service:8000
VOICE_ADAPTER_SERVICE_URL: http://voice-adapter-service:8000
RECORDING_SERVICE_URL: http://recording-service:8000
ASTERISK_BRIDGE_SERVICE_URL: http://asterisk-bridge-service:8000
SALES_SERVICE_URL: http://sales-service:8000
REPORTING_SERVICE_URL: http://reporting-service:8000
LOCAL_STACK_PUBLIC_BASE_URL: https://aimaq.konturai.kz
ASTERISK_WEBRTC_WS_URL: wss://aimaq.konturai.kz/asterisk-ws
ASTERISK_CALLCONTROL_ENABLED: "0"
ASTERISK_IVR_FASTAGI_ENABLED: "0"
ASTERISK_WEBRTC_ENABLED: "0"
TELEGRAM_BOT_ENABLED: "0"
AI_TELEGRAM_ENABLED: "0"
WHATSAPP_OUTBOUND_ENABLED: "0"
AI_WHATSAPP_ENABLED: "0"
SALES_TELEGRAM_BRIDGE_ENABLED: "0"
EVENT_BUS_ENABLED: "0"
EVENT_BUS_CONSUMER_ENABLED: "0"
AI_VOICE_ENABLED: "0"
AI_VOICE_AUDIOSOCKET_ENABLED: "0"
SALES_VOICE_RUNTIME_ENABLED: "1"
ERROR_TELEGRAM_ALERTS: "0"
x-service-defaults: &service_defaults
image: ${CALL_CENTER_IMAGE:-call-center-app:active-aimaq}
restart: unless-stopped
env_file:
- ./.env.production
environment:
<<: *app_env
volumes:
- ./.data_local:/app/.data_local
extra_hosts:
- host.docker.internal:host-gateway
services:
postgres:
image: postgres:16-alpine
container_name: aimaq-call-center-postgres
restart: unless-stopped
env_file:
- ./.env
volumes:
- ./.data_pg:/var/lib/postgresql/data
healthcheck:
test:
- CMD-SHELL
- pg_isready -U "$$POSTGRES_USER" -d "$$POSTGRES_DB"
interval: 10s
timeout: 5s
retries: 12
start_period: 15s
migrate:
<<: *service_defaults
restart: "no"
depends_on:
postgres:
condition: service_healthy
command: ["python", "scripts/migrate_core_db.py"]
auth-service:
<<: *service_defaults
depends_on:
- postgres
environment:
<<: *app_env
APP_MODULE: services.auth_service.app:app
audit-service:
<<: *service_defaults
depends_on:
- postgres
environment:
<<: *app_env
APP_MODULE: services.audit_service.app:app
customer-service:
<<: *service_defaults
depends_on:
- postgres
environment:
<<: *app_env
APP_MODULE: services.customer_service.app:app
interaction-service:
<<: *service_defaults
depends_on:
- postgres
environment:
<<: *app_env
APP_MODULE: services.interaction_service.app:app
voice-adapter-service:
<<: *service_defaults
depends_on:
- postgres
environment:
<<: *app_env
APP_MODULE: services.voice_adapter_service.app:app
recording-service:
<<: *service_defaults
depends_on:
- postgres
environment:
<<: *app_env
APP_MODULE: services.recording_service.app:app
CC_RECORDINGS_DIR: /app/.data_local/recordings
RECORDING_MAX_BYTES: 26214400
reporting-service:
<<: *service_defaults
depends_on:
- postgres
environment:
<<: *app_env
APP_MODULE: services.reporting_service.app:app
sales-service:
<<: *service_defaults
depends_on:
- postgres
environment:
<<: *app_env
APP_MODULE: services.sales_service.app:app
SALES_AUTOMATION_WORKER_ENABLED: "1"
SALES_AUTOMATION_WORKER_INTERVAL_SECONDS: "5"
SALES_POST_CALL_AI_ENABLED: "1"
SALES_VOICE_RUNTIME_ENABLED: "1"
SALES_TELEGRAM_BRIDGE_ENABLED: "0"
asterisk-bridge-service:
<<: *service_defaults
depends_on:
- postgres
- interaction-service
- voice-adapter-service
- sales-service
environment:
<<: *app_env
APP_MODULE: services.asterisk_bridge_service.app:app
ASTERISK_BRIDGE_ENABLED: "1"
ASTERISK_BRIDGE_FAILED_RETRY_ENABLED: "0"
AI_VOICE_ENABLED: "0"
SALES_VOICE_RUNTIME_ENABLED: "1"
ports:
- "8036:8000"
api-gateway:
<<: *service_defaults
container_name: aimaq-call-center-app
depends_on:
- auth-service
- audit-service
- customer-service
- interaction-service
- voice-adapter-service
- recording-service
- reporting-service
- sales-service
- asterisk-bridge-service
environment:
<<: *app_env
APP_MODULE: gateway.app:app
frontend:
image: ${CALL_CENTER_FRONTEND_IMAGE:-omnichannel-contact-center:active-aimaq}
container_name: aimaq-call-center-frontend
restart: unless-stopped
depends_on:
- api-gateway
ports:
- "127.0.0.1:3082:80"
volumes:
- ./frontend.nginx.conf:/etc/nginx/conf.d/default.conf:ro
networks:
- default
- common_network
networks:
default:
name: aimaq-call-center_default
common_network:
external: true