Context-aware middleware platform for client devices
First Claim
1. A computerized method comprising:
- (A) receiving an indication of a transaction type from a client device;
(B) responsive to receiving the indication of the transaction type, based on a transaction model of the transaction type, sending information for rendering a transaction request user interface for the transaction type to the client device;
(C) receiving a request for transaction processing from the client device, wherein the request comprises one or more transaction parameters as submitted via a transaction form;
(D) at a middleware service configured to communicate with the client device, receiving an indication of a security protocol supported by the client device;
(E) transforming the request into a format supported by a backend transaction server, thereby generating a transformed request, wherein the transaction model of the transaction type specifies how to transform the one or more transaction parameters into the format supported by the backend transaction server, and wherein transforming the request comprises processing the request via the transaction model of the transaction type;
(F) sending the transformed request to the backend transaction server, wherein the transformed request comprises at least one of the one or more transaction parameters;
(G) receiving a response from the backend transaction server;
(H) in a computing environment comprising one or more processors and memory, tailoring the response received from the backend transaction server according to a stored context for the client device, thereby generating a tailored response, wherein the tailored response comprises user interface elements to be rendered as a user interface presentation on the client device, wherein the stored context comprises a user interface context for the client device, and the tailoring further comprises tailoring the response received from the backend transaction server according to the user interface context for the client device;
(I) sending the tailored response to the client device for rendering as a user interface presentation on the client device; and
(J) at the middleware service, responsive to receiving the indication of the security protocol supported by the client device, sending content to the client device via the security protocol;
(K) wherein tailoring the response according to a stored context for the client device comprises;
omitting display of one or more columns in the response;
placing at least one hyperlink in the response, wherein the at least one hyperlink is configured to display content from at least one of the omitted columns when activated; and
wherein the at least one hyperlink is superimposed on response data appearing in a displayed column.
1 Assignment
0 Petitions
Accused Products
Abstract
Middleware can accept transaction requests from a client device and tailor the request to a backend transaction server. The server'"'"'s response can be tailored to the client device. For example, characteristics of the client device such as screen real estate and supported functionality can be taken into account when generating a tailored response. Features such as caching can avoid repeatedly contacting the backend server. Pagination and column truncation can be supported. A transaction model can represent a transaction as device independent configuration information. The transaction model can be added or changed without coding. Useful for implementing an application across a wide range of devices transparently to the backend server.
-
Citations
30 Claims
-
1. A computerized method comprising:
-
(A) receiving an indication of a transaction type from a client device; (B) responsive to receiving the indication of the transaction type, based on a transaction model of the transaction type, sending information for rendering a transaction request user interface for the transaction type to the client device; (C) receiving a request for transaction processing from the client device, wherein the request comprises one or more transaction parameters as submitted via a transaction form; (D) at a middleware service configured to communicate with the client device, receiving an indication of a security protocol supported by the client device; (E) transforming the request into a format supported by a backend transaction server, thereby generating a transformed request, wherein the transaction model of the transaction type specifies how to transform the one or more transaction parameters into the format supported by the backend transaction server, and wherein transforming the request comprises processing the request via the transaction model of the transaction type; (F) sending the transformed request to the backend transaction server, wherein the transformed request comprises at least one of the one or more transaction parameters; (G) receiving a response from the backend transaction server; (H) in a computing environment comprising one or more processors and memory, tailoring the response received from the backend transaction server according to a stored context for the client device, thereby generating a tailored response, wherein the tailored response comprises user interface elements to be rendered as a user interface presentation on the client device, wherein the stored context comprises a user interface context for the client device, and the tailoring further comprises tailoring the response received from the backend transaction server according to the user interface context for the client device; (I) sending the tailored response to the client device for rendering as a user interface presentation on the client device; and (J) at the middleware service, responsive to receiving the indication of the security protocol supported by the client device, sending content to the client device via the security protocol; (K) wherein tailoring the response according to a stored context for the client device comprises; omitting display of one or more columns in the response; placing at least one hyperlink in the response, wherein the at least one hyperlink is configured to display content from at least one of the omitted columns when activated; and wherein the at least one hyperlink is superimposed on response data appearing in a displayed column. - View Dependent Claims (3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 29)
-
-
2. One or more computer-readable storage media comprising computer-executable instructions causing a computer to perform a method comprising:
-
(A) receiving an indication of a transaction type from a client device; (B) responsive to receiving the indication of the transaction type, based on a transaction model of the transaction type, sending information for rendering a transaction request user interface for the transaction type to the client device, wherein the transaction model of the transaction type is stored in a configuration repository; (C) receiving a request for transaction processing from the client device, wherein the request comprises one or more transaction parameters as submitted via a transaction form; (D) transforming the request into a format supported by a backend transaction server, thereby generating a transformed request, wherein the transaction model of the transaction type specifies how to transform the one or more transaction parameters into the format supported by the backend transaction server, wherein transforming the request comprises processing the request via the transaction model of the transaction type stored in the configuration repository, and wherein the transaction model represents a transaction via device-independent configuration information; (E) sending the transformed request to the backend transaction server, wherein the transformed request comprises at least one of the one or more transaction parameters; (F) receiving a response from the backend transaction server; (G) tailoring the response received from the backend transaction server according to a stored context for the client device, thereby generating a tailored response, wherein the tailored response comprises user interface elements to be rendered as a user interface presentation on the client device, wherein the stored context comprises a user interface context for the client device, and the tailoring further comprises tailoring the response received from the backend transaction server according to the user interface context for the client device; (H) sending the tailored response to the client device for rendering as a user interface presentation on the client device; (I) at a middleware service configured to communicate with the client device, receiving an indication of a security protocol supported by the client device; and (J) at the middleware service, responsive to receiving the indication of the security protocol supported by the client device, sending content to the client device via the security protocol; (K) wherein tailoring the response according to a stored context for the client device comprises; omitting display of one or more columns in the response; placing at least one hyperlink in the response, wherein the at least one hyperlink is configured to display content from at least one of the omitted columns when activated; and wherein the at least one hyperlink is superimposed on response data appearing in a displayed column. - View Dependent Claims (20)
-
-
17. A computerized method comprising:
-
(A) receiving a first request from a client device, wherein the first request comprises an indication of a transaction type; (B) responsive to receiving the first request, sending a first response to the client device, wherein the first response comprises information for rendering a transaction request user interface generated via a transaction model of the transaction type, wherein the transaction model of the transaction type is stored in a configuration repository; (C) receiving a second request from the client device, wherein the second request specifies one or more transaction parameters for completing a transaction of the transaction type; (D) via the transaction model of the transaction type, transforming the second request into a transformed request of a format accepted by a backend transaction server, wherein the transaction model of the transaction type specifies how to transform the one or more transaction parameters into the format accepted by the backend transaction server, wherein transforming the second request comprises processing the second request via the transaction model of the transaction type stored in the configuration repository, and wherein the transaction model represents a transaction via device-independent configuration information; (E) sending the transformed request to the backend transaction server; (F) receiving a response from the backend transaction server; (G) in a computing environment comprising one or more processors and memory, constructing a second response to the client device based on the response received from the backend transaction server, wherein constructing the second response comprises tailoring the response received from the backend transaction server according to a stored context for the client device, wherein the stored context comprises a user interface context for the client device, and the tailoring further comprises tailoring the response received from the backend transaction server according to the user interface context for the client device; (H) sending the second response to the client device; (I) at a middleware service configured to communicate with the client device, receiving an indication of a security protocol supported by the client device; and (J) at the middleware service, responsive to receiving the indication of the security protocol supported by the client device, sending content to the client device via the security protocol; (K) wherein tailoring the response received from the backend transaction server according to a stored context for the client device further comprises; omitting display of one or more columns in the response received from the backend transaction server; placing at least one hyperlink in the response received from the backend transaction server, wherein the at least one hyperlink is configured to display content from at least one of the omitted columns when activated; and wherein the at least one hyperlink is superimposed on response data appearing in a displayed column.
-
-
18. A machine comprising:
-
(A) a computing environment comprising at least one processing unit and memory; (B) means for indicating a plurality of client device contexts, wherein the means for indicating a plurality of client device contexts comprises means for indicating a user interface context for a client device; (C) means for storing a plurality of means for modeling transactions for respective transaction types; (D) means for sending means for requesting a transaction to the client device, wherein the means for requesting is constructed via at least one of the means for modeling transactions; (E) means for receiving a request for a transaction, wherein the request comprises a plurality of transaction parameters submitted via the means for requesting the transaction; (F) means for relaying the request to a backend server in a format supported by the backend server; and (G) means for presenting results at the client device in a format tailored to the client device based on the means for indicating the plurality of client device contexts and based at least on the means for indicating a user interface context for the client device; (H) wherein at least one of the means for modeling transactions specifies how to transform the transaction parameters into the format supported by the backend transaction server, and wherein the at least one of the means for modeling transactions represents a transaction via device-independent configuration information; and (I) wherein the means for indicating a plurality of client device contexts further comprises means for indicating a security protocol supported by the client device; (J) wherein the means for presenting results at the client device in a format tailored to the client device comprises; means for sending content to the client device via the security protocol; means for omitting display of one or more columns in the results; means for placing at least one hyperlink in the results, wherein the at least one hyperlink is configured to display content from at least one of the omitted columns when activated; and wherein the at least one hyperlink is superimposed on results data appearing in a displayed column.
-
-
19. A middleware service comprising:
-
(A) a client device capabilities repository stored in one or more computer-readable storage media and indicative of capabilities of a plurality of different client device types; (B) a plurality of transaction models indicative of how to process communications for a plurality of transaction types, wherein the transaction models are stored in a configuration repository; (C) a backend-directed tailoring engine operable to transform communications from a client device into a format desired by a backend transaction server based on information in the transaction models, (D) wherein a transaction model of a given transaction type specifies how to transform one or more transaction parameters into the format desired by the backend transaction server, wherein transforming the communications comprises processing the communications via the transaction model of the given transaction type as stored in the configuration repository, and (E) wherein the transaction model of the given transaction type represents a transaction via device-independent configuration information; and (F) a client-directed tailoring engine operable to transform conununications to the client device into a format appropriate for capabilities of the client device based on a user interface context for the client device and according to information in the client device capabilities repository; and (G) wherein the client-directed tailoring engine tailors communications received from the backend transaction server according to a stored context for the client device, thereby generating a tailored communication, wherein the tailored communication comprises user interface elements to be rendered as a user interface presentation on the client device, (H) wherein the stored context comprises a user interface context for the client device, and the client-directed tailoring engine tailors the communications received from the backend transaction server according to the user interface context for the client device; (I) wherein the client-directed tailoring engine transforms communications to the client device into a format appropriate for capabilities of the client device by sending content to the client device via a security protocol, based on a received indication of the security protocol supported by the client device; (J) wherein the client-directed tailoring engine transforms communications to the client device into a format appropriate for capabilities of the client device by omitting display of one or more columns in the communications to the client device, and placing at least one hyperlink in the communications to the client device, wherein the at least one hyperlink is configured to display content from at least one of the omitted columns when activated; and (K) wherein the at least one hyperlink is superimposed on communication data appearing in a displayed column.
-
-
21. A method of adding an application to a middleware service, the method comprising:
-
(A) in a computing environment comprising one or more processors and memory, creating a plurality of transaction models modeling respective transaction types of transactions for the application, wherein the transaction models define input parameters, response transformation, and output parameters for respective transactions; (B) adding the transaction models to a configuration repository of the middleware service; (C) customizing appearance of the application; and (D) receiving an indication of a transaction type from a client device; (E) responsive to receiving the indication of the transaction type, based on a transaction model of the transaction type, sending information for rendering a transaction request user interface for the transaction type to the client device; (F) receiving a request for transaction processing from the client device, wherein the request comprises one or more transaction parameters as submitted via a transaction form; (G) at a middleware service configured to communicate with the client device, receiving an indication of a security protocol supported by the client device; (H) transforming the request into a format supported by a backend transaction server, thereby generating a transformed request, wherein the transaction model of the transaction type specifies how to transform the one or more transaction parameters into the format supported by the backend transaction server, and wherein transforming the request comprises processing the request via the transaction model of the transaction type; (I) sending the transformed request to the backend transaction server, wherein the transformed request comprises at least one of the one or more transaction parameters; (J) receiving a response from the backend transaction server; (K) in a computing environment comprising one or more processors and memory, tailoring the response received from the backend transaction server according to a stored context for the client device, thereby generating a tailored response, wherein the tailored response comprises user interface elements to be rendered as a user interface presentation on the client device, wherein the stored context comprises a user interface context for the client device, and the tailoring further comprises tailoring the response received from the backend transaction server according to the user interface context for the client device; (L) sending the tailored response to the client device for rendering as a user interface presentation on the client device; and (M) at the middleware service, responsive to receiving the indication of the security protocol supported by the client device, sending content to the client device via the security protocol; (N) wherein tailoring the response according to a stored context for the client device comprises; omitting display of one or more columns in the response; placing at least one hyperlink in the response, wherein the at least one hyperlink is configured to display content from at least one of the omitted columns when activated; and wherein the at least one hyperlink is superimposed on response data appearing in a displayed column. - View Dependent Claims (22, 23, 24, 25, 26, 27)
-
-
28. A method of tailoring a response to a client device, the method comprising:
-
(A) in a computing environment comprising one or more processors and memory, determining a context for the client device, wherein the context for the client device comprises an indication of capabilities of the client device, wherein the capabilities indicated by the context for the client device comprise a screen size of the device, a font size of the device, execution engines available at the device, markup languages supported by the device, a security protocol supported by the client device, and a browser type of the device; (B) receiving an indication of a transaction type from the client device; (C) responsive to receiving the indication of the transaction type, based on a transaction model of the transaction type, sending information for rendering a transaction request user interface for the transaction type to the client device; (D) receiving a request for transaction processing from the client device, wherein the request comprises one or more transaction parameters as submitted via a transaction form; (E) at a middleware service configured to communicate with the client device, receiving an indication of a security protocol supported by the client device; (F) transforming the request into a format supported by a backend transaction server, thereby generating a transformed request, wherein the transaction model of the transaction type specifies how to transform the one or more transaction parameters into the format supported by the backend transaction server, and wherein transforming the request comprises processing the request via the transaction model of the transaction type; (G) sending the transformed request to the backend transaction server, wherein the transformed request comprises at least one of the one or more transaction parameters; (H) receiving a response from the backend transaction server; (I) in the computing environment, tailoring the response received from the backend transaction server according to the context for the client device, thereby generating a tailored response, wherein the tailored response comprises user interface elements to be rendered as a user interface presentation on the client device, wherein the context comprises a user interface context for the client device, and the tailoring further comprises tailoring the response received from the backend transaction server according to the user interface context for the client device; (J) sending the tailored response to the client device for rendering as a user interface presentation on the client device; and (K) at the middleware service, responsive to receiving the indication of the security protocol supported by the client device, sending content to the client device via the security protocol; (L) wherein tailoring the response according to a context for the client device comprises; omitting display of one or more columns in the response; placing at least one hyperlink in the response, wherein the at least one hyperlink is configured to display content from at least one of the omitted columns when activated; and wherein the at least one hyperlink is superimposed on response data appearing in a displayed column; and (M) based on the context, for the response to the client device, tailoring one or more out of the group consisting of the following; structure of a table sent in the response to the client device; a scroll bar sent in the response to the client device; a type of user interface element sent in the response to the client device; whether a mechanism for obtaining a non-mandatory parameter is sent in a response to the client device; whether pagination functionality is implemented in the response sent to the client device; whether user interface elements in the response sent to the client device are pre- filled; an image resolution of an image in the response sent to the client device; a color depth of an image in the response sent to the client device; whether content directed to a particular execution engine is sent in the response to the client device; and a type of markup language sent in the response to the client device.
-
-
30. A computerized method comprising:
-
(A) during communications with a client device, determining one or more characteristics of the client device; (B) choosing a context for the client device based on the characteristics of the client device, wherein the context comprises a user interface context, a security context, a browser context, a custom device-specific context, and user-specific settings, wherein the context is stored; (C) storing an indication of the context as associated with a communications session; (D) receiving an indication of a transaction type from the client device; (E) responsive to receiving the indication of the transaction type, based on a transaction model of the transaction type, sending information for rendering a transaction request user interface for the transaction type to the client device, wherein the transaction model of the transaction type is stored in a configuration repository; (F) receiving a request for transaction processing from the client device, wherein the request includes one or more transaction parameters indicated in the transaction model of the transaction type; (G) via XML specifying a format supported by a backend transaction server, transforming the request into the format supported by the backend transaction server, thereby generating a transformed request, wherein the transaction model of the transaction type specifies how to transform the one or more transaction parameters into the format supported by the backend transaction server, wherein transforming the request comprises processing the request via the transaction model of the transaction type stored in the configuration repository, and wherein the transaction model represents a transaction via device-independent configuration information; (H) sending the transformed request to the backend transaction server, wherein the transformed request comprises at least one of the one or more transaction parameters; (I) receiving a response from the backend transaction server; (J) in a computing environment comprising one or more processors and memory, tailoring the received response according to the user interface context for the client device stored as associated with the communications session, thereby generating a tailored response, wherein the tailored response is renderable as a user interface on the client device and complies with the user interface context; (K) sending the tailored response to the client device for rendering as a user interface on the client device; (L) at a middleware service configured to communicate with the client device, receiving an indication of a security protocol supported by the client device; and (M) at the middleware service, responsive to receiving the indication of the security protocol supported by the client device, sending content to the client device via the security protocol; (N) wherein tailoring the received response according to the user interface context for the client device stored as associated with the communications session further comprises; omitting display of one or more columns in the tailored response; placing at least one hyperlink in the tailored response, wherein the at least one hyperlink is configured to display content from at least one of the omitted columns when activated; and wherein the at least one hyperlink is superimposed on response data appearing in a displayed column.
-
Specification