Engine Sub-Domain Configuration

To implement multiple customer sub-domains in MATRIXX you must configure the create_config.info parameters described below.

Engine Sub-Domain Configuration Parameters lists the create_config.info information required to add sub-domains to MATRIXX.

Table 1. Engine Sub-Domain Configuration Parameters
Parameter Description Default Value
Sub-Domain Identifiers This example defines Sub-domains 1 and 2, which use the engine identifiers 1, 2, 3, and 4:
Domain 1:What are your
                    sub-domain IDs?1, 2 (The default is 1.)
Domain 1:SubDomain 1:What is the description for this sub-domain? SubDomain 1 (This is the default.)
Domain 1:SubDomain 1:What are the engine IDs for this
                    sub-domain?1, 2  (The default is the lowest number engine ID that has not been used in this question.)

Domain 1:SubDomain 2:What is the description for this sub-domain? SubDomain 2
Domain 1:SubDomain 2:What are the engine IDs for this
                    sub-domain?3, 4 
See the description
ActiveMQ Settings You need to configure separate queue names for each sub-domain. For details on the prompts and settings for ActiveMQ configuration, see the discussion about ActiveMQ Gateway Configuration. This example lists sample ActiveMQ settings for a topology that includes:
  • Two DR (Disaster Recovery) sites (the configuration is for one of the DR sites, but the configuration for the second DR site would be nearly identical).
  • Two sub-domains for each site domain.
  • Two engines for each sub-domain (total of 4 engines).
  • An ActiveMQ server for each site.

MATRIXX Engines 1 and 2 are for sub-domain 1, whereas MATRIXX Engines 3 and 4 are for sub-domain 2.

## AMQ Topology - Each subdomain has 1 pair of queues. 
## Group 1 and 2 for sub-domain 1 site preference and HA/DR
## Group 3 and 4 for sub-domain 2 site preference and HA/DR

ActiveMQ Gateway:Do you want to enable the ActiveMQ Gateway (y/n)?y (The default is n.)
ActiveMQ Gateway:What are your ActiveMQ group IDs?1;2;3;4 (The default is primary.)

