Configuring Multiple Sub-Domains
In an environment with multiple sub-domains, incoming traffic is directed to the correct sub-domain by the Traffic Routing Agent (TRA) positioned in the topology between the SBA Gateway (CHF) and MATRIXX Engine.
For outbound traffic, such as a notification sent from the engine to the CHF over ActiveMQ, each sub-domain sends messages using its own queue pair (request and response). When the CHF
receives a message on one queue, it must respond on the associated response queue for that sub-domain. Handlers for different sub-domain notifications can be defined in the
mdc.notifications.handlers
section of nf.yaml. Each notification handler has a name (for display purposes only), a pair of queues (request and response),
the number of consumers that read from the queue, and mapping configuration.
The following is an example of a two sub-domain configuration:
mdc:
notifications:
queueManagers:
defaultQueueManager:
url: "failover:(tcp://activemq-1:15672)"
handlers:
# Set the default notification handlers to have no consumers (disabled)
chargingDataNotifications:
consumers: 0
spendingLimitNotifications:
consumers: 0
# Charging Data Notifications for Sub Domain 11
chargingDataNotificationsSubDomain11:
queueManager: "defaultQueueManager"
requestQueue: "chargingdatanotify.engine_to_chf.subdomain11"
responseQueue: "chargingdatanotify.chf_to_engine.subdomain11"
consumers: 2
auditNetworkConfirmations: true
mdcMappings:
Mtx5GChargingNotifyRequest:
requestMappingFile: "ChargingNotifyRequest-5200-mapping.yaml"
responseMappingFile: "ChargingNotifyResponse-5200-mapping.yaml"
placeholderProperties:
subDomainId: "11"
inputParameters:
subDomainId: "11"
# Spending Limit Notifications for Sub Domain 11
spendingLimitNotifications11:
queueManager: "defaultQueueManager"
requestQueue: "spendinglimitnotify.engine_to_chf.subdomain11"
responseQueue: "spendinglimitnotify.chf_to_engine.subdomain11"
consumers: 2
auditNetworkConfirmations: true
mdcMappings:
Mtx5GSpendingLimitNotifyRequest:
requestMappingFile: "SpendingLimitNotifyStatusRequest-5200-mapping.yaml"
responseMappingFile: "SpendingLimitNotifyStatusResponse-5200-mapping.yaml"
placeholderProperties:
subDomainId: "11"
inputParameters:
subDomainId: "11"
Mtx5GSubscriptionTerminationRequest:
requestMappingFile: "SpendingLimitNotifyTerminateRequest-5200-mapping.yaml"
responseMappingFile: "SpendingLimitNotifyTerminateResponse-5200-mapping.yaml"
placeholderProperties:
subDomainId: "11"
inputParameters:
subDomainId: "11"
# Charging Data Notifications for Sub Domain 22
chargingDataNotificationsSubDomain22:
queueManager: "defaultQueueManager"
requestQueue: "chargingdatanotify.engine_to_chf.subdomain22"
responseQueue: "chargingdatanotify.chf_to_engine.subdomain22"
consumers: 2
auditNetworkConfirmations: true
mdcMappings:
Mtx5GChargingNotifyRequest:
requestMappingFile: "ChargingNotifyRequest-5200-mapping.yaml"
responseMappingFile: "ChargingNotifyResponse-5200-mapping.yaml"
placeholderProperties:
subDomainId: "22"
inputParameters:
subDomainId: "22"
# Spending Limit Notifications for Sub Domain 22
spendingLimitNotifications22:
queueManager: "defaultQueueManager"
requestQueue: "spendinglimitnotify.engine_to_chf.subdomain22"
responseQueue: "spendinglimitnotify.chf_to_engine.subdomain22"
consumers: 2
auditNetworkConfirmations: true
mdcMappings:
Mtx5GSpendingLimitNotifyRequest:
requestMappingFile: "SpendingLimitNotifyStatusRequest-5200-mapping.yaml"
responseMappingFile: "SpendingLimitNotifyStatusResponse-5200-mapping.yaml"
placeholderProperties:
subDomainId: "22"
inputParameters:
subDomainId: "22"
Mtx5GSubscriptionTerminationRequest:
requestMappingFile: "SpendingLimitNotifyTerminateRequest-5200-mapping.yaml"
responseMappingFile: "SpendingLimitNotifyTerminateResponse-5200-mapping.yaml"
placeholderProperties:
subDomainId: "22"
inputParameters:
subDomainId: