This operation is intended to start a subscription process in the ASM Support System in response to a request from an External User. As a result, a subscription process is either started in the local ASM Support System and the External User starts receiving subscribed data, or a subscription is not started, and an appropriate error message is transmitted to the External User. Once the subscription has started HeartbeatTechnicalMessages may be sent by the ASM Support System.
Associated messages
ASM-INTF-SUBS-120: The startSubscription operation shall receive and process the SubscriptionCreationRequest message from an External User.
ASM-INTF-SUBS-130: The startSubscription operation shall validate the SubscriptionStartRequest message against the following criteria which must be met:
o All mandatory data for SubscriptionStartRequest message are provided,
o The identified subscription to be started must belong to the requestor,
o The identified subscription to be started must be PAUSED.
ASM-INTF-SUBS-140: If the request is valid, the startSubscription operation shall return the SubscriptionStartReply message to the requesting External User.
ASM-INTF-SUBS-150: The SubscriptionStartReply message shall contain the details of the subscription, including the name of the queue to be used and the state which will be ‘ACTIVE’.
ASM-INTF-SUBS-160: If the request is not valid, the startSubscription operation shall transmit an appropriate error in the SubscriptionStartReply message to the requesting External User.
ASM-INTF-SUBS-163: HeartbeatTechnicalMessages should be published at least every maximum-message-interval once the subscription is in state ‘ACTIVE’.
ASM-INTF-SUBS-165: HeartbeatTechnicalMessages should be postponed if a subscription message is sent to the queue before the maximum-message-interval expires.
ASM-INTF-SUBS-167: The service provider should define a maximum-message-interval defining the interval between HeartbeatTechnicalMessages published to the queue.
ASM-INTF-SUBS-168: The service provider shall pause a subscription and publish a SubscriptionTechnicalMessage if any message published to the queue expires.
Note: The definition of these messages can be found in section 2.7.3 Interface Messages.