A subscriber registers a request for a publication by specifying the following elements.
Wildcards can be used when subscribing to topics, and can be used at any level in the topic name string. By creating your applications so that topics are defined in well-structured topic trees, the applications can subscribe to sub-trees by placing the multilevel wildcard "#" at the end of a topic.
Note that, although the single-level wildcard is accepted anywhere in the topic name, performance is better when it is placed at the end of the string.
You can specify more than one wildcard within a subscription. For example, "+/Alabama/#" is a valid topic.
Note that, if you subscribe with topic "#", you receive all publications from all connected brokers. This might result in a very overloaded broker network.
This value should match the subscription point property that is set for at least one publication node defined in this broker. If the value does not match any existing subscription point, the subscriber does not receive any publications, unless a publication node is defined subsequently with this subscription point name.
If you do not specify a subscription point, the default description point is assumed. You receive all publications that have matching topics and filters.
For SCADA applications, the SCADA connection port is the implied subscription point.
This information is optional. If you do not specify a content filter, all published messages with matching subscription points and topics are received.
Content filters cannot be used with SCADA messages.
For SCADA applications, the SCADA port receives the publications. You do not have to explicitly specify the port.
When the publication node receives a message, it checks the subscription table to determine whether there are any subscription requests that either specify this particular node's subscription point, or match the content or topic, or both, of the message received.
For every match found, the node delivers the published message on the subscriber queue, using the optional CorrelId, if specified. If no CorrelId is specified, a fixed value is used. Each subscriber receives just one copy of each publication regardless of the number of matching subscriptions the client has.
SCADA applications use the SCADA port to publish and subscribe, and CorrelId is not applicable.
When the node has sent the publication to any subscribers that have a matching subscription, the publication is discarded, unless it is a retained publication.
Subscribers can specify a local option on registration. If they do so, they are requesting that their subscription registration is not forwarded to other brokers, but held by the local broker. Any message published at this broker that matches the subscription is received by this subscriber, but messages published to other brokers are not normally available, unless the subscriber has also registered a global subscription with an overlapping topic and the same subscription point.
If retained publications are used, the subscriber can specify the following options when it registers a subscription.
If the Publish on Request Only option is used, the broker does not send publications to the subscriber until the subscriber sends a Request Update message to the broker. The broker then sends any current retained publication that matches the subscription.
Normally the broker sends the current retained publication that matches the subscription when a subscriber registers that subscription. If the subscriber uses the New Publications Only option, the broker waits until a new publication is received before sending it to the subscriber.
Send all subscription registration messages as persistent messages. All subscriptions are maintained persistently by the broker.
The system administrator decides which users are allowed to have publications sent persistently.
Related concepts
Topics
Publications
Subscriptions
Subscription points
Subscribers
Related tasks
Publishing
Using retained publications
De-registering a subscription
Related reference
Special characters in topics
Topic semantics and usage
Register Subscriber message
Notices |
Trademarks |
Downloads |
Library |
Support |
Feedback
![]() ![]() |
aq13040_ |