Legal claims defining the scope of protection, as filed with the USPTO.
1. A system for expanding software application functionalities, the system comprising: at least one processor operable to: load metadata to a dialog system during runtime of a software application, wherein the metadata loaded to the dialog system is included in, and loaded to the dialog system from, source code annotations that are integrated into source code of the software application, wherein the source code annotations integrated into the source code of the software application define portions of the source code of the software application to be invoked when one or more actions are triggered within the dialog system while the software application is running, wherein the metadata links one or more functions of the dialog system to one or more functions of the software application when the software application is running, and wherein the metadata defines an association of a particular source code annotation, of the source code annotations, to an intent and/or to a predetermined word or phrase; subsequent to loading the metadata, receive, via a dialog system interface of the dialog system, a user request within the software application, wherein the dialog system interface is embedded in a plurality of software applications, including the software application, installed on a user device; send, by the dialog system interface embedded in the software application installed on the user device and to the dialog system, at least a part of the user request; receive, by the dialog system interface embedded in the software application and from the dialog system, a dialog system response to the user request, wherein the dialog system response specifies the particular source code annotation of the source code annotations of the software application based on the dialog system processing the user request to determine that the user request includes the intent and/or the predetermined word or phrase, that is associated with the particular source code annotation in the source code of the software application, and based on the association being included in the metadata of the source code annotations loaded to the dialog system; and identify, based on the particular source code annotation, a particular portion of the source code of the software application that is associated with the particular source code annotation, wherein the association between the particular portion of the source code and the particular source code annotation is defined within the source code of the software application; invoke, by the dialog system interface embedded in the software application installed on the user device, the particular portion of the source code within the software application wherein invoking the particular portion of the source code is responsive to both: the received dialog system response specifying the particular source code annotation, and the particular portion of the source code being associated with the particular source code annotation within the source code of the software application, wherein invoking the particular portion of the source code causes the software application to perform one or more actions, and wherein one or more of the actions correspond to one or more of the functions, of the software application, that are linked to the particular source code annotation; and a database in communication with the at least one processor comprising computer-readable instructions for execution by the processor.
2. The system of claim 1 , wherein the particular portion of the source code of the software application includes an instruction for one or more of the following: a further software application associated with the user device, a server, a hosting service, a web service, a web site, and a cloud service.
3. The system of claim 1 , wherein the dialog system response further includes presentation of one or more of a displayable message, an audio message, or an incentive for a user to provide a further user request via an output renderer.
4. The system of claim 1 , wherein the source code annotations include one or more of the following: pre-built annotations, annotations uploaded from a remote resource, and annotations synchronized with an online resource.
5. The system of claim 1 , wherein the dialog system response further includes a callback Uniform Resource Locator to be accessed by the software application to obtain a text of the dialog system response.
6. A method for expanding software application functionalities, the method being performed by at least one processor and a memory, the method comprising: loading metadata to a dialog system during runtime of a software application, wherein the metadata loaded to the dialog system is included in, and loaded to the dialog system from, source code annotations that are integrated into source code of the software application, wherein the source code annotations integrated into the source code of the software application define portions of the source code of the software application to be invoked when one or more actions are triggered within the dialog system while the software application is running, wherein the metadata links one or more functions of the dialog system to one or more functions of the software application when the software application is running, and wherein the metadata defines an association of a particular source code annotation, of the source code annotations, to an intent and/or to a predetermined word or phrase; subsequent to loading the metadata, receiving, via a dialog system interface of the dialog system, a user request within the software application when the software application is running, wherein the dialog system interface is embedded in a plurality of software applications, including the software application, installed on a user device; sending, by the dialog system interface embedded in the software application installed on the user device and to the dialog system, at least a part of the user request; receiving, from the dialog system, a dialog system response to the user request, wherein the dialog system response specifies the particular source code annotation of the source code annotations of the software application based on the dialog system processing the user request to determine that the user request includes the intent and/or the predetermined word or phrase, that is associated with the particular source code annotation in the source code of the software application, and based on the association being included in the metadata of the source code annotations loaded to the dialog system; and identifying, based on the particular source code annotation, a particular portion of the source code of the software application that is associated with the particular source code annotation, wherein the association between the particular portion of the source code and the particular source code annotation is defined within the source code of the software application; invoking, by the dialog system interface embedded in the software application installed on the user device, the particular portion of the source code within the software application, wherein invoking the particular portion of the source code is responsive to both: the received dialog system response specifying the particular source code annotation, and the particular portion of the source code being associated with the particular source code annotation within the source code of the software application, wherein invoking the particular portion of the source code causes the software application to perform one or more actions, and wherein one or more of the actions correspond to one or more of the functions, of the software application, that are linked to the dialog system in the particular source code annotation.
7. The method of claim 6 , wherein the particular portion of the source code of the software application includes an instruction for one or more of the following: a further software application associated with the user device, a server, a hosting service, a web service, a web site, and a cloud service.
8. The method of claim 6 , wherein the dialog system response further includes presentation of one or more of a displayable message, an audio message, or an incentive for a user to provide a further user request via an output renderer.
9. The method of claim 6 , wherein the source code annotations include one or more of the following: pre-built annotations, annotations uploaded from a remote resource, and annotations synchronized with an online resource.
10. The method of claim 6 , wherein the dialog system response further includes a callback Uniform Resource Locator to be accessed by the software application to obtain a text of the dialog system response.
11. The method of claim 6 , wherein the source code annotations define at least a type of the user request, the user request being processed by the dialog system based at least on the type of the user request.
12. A non-transitory processor-readable medium having instructions stored thereon, which when executed by one or more processors, cause the one or more processors to implement a method, comprising: loading metadata to a dialog system during runtime of a software application, wherein the metadata loaded to the dialog system is included in, and loaded to the dialog system from, source code annotations that are integrated into source code of the software application, wherein the source code annotations integrated into the source code of the software application define portions of the source code of the software application to be invoked when one or more actins are triggered within the dialog system while the software application is running, wherein the metadata links one or more functions of the dialog system to one or more functions of the software application when the software application is running, and wherein the metadata defines an association of a particular source code annotation, of the source code annotations, to an intent and/or to a predetermined word or phrase; subsequent to loading the metadata, receiving, via a dialog system interface of the dialog system, a user request within the software application when the software application is running, wherein the dialog system interface is embedded in a plurality of software applications, including the software application, installed on a user device, sending, by the dialog system interface embedded in the software application installed on the user device and to the dialog system, at least a part of the user request; receiving, by the dialog system interface embedded in the software application installed on the user device and from the dialog system, a dialog system response to the user request, wherein the dialog system response specifies the particular source code annotation of the source code annotations of the software application based on the dialog system processing the user request to determine that the user request includes the intent and/or the predetermined word or phrase, that is associated with the particular source code annotation in the source code of the software application, and based on the association being included in the metadata of the source code annotations loaded to the dialog system; and identifying, based on the particular source code annotation, a particular portion of the source code of the software application that is associated with the particular source code annotation, wherein the association between the particular portion of the source code and the particular source code annotation is defined within the source code of the software application; invoking, by the dialog system interface embedded in the software application installed on the user device, the particular portion of the source code within the software application, wherein invoking the particular portion of the source code is responsive to both: the received dialog system response specifying the particular source code annotation, and the particular portion of the source code being associated with the particular source code annotation within the source code of the software application, wherein invoking the particular portion of the source code causes the software application to perform one or more actions, and wherein one or more of the actions correspond to one or more of the functions, of the software application, that are linked to the dialog system in the particular source code annotation.
13. The method of claim 6 , wherein the dialog system is a third party service, and wherein receiving the dialog system response to the user request from the third party service comprises: incorporating additional information from the third party service into the dialog system response, and providing the additional information for presentation to a user via a graphical user interface of the dialog system.
14. The system of claim 1 , wherein the source code annotations of the source code of the software application are provided within the source code of the software application during design of the software application, and wherein the source code annotations are specific to the software application.
15. The system of claim 1 , wherein invoking the particular portion of the source code causes the software application installed on the user device to perform one or more of the actions using a further software application installed on the user device.
16. The system of claim 1 , wherein invoking the particular portion of the source code causes the software application installed on the user device to control one or more components of the user device.
17. The system of claim 1 , wherein the metadata defines the association of the identified annotation to the intent, and wherein the association of the particular source code annotation to the intent is defined, for the software application, by a developer during design of the software application using example user requests indicative of the intent.
18. The system of claim 1 , wherein the software application is installed on an operating system, and wherein the operating system facilitates interactions between the software application installed on the operating system and the dialog system.
Unknown
January 25, 2022
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.