ActiveMQ Gateway:ActiveMQ Group 1:How many ActiveMQ brokers are in this group?1 (This is the default.)
ActiveMQ Gateway:ActiveMQ Group 1:Broker 1:What is the ActiveMQ broker URI?failover://(tcp://10.0.5.24:61616,tcp://10.0.5.25:61616)?nested.wireFormat=openwire?timeout=1000
(The default is failover://(tcp://127.0.0.1:61616?wireFormat=openwire?timeout=1000.)
ActiveMQ Gateway:ActiveMQ Group 1:Broker 1:Session 1:What are your message handler IDs?notification (The default is payments;notification.)
ActiveMQ Gateway:ActiveMQ Group 1:Broker 1:Session 1:MessageHandler notification:What is the producer's type?queue(This is the default.)
ActiveMQ Gateway:ActiveMQ Group 1:Broker 1:Session 1:MessageHandler notification:What is the producer's name?fromEngineProducer_1
(The default is based upon the handler name in the question and Producer Name Based on Handler Name. If the handler name is not in this table, then "fromEngineProducer" is used.)
ActiveMQ Gateway:ActiveMQ Group 1:Broker 1:Session 1:MessageHandler notification:What is the consumer's type?queue (This is the default.)
ActiveMQ Gateway:ActiveMQ Group 1:Broker 1:Session 1:MessageHandler notification:What is the consumer's name?fromEngineConsumer_1
(The default is based upon the handler name in the question and Consumer Name Based on Handler Name. If the handler name is not in this table, then "fromEngineConsumer" is used.)

ActiveMQ Gateway:ActiveMQ Group 2:How many ActiveMQ brokers are in this group?1
ActiveMQ Gateway:ActiveMQ Group 2:Broker 1:What is the ActiveMQ broker URI?failover://(tcp://10.0.5.25:61616,tcp://10.0.5.24:61616)?nested.wireFormat=openwire?timeout=1000
ActiveMQ Gateway:ActiveMQ Group 2:Broker 1:Session 1:What are your message handler IDs?notification
ActiveMQ Gateway:ActiveMQ Group 2:Broker 1:Session 1:MessageHandler notification:What is the producer's type?queue
ActiveMQ Gateway:ActiveMQ Group 2:Broker 1:Session 1:MessageHandler notification:What is the producer's name?fromEngineProducer_1
ActiveMQ Gateway:ActiveMQ Group 2:Broker 1:Session 1:MessageHandler notification:What is the consumer's type?queue
ActiveMQ Gateway:ActiveMQ Group 2:Broker 1:Session 1:MessageHandler notification:What is the consumer's name?fromEngineConsumer_1

ActiveMQ Gateway:ActiveMQ Group 3:How many ActiveMQ brokers are in this group?1
ActiveMQ Gateway:ActiveMQ Group 3:Broker 1:What is the ActiveMQ broker URI?failover://(tcp://10.0.5.24:61616,tcp://10.0.5.25:61616)?nested.wireFormat=openwire?timeout=1000
ActiveMQ Gateway:ActiveMQ Group 3:Broker 1:Session 1:What are your message handler IDs?notification
ActiveMQ Gateway:ActiveMQ Group 3:Broker 1:Session 1:MessageHandler notification:What is the producer's type?queue
ActiveMQ Gateway:ActiveMQ Group 3:Broker 1:Session 1:MessageHandler notification:What is the producer's name?fromEngineProducer_2
ActiveMQ Gateway:ActiveMQ Group 3:Broker 1:Session 1:MessageHandler notification:What is the consumer's type?queue
ActiveMQ Gateway:ActiveMQ Group 3:Broker 1:Session 1:MessageHandler notification:What is the consumer's name?fromEngineConsumer_2

ActiveMQ Gateway:ActiveMQ Group 4:How many ActiveMQ brokers are in this group?1
ActiveMQ Gateway:ActiveMQ Group 4:Broker 1:What is the ActiveMQ broker URI?failover://(tcp://10.0.5.25:61616,tcp://10.0.5.24:61616)?nested.wireFormat=openwire?timeout=1000
ActiveMQ Gateway:ActiveMQ Group 4:Broker 1:Session 1:What are your message handler IDs?notification
ActiveMQ Gateway:ActiveMQ Group 4:Broker 1:Session 1:MessageHandler notification:What is the producer's type?queue
ActiveMQ Gateway:ActiveMQ Group 4:Broker 1:Session 1:MessageHandler notification:What is the producer's name?fromEngineProducer_2
ActiveMQ Gateway:ActiveMQ Group 4:Broker 1:Session 1:MessageHandler notification:What is the consumer's type?queue
ActiveMQ Gateway:ActiveMQ Group 4:Broker 1:Session 1:MessageHandler notification:What is the consumer's name?fromEngineConsumer_2


ActiveMQ Gateway:Engine 1:What ActiveMQ group ID does this engine use?1 (The default is the first group ID. If only one group ID exists, then this question is not asked.)
ActiveMQ Gateway:Engine 2:What ActiveMQ group ID does this engine use?2

ActiveMQ Gateway:Engine 3:What ActiveMQ group ID does this engine use?3
ActiveMQ Gateway:Engine 4:What ActiveMQ group ID does this engine use?4

ActiveMQ Gateway:How long (in seconds) should elapse before retrying a failed ActiveMQ initialization?5 (This is the default.)
See the description
Table 2. Producer Name Based on Handler Name
Handler Name Producer Name
chf_chargingdatanotify chf_chargingdatanotify_request
chf_spendinglimitnotify chf_spendinglimitnotify_request
notification mtx_notification_queue
payments from_engine_payments_producer
ussd ussd_request_queue
menu menu_request_queue
Table 3. Consumer Name Based on Handler Name
Handler Name Consumer Name
chf_chargingdatanotify chf_chargingdatanotify_response
chf_spendinglimitnotify chf_spendinglimitnotify_response
notification mtx_response_queue
payments to_engine_payments_consumer
ussd ussd_response_queue
menu menu_response_queue