A method for providing messaging in a clinical environment, the method comprising: storing a plurality of messages in a message queue, wherein the plurality of messages contain information about one or more infusion pumps residing in the clinical environment, wherein the plurality of messages are based on pump messages generated according to a pump protocol specific to the one or more infusion pumps and being reflective of a current state of the one or more infusion pumps, the plurality of messages stored in the message queue including at least a first message and a second message; transmitting at least some of the plurality of messages to a remote server configured to receive messages generated in the clinical environment; subsequent to the transmission, detecting a network outage, wherein the network outage prevents transmission of messages to the remote server; the method further comprising: determining that the first message in the message queue satisfies a condition for being removed from the message queue without being successfully transmitted to the remote server comprising determining that the first message satisfies the condition based at least on the first message being associated with an infusion pump event that is older than a threshold amount of time; removing the first message from the message queue such that the first message is removed from the message queue prior to being received by the remote server; determining that the network outage has been resolved; and transmitting the second message to the remote server such that the second message is received by the remote server and the first message is not received by the remote server. storing a plurality of messages in a message queue, wherein the plurality of messages contain information about one or more infusion pumps residing in the clinical environment, wherein the plurality of messages are based on pump messages generated according to a pump protocol specific to the one or more infusion pumps and being reflective of a current state of the one or more infusion pumps, the plurality of messages stored in the message queue including at least a first message and a second message; transmitting at least some of the plurality of messages to a remote server configured to receive messages generated in the clinical environment; subsequent to the transmission, detecting a network outage, wherein the network outage prevents transmission of messages to the remote server; the method further comprising: determining that the first message in the message queue satisfies a condition for being removed from the message queue without being successfully transmitted to the remote server comprising determining that the first message satisfies the condition based at least on the first message being associated with an infusion pump event that is older than a threshold amount of time; removing the first message from the message queue such that the first message is removed from the message queue prior to being received by the remote server; determining that the network outage has been resolved; and transmitting the second message to the remote server such that the second message is received by the remote server and the first message is not received by the remote server. determining that the first message in the message queue satisfies a condition for being removed from the message queue without being successfully transmitted to the remote server comprising determining that the first message satisfies the condition based at least on the first message being associated with an infusion pump event that is older than a threshold amount of time; removing the first message from the message queue such that the first message is removed from the message queue prior to being received by the remote server; determining that the network outage has been resolved; and transmitting the second message to the remote server such that the second message is received by the remote server and the first message is not received by the remote server.