Enterprise Integration Patterns
Conversation Patterns
Conversation Patterns
Advertise AvailabilityConversation Patterns » Discovery

A participant is able to receive messages in a conversation initiated by another participant.

How can a participant let others know that it is available?

Participants periodically broadcasts their existence to potential initiators.

The Advertise Availability conversation involves the following participants:

Advertise Availability works best when initiators are long-lived so that they can track broadcast availability messages before they need to start a conversation. This allows keeping the broadcast frequency low, thus reducing bandwidth consumption.

Advertise Availability also works well where initiators enter new environments where they have no information at all and should not start flooding the network with requests. Advertise Availability allows them to listen in without affecting the network until they decide to initiate a conversation.

Example: WiFi Hotspots

Wireless network access points (aka "Hot Spots") broadcast their availability regularly for new devices that came into range to discover them.

Example: Simple Service Discovery Protocol (SSDP)

The UPnP (Universal Plug and Play) stack includes a registry-free mechanism for service discovery called Simple Service Discovery Protocol (SSDP). SSDP uses the HTTP Asynchronous Request-Response protocol over a UDP datagram transport, which can broadcast packages on a local sub-network. Participants announce their presence (or their intention to disappear) via the HTTP verb ""NOTIFY""to a multicast group of other participants.

Related patterns: Dynamic Discovery, Asynchronous Request-Response

Creative Commons Attribution License

You can reuse the following elements under the Creative Commons Attribution license: pattern icon, pattern name, problem and solution statements (in bold), and the sketch. Other portions are protected by copyright.