CPC G06Q 30/016 (2013.01) [G06F 3/0482 (2013.01); G06F 9/541 (2013.01); G06Q 30/018 (2013.01)] | 20 Claims |
1. A method for implementing a customer relationship management (CRM) system, the method comprising:
instantiating, on a client computer, a user interface configured with a container micro-application operable to execute one or more other micro-applications, wherein:
the container micro-application implements an execution environment for at least one other micro-application;
the container micro-application is configured to inject and remove any of the one or more other micro-applications from an HTML data object model;
the one or more other micro-applications comprise a code package that implements a CRM function; and
the one or more other micro-applications include an application programming interface (API) configured to receive electronic messages indicative of requests for customer data;
receiving, via the user interface during runtime of the user interface, one or more user queries;
supplementing the one or more user queries using machine learning;
based on the one or more user queries that were supplemented using machine learning, selecting, by the user interface, a first micro-application of the one or more other micro-applications that corresponds to a first CRM function and a second micro-application of the one or more other micro-applications that corresponds to a second CRM function;
based on first access restrictions of the first micro-application and second access restrictions of the second micro-application, generating, by the user interface, a first token and a second, different token that each reflect a user of the client computer;
based on selecting the first micro-application, identifying, by a micro-application domain name service, a first micro-application server that hosts first API functions of the first micro-application and a second micro-application server that hosts first user interface functions of the first micro-application;
based on selecting the second micro-application, identifying, by the micro-application domain name service, a third micro-application server that hosts second API functions of the second micro-application and a fourth micro-application server that hosts second user interface functions of the second micro-application;
sending, by the user interface and to the second micro-application server, a first request for the first micro-application that corresponds to the first CRM function and the first token;
sending, by the user interface and to the fourth micro-application server, a second request for the second micro-application that corresponds to the second CRM function and the second, different token;
based on a first verification that the first token grants the user of the client device permission to access the first micro-application, receiving, by the user interface from the second micro-application server hosting the first user interface functions of the first micro-application, a first data package that includes the first micro-application corresponding to the first CRM function;
based on the second verification that the second, different token grants the user of the client device permission to access the second micro-application, receiving, by the user interface from the fourth micro-application server hosting the second user interface functions of the second micro-application, a second data package that includes the second micro-application corresponding to the second CRM function;
injecting, by the container micro-application, the first data package that includes the first micro-application corresponding to the first CRM function in the HTML data object model and the second data package that includes the second micro-application corresponding to the second CRM function in the HTML data object model;
rendering, via the user interface of the container micro-application on a display device communicatively coupled to the client computer, a first interactive area configured to display first information pertaining to the first CRM function by executing, in a first domain, the first micro-application, wherein the container micro-application is configured to store and maintain a first state of the first micro-application;
rendering, via the user interface of the container micro-application on the display device communicatively coupled to the client computer, a second interactive area configured to display second information pertaining to the second CRM function by executing, in a second domain, the second micro-application, wherein the container micro-application is configured to store and maintain a second state of the second micro-application; and
removing, by the container micro-application, one or more data packages that include the first and second micro-applications from the HTML data object model.
|