Registering Azure Service Bus with DSS

Note: Steps 1 through 4 are completed by the agent developer. When those steps are complete, an Itron DI Customer Administrator must complete steps 5 through 7.

  1. Set up an Azure subscription.

  2. Using the Azure portal and Microsoft's documentation (available here), create a Service Bus and set up the namespace and queue.

  3. If you are not already signed in, sign into your Azure subscription portal and open your Service.

  4. When your Microsoft Azure completes the deployment, click Go to Resource.

  5. On the Subscriber page, click + Queue.

    Tip: Complete the following fields with values of your discretion. For more information about Azure Service Bus, see Microsoft's documentation (available here). The descriptions provided in steps a through g are the same pop-up instructions you can read by hovering your pointer over the i icon for each line.

    1. Name. Queue names can contain letters, numbers, periods (.), hyphens (-), underscores (_), and slashes (/), up to 260 characters. Queue names are also case-insensitive.

    2. Max queue size. Dead lettering messages involves holding messages that cannot be successfully delivered to any receiver to a separate queue after they have expired. Messages do not expire in the dead letter queue, and it supports peek-lock delivery and all transactional operations.

    3. Max message size (in KB).

    4. Max delivery count. Number of maximum deliveries, value ranging from 1 to 2000.

    5. Message time to live. Message time to live determines how long a message stays in the queue before it expires and is removed or dead lettered. When sending messages it is possible to specify a different time to live for only that message. This default will be used for all messages in the queue which do not specify a time to live for themselves.

    6. Lock duration. Sets the amount of time that a message is locked for other receivers. After its lock expires , a message pulled by one receiver becomes available to be pulled by other receivers. Defaults to 30 seconds, with a maximum of 5 minutes.

    7. Enable auto-delete on idle queue checkbox. Delete the queue immediately after it remains idle for a configurable amount of time.

    8. Enable duplicate detection checkbox. Enabling duplicate detection configures your queue to keep a history of all messages sent to the queue for a configurable amount of time. During that interval, your queue will not accept any duplicate messages. Enabling this property guarantees exactly-once delivery over a user-defined span of time.

    9. Enable dead lettering on message expiration checkbox. Dead lettering messages involves holdding messages that cannot be successfully delivered to any receiver to a separate queue aftre they have expired. Messages do not expire in the dead letter queue, and it supports peek-lock delivery and all transactional operations.

    10. Enable sessions checkbox. Service bus sessions allow ordered handling of unbounded sequences of related messages. With sessions enabled, a queue can guarantee first-in-first-out delivery of messages.

    11. Forward messages to queue/topic checkbox. Automatically forward messages to a queue or topic in the same namespace.

  6. Click Create.

    Microsoft Azure creates the queue.

  7. From the Entities list on the left, click Queues and select the queue you just created.

  8. From the Settings list on the left, click Shared access policies.

  9. Click + Add.

    The Add SAS Policy section opens.

  10. In the Policy name field, type sendpolicy.

  11. Select the Send check box.

  12. Click Create.

    Microsoft Azure creates the policy. You can select the policy now to view its connection strings.

  13. Convert the connection string for the queue to an SAS URI.

    Prepare to have the following information available for this step:

    • The Service Bus URI <sb://namespace/queue>

    • The name of the shared access policy you created in step 3.

    • The policy key

    • The time-to-live (TTL), in minutes.

    Note: The remainder of this procedure must be completed by an Itron DI Customer Administrator, only after the developer has successfully completed steps 1 through 4.

  14. Navigate to the Itron Analytics Admin Portal and select DI Subscriptions > Subscriptions.

  15. Click Create Subscription.

  16. In the Agent dropdown menu, select the agent the subscription is for. DI Itron Administrators can see all agents. DI Customer Administrators can only see non-Itron agents.

  17. In the Feature dropdown menu, select the agent's feature the subscription is for. DI Itron Administrators can see all features. DI Customer Administrators can only see non-Itron features.

  18. In Description, type a description for the subscription.

  19. In the Response Delivery Type dropdown menu, select Service Bus.

  20. In the Service Bus Authentication Method dropdown menu, select Long Lived SAS URI.

  21. In the Response Delivery Subtype dropdown menu, select the subtype for how subscription responses are delivered.

  22. Select or clear the BLOB Supported checkbox.

  23. Click Save.

  24. Networking must allow for traffic through the following ports and protocols:

    • Protocol AMQP; Ports 5671, 5672

    • Protocol SBMP; Ports 9350-9354

    • Protocol HTTPS; Ports 443

    • Hostname <customerservicebusnamespace>.servicebus.windows.net

  25. Use software to retrieve messages sent to your Service Bus queue. Failure to do so can cause the queue to fill up until full and DSS stops sending.