auth:
  allowLegacyHeaderAuth: "0"

eventBus:
  enabled: "0"
  url: amqp://guest:guest@rabbitmq:5672/
  exchange: mvpcc.domain.events
  dispatchBatchSize: "50"
  maxAttempts: "5"
  pollIntervalSeconds: "2"
  consumerEnabled: "1"
  auditQueue: mvpcc.audit.events
  reportingQueue: mvpcc.reporting.events

rabbitmq:
  enabled: false
  image: rabbitmq:3-management
  replicas: 1
  user: guest
  password: guest
  servicePort: 5672
  managementPort: 15672

asteriskBridge:
  enabled: "1"
  amiEventPrefix: MVPCC
  queueMapJson: '{"voice_lab":"<queue_id>"}'
  authMode: bearer
  authFallbackLegacy: "0"
  authSubject: svc:asterisk-bridge
  authUser: asterisk-bridge
  authRole: admin
  authTokenTtlSeconds: "300"
  callcontrolEnabled: "0"
  callcontrolActionTimeoutSeconds: "10"
  operatorExtensionMapJson: "{}"
  transferTargetMapJson: "{}"
  claimContext: mvpcc-claim
  transferContext: mvpcc-transfer
  pollIntervalSeconds: "1"

voiceAdapter:
  trustedServiceSubjects: svc:asterisk-bridge,svc:ivr-service

recording:
  importTrustedServiceSubjects: svc:asterisk-bridge
  importAllowAdmin: "0"

services:
  auth-service:
    replicas: 1
  voice-adapter-service:
    replicas: 1
  recording-service:
    replicas: 1
  asterisk-bridge-service:
    module: services.asterisk_bridge_service.app:app
    # Must stay singleton: background AMI consumption and retry/reconcile loops are not multi-replica safe.
    replicas: 1
    autoscaling:
      enabled: false
      minReplicas: 1
      maxReplicas: 1
      targetCPUUtilizationPercentage: 70
    podDisruptionBudget:
      enabled: false
      minAvailable: 1
    persistence:
      enabled: false
      size: 1Gi
    resources:
      requests:
        cpu: 200m
        memory: 256Mi
      limits:
        cpu: 750m
        memory: 512Mi
