Patent Issued for Method and system of generating generic protocol handlers (USPTO 11936760): State Farm Mutual Automobile Insurance Company
2024 APR 04 (NewsRx) -- By a
The assignee for this patent, patent number 11936760, is
Reporters obtained the following quote from the background information supplied by the inventors: “Software applications are becoming more pervasive. For example, in the Internet of Things (IoT), software applications are commonly being provided in cellular phones, televisions, wrist watches, household appliances, etc. Each of the applications in these devices may “speak” one or more of a plurality of application protocols, such as Hypertext Transfer Protocol (HTTP), HTTP over Transport Layer Security (HTTPS), interactive voice response (IVR), short message service (SMS), simple mail transfer protocol (SMTP), etc. Within each application protocol, data may be encoded in one or more sub-protocols. For example, in HTTP/S, common sub-protocols/data formats may include representational state transfer (REST), simple object access protocol (SOAP), JavaScript Object Notation (JSON), etc.
“Software applications are also increasing in number. For example, some software applications may be implemented as dynamic user experience (UX) applications. Because dynamic UX applications comprising complex user interface behaviors and customizations may be easily and quickly created, the number of applications in existence may outstrip an organization’s ability to create middleware to handle the volume of requests generated by the dynamic UX applications.
“The proliferation of protocols and sub-protocols and the increase in the number of dynamic UX applications causes great complexity in large software systems. To craft a new application, a software developer must write code to individually manage all of the possible protocols and sub-protocols with respect to the application, and must do so at an unsustainable pace. What is needed are methods and systems for generating generic protocol handlers for exchanging data in a common format, based on converting requests to canonical data types.”
In addition to obtaining background information on this patent, NewsRx editors also obtained the inventors’ summary information for this patent: “In one aspect, a method for generating generic protocol handlers includes processing user requests and responses by a middleware by receiving a request, analyzing the request using a first protocol handler included in the middleware to generate a request payload, transforming the request payload into a set of canonical types, and transmitting the set of canonical types to a path module. The method may further include receiving a response payload from the path module, wherein the response payload is associated with at least one of the set of canonical types, analyzing the response payload using a second protocol handler to generate a response, and transmitting the response to a second computing system.
“In another aspect a computing system including one or more processors and one or more memories storing instructions is provided. When the instructions are executed by the one or more processors, they cause the computing system to receive a request, analyze the request using a first protocol handler to generate a request payload, transform the request payload into a set of canonical types, transmit the set of canonical types to a path module, and receive a response payload from the path module, wherein the response payload is associated with at least one of the set of canonical types. The instructions may also cause the computing system to transform the response payload using a second protocol handler to generate a response, and to transmit the response to a second computing system.”
The claims supplied by the inventors are:
“1. A method, comprising: receiving, by a processor, a request associated with a step of a workflow; transforming, by the processor, information included in the request into data corresponding to a set of canonical types; transmitting, by the processor, the data to a workflow component of a first computing system, the workflow component: executing the step of the workflow based at least in part on the data, and generating a response payload associated with execution of the step, the response payload being characterized by at least one canonical type of the set of canonical types; receiving, by the processor, the response payload from the workflow component; generating, by a protocol handler of the processor, a response based on the response payload, the protocol handler formatting the response in accordance with a particular communication protocol of a second computing system; and transmitting, by the processor, via a network, and in accordance with the particular communication protocol, the response to the second computing system.
“2. The method of claim 1, wherein the request includes metadata indicating at least a workflow component identification and a session identification, the method further comprising: identifying, by the processor and based on a first communication protocol associated with the request, a first protocol handler of the processor; and generating, by the first protocol handler and based on the metadata, a request payload associated with the request, wherein the request payload includes the data corresponding to the set of canonical types.
“3. The method of claim 2, wherein the metadata includes information indicating a set of fields, and transforming the information comprises: identifying, for a field of the set of fields, a transformation function configured to convert the field to a canonical type; and generating, by applying the transformation function to the field, corresponding data of the canonical type.
“4. The method of claim 1, further comprising: selecting, by the processor and based on the particular communication protocol of the second computing system, the protocol handler from one or more protocol handlers, each protocol handler of the one or more protocol handlers being associated with a respective communication protocol, wherein the one or more protocol handlers include protocol handlers for one or more of: an HTTP communication protocol, an HTTPS communication protocol, an SMS communication protocol, an IVR communication protocol, and an SMTP communication protocol.
“5. The method of claim 1, further comprising: identifying, by the processor, a port number associated with the request; and determining, by the processor and based on the port number, a routing to the workflow component.
“6. The method of claim 1, further comprising: identifying, by the protocol handler and by querying a database communicatively coupled to the protocol handler, client capabilities associated with the second computing system, wherein the response is generated based on the client capabilities.
“7. The method of claim 6, further comprising: determining, by the protocol handler, that at least a portion of the response payload is unsupported by the client capabilities; and based on determining that at least the portion of the response payload is unsupported, at least one of degrading the response to match the client capabilities, and including an error message in the response.
“8. The method of claim 7, wherein the error message includes: an indication that the particular communication protocol cannot be used for the step of the workflow, and an indication of a different communication protocol that can be used for the step of the workflow.
“9. The method of claim 1, wherein the response, when executed by the second computing system, causes the second computing system to display user interface components configured to allow a user of the second computing system to interact with the step of the workflow.
“10. The method of claim 1, wherein the set of canonical types comprises at least one of: user interface event, person name, address, person identification number, telephone number, or account number.
“11. The method of claim 1, wherein at least one canonical type of the set of canonical types corresponds to a user interface event, the method further comprising: transmitting, by the first computing system, the response payload to a user experience module; and receiving, from the user experience module and based on the particular communication protocol, a modified response payload, wherein the response is generated based on the modified response payload.
“12. A computing system, comprising: a processor; and a non-transitory memory coupled to the processor and storing executable instructions that, when executed by the processor, cause the processor to perform operations comprising: receiving, a request associated with a step of a workflow; transforming information included in the request into data corresponding to a set of canonical types; transmitting the data to a workflow component of the computing system, the workflow component: executing the step of the workflow based at least in part on the data, and generating a response payload associated with execution of the step, the response payload being characterized by at least one canonical type of the set of canonical types; receiving, from the workflow component, the response payload; generating, by a protocol handler of the processor, a response based on the response payload, the protocol handler formatting the response in accordance with a particular communication protocol of an electronic device; and transmitting the response, via a network, and in accordance with the particular communication protocol, to the electronic device.
“13. The computing system of claim 12, wherein the request includes metadata, the operations further comprising: determining, based on the metadata, a routing to the workflow component.
“14. The computing system of claim 12, wherein at least one canonical type of the set of canonical types corresponds to a user interface event, the operations further comprising: transmitting the response payload to a user experience module; and receiving, from the user experience module and based on the particular communication protocol, a modified response payload, wherein the response is generated based on the modified response payload.
“15. The computing system of claim 12, the operations further comprising: identifying client capabilities associated with the electronic device, wherein the response is generated further based on the client capabilities.
“16. The computing system of claim 15, the operations further comprising: determining, by the protocol handler, that at least a portion of the response payload is unsupported by the client capabilities; and based on determining that at least the portion of the response payload is unsupported, modifying the response payload to match the client capabilities.
“17. A system, comprising: a means for electronic communication via a communication network; a means for storing executable instructions; a means for displaying a user experience (UX) component; and a means for executing the executable instructions, the means for executing being configured to: receive, by the means for electronic communication, a request associated with a step of a workflow; transform information included in the request into data corresponding to a set of canonical types; transmit the data to a workflow component, the workflow component being configured to: execute the step of the workflow based at least in part on the data, and generate a response payload associated with execution of the step, the response payload being characterized by at least one canonical type of the set of canonical types; receive the response payload from the workflow component; generate, by a protocol handler associated with a particular communication protocol of the means for displaying, a response based on the response payload, a response comprising a user interface component associated with an output of the execution of the step of the workflow; and transmit the response, by the protocol handler and via the means for electronic communication, to the means for displaying, the response being configured such that when executed by the means for displaying, causes the means for displaying to display the user interface component.
“18. The system of claim 17, wherein the means of executing being further configured to: determine client capabilities associated with the means for displaying; and modify, by a user experience module, the response in accordance with the client capabilities.
“19. The system of claim 17, wherein the set of canonical types comprises at least one of: a user interface event, a person name, an address, a personal identification number, a telephone number or an account number, and the means of executing being further configured to: identify a transformation function configured to convert the information included in the request to one or more canonical types; and generate, by applying the transformation function to the request, a request payload.
“20. The system of claim 17, wherein transforming the information included in the request is based at least in part on metadata associated with the request, the metadata including at least one of: a workflow identifier, a session identifier, a user identifier, or an indication of a desired task.”
For more information, see this patent: Kalmes, Dan. Method and system of generating generic protocol handlers.
(Our reports deliver fact-based news of research and discoveries from around the world.)
Patent Issued for Alert systems for senior living engagement and care support platforms (USPTO 11935651): State Farm Mutual Automobile Insurance Company
Louisiana may soon regulate insurer affiliates more closely, amid failure concerns
Advisor News
Annuity News
Health/Employee Benefits News
Life Insurance News