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.