Method and device for generating configuration file of target program and method and device for sending page information
By generating the configuration files of the target program, the problems of high development difficulty and low efficiency in the development of intelligent dialogue system are solved, and the ability of designers to design and develop configuration files by themselves is realized, ensuring the accurate realization of product requirements.
Patent Information
- Application Number
- CN202510087358.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-20
- Publication Date
- 2025-05-16
AI Technical Summary
During the development process of intelligent dialogue systems, there are problems such as high development difficulty, low development efficiency and prone to deviations in the effectiveness and requirements of intelligent dialogue products.
Through a method and apparatus, generating a configuration file of the target program, including creating a second canvas having a mapping relationship with the canvas elements, creating a canvas element belonging to the second canvas, and generating a configuration file based on these elements to respond to the user's conversation information and feedback corresponding page information.
This method and device enable designers to design and develop profiles by visually, improve development efficiency, reduce dependence with developers, and ensure accurate implementation of product requirements.
Smart Images

Figure CN120010951A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer technology, and in particular to a method for generating a configuration file of a target program, and a method for sending page information. The present application also relates to a device for generating a configuration file of a target program, a device for sending page information, a terminal device, and a server. Background Art
[0002] With the booming development of Internet services, intelligent dialogue systems are becoming increasingly popular. Intelligent dialogue systems are also called dialogue agents, dialogue robots, and conversational artificial intelligence applications. Intelligent dialogue systems can serve as intelligent customer service, taking over the role of traditional manual customer service and focusing on handling daily customer service needs. In the prior art, the development of intelligent dialogue systems requires designers to design specific service acceptance logic for different user consultations, form detailed product requirements documents, and pass the product requirements documents to developers with coding capabilities. Developers usually use Skill configuration files and Lambda function codes to build configuration files that can implement the service acceptance logic of designers. This process is relatively complex and has a high threshold. In particular, for user consultations involving multiple rounds of dialogue, the service acceptance logic involved is complex, and the corresponding product requirements documents are often complex, and are prone to "ambiguity due to differences in people". However, since the design of product requirements and the implementation of product requirements are operated by different personnel and are separated, not only is the development efficiency low, but it is also very easy to cause the effect of the configuration file developed by the developer to deviate from the product requirements designed by the designer.
[0003] Therefore, there is an urgent need to solve the problems of high development difficulty, low development efficiency and easy deviation between the effect and demand of intelligent dialogue products in the development process of intelligent dialogue systems. Summary of the invention
[0004] In view of this, the embodiments of the present application provide a method, apparatus, terminal device and server for generating a configuration file of a target program and sending page information, which are used to solve the problems of high development difficulty, low development efficiency and easy deviation between the effect and demand of intelligent dialogue products in the development process of intelligent dialogue systems.
[0005] According to a first aspect of an embodiment of the present application, a method for generating a configuration file of a target program is provided, comprising:
[0006] In response to the first operation, creating a second canvas having a mapping relationship with the first canvas element in the first canvas;
[0007] In response to a second operation, creating a second canvas element belonging to the second canvas;
[0008] A configuration file of a target program is generated based on the first canvas element, the mapping relationship, and the second canvas element; the target program is used to, in response to a dialog message for triggering the first canvas element provided by a user after receiving first page information corresponding to the first canvas, feedback second page information generated based on the second canvas element to the user based on the mapping relationship in the configuration file.
[0009] According to a second aspect of an embodiment of the present application, a method for sending page information is provided, including:
[0010] Receiving dialogue information sent by a user terminal and provided by a user for first page information displayed by the user terminal; the first page information is generated based on at least one canvas element in a configuration file of a target program;
[0011] Determine a first canvas element triggered by the dialog information from the canvas to which the at least one canvas element belongs;
[0012] Determine, according to the configuration file, a second canvas element having a mapping relationship with the first canvas element;
[0013] generating second page information for displaying to a user based on the second canvas element;
[0014] The second page information is sent to the user terminal.
[0015] According to a third aspect of an embodiment of the present application, there is provided a device for generating a configuration file of a target program, comprising:
[0016] A canvas creation module, configured to create, in response to the first operation, a second canvas having a mapping relationship with a first canvas element in the first canvas;
[0017] A canvas element creation module, configured to create a second canvas element belonging to the second canvas in response to a second operation;
[0018] A configuration file generation module is used to generate a configuration file of a target program based on the first canvas element, the mapping relationship and the second canvas element; the target program is used to, in response to a dialog message for triggering the first canvas element provided by a user after receiving first page information corresponding to the first canvas, feedback second page information generated based on the second canvas element to the user based on the mapping relationship in the configuration file.
[0019] According to a fourth aspect of an embodiment of the present application, a device for sending page information is provided, including:
[0020] A dialog information receiving module, configured to receive dialog information sent by a user terminal and provided by a user for first page information displayed by the user terminal; the first page information is generated based on at least one canvas element in a configuration file of a target program;
[0021] A first canvas element determining module, configured to determine a first canvas element triggered by the dialog information from the canvas to which the at least one canvas element belongs;
[0022] A second canvas element determining module, configured to determine, according to the configuration file, a second canvas element having a mapping relationship with the first canvas element;
[0023] A page information generating module, configured to generate second page information for display to a user based on the second canvas element;
[0024] The page information sending module is used to send the second page information to the user terminal.
[0025] According to a fifth aspect of an embodiment of the present application, a terminal device is provided, including:
[0026] at least one processor; and,
[0027] a memory communicatively connected to the at least one processor; wherein,
[0028] The memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to:
[0029] In response to the first operation, creating a second canvas having a mapping relationship with the first canvas element in the first canvas;
[0030] In response to a second operation, creating a second canvas element belonging to the second canvas;
[0031] A configuration file of a target program is generated based on the first canvas element, the mapping relationship, and the second canvas element; the target program is used to, in response to a dialog message for triggering the first canvas element provided by a user after receiving first page information corresponding to the first canvas, feedback second page information generated based on the second canvas element to the user based on the mapping relationship in the configuration file.
[0032] According to a sixth aspect of an embodiment of the present application, a server is provided, including:
[0033] at least one processor; and,
[0034] a memory communicatively connected to the at least one processor; wherein,
[0035] The memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to:
[0036] Receiving dialogue information sent by a user terminal and provided by a user for first page information displayed by the user terminal; the first page information is generated based on at least one canvas element in a configuration file of a target program;
[0037] Determine a first canvas element triggered by the dialog information from the canvas to which the at least one canvas element belongs;
[0038] Determine, according to the configuration file, a second canvas element having a mapping relationship with the first canvas element;
[0039] generating second page information for displaying to a user based on the second canvas element;
[0040] The second page information is sent to the user terminal.
[0041] According to a seventh aspect of an embodiment of the present application, a computer-readable storage medium is provided, which stores computer instructions. When the computer instructions are executed by a processor, the steps of the method for generating a configuration file of a target program and sending page information are implemented.
[0042] According to an eighth aspect of an embodiment of the present application, a computer program product is provided, including a computer program or instructions, which, when executed by a processor, implements the steps of the above-mentioned method of generating a configuration file of a target program and sending page information.
[0043] At least one embodiment of the present specification can achieve the following beneficial effects: the terminal device of the designer can create a second canvas having a mapping relationship with the first canvas element in the first canvas in response to the first operation of the designer; it can also create a second canvas element belonging to the second canvas in response to the second operation of the designer, and generate a configuration file of the target program based on the first canvas element, the second canvas element and the mapping relationship, so that the target program can be used to respond to the dialogue information for triggering the first canvas element provided by the user after receiving the first page information corresponding to the first canvas, and feedback the second page information generated based on the second canvas element to the user based on the mapping relationship in the configuration file. Thus, the designer can design and develop a configuration file that can realize the product requirements in a visual way without the intervention of a developer with a professional coding technology background, and can efficiently and quickly generate a configuration file for providing consulting services to users, while also simplifying the development process; and when generating the configuration file of the target program, the designer actually refers to the user's use operation process of the target program in constructing the mapping relationship between the canvas element and the canvas, so that the realization effect of the intelligent dialogue product based on the target program designed by the designer has a high degree of matching with the design requirements of the designer and is not prone to deviation. BRIEF DESCRIPTION OF THE DRAWINGS
[0044] In order to more clearly illustrate the embodiments of this specification or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments recorded in this application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative labor.
[0045] Figure 1 It is a schematic diagram of an application scenario of a method for generating a configuration file of a target program provided in an embodiment of this specification;
[0046] Figure 2 It is a flowchart of a method for generating a configuration file of a target program provided in an embodiment of this specification;
[0047] Figure 3 It is a schematic diagram of a design canvas process provided by an embodiment of this specification;
[0048] Figure 4 It is a flowchart of a method for sending page information provided by an embodiment of this specification;
[0049] Figure 5 is a schematic diagram of page information displayed on a user terminal provided by an embodiment of this specification;
[0050] Figure 6It is a swimlane diagram of a method for generating a configuration file of a target program and sending page information provided by an embodiment of this specification;
[0051] Figure 7 This specification provides an embodiment corresponding to Figure 2 A schematic diagram of a structure of a device for generating a configuration file of a target program;
[0052] Figure 8 This specification provides an embodiment corresponding to Figure 4 A structural diagram of a device for sending page information;
[0053] Fig. 9 It is a structural diagram of a terminal device provided in an embodiment of this specification;
[0054] Fig.10 It is a structural diagram of a server provided in an embodiment of this specification. DETAILED DESCRIPTION
[0055] Many specific details are described in the following description to facilitate a full understanding of the present application. However, the present application can be implemented in many other ways than those described herein, and those skilled in the art can make similar generalizations without violating the connotation of the present application, so the present application is not limited by the specific implementation disclosed below.
[0056] The terms used in one or more embodiments of the present application are only for the purpose of describing specific embodiments, and are not intended to limit one or more embodiments of the present application. The singular forms of "a", "said" and "the" used in one or more embodiments of the present application and the appended claims are also intended to include plural forms, unless the context clearly indicates other meanings. It should also be understood that the term "and / or" used in one or more embodiments of the present application refers to and includes any or all possible combinations of one or more associated listed items.
[0057] It should be understood that, although the terms first, second, etc. may be used to describe various information in one or more embodiments of the present application, these information should not be limited to these terms. These terms are only used to distinguish the same type of information from each other. For example, without departing from the scope of one or more embodiments of the present application, the first may also be referred to as the second, and similarly, the second may also be referred to as the first. Depending on the context, the word "if" as used herein may be interpreted as "at the time of" or "when" or "in response to determining".
[0058] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant laws, regulations and standards in the relevant regions, and provide corresponding operation entrances for users to choose to authorize or refuse.
[0059] The technical solutions provided by the embodiments of this specification are described in detail below in conjunction with the accompanying drawings.
[0060] In the prior art, after the designer hands over the product requirement document with specific service acceptance logic to the code developer, the developer uses cloud service platforms such as Alexa Skills Kit that can provide the ability to create a customized voice experience to build a conversational artificial intelligence application. In the process of developers writing code on the cloud service platform, they need to design product functions by writing intent schemas and AWS Lambda function codes. This process is relatively complex and has a high threshold. When multiple rounds of dialogue are involved, developers need to manually handle dialogue state management in the code (for example, they need to write state judgment statements such as if dialogState! == 'COMPLETE'), making the development process more difficult. Since developers are not designers, the actual operation effect of the intelligent dialogue system is difficult to intuitively predict, especially when there is a lack of detailed product requirement documents, which makes it relatively difficult to predict the behavior of intentions.
[0061] In order to solve the defects in the prior art, this solution provides the following embodiments.
[0062] Figure 1 A schematic diagram of an application scenario of a method for generating a configuration file of a target program provided in an embodiment of this specification.
[0063] like Figure 1As shown, the scheme may include a first terminal device 1 used by a designer, a server 2, and a second terminal device 3 used by a user. The designer may perform product design operations on the first terminal device 1, and the first terminal device 1 may create a corresponding canvas or canvas element in response to the designer's product design operations, or may create a mapping relationship between canvas elements and canvases. After the designer completes the product design on the first terminal device 1, the first terminal device 1 may generate a configuration file of a target program based on the product designed by the designer and send it to the server 2. The server 2 may store the configuration file of the target program received from the first terminal device 1. The user may operate the second terminal device 3, and the second terminal device 3 may generate a session request based on the user's operation and send it to the server 2. The server 2 may determine the corresponding configuration file based on the received session request, generate page information, and send the page information to the second terminal device 3, so that the second terminal device 3 can display a session page for the user based on the page information.
[0064] In such Figure 1 In the application scenario shown, the server can be connected to one or more first terminal devices 1 and one or more second terminal devices 3 via a local area network connection, a wide area network connection, an Internet connection or other types of data networks. Figure 1 The server 2 may include but is not limited to any device, equipment, platform, equipment cluster, etc. with computing and processing capabilities. Figure 1 The first terminal device 1 or the second terminal device 3 may include but is not limited to a smart phone, a tablet computer, a laptop computer, a PDA, a personal computer, a smart home device, a vehicle-mounted device, etc.
[0065] In the present application, a method for generating a configuration file of a target program is provided. The present application also relates to a method for sending page information, a device for generating a configuration file of a target program, a device for sending page information, a terminal device, a server, a computer-readable storage medium and a computer program product, which are described in detail one by one in the following embodiments.
[0066] Figure 2 A flowchart of a method for generating a configuration file of a target program provided in an embodiment of this specification.
[0067] From the program perspective, the execution subject of the process can be a program installed on the application terminal of the designer. From the hardware perspective, the execution subject of the process can be a terminal device used by the designer. It can be understood that the method can be executed by any device, equipment, platform, or device cluster with computing and processing capabilities.
[0068] like Figure 2As shown, the process may include the following steps:
[0069] Step 202: In response to the first operation, create a second canvas having a mapping relationship with the first canvas element in the first canvas.
[0070] In the embodiments of this specification, the first operation may represent an operation performed by a designer on a first terminal device used by the designer to create a second canvas, such as clicking, dragging, and other operations on a page displayed on the first terminal device, or the first terminal device has an operable hardware area, and the designer clicks shortcut keys and other operations in the operable hardware area.
[0071] In the embodiments of this specification, the first canvas element may be an element designed by the designer for the service acceptance logic, such as an operable control for implementing function A, such as a built-in service for implementing a service acceptance logic with multiple branches. The first canvas element may include user visualization elements and user non-visualization elements. The second canvas may represent a canvas that carries information that needs to be displayed after the service acceptance logic of the first canvas element is executed. The mapping relationship may be expressed in the form of an arrow or in the form of a hierarchy. It can be understood that a user visualization element may represent an element designed by a designer in the canvas that can generate user-visible page information; a user non-visualization element may represent an element designed by a designer in the canvas that is not used to generate user-visible page information.
[0072] Step 204: In response to the second operation, create a second canvas element belonging to the second canvas.
[0073] In the embodiments of this specification, the second operation may represent the operation of the designer on the second canvas displayed on the first terminal device, such as dragging the second canvas element into the second canvas, performing drawing operations, editing operations, etc. in the second canvas. The second canvas element may include user-visual elements and user-non-visual elements. The second canvas element may include a text box element for displaying text, a control element for providing an operable control to the user, or a built-in service element of a built-in service acceptance logic that is not displayed to the user but needs to be executed by the second canvas.
[0074] Step 206: Generate a configuration file of the target program based on the first canvas element, the mapping relationship, and the second canvas element.
[0075] The target program is used to, in response to dialog information for triggering the first canvas element provided by the user after receiving the first page information corresponding to the first canvas, feedback second page information generated based on the second canvas element to the user based on the mapping relationship in the configuration file.
[0076] In the embodiments of this specification, the target program may represent the program service consulted by the user, such as querying the remaining traffic quota, querying the phone bill balance, querying the weather conditions in the next week, etc. The configuration file may be information such as the first canvas element, the mapping relationship, and the second canvas element stored in a preset format, such as stored in a key-value pair format, stored in XML format, stored in JSON format, etc.
[0077] In the embodiments of this specification, the dialogue information may be information that the second terminal device needs to provide to the user after receiving the first page information corresponding to the first canvas. The dialogue information may include a control element for triggering the service acceptance logic of the first canvas element. The page information may be dialogue information sent by the target program to the user, which can be understood as program service dialogue information. For example, the first page information may be a first page element generated based on a first canvas element in the first canvas of the target program contained in a configuration file of the target program in response to the user triggering the target program. The second page information may be a second page element generated based on a second canvas element in a second canvas having a mapping relationship with the first canvas element in response to the user triggering the first canvas element.
[0078] As an implementation mode, the storage of each created canvas and the canvas elements contained in each canvas in the configuration file includes that, for any canvas among the various canvases, the canvas identifier of the arbitrary canvas, the element identifier of each canvas element having a subordinate relationship with the arbitrary canvas, the element content of each canvas element having a subordinate relationship with the arbitrary canvas, and the subordinate relationship between the canvas identifier and the element identifier can be stored in the configuration file. Among them, the element identifiers of each canvas element having a subordinate relationship with the arbitrary canvas can be different, and each element identifier is used to uniquely identify the corresponding canvas element. For example, the configuration file can store the canvas identifier of the first canvas, the element identifier of the first canvas element having a subordinate relationship with the first canvas, and the element content of each first canvas element. In actual application, the canvas to which the canvas element belongs can be determined based on the subordinate relationship between the element identifier of the canvas element and the canvas identifier of the canvas. For example, the canvases are labeled A and B, the labels a1, a2, and a3 of the canvas elements in canvas A are subordinate to A, and the labels b1, b2, and b3 of the canvas elements in canvas B are subordinate to B.
[0079] As another implementation, the storage of each created canvas and the canvas elements contained in each canvas in a configuration file includes that, for any of the canvases, the element identifiers of each canvas element in the arbitrary canvas and the element contents of each canvas element in the arbitrary canvas can be stored in the configuration file. Among them, the element identifiers of different canvas elements can be different, and the element identifiers of canvas elements corresponding to the same canvas carry the same consistency information. In actual application, the canvas elements belonging to the same canvas can be determined based on the consistency information in the element identifiers of the canvas elements. For example, the identifiers A-a1, A-a2, and A-a3 of the canvas elements in canvas A have consistency information A, and the identifiers B-b1, B-b2, and B-b3 of the canvas elements in canvas B have consistency information B.
[0080] It should be understood that in the methods described in one or more embodiments of this specification, the order of some steps can be adjusted according to actual needs, or some steps can be omitted.
[0081] Figure 2 In the method, the terminal device of the designer can create a second canvas having a mapping relationship with the first canvas element in the first canvas in response to the first operation of the designer; and can also create a second canvas element belonging to the second canvas in response to the second operation of the designer, and generate a configuration file of the target program based on the first canvas element, the second canvas element and the mapping relationship, so that the target program can be used to respond to the dialogue information for triggering the first canvas element provided by the user after receiving the first page information corresponding to the first canvas, and feedback the second page information generated based on the second canvas element to the user based on the mapping relationship in the configuration file. Thus, the designer can design and develop a configuration file that can realize the product requirements by himself without the intervention of a developer with a professional coding technology background, and can efficiently and quickly generate a configuration file for providing consulting services to users, while also simplifying the development process.
[0082] based on Figure 2 The present specification also provides some improved implementation methods of the method, which are described below.
[0083] As an implementation manner, optionally, the creation of a second canvas having a mapping relationship with a first canvas element in a first canvas in response to a first operation described in the embodiments of this specification may specifically include: obtaining a first canvas creation operation performed in an area outside the first canvas; creating a second canvas in response to the first canvas creation operation; obtaining a mapping relationship establishment operation performed on the first canvas element and the second canvas; and establishing a mapping relationship between the first canvas element and the second canvas in response to the mapping relationship establishment operation.
[0084] In the embodiment of this specification, the area outside the first canvas may represent an operable area other than the first canvas in the design page displayed on the first terminal device. The first canvas creation operation may represent an operation of a designer creating a second canvas on the design page. The mapping relationship establishment operation may represent an operation of a designer to establish a mapping relationship between the first canvas element and the second canvas, such as an operation to establish a directional arrow. It is understandable that the first operation may include the first canvas creation operation and the mapping relationship establishment operation. The design page may include a first area for providing designers with usable templates, may include a second area for providing designers with a menu bar, may include a third area for providing designers with canvas elements, mapping relationships and canvases that can be created, and may include other areas available for designers to operate.
[0085] In practical applications, the first canvas creation operation can be an operation in which a designer determines a template of the second canvas from the first area and drags it to the third area; it can also be an operation in which a designer selects a shape or drawing tool of the second canvas to be created in the first area or the second area and then draws in the third area; it can also be other operations for creating the second canvas. After the second canvas is created, a mapping relationship between the first canvas element and the second canvas is established.
[0086] To better understand the process of designing a configuration file, Figure 3 A schematic diagram of a design canvas process is provided for the embodiments of this specification.
[0087] like Figure 3 In the example shown, the canvas 31 may include canvas elements of the first element type of user visualization represented by a solid rounded rectangle, such as canvas elements corresponding to text information such as "I want to know my package", "Check my package balance", and "Change package, etc."; it may also include canvas elements of the third element type represented by a solid right-angled rectangle, such as a canvas element corresponding to the text information "Hello, XXXX". Further, the plus sign control in the canvas 31 may indicate that the corresponding canvas element is not selected; the minus sign control may indicate that the corresponding canvas element is selected, and a canvas having a mapping relationship with the canvas element identified by the minus sign control can be created.
[0088] In such Figure 3 In the example shown in , a solid arrow can be used as a mapping relationship connection line. The starting end can be connected to the canvas element of the first element type that is triggered, such as the canvas element corresponding to the copy information "Check my package balance", and the end can point to the canvas 32 that has a mapping relationship with the canvas element corresponding to the copy information "Check my package balance".
[0089] In such Figure 3 In the example shown in , the canvas 32 may include canvas elements of the third element type, such as a canvas element corresponding to the text information "OK, what do you want to ask?"; it may also include canvas elements of the first element type that represent user visualization, such as canvas elements corresponding to text information such as "voice" and "text message"; it may also include canvas elements of the first element type that are not user-visual, represented by a dotted rounded rectangle, such as a canvas element corresponding to the text information "traffic".
[0090] In such Figure 3 In the example shown in , a mapping relationship line can be used to point to canvas 33 that has a mapping relationship with the canvas element "traffic". Canvas 33 may include canvas elements of the third element type, such as a canvas element corresponding to the text information "OK, start querying traffic". Canvas 33 may also include canvas elements of the second element type that are non-visual to the user, represented by hexagons, such as a canvas element corresponding to "Is the user traffic used up?" Canvas 33 may also include canvas elements of the first element type, such as a canvas element corresponding to the text information "traffic type".
[0091] In such Figure 3 In the example shown in , a mapping relationship line can be used to point to the canvas 34 having a mapping relationship with the canvas element "Is the user traffic used up?". Based on the preset judgment logic of the canvas element of the second element type in canvas 33, it is determined that there are two judgment results. Canvas 34 can be a canvas with two sub-canvas pages, such as the "used up" sub-canvas page indicating that the traffic has been used up, and the "not used up" sub-canvas page indicating that the traffic has not been used up. As an example, a black dot can be used to identify the sub-canvas page currently displayed, such as the sub-canvas page displayed in canvas 34 is the "used up" sub-canvas page. Canvas 34 can include canvas elements of the third element type, such as the canvas element corresponding to the copy information "Your traffic is insufficient, XXX"; it can also include canvas elements of the first element type representing user visualization, such as canvas elements corresponding to copy information such as "Buy traffic package" and "Got it". The area where the word "Not used up" is located can be used as a switching control, so that the area where the word "Not used up" is located in canvas 34 can be switched to the "Not used up" sub-canvas page.
[0092] In such Figure 3 In the example shown in , a dotted arrow can be used as a reverse mapping relationship line; the starting end of the reverse mapping relationship line can be connected to the canvas element corresponding to the text information "Got it", and the end is connected to the canvas 32 that has a reverse mapping relationship with the canvas element corresponding to the text information "Got it".
[0093] Based on Figure 3With the method shown in , designers can define canvases, canvas elements, and mapping relationships in a declarative way, so that designers can focus on defining business logic without paying too much attention to implementation details. In addition, when designing business logic, there is no need to write too much code information, which reduces the difficulty of development.
[0094] Understandably, Figure 3 This is just an illustrative example. The specific process, content, canvases, and shapes, texts, and properties of canvas elements in the figure can be set according to actual needs.
[0095] As another implementation manner, optionally, in the embodiments of this specification, in response to the first operation, creating a second canvas having a mapping relationship with the first canvas element in the first canvas specifically includes: obtaining a second canvas creation operation performed on the first canvas element in the first canvas; and in response to the second canvas creation operation, creating a second canvas having a mapping relationship with the first canvas element.
[0096] In the embodiments of this specification, the second canvas creation operation may represent the operation performed by the designer on the operable control in the first canvas element, such as the operation of the designer clicking the red dot control when the first canvas element contains a red dot control; or the operation of the designer clicking the plus control when the first canvas element contains a plus control. The first operation may be the second canvas creation operation. After the designer performs the second canvas creation operation, the first terminal device may directly generate the second canvas and the mapping relationship between the first canvas element and the second canvas in response to the second canvas creation operation, thereby improving the efficiency of generating the configuration file.
[0097] As an implementation manner, optionally, in the embodiment of this specification, the first canvas element carries an operable control; the obtaining of the second canvas creation operation performed on the first canvas element in the first canvas specifically includes: obtaining a touch operation on the operable control carried by the first canvas element in the first canvas.
[0098] In the embodiments of this specification, the operable control may be a visual control or a non-visual control. If the operable control is a visual control, the designer may directly perform touch operations on the visual control. If the operable control is a non-visual control, the designer may move the cursor to the area of the first canvas element, and the non-visual control may be displayed around or within the area of the first canvas element, and the designer may perform touch operations on the displayed operation control. The operable control may be a red dot control, a plus sign control, or a directional triangle, etc., but is not limited thereto. The touch operation may represent an operation on an operable control, such as an operation on a red dot control, a plus sign control, or a directional triangle. Based on the operable control, the designer may intuitively know that further operations may be performed on the first canvas element, which may improve the design efficiency of the designer while simplifying the design operation.
[0099] continue Figure 3 In the example of canvas 31, the designer can click on the actionable control on the canvas element “View my plan balance” (in Figure 3 The first terminal device can obtain the operation of the designer clicking the operable control carried by "View my package balance" and then convert the control style of the operable control on "View my package balance", such as converting the plus control to a minus control. In actual applications, the plus control and the minus control can be used to represent two states of the canvas element. The plus control can represent the control style of the operation control in the canvas element when the designer does not perform a touch operation, and the minus control can represent the control style of the operation control in the canvas element when the designer performs a touch operation.
[0100] In actual applications, the first canvas element may not include operable controls. For example, the first canvas element itself may be operable.
[0101] As an implementation mode, optionally, in response to the second canvas creation operation, creating the second canvas having a mapping relationship with the first canvas element in the embodiment of this specification specifically includes: determining the element type of the first canvas element in response to the second canvas creation operation; the element type includes the first element type or the second element type; the canvas element of the first element type is used to execute the operation associated with the canvas element in the second canvas after being triggered; the canvas element of the second element type is used to execute the preset judgment logic after being triggered to obtain the judgment result, and execute the operation associated with the canvas element in the second canvas corresponding to the judgment result; according to the element type, creating the second canvas having a mapping relationship with the first canvas element.
[0102] In the embodiment of this specification, the first element type may be a control type, and the canvas element of the first element type may have a first element type identifier. The second element type may be a built-in service type, and the canvas element of the second element type may have a second element type identifier. In order to facilitate designers to distinguish different element types, the appearance of the first element type and the second element type may usually be different; however, in some other embodiments, the appearance of the first element type and the second element type may also be the same. For the canvas element of the first element type, the created second canvas may be a canvas containing a page that can display the second canvas element. For the canvas element of the second element type, the created second canvas may be a canvas containing one or more pages that can display the second canvas element, and the number of pages in the second canvas corresponding to the canvas element of the second element type may be specifically determined based on the number of judgment results. In the embodiment of this specification, one judgment result corresponds to one page in the second canvas. The preset judgment logic may be determined based on the service that the first canvas element created by the designer can provide to the user, such as the first canvas element is to query the weather in the city where the user is located, and the corresponding judgment logic may be to determine the city where the user is located; or, the first canvas element is to query the remaining traffic, and the corresponding judgment logic may be to determine whether the user's traffic is used up.
[0103] In actual applications, for a control type canvas element, after the user triggers the first canvas element, a second canvas element in the second canvas that has a mapping relationship with the first canvas element can be determined, and optionally, page information generated based on the second canvas element can be displayed to the user. For a built-in service type canvas element, after the user triggers the first canvas element, each second canvas element in the second canvas that has a mapping relationship with the first canvas element can be determined, and a preset judgment logic is executed. Based on the judgment result of the preset judgment logic, a second canvas element that has an association relationship with the judgment result is determined from each second canvas element in the second canvas, and optionally, page information generated based on the second canvas element can be displayed to the user.
[0104] continue Figure 3For example, if the user triggers the canvas element "View my package balance" in canvas 31, the server can determine the visual canvas elements "OK, what do you want to ask?", "Voice" and "SMS" and the non-visual canvas element "Flow" in canvas 32 that have a mapping relationship with "View my package balance" based on the configuration file, and generate page information based on the visual canvas element and send it to the second terminal device, so that the second terminal device can display the page information. The page information may include text box information "OK, what do you want to ask?" for displaying inoperable information to the user, control information "Voice" and "SMS" for displaying operable information to the user. In addition, the "Voice", "Flow" and "SMS" canvas elements belonging to the first element type can be set to a triggerable state; the triggerable state is used to indicate that they can be triggered in response to the user's dialogue information that meets the preset conditions. For example, the "Voice" page element can be triggered in response to the user's click on the page control generated based on the "Voice" page element, or the dialogue information for representing "Voice" in the form of text or voice input by the user. For another example, the “traffic” page element may be triggered in response to dialog information representing “traffic” in the form of text or voice input by the user.
[0105] As an implementation manner, optionally, in the embodiment of this specification, the first canvas element is a first element type; and creating the second canvas having a mapping relationship with the first canvas element according to the element type specifically includes: creating a second canvas having a single canvas page having a mapping relationship with the first canvas element.
[0106] In the embodiment of this specification, the second canvas with a single canvas page may indicate that the second canvas has only one canvas page. The single canvas page may contain all the second canvas elements in the second canvas. It is understandable that the designer may perform a second canvas creation operation on the first canvas element of the first element type, so that the first terminal device creates a second canvas with a single canvas page that has a mapping relationship with the first canvas element in response to the second canvas creation operation of the designer.
[0107] For the design of a single canvas page, the designer can design the single canvas page based on the needs, such as part of the second canvas elements can be set to be visible in the user's second terminal device, for example, all canvas elements of the third element type, and optionally, at least part of the canvas elements of the first element type; part of the second canvas elements can be set to be invisible in the user's second terminal device, for example, all canvas elements of the second element type, and optionally, at least part of the canvas elements of the first element type. For the second canvas element that is invisible to the user, the user can also trigger the invisible second canvas element to execute the service undertaking logic of the second canvas element that is invisible to the user.
[0108] continue Figure 3 For example, in canvas 31 of a single canvas page, the canvas element of the third element type "Hello, XXX" designed by the designer and all the canvas elements of the first element type "I want to know about my package", "Check my package balance" and "Change package" are all set to be visible in the user's second terminal device. In canvas 32 of a single canvas page, the canvas element of the third element type "OK, what do you want to ask?" designed by the designer and some canvas elements of the first element type "Voice" and "SMS" are all set to be visible in the user's second terminal device, and some canvas elements of the first element type such as "Traffic" are set to be invisible in the user's second terminal device. In canvas 33 of a single canvas page, the canvas element of the third element type "OK, start querying traffic" and the canvas element of the first element type "Traffic type" are set to be visible in the user's second terminal device, and the canvas element of the second element type "Is the user's traffic used up" is set to be invisible in the user's second terminal device.
[0109] In actual applications, being visible in the user's second terminal device may indicate that the server is able to generate page information based on the canvas elements that are set to be visible in the user's second terminal device; being not visible in the user's second terminal device may indicate that the server may not generate page information based on the canvas elements that are set to be invisible in the user's second terminal device.
[0110] As an implementation manner, optionally, in the embodiment of this specification, the first canvas element is of the second element type; and creating the second canvas having a mapping relationship with the first canvas element according to the element type specifically includes: creating a second canvas having a mapping relationship with the first canvas element and comprising two or more sub-canvas pages; different sub-canvas pages correspond to different judgment results.
[0111] In the embodiment of this specification, the number of sub-canvas pages contained in the second canvas corresponds to the number of judgment results of the judgment logic executed after the first canvas element is triggered. It is understandable that one judgment result corresponds to one sub-canvas page. The second canvas elements contained in different sub-canvas pages are usually not exactly the same. Furthermore, the second canvas elements contained in different sub-canvas pages may also be canvas elements with some of the same parts. The designer can perform a second canvas creation operation on the first canvas element of the second element type, so that the first terminal device responds to the designer's second canvas creation operation and creates a second canvas containing two or more sub-canvas pages that has a mapping relationship with the first canvas element.
[0112] In actual applications, for a first canvas element of a certain second element type, the judgment logic corresponding to the first canvas element is determined, and the number of sub-canvas pages in the created second canvas can also be determined. For example, the first canvas element is to query the rainfall in the user's area. Through the judgment logic, eight regions can be obtained, including North China, South China, Central China, East China, Northwest China, Southwest China, Northeast China, Hong Kong, Macao and Taiwan, and a second canvas with eight sub-canvas pages can be obtained.
[0113] As an implementation manner, optionally, the creation of a second canvas having a mapping relationship with the first canvas element and comprising two or more sub-canvas pages described in the embodiment of this specification specifically includes: determining the number of sub-canvas pages according to the judgment logic corresponding to the first canvas element of the second element type; and creating a second canvas having a mapping relationship with the first canvas element and comprising the number of sub-canvas pages.
[0114] In the embodiment of this specification, determining the number of sub-canvas pages may include identifying keyword information in the judgment logic, and determining the number of sub-canvas pages based on the keyword information. For example, if the keyword in the judgment logic is whether, the number of sub-canvas pages can be determined to be two or three, etc. If there are two sub-canvas pages, it can include sub-canvas pages corresponding to "yes" and "no", respectively. If there are three sub-canvas pages, it can include sub-canvas pages corresponding to "yes", "no" and "cannot be determined". For another example, if the keyword in the judgment logic is region, the number of sub-canvas pages can be determined to be four, five or eight, etc. For another example, if the keyword in the judgment logic is growth stage, the number of sub-canvases can be determined to be two, five or seven, etc. It can be understood that if multiple keywords are involved in the judgment logic, they can be superimposed based on the number of sub-canvas pages corresponding to the keywords. For example, if the keywords are whether and growth stage, the number of sub-canvases is the product of the number of sub-canvas pages corresponding to the keywords and the number of sub-canvas pages corresponding to the growth stage, such as the product of two and seven is fourteen.
[0115] In actual applications, if the second canvas is created by the designer based on the first canvas creation operation, the first canvas creation operation may include a setting operation for the number of sub-canvas pages in the second canvas. Creating a second canvas that has a mapping relationship with the first canvas element and includes two or more sub-canvas pages may specifically include: obtaining the first canvas creation operation performed in an area outside the first canvas; determining a preset number of sub-canvas pages in the second canvas based on the setting operation for the number of sub-canvas pages in the first canvas creation operation; and creating a second canvas with a preset number of sub-canvas pages in response to the first canvas creation operation.
[0116] continue Figure 3 In the example, by executing the judgment logic on the canvas element "Is the user traffic used up" of the second element type in canvas 33, the judgment results can be obtained as the judgment results of the traffic being used up and the traffic not being used up, and then the number of sub-canvas pages can be determined to be 2. When creating a canvas 34 having a mapping relationship with the canvas element "Is the user traffic used up", a canvas 34 with two sub-canvas pages, a "used up" sub-canvas page and a "not used up" sub-canvas page, can be created.
[0117] As an implementation mode, optionally, in the embodiment of this specification, the second canvas includes a switchable first sub-canvas page and a second sub-canvas page; and, the second canvas includes a first switch control corresponding to the first sub-canvas page and a second switch control corresponding to the second sub-canvas page; after the creation of the second canvas including two or more sub-canvas pages having a mapping relationship with the first canvas element, it also includes: obtaining an operation for the first switch control, displaying the first sub-canvas page corresponding to the first switch control; obtaining a third operation for the first sub-canvas page, and creating a third canvas element belonging to the first sub-canvas page in the second canvas.
[0118] In the embodiment of this specification, the first switching control may include preset information, such as the first judgment result information obtained after executing the judgment logic; or it may only be a control for switching pages, such as left and right buttons. The operation for the first switching control may be a single click, a slide, a double click, a long press, and the like. The third operation may be an operation such as clicking a third canvas element, editing a third canvas element, dragging a third canvas element, and the like. The third canvas element may be a canvas element of the first element type, such as a control type, which may have a mapping relationship with a canvas having a single canvas page; it may also be a canvas element of the second element type, such as a built-in service type, which may have a mapping relationship with a canvas having two or more sub-canvas pages; it may also be a canvas element of the third element type, such as a text box type, which may only display text in the first sub-canvas page, and has no mapping relationship with any canvas. The third canvas element may also contain one or more of the above-mentioned types of canvas elements; the third canvas element may also contain one or more canvas elements of the same type. The creation of the third canvas element may be designed based on actual needs, and is not specifically limited here. The second canvas may display name information of each sub-canvas page, and the name of the sub-canvas page may be determined based on a judgment result corresponding to the judgment logic.
[0119] continue Figure 3 For example, in canvas 34, if the result of the judgment is that the flow has been used up, the name of the sub-canvas page can be "used up"; if the result of the judgment is that the flow has not been used up, the name of another sub-canvas page can be "not used up". In actual application, the sub-canvas page currently being displayed can be highlighted. For example, a black dot can be used to mark the sub-canvas page currently being displayed "used up" for highlighting. If it is necessary to switch the sub-canvas page "used up" to the sub-canvas page "not used up", the switch control represented by the area where the word "not used up" is located can be switched to display the sub-canvas page "not used up".
[0120] In actual applications, if the second canvas contains three sub-canvas pages, the operation for the second switch control can also be obtained to display the second sub-canvas page corresponding to the second switch control; the fourth operation for the second sub-canvas page is obtained to create a fifth canvas element belonging to the first sub-canvas page in the second canvas. One switch control can correspond to one sub-canvas page, and the number of switch controls can be set based on the number of sub-canvas pages in the second canvas. Use two switch controls to switch multiple sub-canvas pages, such as right-clicking, and the name of the sub-canvas page in the second canvas can be located on the right side of the name of the sub-canvas page currently being displayed. It can be understood that the displayed sub-canvas page can be determined based on the operation for the switch control, and then the canvas element in the sub-canvas page can be created in response to the operation of creating a canvas element for the sub-canvas page.
[0121] As an implementation mode, optionally, before creating a second canvas element belonging to the second canvas in response to the second operation in the embodiment of this specification, it also includes: displaying the second canvas; displaying a mapping relationship line between the first canvas element and the second canvas for representing the mapping relationship; the starting end of the mapping relationship line is connected to the first canvas element, and the end of the mapping relationship line is connected to the second canvas, and the mapping relationship line is used to indicate that the operation associated with the canvas element in the second canvas is executed when the first canvas element is triggered.
[0122] In the embodiment of this specification, the side connected to the starting end of the mapping relationship line can represent a canvas element that can be triggered by the user; the other side connected to the end of the mapping relationship line can represent the canvas that carries the logic execution result after the service area corresponding to the canvas element executes the logic.
[0123] In actual applications, if a first canvas creation operation performed by a designer is obtained, a second canvas that can be displayed to the designer is created in response to the first canvas creation operation; if a mapping relationship establishment operation performed by the designer is obtained, a mapping relationship between the first canvas element and the second canvas is established in response to the mapping relationship creation operation, and a mapping relationship line between the first canvas element and the second canvas for representing the mapping relationship can be displayed to the designer.
[0124] In actual applications, if a second canvas creation operation performed by a designer is obtained, on the one hand, in response to the second canvas creation operation, a second canvas that can be displayed to the designer is created; on the other hand, in response to the second canvas creation operation, a mapping relationship between the first canvas element and the second canvas is established, and a mapping relationship line between the first canvas element and the second canvas for representing the mapping relationship can be displayed to the designer.
[0125] In the embodiments of the present specification, the mapping relationship between the canvas element and the canvas may be directional, specifically, it may represent a mapping relationship from the canvas element to the canvas. In practical applications, the mapping relationship from the canvas element to the canvas may be used to reflect that when the user triggers the canvas element, the canvas having a mapping relationship with the triggered canvas element may be determined based on the mapping relationship, or the canvas element in the canvas having a mapping relationship with the triggered canvas element may be directly determined, and then the page information determined based on the canvas element in the canvas may be fed back to the user.
[0126] As an implementation manner, optionally, the creating a second canvas element belonging to the second canvas in response to the second operation described in the embodiments of this specification specifically includes: in response to the dragging operation of dragging the element template into the second canvas, creating a second canvas element corresponding to the element template in the second canvas.
[0127] In the embodiment of this specification, if the second canvas element is of the first element type, the designer can edit the text related to the service acceptance logic executed by the second canvas element in the second canvas element. For example, the logic executed after the second canvas element is triggered is traffic query, and the words of querying traffic can be edited in the second canvas element. If the second canvas element is of the second element type, the second canvas element can be set, and there is no need to edit the text. The designer can directly drag the second canvas element to the second canvas. For example, the second canvas element of the second element type used to execute the judgment logic has been edited with texts such as judging the rainfall in the user's area, judging whether the user's traffic has been used up, or judging the reading materials suitable for the user's age group. If the second canvas element is of the third element type, the designer can edit some fixed texts in the second canvas element, which are not related to the service acceptance logic, such as "Hello, you can choose the following options" or "OK" and other texts.
[0128] In actual applications, for the second canvas element of the first element type or the third element type, the designer may first edit the text in the second canvas element and then drag the second canvas element to the second canvas; or, the designer may first drag the second canvas element to the second canvas and then edit the text of the second canvas element.
[0129] As an implementation mode, optionally, in response to the dragging operation of dragging the element template into the second canvas, creating a second canvas element corresponding to the element template in the second canvas in response to the dragging operation of dragging the element template into the second canvas in the embodiment of this specification specifically includes: in response to the dragging operation of dragging the element template into the second canvas, creating an element frame in the second canvas; obtaining copy information input for the element frame; based on the element frame and the copy information, generating a second canvas element of the same element type as the element template; the same element type includes at least one of the first element type and the third element type; the canvas element of the first element type is used to generate a page control carrying the copy information for display to the user after being called; the canvas element of the third element type is used to generate the copy information for display to the user after being called.
[0130] In the embodiment of this specification, the element template may include element frames of various shapes, such as rounded rectangles, right-angled rectangles, triangles, circles, ellipses, rhombuses, hexagons, bubbles, and other shapes. The copy information may be determined by the designer based on the services that need to be provided, such as "weather query", "package query", "historical transaction details query" and other services; or designed by the designer based on common phrases, such as "hello", "ok", "no problem", "goodbye", etc. In actual applications, page controls can be triggered by users; copy information is only displayed to users and cannot be operated by users. Different element templates can correspond to canvas elements of different element types, such as right-angled rectangles can correspond to canvas elements of the third element type, and rounded rectangles can correspond to canvas elements of the first element type. It can be understood that this is only an example, and the corresponding relationship between different element templates and element canvases of different element types can be set based on the habits of designers or the aesthetics of canvases, etc., and is not specifically limited here.
[0131] In actual applications, the designer can obtain an element frame after dragging the element template to the second canvas, and edit the text in the element frame to obtain a second canvas element with the text; or the designer can first edit the text information in the second canvas element, drag the element template to the second canvas to obtain the element frame, and then drag the edited text information into the element frame to obtain a second canvas element with the text; or the designer can determine the target element template for creating the element frame at the element template, edit the text of the target element template, and drag the target element template with text to the second canvas.
[0132] In actual applications, in the canvas element of the first element type, if the element attribute is user-visual, a page control carrying the text information for display to the user may be generated after being called; if the element attribute is user-non-visual, a page control carrying the text information for display to the user may not be generated after being called. Thus, some canvas elements of the first element type can be set as non-visual elements, avoiding too many page controls for display to the user generated based on the canvas elements in the canvas due to too many canvas elements in the canvas, which brings a bad experience to the user.
[0133] In the embodiments of this specification, a second canvas element of the second element type can also be created. However, since the canvas element of the second element type itself does not need to be displayed to the user, there is no need to set the text information for the canvas element of the second element type. In actual applications, canvas elements of different second element types can correspond to different templates. Designers can determine the template of the canvas element of the corresponding second element type based on design requirements and drag it to the canvas to complete the setting of the canvas element; or, canvas elements of different second element types can correspond to the same template. After the designer can drag the template corresponding to the canvas element of the second element type to the canvas, the designer can edit or bind the specific properties of the template to represent the specific service content of the canvas element of the second element type, and then distinguish the built-in services that need to be executed by canvas elements of different second element types.
[0134] As an implementation mode, optionally, in response to the dragging operation of dragging the element template into the second canvas, after creating a second canvas element corresponding to the element template in the second canvas in the embodiment of this specification, it also includes: obtaining attribute information set for the second canvas element; the attribute information includes first attribute information or second attribute information; the first attribute information is used to indicate that the second canvas element generates a page control for display to the user after being called; the second attribute information is used to indicate that the second canvas element does not need to generate a page control for display to the user after being called; and the attribute information is associated with the second canvas element and stored.
[0135] In the embodiments of this specification, canvas elements with different attributes can be represented by different element templates. Specifically, a first element template is used to represent a second canvas element with a first attribute, and a second element template is used to represent a second canvas element with a second attribute, such as using a rounded rectangle to represent a second canvas element with a first attribute, and using a rhombus to represent a second canvas element with a second attribute. The same element template can also be used in different forms to represent the second canvas element, such as using a solid rounded rectangle to represent a second canvas element with a first attribute, and using a dotted rounded rectangle to represent a second canvas element with a second attribute. If the second canvas contains several second canvas elements, the designer can classify the several second canvas elements after completing the creation of each second canvas element, and set the first attribute information together for each second canvas element belonging to the first attribute category, and set the second attribute information together for each second canvas element belonging to the second attribute category; or, set the first attribute information one by one for each second canvas element belonging to the first attribute category, and set the second attribute information one by one for each second canvas element belonging to the second attribute category.
[0136] In actual applications, the designer can set the attribute information for the second canvas element of the first element type, which can be set before or after the second canvas element is completed.
[0137] In actual application, the first terminal device may also obtain the attribute information set for the element frame of the second canvas element. The attribute information may be set before or after the element frame is created.
[0138] As an implementation manner, optionally, the second canvas element in the embodiment of this specification includes at least one of a canvas element of the first element type, a canvas element of the second element type, or a canvas element of the third element type; wherein the second canvas element of the first element type is used to be placed in a triggerable state after being called; the triggerable state is used to indicate that, in response to a user's dialog information that meets preset conditions, a canvas element in a canvas having a mapping relationship with the second canvas element can be called; the second canvas element of the second element type is used to execute a preset judgment logic to obtain a judgment result after being called, and perform an operation associated with the canvas element corresponding to the judgment result; the second canvas element of the third element type is used to generate text information for display to the user after being called.
[0139] In the embodiments of this specification, the trigger state may indicate the state in which the service undertaking logic corresponding to the canvas element is being executed, or the state in which the service undertaking logic corresponding to the canvas element is about to be executed, or the state in which the service undertaking logic corresponding to the canvas element has been executed. The dialogue information that meets the preset conditions may indicate the trigger operation performed by the user on the dialogue information, such as the user inputting the dialogue information, the user clicking on the dialogue information, etc.
[0140] In the embodiment of this specification, the second canvas element of the second element type may not be displayed on the user's second terminal device, but the preset judgment logic may be executed. The second canvas element of the third element type has no corresponding service acceptance logic and cannot be operated by the user, and is only used to display copy information to the user.
[0141] In actual applications, the second canvas element of the first element type can also be used to generate a page control carrying text information for display to the user after being called; or it can not generate a page control carrying text information for display to the user after being called. For the second canvas element of the second element type, the triggering of the second canvas element can indicate the process of determining the second canvas element based on the user's operation on the first canvas element, or indicate the process of calling the second canvas element based on the user's operation on the first canvas element.
[0142] As an implementation manner, optionally, the method described in the embodiment of this specification also includes: obtaining a reverse mapping relationship establishment operation performed on an established fourth canvas element and an established third canvas; the fourth canvas element does not belong to the third canvas; the creation time of the third canvas is earlier than the fourth canvas element; and in response to the reverse mapping relationship establishment operation, establishing a reverse mapping relationship between the fourth canvas element and the third canvas.
[0143] In the embodiments of this specification, the fourth canvas element may be a canvas element of the first element type. The time when the first terminal device creates the canvas carrying the fourth canvas element is after the time when the third canvas is created; or the first terminal device creates the canvas carrying the fourth canvas element after creating the third canvas. In practical applications, the creation order between the two canvases may be an adjacent order, such as after creating the third canvas and the canvas elements in the canvas, creating a fourth canvas carrying the fourth canvas element with a mapping relationship with the sixth canvas element based on the sixth canvas element in the third canvas; the creation order between the two canvases may also be a non-adjacent order, such as after creating the third canvas and the canvas elements in the canvas, creating a fifth canvas with a mapping relationship based on the sixth canvas element in the third canvas, and creating a fourth canvas carrying the fourth canvas element with a mapping relationship with the seventh canvas element based on the seventh canvas element in the fifth canvas.
[0144] In the embodiment of this specification, the reverse mapping relationship may represent the mapping relationship established between the fourth canvas element executing the return-related service acceptance logic and the third canvas, such as the canvas element indicating returning to the home page, the canvas element indicating returning to the previous level, etc.
[0145] continue Figure 3 For example, the canvas element "knows" in canvas 34 can have a reverse mapping relationship with canvas 32. If the user operates the page control generated based on the canvas element "knows", the server can determine the canvas element in canvas 32 based on the reverse mapping relationship and generate page information, and can send the page information to the second terminal device.
[0146] As an implementation mode, optionally, after the reverse mapping relationship between the fourth canvas element and the third canvas is established in response to the reverse mapping relationship establishment operation in the embodiment of this specification, it also includes: displaying a reverse mapping relationship line between the fourth canvas element and the third canvas for representing the reverse mapping relationship; the starting end of the reverse mapping relationship line is connected to the fourth canvas element, and the end of the reverse mapping relationship line is connected to the third canvas, and the reverse mapping relationship line is used to indicate that the operation associated with the canvas element in the third canvas is executed when the fourth canvas element is triggered.
[0147] In the embodiments of this specification, the mapping relationship connection line may be a first line type; the reverse mapping relationship connection line may be a second line type. The first line type and the second line type are different line types. For example, the first line type may be a solid line, and the second line type may be a dotted line. This allows designers to more intuitively distinguish which are mapping relationship connections and which are reverse mapping relationship connections, thereby improving the design convenience of designers.
[0148] In the embodiments of this specification, for the mapping relationship connection, the canvas element connected to the starting end is the first generated canvas element, and the canvas connected to the end is the canvas created based on the first generated canvas element. For the reverse mapping relationship connection, the canvas element connected to the starting end is the canvas element generated later, and the canvas connected to the end is the canvas created before the creation time of the canvas element connected to the starting end. The creation order between canvas elements and canvases can represent the order of the canvas elements displayed by the user during the conversation, such as displaying the first canvas element first, and after triggering the first canvas element, displaying the second canvas element in the second canvas. Therefore, what the reverse mapping relationship reflects is that the user can return to a previous node during the conversation, such as after the user triggers the fourth canvas element, return to the node corresponding to the previously displayed third canvas. Specifically, after the user triggers the fourth canvas element, the sixth canvas element in the third canvas that has been displayed in the previous conversation flow is displayed again.
[0149] Figure 4 A flowchart of a method for sending page information provided in an embodiment of this specification.
[0150] From a program perspective, the execution subject of the process can be a target program installed on a server or an intelligent customer service platform. From a hardware perspective, the execution subject of the process can be a server or an intelligent customer service platform. It can be understood that the method can be executed by any device, equipment, platform, or device cluster with computing and processing capabilities.
[0151] like Figure 4 As shown, the process may include the following steps:
[0152] Step 402: receiving dialog information sent by a user terminal and provided by the user in response to the first page information displayed by the user terminal.
[0153] The first page information is generated based on at least one canvas element in a configuration file of the target program.
[0154] The dialogue information described in the embodiments of this specification includes at least one of dialogue text information input by the user, voice information input by the user, or user intention information determined based on the user's touch operation on the page control displayed by the user terminal. The first page information may be data generated based on all canvas elements in the first canvas. Further, the first page information may be data generated based on user-visualized canvas elements in the first canvas. The dialogue text information may represent at least one of text information and picture information input by the user on the second terminal device used by the user; the touch operation may be a click operation of the user on the page control. The page control may represent a canvas element contained in the first page information that can execute the service acceptance logic, such as a canvas element of the first element type and a canvas element of the second element type.
[0155] User intent can represent the inner needs or purposes expressed by users through natural language. Intent can be seen as the meaning behind user messages, which is the core description of the actions that users want to perform or the information they want to obtain. For example, in the interaction with the server, when a user says "What will the weather be like in Beijing tomorrow?", the intention behind it is to query "Beijing's weather information tomorrow". By parsing and identifying the user's intent, the server can provide accurate and relevant services.
[0156] In practical applications, the canvas element of the first element type or the second element type can be triggered. Specifically, the canvas element of the first element type can be triggered in response to the dialog information that meets the requirements input by the user; the canvas element of the second element type can be triggered when the canvas to which it belongs is called, or in other words, it can be triggered after the upstream canvas element of the canvas is triggered.
[0157] Step 404: Determine a first canvas element triggered by the dialog information from the canvas to which the at least one canvas element belongs.
[0158] In the embodiments of this specification, the process of the target program determining the first canvas element corresponding to the user's intention based on the dialogue information input by the user can be called "triggering" the first canvas element. Alternatively, the corresponding first canvas element can be determined based on the user's operation on the dialogue information displayed in the first page information. The specific operation is, for example, the user clicks on the dialogue information representing the first canvas element in the first page information, and the user inputs one or more of the voice information, picture information, and text information representing the first canvas element on the user terminal. This enables the server to determine the first canvas element triggered by the user based on the user's operation.
[0159] Step 406: Determine, according to the configuration file, a second canvas element that has a mapping relationship with the first canvas element.
[0160] In the embodiment of this specification, the server or target program can call the second canvas element having a mapping relationship with the first canvas element according to the first canvas element corresponding to the user's intention. In practical applications, canvas elements of the first element type, the second element type or the third element type can all be called.
[0161] Step 408: Generate second page information for display to the user based on the second canvas element.
[0162] In the embodiments of this specification, the process of determining the second page information based on the second canvas element after the server or target program determines the first canvas element in response to the user's trigger and determines the second canvas element that has a mapping relationship with the first canvas element can be referred to as "executing" the second canvas element. The second page information can be generated based on the data related to the second canvas element contained in the configuration file, such as data representing the content of the second canvas element, data representing the element type of the second canvas element, data representing the service acceptance logic executed by the second canvas element, etc. For canvas elements of different element types, different operation processes are executed. For example, displaying text information to the user, displaying controls to the user, displaying text information and / or page controls to the user after executing the judgment logic, etc.
[0163] Step 410: Send the second page information to the user terminal.
[0164] In the embodiment of this specification, the user terminal may be the second terminal device mentioned above. The second page information may be a second canvas element of the first attribute that can be displayed to the user. After receiving the second page information, the user terminal may render the second page information to the interface of the user terminal for the user to view.
[0165] As an implementation mode, optionally, before receiving the dialog information provided by the user in response to the first page information displayed by the user terminal and sent by the user terminal in the embodiment of this specification, it also includes: receiving a session request for a target program sent by the user terminal; obtaining a configuration file of the target program in response to the session request; generating the first page information according to the configuration file; and sending the first page information to the user terminal.
[0166] In the embodiments of this specification, the session request can be generated by the user's operation on the target program. Specifically, the user terminal obtains the user's operation of clicking the customer service logo of the target program or the link or advertisement for providing customer service to the user, generates a session request based on the user's click operation and sends it to the server; or the user terminal obtains the user's operation of scanning a code image, generates a session request based on the code image scanned by the user and sends it to the server; or the user terminal obtains the user's shortcut key operation, generates a session request based on the shortcut key operation and sends it to the server, etc. The generation of the session request can be set here based on actual needs. It can be understood that the session can also be initiated by the target program, such as sending a pop-up window message to the user terminal.
[0167] In the embodiments of the present specification, the session request may include identification information of the target program so that the server can determine the configuration file of the target program based on the identification information of the target program. Specifically, the configuration file may also include identification information of the target program. The server may perform matching based on the identification information of the target program and use the configuration file whose identification information contained in the configuration file is consistent with the identification information of the target program in the session request as the target configuration file, so as to execute the dialogue process based on the target configuration file.
[0168] Generating the first page information according to the configuration file may specifically include: obtaining data of the first canvas element in the first canvas corresponding to the target program from the configuration file; generating the first page information based on the data of the first canvas element. The first page information may also be generated based on data such as the first canvas element and other canvas elements in the first canvas. Alternatively, the configuration file may pre-set information that needs to be sent to the user when the session starts, such as a greeting message, or information predicting the user's needs, or several set option information, etc., and the set information is used as the first page information and sent to the user terminal. In actual applications, the user terminal may render the first page based on the first page information so as to display the corresponding information to the user.
[0169] As an implementation mode, optionally, the dialogue information in the embodiments of this specification includes at least one of dialogue text information or voice information input by the user; the determining the first canvas element triggered by the dialogue information from the canvas to which the at least one canvas element belongs specifically includes: using a natural language processing model to determine, from at least one canvas element of the first element type in the canvas to which the at least one canvas element belongs, a dialogue meaning expressed by the dialogue information; Figure 1 The first canvas element.
[0170] In the embodiments of this specification, the natural language processing model can be a model that can understand, parse, generate and interact with human natural language, such as a neural network language model, a large language model, a multimodal model, etc., which can perform natural language processing. The server can also use other natural language processing technologies to determine the dialogue intention expressed by the dialogue information, such as NLP, NLU, etc. Natural language processing technology can enable the machine to recognize the intention, entity, relationship, etc. in the text or voice through algorithms and technologies such as lexical analysis, syntactic analysis, semantic understanding, sentiment analysis, etc., and then realize information extraction, automatic question and answer, machine translation, dialogue system and other applications, which can be better combined with intelligent customer service to provide users with good customer service. Intelligent customer service refers to the use of artificial intelligence technology, including natural language processing (NLP), speech recognition, machine learning, deep learning, etc., to simulate the functions of human customer service representatives to achieve automatic interaction with users and provide service customer service. The data contained in the configuration file in the embodiments of this specification can be the service acceptance logic that the intelligent customer service can provide for the user's consultation, such as canvas elements, the mapping relationship between canvas elements, etc.
[0171] In order to more clearly illustrate the interaction between the user and the intelligent dialogue system, Figure 3 As an example, the interaction between the user and the intelligent dialogue system can be as follows: Figure 5 shown. Figure 5 A schematic diagram of page information displayed on a user terminal is provided for an embodiment of this specification.
[0172] like Figure 5 As shown, the information displayed in the dotted box 51 may be the first page information, and the user may perform operations on the dialog information in the first page information. Optionally, the operation performed by the user on the control carrying the text information "Click to view my package balance" may be a click operation. Figure 5 Arrows are used to indicate the controls to which the user's actions are directed.
[0173] The information displayed in the dotted box 52 may include the second page information obtained from the server based on the dialog information of "check my package balance". In actual application, if the service information desired by the user is not displayed in the second page information, as an example, the user can enter text information such as "traffic" on the second terminal device; in actual application, the user can also enter voice information to trigger the service.
[0174] The information displayed in the dotted box 53 may include the third page information obtained from the server based on the dialogue information "traffic". The third page information may include the server executing the preset judgment logic of the canvas element of the built-in service type based on the dialogue information "traffic", such as "Has the user traffic run out?", and the canvas element in the sub-canvas page corresponding to the corresponding judgment logic execution result obtained from the configuration file is generated, such as the copy information "Your traffic is insufficient, XXX" and the page control carrying the copy information "Purchase traffic package" and the page control carrying the copy information "Got it". The third page information may also include the page control corresponding to the "traffic type" generated based on the first type of canvas element in the configuration file that belongs to the same canvas as the canvas element of the built-in service type.
[0175] In the information displayed in the dotted box 53, "OK, start querying traffic" can belong to the same canvas as the canvas element of the built-in service type as "Traffic category"; "Your traffic is insufficient, XX", "Purchase a traffic package" and "Got it" can be generated based on the canvas elements in the sub-canvas page corresponding to the judgment results of the canvas element of the built-in service type.
[0176] like Figure 5 In the example above, a conversation between a user and an intelligent conversation robot may involve multiple rounds of dialogue, which will not be listed here. Multiple rounds of dialogue can mean that the user and the intelligent conversation system (such as a chatbot, virtual assistant, etc.) can exchange information continuously and in multiple rounds to complete a more complex task or a task that needs to be refined step by step.
[0177] In actual applications, the server can generate page information based on the execution order of each canvas element in the configuration file, such as setting the third type of canvas elements as the first execution order, setting the second type of canvas elements as the second execution order, and setting the first type of canvas elements as the third execution order; further, the display order on the user's second terminal device can be determined based on the execution order, such as first displaying the third type of canvas elements in the canvas on the second terminal device, and then displaying the canvas elements in the canvas that have a mapping relationship with the second type of canvas elements, and then displaying the first type of canvas elements in the canvas. In actual applications, the order in which the designer sets the elements in the canvas can also be used as the execution order, or the order in which the canvas elements are arranged in the canvas can be used as the execution order, without the need to preset the execution order separately.
[0178] continue Figure 3 and Figure 5For example, in canvas 33, the execution order of the canvas element "OK, start querying traffic" takes precedence over the execution order of the canvas element "Is the user traffic used up?", and the execution order of the canvas element "Is the user traffic used up?" takes precedence over the execution order of the canvas element "Traffic type." After the user enters the text information of "traffic" in the second page, the server can identify the user's intention, determine the canvas element "traffic" corresponding to the "traffic" entered by the user from the configuration file, and determine the canvas element in canvas 33 to which the canvas element "traffic" has a mapping relationship. Based on the execution order, page information can be generated based on "OK, start querying traffic" and sent to the second terminal device for display; the server can also execute judgment logic based on the canvas element of "Is the user's traffic used up" in canvas 33, determine the canvas element of the corresponding sub-canvas page "used up" in canvas 34 based on the judgment result that the user's traffic is used up, generate page information based on the canvas element of the sub-canvas page "used up" and send it to the second terminal device for display, and also determine from the configuration file the canvas element in canvas 33 that is later than "Is the user's traffic used up" to generate page information and send it to the second terminal device for display.
[0179] In actual applications, operations associated with canvas elements may include:
[0180] For a target canvas element of the first element type, if the attribute of the target canvas element is user-visible, a page control corresponding to the target canvas element and carrying text information for display to the user may be generated; the page control is used to receive a touch operation of the user. If the attribute of the target canvas element is user-non-visual, there is no need to generate a page control corresponding to the target canvas element and carrying text information for display to the user.
[0181] In actual application, when a canvas element of the first element type is provided, the user can trigger the canvas element of the first element type regardless of whether the page control corresponding to the canvas element of the first element type is displayed to the user. For example, the user can provide dialogue information to the target program in a manner other than touching the page control, for example, by inputting text, inputting voice, etc. For the target program or server, the dialogue information provided by the user can be obtained through a variety of methods such as text input by the user, voice, touch operation performed by the user, and then the target canvas element that the user wants to trigger is determined based on the dialogue information. Continuation Figure 3 and Figure 5 For example, Figure 3 The properties of the first element type canvas element "View my package balance" designed by the designer are visible to the user, and the server can generate a display to the user. Figure 5The page control of "View my package balance" in the , the user can trigger the page control by clicking or providing text or voice information. Figure 3 The properties of the first element type of canvas element "flow" designed by the designer are non-visible to the user, and the server may not generate a page control displayed to the user, as shown in the following example. Figure 5 As shown, the user enters the dialog information of "flow", which triggers Figure 3 The service acceptance logic corresponding to the canvas element of "traffic" in canvas 32.
[0182] For the target canvas element of the second element type, the preset judgment logic associated with the target canvas element is executed to obtain a judgment result, and the operation associated with the canvas element in the sub-canvas page corresponding to the judgment result in the canvas associated with the target canvas element is executed according to the judgment result. In actual application, it is usually not necessary to display information used to represent the canvas element of the second element type to the user. Figure 3 and Figure 5 For example, in the configuration file, the server can directly execute the corresponding judgment logic without generating a page control. Figure 5 The page information is displayed.
[0183] The target canvas element may also be a canvas element of a third element type, such as a canvas element that is displayed to the user but does not have service acceptance logic. For the target canvas element of the third element type, text information corresponding to the target canvas element and used for displaying to the user is generated. Figure 3 and Figure 5 For example, Figure 3 The canvas element of the third element type in the canvas 31 is "Hello, XXXX". The server can directly generate page information based on "Hello, XXXX" and display it in Figure 5 The text dialogue message "Hello, XXXX" in the page information cannot be operated by the user.
[0184] In order to more clearly illustrate a method for generating a configuration file of a target program and sending page information provided in an embodiment of this specification, Figure 6 A swimlane diagram of a method for generating a configuration file of a target program and sending page information provided in an embodiment of this specification. Figure 6 As shown, the solution may include a configuration phase and an application phase, which may specifically include:
[0185] The first terminal device executes step 602: obtaining a second canvas creation operation performed on a first canvas element in the first canvas.
[0186] Step 604: In response to the second canvas creation operation, determine the element type of the first canvas element.
[0187] Step 606: If the first canvas element is of the first element type, create a second canvas having a single canvas page and having a mapping relationship with the first canvas element.
[0188] Step 608: If the first canvas element is of the second element type, create a second canvas having a mapping relationship with the first canvas element and including two or more sub-canvas pages.
[0189] Step 610: Display a mapping relationship line between the first canvas element and the second canvas element for representing the mapping relationship.
[0190] Step 612: In response to a dragging operation of dragging an element template into the second canvas, a second canvas element corresponding to the element template is created in the second canvas.
[0191] Step 614: Generate a configuration file of the target program based on the first canvas element, the mapping relationship, and the second canvas element.
[0192] In the embodiment of this specification, a reverse mapping relationship between a fourth canvas element having a reverse mapping relationship and a sixth canvas element in the third canvas can also be designed, and a configuration file of the target program can be generated based on the first canvas element, the mapping relationship, the second canvas element, the fourth canvas element, the reverse mapping relationship, and the sixth canvas element.
[0193] The configuration file may be sent to the server so that the server executes step 616: storing the configuration file of the target program.
[0194] The second terminal device may execute step 618: receiving a trigger operation of a user for a dialog with the target program.
[0195] In the embodiment of this specification, the trigger operation may be an operation in which a user clicks on a customer service icon.
[0196] Step 620: In response to the trigger operation, a request for obtaining information of the first page of the target dialog is sent to the server.
[0197] The first page information acquisition request is sent to the server to execute step 622: in response to the first page information acquisition request, a conversation profile matching the target conversation is searched.
[0198] Step 624: Provide the first page information in the dialog configuration file to the user terminal.
[0199] Step 626: The user terminal displays the first page information.
[0200] Step 628: Accept the user's dialogue operation.
[0201] The dialogue operation in the embodiments of this specification may be an operation of dialogue text information input by a user, an operation of voice information input by a user, or a touch operation based on a page control displayed by the user on the user terminal.
[0202] Step 630: In response to the dialog operation, a second page information acquisition request containing dialog information is sent to the server.
[0203] The server may receive the second page information acquisition request to execute step 632: receiving the dialog information sent by the user terminal and provided by the user in response to the first page information displayed by the user terminal.
[0204] Step 634: Determine a first canvas element triggered by the dialog information from the canvas to which at least one canvas element belongs.
[0205] Step 636: Determine, according to the configuration file, a second canvas element that has a mapping relationship with the first canvas element.
[0206] Step 638: Generate the page information for displaying to the user based on the second canvas element.
[0207] Step 640: Send the second page information to the user terminal.
[0208] Step 642: The user terminal displays the second page information.
[0209] The above steps have similar or identical technical features to the aforementioned method of configuring a configuration file of the target program or the method of sending page information, and reference may be made to the aforementioned description, which will not be repeated here.
[0210] The various technical features in the above embodiments can be combined arbitrarily as long as there is no conflict or contradiction between the combinations of features. However, due to space limitations, they are not described one by one. Therefore, any combination of the various technical features in the above embodiments also falls within the scope of this specification.
[0211] On the one hand, the embodiments of this specification use a highly intuitive and modular tool set for designing canvases, mapping relationships, canvas elements, and reverse mapping relationships, so that designers with non-technical backgrounds can easily and quickly configure and generate high-quality configuration files without having a deep understanding of NLP technology or professional domain knowledge.
[0212] Secondly, in the embodiments of this specification, designers only need to use graphics drawing to design the dialogue process on the graphical interface without writing complex codes, and can efficiently build multi-round dialogue artificial intelligence applications. This method significantly reduces the difficulty of development, improves efficiency, and makes the development of artificial intelligence dialogue systems simpler and more intuitive.
[0213] On the third aspect, the embodiments of this specification can closely meet the needs of specific fields and provide highly optimized design strategies for intelligent customer service systems, making the process of building dialogue logic in specific fields both efficient and accurate.
[0214] Fourthly, in the embodiments of this specification, for complex scenarios involving multiple conditional branches, a canvas element of a built-in service type can be used to draw a canvas element, so that the canvas element of the built-in service type can execute preset judgment logic, corresponding to multiple conditional branches, reducing the difficulty of implementing multiple conditional branches.
[0215] Based on the same idea, the embodiments of this specification also provide a device corresponding to the method for generating a configuration file of a target program.
[0216] Figure 7 The embodiments of this specification provide corresponding to Figure 2 A structural diagram of a device for generating a configuration file of a target program.
[0217] like Figure 7 As shown, the device may include:
[0218] A canvas creation module 702, configured to create, in response to the first operation, a second canvas having a mapping relationship with a first canvas element in the first canvas;
[0219] A canvas element creation module 704, configured to create a second canvas element belonging to the second canvas in response to a second operation;
[0220] The configuration file generation module 706 is used to generate a configuration file of the target program based on the first canvas element, the mapping relationship and the second canvas element; the target program is used to, in response to the dialogue information for triggering the first canvas element provided by the user after receiving the first page information corresponding to the first canvas, feedback the second page information generated based on the second canvas element to the user based on the mapping relationship in the configuration file.
[0221] based on Figure 7 The present specification also provides some specific implementation schemes of the device, which are described below.
[0222] Optionally, the canvas creation module may be specifically used for:
[0223] Obtaining a first canvas creation operation performed in an area outside the first canvas;
[0224] In response to the first canvas creation operation, create a second canvas;
[0225] Obtaining a mapping relationship establishment operation performed on the first canvas element and the second canvas;
[0226] In response to the mapping relationship establishment operation, a mapping relationship between the first canvas element and the second canvas is established.
[0227] Optionally, the canvas creation module may specifically include:
[0228] A second canvas creation operation acquiring unit, configured to acquire a second canvas creation operation executed on a first canvas element in the first canvas;
[0229] The second canvas creating unit is configured to create a second canvas having a mapping relationship with the first canvas element in response to the second canvas creating operation.
[0230] Optionally, the first canvas element carries an operable control; and the second canvas creation operation acquisition unit may be specifically used to:
[0231] Gets the touch operation of the operable control carried by the first canvas element in the first canvas.
[0232] Optionally, the second canvas creating unit may specifically include:
[0233] an element type determination subunit, configured to determine the element type of the first canvas element in response to the second canvas creation operation; the element type includes a first element type or a second element type; the canvas element of the first element type is configured to execute an operation associated with the canvas element in the second canvas after being triggered; the canvas element of the second element type is configured to execute a preset judgment logic to obtain a judgment result after being triggered, and execute an operation associated with the canvas element in the second canvas corresponding to the judgment result;
[0234] The second canvas creation subunit is used to create the second canvas having a mapping relationship with the first canvas element according to the element type.
[0235] Optionally, the first canvas element is of a first element type; and the second canvas creation subunit may be specifically used for:
[0236] A second canvas having a single canvas page and having a mapping relationship with the first canvas element is created.
[0237] Optionally, the first canvas element is of a second element type; the second canvas creation subunit may be specifically used for:
[0238] A second canvas including two or more sub-canvas pages having a mapping relationship with the first canvas element is created; different sub-canvas pages correspond to different judgment results.
[0239] Optionally, the second canvas creation subunit may be specifically used for:
[0240] determining the number of sub-canvas pages according to the judgment logic corresponding to the first canvas element of the second element type;
[0241] A second canvas is created that has a mapping relationship with the first canvas element and contains the sub-canvas pages of the number of sub-canvas pages.
[0242] Optionally, the second canvas includes a switchable first sub-canvas page and a second sub-canvas page; and the second canvas includes a first switch control corresponding to the first sub-canvas page and a second switch control corresponding to the second sub-canvas page;
[0243] The second canvas creation subunit can be specifically used for:
[0244] Acquire an operation on a first switching control, and display a first sub-canvas page corresponding to the first switching control;
[0245] A third operation for the first sub-canvas page is obtained, and a third canvas element belonging to the first sub-canvas page in the second canvas is created.
[0246] Optionally, the device further includes a display module, which can be specifically used for:
[0247] displaying the second canvas;
[0248] A mapping relationship line is displayed between the first canvas element and the second canvas for representing the mapping relationship; a starting end of the mapping relationship line is connected to the first canvas element, and an end of the mapping relationship line is connected to the second canvas, and the mapping relationship line is used to indicate that an operation associated with the canvas element in the second canvas is executed when the first canvas element is triggered.
[0249] Optionally, the canvas element creation module may be specifically used for:
[0250] In response to a dragging operation of dragging an element template into the second canvas, a second canvas element corresponding to the element template is created in the second canvas.
[0251] Optionally, the canvas element creation module may be specifically used for:
[0252] In response to a dragging operation of dragging an element template into the second canvas, creating an element frame in the second canvas;
[0253] Obtaining text information input for the element framework;
[0254] Based on the element framework and the copy information, a second canvas element of the same element type as the element template is generated; the same element type includes at least one of the first element type and the third element type; the canvas element of the first element type is used to generate a page control carrying the copy information for display to the user after being called; the canvas element of the third element type is used to generate the copy information for display to the user after being called.
[0255] Optionally, the canvas element creation module may be specifically used for:
[0256] Acquire attribute information set for the second canvas element; the attribute information includes first attribute information or second attribute information; the first attribute information is used to indicate that the second canvas element generates a page control for displaying to the user after being called; the second attribute information is used to indicate that the second canvas element does not need to generate a page control for displaying to the user after being called;
[0257] The attribute information is associated with the second canvas element and stored.
[0258] Optionally, the second canvas element includes at least one of a canvas element of the first element type, a canvas element of the second element type, or a canvas element of the third element type;
[0259] The second canvas element of the first element type is used to be placed in a triggerable state after being called; the triggerable state is used to indicate that, in response to a user's dialog information that meets a preset condition, a canvas element in a canvas having a mapping relationship with the second canvas element can be called;
[0260] The second canvas element of the second element type is used to execute a preset judgment logic to obtain a judgment result after being called, and to perform an operation associated with the canvas element corresponding to the judgment result;
[0261] The second canvas element of the third element type is used to generate text information for display to the user after being called.
[0262] Optionally, the device further includes a reverse mapping relationship establishing module, which can be specifically used to:
[0263] Acquire a reverse mapping relationship establishment operation performed on an established fourth canvas element and an established third canvas; the fourth canvas element does not belong to the third canvas; the creation time of the third canvas is earlier than that of the fourth canvas element;
[0264] In response to the inverse mapping relationship establishing operation, an inverse mapping relationship between the fourth canvas element and the third canvas is established.
[0265] Optionally, the reverse mapping relationship establishing module may be specifically used for:
[0266] A reverse mapping relationship line is displayed between the fourth canvas element and the third canvas for representing the reverse mapping relationship; a starting end of the reverse mapping relationship line is connected to the fourth canvas element, and an end of the reverse mapping relationship line is connected to the third canvas, and the reverse mapping relationship line is used to indicate that an operation associated with the canvas element in the third canvas is executed when the fourth canvas element is triggered.
[0267] It is understood that the above modules refer to computer programs or program segments for executing one or more specific functions. In addition, the distinction between the above modules does not mean that the actual program codes must also be separated.
[0268] The above is a schematic scheme of a device for generating a configuration file of a target program in this embodiment. It should be noted that the technical scheme of the device for generating a configuration file of a target program and the technical scheme of the method for generating a configuration file of a target program belong to the same concept, and the details of the technical scheme of the device for generating a configuration file of a target program that are not described in detail can all be referred to the description of the technical scheme of the method for generating a configuration file of a target program.
[0269] Based on the same idea, the embodiments of this specification also provide a device corresponding to the above method.
[0270] Figure 8 The embodiments of this specification provide corresponding to Figure 4 A structural diagram of a device for sending page information.
[0271] like Figure 8 As shown, the device may include:
[0272] A dialog information receiving module 802 is used to receive dialog information sent by a user terminal and provided by a user for first page information displayed by the user terminal; the first page information is generated based on at least one canvas element in a configuration file of a target program;
[0273] A first canvas element determining module 804, configured to determine a first canvas element triggered by the dialog information from the canvas to which the at least one canvas element belongs;
[0274] A second canvas element determining module 806, configured to determine, according to the configuration file, a second canvas element having a mapping relationship with the first canvas element;
[0275] A page information generating module 808, configured to generate second page information for display to a user based on the second canvas element;
[0276] The page information sending module 810 is used to send the second page information to the user terminal.
[0277] based on Figure 8 The present specification also provides some specific implementation schemes of the device, which are described below.
[0278] Optionally, the device further includes a first page information sending module, which can be specifically used to:
[0279] Receiving a session request for a target program sent by a user terminal;
[0280] In response to the session request, obtaining a configuration file of the target program;
[0281] Generate first page information according to the configuration file;
[0282] The first page information is sent to the user terminal.
[0283] Optionally, the dialogue information includes at least one of dialogue text information input by the user, voice information input by the user, or user intention information determined based on a touch operation of the user on a page control displayed on the user terminal.
[0284] Optionally, the dialogue information includes at least one of dialogue text information or voice information input by the user; the first canvas element determination module may be specifically used to:
[0285] Using a natural language processing model, determining, from at least one canvas element of the first element type in the canvas to which the at least one canvas element belongs, a conversation meaning expressed by the conversation information Figure 1 The first canvas element.
[0286] It is understood that the above modules refer to computer programs or program segments for executing one or more specific functions. In addition, the distinction between the above modules does not mean that the actual program codes must also be separated.
[0287] The above is a schematic scheme of a device for sending page information of this embodiment. It should be noted that the technical scheme of the device for sending page information and the technical scheme of the method for sending page information above belong to the same concept, and the details not described in detail in the technical scheme of the device for sending page information can be referred to the description of the technical scheme of the method for sending page information above.
[0288] Based on the same idea, the embodiment of this specification also provides a server corresponding to the above method.
[0289] Fig. 9 This is a schematic diagram of the structure of a terminal device provided in an embodiment of this specification. Fig. 9 As shown, the device 900 may include:
[0290] at least one processor 910; and,
[0291] A memory 930 in communication with the at least one processor; wherein,
[0292] The memory 930 stores instructions 920 that can be executed by the at least one processor 910. The instructions are executed by the at least one processor 910 to enable the at least one processor 910 to:
[0293] In response to the first operation, creating a second canvas having a mapping relationship with the first canvas element in the first canvas;
[0294] In response to a second operation, creating a second canvas element belonging to the second canvas;
[0295] A configuration file of a target program is generated based on the first canvas element, the mapping relationship, and the second canvas element; the target program is used to, in response to a dialog message for triggering the first canvas element provided by a user after receiving first page information corresponding to the first canvas, feedback second page information generated based on the second canvas element to the user based on the mapping relationship in the configuration file.
[0296] Based on the same idea, the embodiments of this specification also provide a terminal device corresponding to the above method.
[0297] Fig.10 This is a schematic diagram of the structure of a server provided in an embodiment of this specification. Fig.10 As shown, the device 1000 may include:
[0298] at least one processor 1010; and,
[0299] A memory 1030 in communication with the at least one processor; wherein,
[0300] The memory 1030 stores instructions 1020 executable by the at least one processor 1010. The instructions are executed by the at least one processor 1010 to enable the at least one processor 1010 to:
[0301] Receiving dialogue information sent by a user terminal and provided by a user for first page information displayed by the user terminal; the first page information is generated based on at least one canvas element in a configuration file of a target program;
[0302] Determine a first canvas element triggered by the dialog information from the canvas to which the at least one canvas element belongs;
[0303] Determine, according to the configuration file, a second canvas element having a mapping relationship with the first canvas element;
[0304] generating second page information for displaying to a user based on the second canvas element;
[0305] The second page information is sent to the user terminal.
[0306] Based on the same idea, the embodiment of this specification also provides a computer readable medium corresponding to the above method. The computer readable medium stores computer readable instructions, which can be executed by a processor to implement the steps of the method for generating a configuration file of a target program or the method for sending page information.
[0307] The above is a schematic scheme of a computer-readable storage medium of this embodiment. It should be noted that the technical scheme of the storage medium and the technical scheme of the method for generating a configuration file of a target program or the method for sending page information are of the same concept, and the details not described in detail in the technical scheme of the storage medium can be found in the description of the technical scheme of the method for generating a configuration file of a target program or the method for sending page information.
[0308] An embodiment of the present specification also provides a computer program product, including a computer program or instructions, which, when executed by a processor, implements the steps of the method for generating a configuration file of a target program or the method for sending page information.
[0309] The above is a schematic scheme of a computer program product of this embodiment. It should be noted that the technical scheme of the computer program product and the technical scheme of the method for generating a configuration file of a target program or the method for sending page information are of the same concept, and the details not described in detail in the technical scheme of the computer program product can be referred to the description of the technical scheme of the method for generating a configuration file of a target program or the method for sending page information.
[0310] Each embodiment in this specification is described in a progressive manner, and the same or similar parts between the embodiments can be referred to each other. Each embodiment focuses on the differences from other embodiments. In particular, for the device and equipment embodiments, since they are basically similar to the method embodiments, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiments. The devices, equipment and methods provided in the embodiments of this specification correspond to each other, so the devices and equipment also have beneficial technical effects similar to the corresponding methods. Since the beneficial technical effects of the methods have been described in detail above, the beneficial technical effects of the corresponding devices and equipment will not be repeated here.
[0311] The above describes specific embodiments of the present application. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recorded in the claims can be performed in an order different from that in the embodiments and still achieve the desired results. In addition, the processes depicted in the accompanying drawings do not necessarily require the specific order or continuous order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.
[0312] In the 1990s, improvements to a technology could be clearly distinguished as hardware improvements (for example, improvements to the circuit structure of diodes, transistors, switches, etc.) or software improvements (improvements to the method flow). However, with the development of technology, many improvements to the method flow today can be regarded as direct improvements to the hardware circuit structure. Designers almost always obtain the corresponding hardware circuit structure by programming the improved method flow into the hardware circuit. Therefore, it cannot be said that an improvement in a method flow cannot be implemented using a hardware entity module. For example, a programmable logic device (PLD) (such as a field programmable gate array (FPGA)) is such an integrated circuit whose logical function is determined by the user's programming of the device. Designers can "integrate" a digital system on a PLD by programming it themselves, without having to ask a chip manufacturer to design and produce a dedicated integrated circuit chip. Moreover, nowadays, instead of manually making integrated circuit chips, this kind of programming is mostly implemented by "logic compiler" software, which is similar to the software compiler used when developing and writing programs, and the original code before compilation must also be written in a specific programming language, which is called hardware description language (HDL). There is not only one HDL, but many kinds, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, RHDL (Ruby Hardware Description Language), etc. The most commonly used ones are VHDL (Very-High-Speed Integrated Circuit Hardware Description Language) and Verilog. Those skilled in the art should also know that it is only necessary to program the method flow slightly in the above-mentioned hardware description languages and program it into the integrated circuit, and then it is easy to obtain the hardware circuit that implements the logic method flow.
[0313] The controller can be implemented in any appropriate manner, for example, the controller can take the form of a microprocessor or processor and a computer-readable medium storing a computer-readable program code (such as software or firmware) that can be executed by the (micro)processor, a logic gate, a switch, an application-specific integrated circuit (ASIC), a programmable logic controller, and an embedded microcontroller. Examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicone Labs C8051F320. The memory controller can also be implemented as part of the control logic of the memory. Those skilled in the art also know that in addition to implementing the controller in a purely computer-readable program code manner, the controller can be implemented in the form of a logic gate, a switch, an application-specific integrated circuit, a programmable logic controller, and an embedded microcontroller by logically programming the method steps. Therefore, this controller can be considered as a hardware component, and the devices included therein for implementing various functions can also be regarded as structures within the hardware component. Or even, the devices for implementing various functions can be regarded as both software modules for implementing the method and structures within the hardware component.
[0314] The systems, devices, modules or units described in the above embodiments may be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, the computer may be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.
[0315] For the convenience of description, the above device is described in various units according to their functions. Of course, when implementing the present application, the functions of each unit can be implemented in the same or multiple software and / or hardware.
[0316] Those skilled in the art will appreciate that embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, the present invention may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0317] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0318] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0319] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.
[0320] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.
[0321] The memory may include non-permanent storage in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. The memory is an example of a computer-readable medium.
[0322] Computer readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.
[0323] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.
[0324] The present application may be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform specific tasks or implement specific abstract data types. The present application may also be practiced in distributed computing environments where tasks are performed by remote processing devices connected through a communication network. In a distributed computing environment, program modules may be located in local and remote computer storage media, including storage devices.
[0325] The above is only an embodiment of the present application and is not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included in the scope of the claims of the present application.
Claims
1. A method for generating a configuration file of a target program, comprising: In response to the first operation, creating a second canvas having a mapping relationship with the first canvas element in the first canvas; In response to a second operation, creating a second canvas element belonging to the second canvas; A configuration file of a target program is generated based on the first canvas element, the mapping relationship, and the second canvas element; the target program is used to, in response to a dialog message for triggering the first canvas element provided by a user after receiving first page information corresponding to the first canvas, feedback second page information generated based on the second canvas element to the user based on the mapping relationship in the configuration file.
2. The method according to claim 1, wherein in response to the first operation, creating a second canvas having a mapping relationship with the first canvas element in the first canvas comprises: Obtaining a first canvas creation operation performed in an area outside the first canvas; In response to the first canvas creation operation, create a second canvas; Obtaining a mapping relationship establishment operation performed on the first canvas element and the second canvas; In response to the mapping relationship establishment operation, a mapping relationship between the first canvas element and the second canvas is established.
3. The method according to claim 1, wherein in response to the first operation, creating a second canvas having a mapping relationship with the first canvas element in the first canvas comprises: Get a second canvas creation operation performed on a first canvas element in a first canvas; In response to the second canvas creation operation, a second canvas having a mapping relationship with the first canvas element is created.
4. The method of claim 3, wherein: The first canvas element carries an operable control; and obtaining a second canvas creation operation performed on the first canvas element in the first canvas specifically includes: Gets the touch operation of the operable control carried by the first canvas element in the first canvas.
5. The method according to claim 3, wherein in response to the second canvas creation operation, creating a second canvas having a mapping relationship with the first canvas element specifically comprises: In response to the second canvas creation operation, determining an element type of the first canvas element; the element type includes a first element type or a second element type; The canvas element of the first element type is used to execute the operation associated with the canvas element in the second canvas after being triggered; the canvas element of the second element type is used to execute the preset judgment logic to obtain a judgment result after being triggered, and execute the operation associated with the canvas element in the second canvas corresponding to the judgment result; According to the element type, the second canvas having a mapping relationship with the first canvas element is created.
6. The method according to claim 5, wherein the first canvas element is of a first element type; and the step of creating the second canvas having a mapping relationship with the first canvas element according to the element type comprises: A second canvas having a single canvas page and having a mapping relationship with the first canvas element is created.
7. The method according to claim 5, wherein the first canvas element is of a second element type; and the step of creating the second canvas having a mapping relationship with the first canvas element according to the element type comprises: Creating a second canvas having a mapping relationship with the first canvas element and including two or more sub-canvas pages; Different sub-canvas pages correspond to different judgment results.
8. The method according to claim 7, wherein the step of creating a second canvas having a mapping relationship with the first canvas element and comprising two or more sub-canvas pages comprises: determining the number of sub-canvas pages according to the judgment logic corresponding to the first canvas element of the second element type; A second canvas is created that has a mapping relationship with the first canvas element and contains the sub-canvas pages of the number of sub-canvas pages.
9. The method of claim 7, wherein the second canvas comprises a switchable first sub-canvas page and a second sub-canvas page; and the second canvas comprises a first switch control corresponding to the first sub-canvas page and a second switch control corresponding to the second sub-canvas page; After the second canvas including two or more sub-canvas pages and having a mapping relationship with the first canvas element is created, the method further includes: Acquire an operation on a first switching control, and display a first sub-canvas page corresponding to the first switching control; A third operation for the first sub-canvas page is obtained, and a third canvas element belonging to the first sub-canvas page in the second canvas is created.
10. The method according to claim 1, before creating a second canvas element belonging to the second canvas in response to the second operation, further comprising: displaying the second canvas; Displaying a mapping relationship connection line between the first canvas element and the second canvas element for representing the mapping relationship; The starting end of the mapping relationship connection is connected to the first canvas element, and the end of the mapping relationship connection is connected to the second canvas. The mapping relationship connection is used to indicate that an operation associated with the canvas element in the second canvas is executed when the first canvas element is triggered.
11. The method according to claim 1, wherein in response to the second operation, creating a second canvas element belonging to the second canvas comprises: In response to a dragging operation of dragging an element template into the second canvas, a second canvas element corresponding to the element template is created in the second canvas.
12. The method according to claim 11, wherein in response to a dragging operation of dragging an element template to the second canvas, creating a second canvas element corresponding to the element template in the second canvas, specifically comprises: In response to a dragging operation of dragging an element template into the second canvas, creating an element frame in the second canvas; Obtaining text information input for the element framework; Based on the element framework and the copy information, a second canvas element of the same element type as the element template is generated; the same element type includes at least one of the first element type and the third element type; the canvas element of the first element type is used to generate a page control carrying the copy information for display to the user after being called; the canvas element of the third element type is used to generate the copy information for display to the user after being called.
13. The method of claim 11, wherein after creating a second canvas element corresponding to the element template in the second canvas in response to a dragging operation of dragging the element template into the second canvas, the method further comprises: Obtaining attribute information set for the second canvas element; The attribute information includes first attribute information or second attribute information; The first attribute information is used to indicate that the second canvas element generates a page control for displaying to the user after being called; the second attribute information is used to indicate that the second canvas element does not need to generate a page control for displaying to the user after being called; The attribute information is associated with the second canvas element and stored.
14. The method of claim 1, wherein the second canvas element comprises at least one of a canvas element of a first element type, a canvas element of a second element type, or a canvas element of a third element type; in, The second canvas element of the first element type is used to be placed in a triggerable state after being called; the triggerable state is used to indicate that a canvas element in a canvas having a mapping relationship with the second canvas element can be called in response to a user's dialog information that meets a preset condition; The second canvas element of the second element type is used to execute a preset judgment logic to obtain a judgment result after being called, and to perform an operation associated with the canvas element corresponding to the judgment result; The second canvas element of the third element type is used to generate text information for display to the user after being called.
15. The method of claim 1, further comprising: Acquire a reverse mapping relationship establishment operation performed on the established fourth canvas element and the established third canvas; The fourth canvas element does not belong to the third canvas; The creation time of the third canvas element is earlier than that of the fourth canvas element; In response to the inverse mapping relationship establishing operation, an inverse mapping relationship between the fourth canvas element and the third canvas is established.
16. The method according to claim 15, after establishing the reverse mapping relationship between the fourth canvas element and the third canvas in response to the reverse mapping relationship establishment operation, further comprising: displaying a reverse mapping relationship connection line between the fourth canvas element and the third canvas element for indicating the reverse mapping relationship; The starting end of the reverse mapping relationship connection line is connected to the fourth canvas element, and the end of the reverse mapping relationship connection line is connected to the third canvas. The reverse mapping relationship connection line is used to indicate that when the fourth canvas element is triggered, an operation associated with the canvas element in the third canvas is executed.
17. A method for sending page information, comprising: Receiving dialogue information sent by a user terminal and provided by a user in response to first page information displayed by the user terminal; The first page information is generated based on at least one canvas element in a configuration file of the target program; Determine a first canvas element triggered by the dialog information from the canvas to which the at least one canvas element belongs; Determine, according to the configuration file, a second canvas element having a mapping relationship with the first canvas element; generating second page information for displaying to a user based on the second canvas element; The second page information is sent to the user terminal.
18. The method according to claim 17, before receiving the dialog information sent by the user terminal and provided by the user in response to the first page information displayed by the user terminal, further comprising: Receiving a session request for a target program sent by a user terminal; In response to the session request, obtaining a configuration file of the target program; Generate first page information according to the configuration file; The first page information is sent to the user terminal.
19. The method of claim 17, wherein: The dialogue information includes at least one of dialogue text information input by a user, voice information input by a user, or user intention information determined based on a touch operation of a user on a page control displayed on the user terminal.
20. The method of claim 17, wherein the dialog information comprises at least one of dialog text information or voice information input by a user; and the determining, from the canvas to which the at least one canvas element belongs, the first canvas element triggered by the dialog information comprises: A natural language processing model is used to determine, from at least one canvas element of a first element type in the canvas to which the at least one canvas element belongs, a first canvas element that is consistent with the dialogue intention expressed by the dialogue information.
21. A device for generating a configuration file of a target program, comprising: A canvas creation module, configured to create, in response to the first operation, a second canvas having a mapping relationship with a first canvas element in the first canvas; A canvas element creation module, configured to create a second canvas element belonging to the second canvas in response to a second operation; A configuration file generation module is used to generate a configuration file of a target program based on the first canvas element, the mapping relationship and the second canvas element; the target program is used to, in response to a dialog message for triggering the first canvas element provided by a user after receiving first page information corresponding to the first canvas, feedback second page information generated based on the second canvas element to the user based on the mapping relationship in the configuration file.
22. A device for sending page information, comprising: A dialogue information receiving module, used for receiving dialogue information sent by a user terminal and provided by a user in response to the first page information displayed by the user terminal; The first page information is generated based on at least one canvas element in a configuration file of the target program; A first canvas element determining module, configured to determine a first canvas element triggered by the dialog information from the canvas to which the at least one canvas element belongs; A second canvas element determining module, configured to determine, according to the configuration file, a second canvas element having a mapping relationship with the first canvas element; A page information generating module, configured to generate second page information for display to a user based on the second canvas element; The page information sending module is used to send the second page information to the user terminal.
23. A terminal device, comprising: at least one processor; as well as, a memory communicatively connected to the at least one processor; wherein, The memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to: In response to the first operation, creating a second canvas having a mapping relationship with the first canvas element in the first canvas; In response to a second operation, creating a second canvas element belonging to the second canvas; A configuration file of a target program is generated based on the first canvas element, the mapping relationship, and the second canvas element; the target program is used to, in response to a dialog message for triggering the first canvas element provided by a user after receiving first page information corresponding to the first canvas, feedback second page information generated based on the second canvas element to the user based on the mapping relationship in the configuration file.
24. A server, comprising: at least one processor; as well as, a memory communicatively connected to the at least one processor; wherein, The memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to: Receiving dialogue information sent by a user terminal and provided by a user for first page information displayed by the user terminal; the first page information is generated based on at least one canvas element in a configuration file of a target program; Determine a first canvas element triggered by the dialog information from the canvas to which the at least one canvas element belongs; Determine, according to the configuration file, a second canvas element having a mapping relationship with the first canvas element; generating second page information for displaying to a user based on the second canvas element; The second page information is sent to the user terminal.