source:
  type: "mongodb"
  connection_string: "mongodb://root:Expertflow123@mongo-mongodb.ef-external.svc:27017/?authSource=admin&tls=true&tlsAllowInvalidHostnames=true"
 
  # connection string for replica support
  # connection_string: "mongodb://root:Expertflow123@mongo-mongodb-0.mongo-mongodb-headless.ef-external.svc.cluster.local:27017,mongo-mongodb-1.mongo-mongodb-headless.ef-external.svc.cluster.local:27017,mongo-mongodb-2.mongo-mongodb-headless.ef-external.svc.cluster.local:27017/?authSource=admin&tls=true&tlsAllowInvalidHostnames=true"
  
  replica_set_enabled: false # get from global configs  ${MONGODB_REPLICASET_ENABLED}
  replica_set: "expertflow"  # # get from global configs    MONGODB_REPLICASET
  read_preference : "secondaryPreferred"  # get from global configs   MONGODB_READ_PREFERENCE
  queries:
    campaign_scheduler:
      database: "conversation-manager_db"
      collection_name: "ConversationActivities"
      filter: {"activity.eventEmitter.senderName": "CAMPAIGN_SCHEDULER"}
      replication_key: "recordCreationTime"
      transformation: "transform_campaign_scheduler"
      num_batches: 50
      query_keys:
    campaigns:
      database: "campaignsDb"
      collection_name: "campaigns"
      filter: {}
      replication_key: "updatedAt"
      transformation: "transform_campaigns_data"
      num_batches: 50
      query_keys:
    
  # TLS/SSL Configuration
  tls: true  # Set to false if you don't want to use TLS
  tls_ca_file: "/transflux/certificates/mongo_certs/mongodb-ca-cert"
  tls_cert_key_file: "/transflux/certificates/mongo_certs/client-pem"  # Includes both client certificate and private key

batch_size: 500 # Adjust as needed

target:
  type: "mysql"
  db_url: "mysql+pymysql://<server_username>:<server_password>@<server_ip>:<mysql_port>/<db_name>"
  #db_url: "mssql+pyodbc://<server_username>:<server_password>@<server_ip>:<mssql_port>/<db_name>?driver=ODBC+Driver+17+for+SQL+Server"
  enable_ssl: true  # Enable or disable SSL connections
  ssl_ca: "/transflux/certificates/mysql_certs/ca.pem"
  ssl_cert: "/transflux/certificates/mysql_certs/client-cert.pem"
  ssl_key: "/transflux/certificates/mysql_certs/client-key.pem"

configdb:
  type: "mysql"
  db_url: "mysql+pymysql://<server_username>:<server_password>@<server_ip>:<mysql_port>/<db_name>"
  #db_url: "mssql+pyodbc://<server_username>:<server_password>@<server_ip>:<mssql_port>/<db_name>?driver=ODBC+Driver+17+for+SQL+Server"
  enable_ssl: true
  ssl_ca: "/transflux/certificates/mysql_certs/ca.pem"
  ssl_cert: "/transflux/certificates/mysql_certs/client-cert.pem"
  ssl_key: "/transflux/certificates/mysql_certs/client-key.pem"

transformation:
schedule_interval: "0 */5 * * *"
