Amazon Messaging Queue [AMQ]

RabbitMQ is the most widely deployed open-source message broker

Amazon MQ is a comprehensive, managed service that facilitates the deployment and administration of open source message brokers such as RabbitMQ and Apache ActiveMQ. By utilizing Amazon MQ, you can effortlessly set up and oversee both single and clustered message brokers, while also benefiting from its ability to handle tasks like infrastructure provisioning, broker configuration, and software updates.

The CargoDocs API leverages the functionalities of Amazon MQ, which now provides support for RabbitMQ, the underlying message queue framework. Amazon MQ serves as a managed message broker service, simplifying the transition to a cloud-based message broker. With a message broker in place, software applications and components can seamlessly communicate using diverse programming languages, operating systems, and standardized messaging protocols.

About RabbitMQ

RabbitMQ is lightweight and easy to deploy on-premises and in the cloud. It supports multiple messaging protocols. RabbitMQ can be deployed in distributed and federated configurations to meet high-scale, high-availability requirements.

The RabbitMQ messaging system provides several notable features, including:

Asynchronous Messaging: RabbitMQ supports asynchronous message exchange patterns, allowing efficient and scalable communication between applications.

Developer Experience: RabbitMQ offers a user-friendly interface and comprehensive documentation, facilitating smooth integration and development processes.

Distributed Deployment: RabbitMQ can be deployed across distributed systems, enabling high availability and fault tolerance.

Enterprise & Cloud Ready: RabbitMQ is designed to meet the demands of enterprise environments and is compatible with various cloud platforms.

Management & Monitoring: RabbitMQ provides robust management and monitoring capabilities, allowing administrators to oversee message queues, track performance metrics, and configure system settings.

RabbitMQ Triggering Actions

The essDOCS API incorporates RabbitMQ as its messaging solution for facilitating business-to-business (B2B) communication related to shipment actions based on customer requirements. The following list outlines the specific actions against which a designated instance of a RabbitMQ queue can be subscribed. This subscription allows the retrieval of relevant information associated with each action in a tailored manner.

The RabbitMQ implementation within the essDOCS API enables B2B messaging for a comprehensive range of actions performed on shipments based on specific customer requirements. These actions include:

Trigger ActionDescription
Set shared with a partnerThis refers to providing a designated partner with information regarding a shipment.
IssuedThis refers to sharing shipment information with a specific partner.
TransferredIndicates the transfer of ownership or responsibility for a shipment to another party.
ReturnedSignifies the return of a shipment or associated documentation to the sender.
SurrenderedThis refers to surrendering or giving up control of a shipment or any related materials.
AmendmentRefers to a modification or alteration made to a shipment or associated information.
RequestedIndicates a request for specific actions or information related to a shipment.
Send OriginalDenotes the transmission of original documentation or materials about a shipment.
Draft PresentRepresents the presentation of a draft or preliminary version of documentation or materials.
SendSignifies the transmission of information or materials related to a shipment.
Send PresentThis refers to sharing or submitting revised or completed documents or materials.
Sign and SendDenotes the action of signing and subsequently transmitting documentation or materials associated with a shipment.

The message will return set_id, transaction_id, document_id, and status.