createSubscription

This operation is intended to create a subscription in the ASM Support System in response to a request from an External User. As a result, a subscription is either created in the local ASM Support System and the External User is notified, or a subscription is not created and an appropriate error message is transmitted to the External User.

It is down to the implementation as to whether or not subscriptions need to be remade at any other subsequent connection.

Associated messages

ASM-INTF-SUBS-030: The createSubscription operation shall receive and process the SubscriptionCreationRequest message from an External User.

ASM-INTF-SUBS-040: If no queue name is provided in the SubscriptionCreationRequest message the service shall assign a queue name to the External User subscription.

ASM-INTF-SUBS-050: If an active queue name is provided in the SubscriptionCreationRequest message the service shall reuse this queue name for the External User subscription.

Note: The queue name allows for connection to an Advanced Message Queuing Protocol (AMQP) message queue.

ASM-INTF-SUBS-070: The service shall apply the filters defined in the SubscriptionCreationRequest to all data notified via the AMQP message queue.

ASM-INTF-SUBS-080: The createSubscription operation shall validate the SubscriptionCreationRequest message against the following criteria which must be met:

o   All mandatory data for SubscriptionCreationRequest message are provided

o   The requestor does not have an existing PAUSED or ACTIVE subscription for the same topic.

o   If a queue name is set in the SubscriptionCreationRequest message it must match an existing queue name belonging to the requestor.

o   The filters provided in the SubscriptionCreationRequest message must be applicable to the topic being subscribed for. Acceptable filters are defined by the query operation in this document that maps to the subscription topic. 

ASM-INTF-SUBS-090: If the subscription request is valid, the createSubscription operation shall transmit the details of the newly created subscription, including the name of the AMQP queue to be used, in the SubscriptionCreationReply message to the requesting External User. 

ASM-INTF-SUBS-100: The subscription shall always be created in the ‘PAUSED’ state.

ASM-INTF-SUBS-110: If the request or the resulting subscription is not valid, the createSubscription operation shall transmit an appropriate error in the SubscriptionCreationReply message to the requesting External User.

Note: The definition of these messages can be found in section 2.7.3 Interface Messages.

Idempotent
NON_IDEMPOTENT
Synchronous
SYNCHRONOUS
TI Protocol Methods
Refer to Section 2.5 Technologies
Processing Consideration