Applications are communicating by sending Messages to each other via Message Channels.
How does an application connect to a messaging channel to send and receive messages?
Connect an application to a messaging channel using a Message Endpoint, a client of the messaging system that the application can then use to send or receive messages.
Message Endpoint code is custom to both the application and the messaging system’s client API. The rest of the application knows little about message formats, messaging channels, or any of the other details of communicating with other applications via messaging. It just knows that it has a request or piece of data to send to another application, or is expecting those from another application. It is the messaging endpoint code that takes that command or data, makes it into a message, and sends it on a particular messaging channel. It is the endpoint that receives a message, extracts the contents, and gives them to the application in a meaningful way.
... Read the entire pattern in the book Enterprise Integration Patterns
Related patterns:
Channel Adapter, Competing Consumers, Durable Subscriber, Event-Driven Consumer, Idempotent Receiver, Message, Message Channel, Message Dispatcher, Selective Consumer, Service Activator, Messaging Gateway, Messaging Mapper, Polling Consumer, Transactional Client