Unified application messaging service
AssigneeSalesforce, Inc.
InventorJoseph Andolina
Life of this patent
Estimating the term…
Abstract
In a cloud computing environment, a unified application messaging service of an enterprise computing platform enables application developers to rapidly develop and deploy application software using existing message broker services across heterogeneous user systems/devices communicating using different connection/communication protocols. The unified application messaging service includes a connection protocol registrar/tracker logic and a device list maintained with the most current polling status and connection protocol that a user system/device is currently using.
Claims15
A computer-implemented method comprising:
- receiving an application message on a protocol-specific channel from a first device of a plurality of heterogeneous devices communicating over different protocol-specific channels, the application message being generated via a first application;
- tracking, for the first device, a current connection protocol based on the protocol-specific channel on which the application message was received, wherein tracking includes updating a device list, wherein updating the device list includes responsive to receiving an application message published by the first device, storing for the first device, in the device list, information specifying the current connection protocol in association with a device identifier of the first device;
- generating a unified application message that includes a payload of the application message based, at least in part, on the current connection protocol, wherein generating includes parsing the application message based on the current connection protocol;
- dispatching, via a unified message queue, the unified application message to an application message broker, the message broker configured to broker the application message between the first device and one or more second devices, the one or more second devices being subscribers to the application message;
- brokering, by the application message broker, the application message from the first device to the one or more second devices;
- determining whether the first device is stale;
- and
- deleting the information from the device list according to a result of determining whether the first device is stale.
A system for a computing platform having a unified application messaging service comprising:
- at least one processor capable of executing instructions in a server hosting a unified message hub, the server coupled to a computing platform;
- and
- a memory storing instructions to cause the processor to:
- receive an application message on a protocol-specific channel from a first device of a plurality of heterogeneous devices communicating over different protocol-specific channels, the application message being generated via a first application;
- track for the first device, a current connection protocol based on the protocol-specific channel on which the application message was received, wherein tracking includes a) storing for the first device, in a device list, information including an indication of the current connection protocol and b) updating the current connection protocol stored in the device list responsive to any of receiving a new application message or a polling status from the first device;
- track, for the first device, a current connection protocol based on the protocol-specific channel on which the application message was received, wherein tracking includes updating a devcie list, wherein updating the device list includes responsive to receiving an application message published by the first device, storing for the first device, in the device list, information specifying the current connection protocol in association with a device identifier of the first device;
- generating a unified application message that includes a payload of the application message based, at least in part, on the current connection protocol, wherein generating includes parsing the application message based on the current connection protocol;
- dispatch, via a unified message queue, the unified application message to an application message broker, the message broker configured to broker the application message between the first device and one or more second devices, the one or more second devices being subscribers to the application message;
- broker, by the application message broker, the application message from the first device to the one or more second devices;
- determine whether the first device is stale;
- and
- delete the information from the device list according to a result of determining whether the first device is stale.
At least one tangible, non-transitory computer-readable storage medium having instructions encoded thereon which, when executed by a processing device, cause the processing device to:
- receive an application message on a protocol-specific channel from a first device of a plurality of heterogeneous devices communicating over different protocol-specific channels, the application message being generated via a first application;
- track for the first device, a current connection protocol of the first device based on the protocol-specific channel on which the application message was received, wherein tracking inlcudes updating a device list, wherein updating the device list includes responsive to receiving an application message published by the first device, storing for the first device, in the device list, information specifying the current connection protocol in association with a device identifier of the first device;
- generate a unified application message that includes a payload of the application messaged based, at least in part, on the current protocol, wherein generating includes parsing the application message based on the current connection protocol;
- dispatch, via a unified message queue, the unified application message to an application message broker, the message broker configured to broker the application message between the first device and one or more second devices, the one or more second devices being subscribers to the application message;
- broker, by the application message broker, the application message from the first device to the one or more second devices;
- determine whether the first device is stale;
- and
- delete the information from the device list according to a result of determining whether the first device is stale.
Dependencies are inferred from the claim text.