Interaction method, interaction system, electronic device, storage medium, and program product
By displaying interactive controls for the management application within the chat interface of the instant messaging application, users can directly obtain interaction results without switching applications. This solves the problems of low operational efficiency and poor user experience between instant messaging applications and management applications, and achieves efficient data querying and interaction.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- CONTINENTAL SMART CORE TECH (SHANGHAI) CO LTD
- Filing Date
- 2026-01-06
- Publication Date
- 2026-07-03
AI Technical Summary
Users frequently switch between instant messaging and management applications, resulting in low operational efficiency and a poor user experience, as they cannot directly query data from the management application within the instant messaging application.
By displaying interactive controls for managing the application within the chat interface of an instant messaging application, users can input commands and manipulate the interactive controls directly in the chat interface to obtain the interaction results without switching applications.
It improves operational efficiency and user experience, lowers the barrier to entry and learning cost, and enables users to directly query and manage application data within instant messaging applications.
Smart Images

Figure CN121455375B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of terminal technology, and in particular to an interaction method, an interaction system, an electronic device, a storage medium, and a program product. Background Technology
[0002] With the rapid development of technologies such as cloud computing and the Internet of Things, various management applications have demonstrated significant advantages in areas such as data management and resource allocation. For example, the Jira system, used for project management and issue tracking... TM This allows project teams to create, assign, and track tasks and issues within a project, enabling the team to manage project status (such as defects, progress, or improvements) in a unified manner, and making project data more centrally and systematically displayed or stored.
[0003] However, users using commonly used instant messaging applications (such as Lark) TM When communicating with other users about a project, if a user needs to query data through the management application, they must switch from the instant messaging application to the management application to log in. Then, after retrieving the data in the management application, they must switch back to the instant messaging application to communicate with other users. This process involves many steps, resulting in low efficiency and a poor user experience.
[0004] Therefore, how to integrate instant messaging applications and management applications so that users can access data from the management application directly within the instant messaging application without switching applications is a problem that urgently needs to be solved. Summary of the Invention
[0005] This application provides an interaction method, interaction system, electronic device, storage medium, and program product, enabling users to interact with the corresponding interactive controls of the management application directly in the instant messaging application to obtain interaction results without switching applications.
[0006] In a first aspect, this application provides an interaction method applied to an electronic device, the method comprising: displaying a chat interface of an instant messaging application; detecting a first command input by a user in the chat interface, and displaying an interactive control of a corresponding management application in a dialog area of the chat interface; detecting an interaction operation by the user on the interactive control, and displaying the interaction result of the corresponding interaction operation in the dialog area.
[0007] This allows for seamless integration between instant messaging and management applications. When users need to retrieve data through the management application, they can directly interact with the corresponding interactive controls in the instant messaging application to obtain the results. In other words, this method eliminates the need for frequent switching between instant messaging and management applications, reducing operational steps and improving both efficiency and user experience.
[0008] In one possible implementation of the first aspect above, the interactive control includes a first information receiving area and an analysis sub-control; the detection of user interaction with the interactive control and the display of the corresponding interaction result in the dialog area includes: receiving query information described in natural language in the first information receiving area, and detecting user triggering operation on the analysis sub-control; displaying the interaction result of the corresponding query information in the dialog area, wherein the interaction result includes at least one of the query result, analysis result, or query failure information of the corresponding query information.
[0009] In this way, users do not need to write code query statements for management applications. They can directly enter query information described in natural language in the instant messaging application to obtain query results. Users do not need to learn or write query statements, which reduces the threshold for use and the learning cost.
[0010] In one possible implementation of the first aspect above, the method further includes: generating interactive results based on query information.
[0011] In one possible implementation of the first aspect above, the interaction result includes the analysis result corresponding to the query information; and the above-mentioned generating the interaction result based on the query information includes: generating at least one query statement based on the query information; calling the management application to execute at least one query statement to obtain the query result corresponding to each query statement; and analyzing and processing the query result to obtain the analysis result.
[0012] In one possible implementation of the first aspect above, generating at least one query statement based on query information includes: generating at least one query requirement based on keywords in the query information; and converting the at least one query requirement into a query statement corresponding to each query requirement according to a preset conversion rule.
[0013] In this way, users do not need to write code query statements for management applications. They can directly enter query information described in natural language in the instant messaging application to obtain query results. Users do not need to learn or write query statements, which reduces the threshold for use and the learning cost.
[0014] In one possible implementation of the first aspect above, each query statement is used to obtain n query results, where n is a positive integer; the above-mentioned calling the management application to execute at least one query statement to obtain the query results corresponding to each query statement includes: calling the management application to execute each query statement respectively; when i query results corresponding to each query statement are obtained, calling the management application to execute each query statement to obtain n query results corresponding to each query statement, where i is a positive integer less than or equal to n.
[0015] In this way, by limiting the number of query results returned by each query statement when validating each query statement, validation time can be saved and validation efficiency can be improved.
[0016] In one possible implementation of the first aspect above, the interaction result also includes query failure information; the method includes: if i query results corresponding to the first query statement in the query statement are not obtained, displaying query failure information corresponding to the first query statement in the dialog area.
[0017] In one possible implementation of the first aspect above, the query results include project information and management object identifiers, whereby the management object identifiers are used to identify the management object of the project information in the management application; the above-mentioned analysis and processing of the query results to obtain analysis results includes: performing statistical processing on the project information based on the management object identifiers to obtain analysis results corresponding to each management object identifier; the above-mentioned displaying the interactive results of the corresponding query information in the dialog area includes: determining the session object corresponding to each management object identifier in the instant messaging application; prompting the session object corresponding to each management object identifier in the dialog area, and displaying the analysis results corresponding to each management object identifier in the dialog area.
[0018] This allows each person under management to be aware of the status of the projects they are responsible for.
[0019] In one possible implementation of the first aspect above, the above-mentioned analysis and processing of the query results to obtain the analysis results includes: performing grouping and statistical processing on the query results based on preset grouping rules to obtain the analysis results; the above-mentioned interactive results of displaying the corresponding query information in the dialog area include: displaying the analysis results in the dialog area.
[0020] In this way, when the analysis results after grouping and statistical analysis according to the grouping rules are displayed in the dialog area, users can more intuitively understand the project status of each project module or the project that each person in charge is responsible for.
[0021] In one possible implementation of the first aspect described above, the interactive control further includes a second information receiving area; the aforementioned detection of user interaction with the interactive control and display of the corresponding interaction result in the dialog area includes: receiving a query statement in a preset format in the second information receiving area, and detecting a user trigger operation on the analysis sub-control; displaying the interaction result of the corresponding query statement in the dialog area, wherein the interaction result includes at least one of the query result, analysis result, or query failure information of the corresponding query information.
[0022] Secondly, this application also provides an interactive system, comprising: a first display module for displaying a chat interface of an instant messaging application; a first detection module for detecting a first command input by a user in the chat interface; and, upon detecting the first command, the first display module further for displaying an interactive control of a corresponding management application in the dialog area of the chat interface; a second detection module for detecting user interaction with the interactive control; and a second display module for displaying the interaction result of the corresponding interaction in the dialog area.
[0023] Thirdly, this application also provides an electronic device, comprising: at least one memory and at least one processor, wherein the memory is coupled to the processor; the memory is used to store computer program code / instructions; when the computer program code / instructions are executed by the processor, the electronic device performs the interaction methods mentioned in the first aspect and any possible implementation thereof.
[0024] Fourthly, this application also provides a readable storage medium storing instructions that, when executed on an electronic device, cause the electronic device to perform the interaction methods mentioned in the first aspect and any possible implementation thereof.
[0025] Fifthly, this application also provides a computer program product, comprising: computer instructions that, when executed on an electronic device, cause the electronic device to perform the interaction methods mentioned in the first aspect and any possible implementation thereof.
[0026] The beneficial effects of the second to fifth aspects mentioned above can be referred to the relevant descriptions in the first aspect and any possible implementation of the first aspect, which will not be repeated here. Attached Figure Description
[0027] Figure 1 According to some embodiments of this application, a user in Lark is shown. TM Platform and Jira system TM A diagram illustrating the process of switching between tasks;
[0028] Figure 2 According to some embodiments of this application, a flowchart of an interaction method is shown;
[0029] Figure 3A According to some embodiments of this application, a schematic diagram of an interface for triggering the Jira automatic analysis robot is shown;
[0030] Figure 3B According to some embodiments of this application, another schematic diagram of an interface for triggering the Jira automated analysis robot is shown;
[0031] Figure 4According to some embodiments of this application, a schematic diagram of an interface for adding a Jira automated analysis robot is shown;
[0032] Figure 5 According to some embodiments of this application, a schematic diagram of an interface for displaying interaction results is shown;
[0033] Figure 6 According to some embodiments of this application, a flowchart of another interaction method is shown;
[0034] Figure 7 According to some embodiments of this application, a schematic diagram of the structure of an interactive system is shown;
[0035] Figure 8 According to some embodiments of this application, a schematic diagram of the hardware structure of an electronic device is shown;
[0036] Figure 9 According to some embodiments of this application, a schematic diagram of the hardware structure of another electronic device is shown. Detailed Implementation
[0037] The illustrative embodiments of this application include, but are not limited to, an interaction method, an interaction system, an electronic device, a storage medium, and a program product.
[0038] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions in the embodiments of this application will be described in detail below with reference to the accompanying drawings and specific implementation methods.
[0039] As mentioned earlier, users using instant messaging applications (such as Lark) TM When communicating with other users about a project, if the user needs to use a management application (such as the Jira system), etc. TM To query data, users need to switch from the instant messaging application to the management application to log in. Then, after retrieving the data through the management application, they must switch back to the instant messaging application to continue communicating with other users. This process, due to its numerous steps, results in low efficiency and a poor user experience.
[0040] For example, Figure 1 This shows the user's experience on Lark. TM Platform and Jira system TM A diagram illustrating the process of switching between tasks.
[0041] like Figure 1 As shown, users typically use Lark. TM The platform facilitates communication, and when necessary, communication can be conducted through the Jira system. TM When querying data, users can open a browser to access the Jira system. TMInterface. Then, the user logs into the Jira system. TM Afterward, users can manually write Jira query language (JQL) statements to retrieve the corresponding data query results. For example, users can write the JQL query "project='Project A1' AND status!='Resolved'" to query the resolved issues in Project A1. Then, after obtaining the data query results, users can analyze them. Finally, users can switch to Lark. TM The platform allows query or analysis results to be sent to the relevant responsible parties.
[0042] The aforementioned process, due to its numerous steps, results in low operational efficiency and a poor user experience. Therefore, a pressing issue is how to seamlessly integrate instant messaging and management applications, allowing users to query data directly within the instant messaging application via the management application without switching between them.
[0043] To address the aforementioned problems, this application provides an interactive method. Specifically, the electronic device can display an instant messaging application (such as Lark). TM The electronic device displays a chat interface (e.g., a group chat interface) on the platform. Then, when the electronic device detects the first command entered by the user in the chat interface (e.g., @ the corresponding management application's conversation object in the chat interface), the electronic device can display the corresponding management application's interactive controls in the chat interface's dialog area. Next, when the electronic device detects the user's interaction with the interactive controls (e.g., entering query information in the interactive control's information receiving area and clicking the analysis sub-control), the electronic device can display the interaction result of the corresponding interaction in the dialog area (e.g., displaying the query report corresponding to the query information).
[0044] This allows for seamless integration between instant messaging and management applications. When users need to retrieve data through the management application, they can directly interact with the corresponding interactive controls in the instant messaging application to obtain the results. In other words, this method eliminates the need for frequent switching between instant messaging and management applications, reducing operational steps and improving both efficiency and user experience.
[0045] It should be noted that the instant messaging application mentioned in the embodiments of this application can be any application that can provide a chat interface. For example, Lark. TM ,WeChat TM WeChat for Business TM QQ TM Or DingTalk TM Any instant messaging application, etc. This application does not limit this.
[0046] It should also be noted that the management application mentioned in the embodiments of this application can be any application with functions such as data management, project management, or resource allocation. For example, the Jira system. TM Redmine system TM MySQL system TM or Oracle system TM Any management application, etc. This application does not limit this.
[0047] It should also be noted that the interaction method provided in this application can be applied to any electronic device, including but not limited to mobile stations (MS) and mobile terminals (MT). For example, electronic devices can be mobile phones, smart TVs, wearable devices, tablets, desktop computers, laptops, virtual reality (VR) devices, terminals in self-driving vehicles, terminals in remote medical surgery, terminals in smart grids, terminals in smart cities, terminals in smart homes, etc. This application does not limit the specific form of the electronic device.
[0048] The following is combined Figure 2 The flowchart shown illustrates the interaction method provided in the embodiments of this application. This method can be applied to electronic devices, such as the computers mentioned above. Figure 2 As shown, specifically, the method is as follows:
[0049] S201: Displays the chat interface of the instant messaging application.
[0050] In some embodiments, the instant messaging application may be Lark. TM ,WeChat TM WeChat for Business TM QQ TM Or DingTalk TM wait.
[0051] In some embodiments, the chat interface may be a group chat interface containing three or more people, or it may be a one-on-one chat interface containing two people.
[0052] S202: The first command entered by the user in the chat interface is detected, and the corresponding interactive control of the management application is displayed in the chat area of the chat interface.
[0053] In some embodiments, the first instruction may be an operation performed by the user in the chat area of the chat interface, where the @ symbol corresponds to the session object of the management application. For example, such as... Figure 3A As shown, the management application can be the Jira system. TM Corresponding to the Jira system TM The conversation partner can be the Jira Automated Analysis Bot. When electronic device 10 detects a user's action of mentioning the Jira Automated Analysis Bot in the chat area U11 of the chat interface U1, electronic device 10 can display the corresponding Jira system in the chat area U11. TM The interactive control U12.
[0054] It should be noted that the "@" operation mentioned in this application can refer to triggering, notifying, or prompting the @mention in a conversation. For example, when the @mention is a virtual contact such as a Jira automated analysis bot, it can be used to trigger the virtual contact to start working or to activate the virtual contact from standby mode. As another example, when the @mention is a real user, the instant messaging application's server can push the information corresponding to the @ operation (e.g., the information could be "XXX, @mention A") to the @mention, and the @mention will also receive a message notification to view the message.
[0055] In another embodiment, the first instruction can also be an operation by the user in the functional area of the chat interface, triggering the corresponding functional control of the management application. For example, such as... Figure 3B As shown, the management application can be the Jira system. TM Corresponding to the Jira system TM The functional control can be the Jira Auto-Analysis Robot Control 301. When the electronic device 10 detects that the user clicks on the Jira Auto-Analysis Robot Control 301 in the functional area U13 of the chat interface U1, the electronic device 10 can display the corresponding Jira system in the dialogue area U11. TM The interactive control U12.
[0056] It is understood that in some embodiments, in order for users to be able to call up the interactive controls of the corresponding management application by @session object or triggering functional controls, the electronic device needs to add the session object or functional controls of the corresponding management application to the chat ecosystem (such as group chat) where the chat interface is located in advance.
[0057] For example, Lark, a real-time communication application. TM For example, the session object or functional control of the corresponding management application can be a bot. Furthermore, electronic devices can add the session object or functional control of the corresponding management application to the chat ecosystem where the chat interface is located by adding a bot. For example, Figure 4As shown, when electronic device 10 detects a user clicking the group robot control 401 in the settings area U14 of the chat interface U1, electronic device 10 can display interface U2. Interface U2 includes robots already added to the current chat ecosystem (such as meeting assistants, group chat summaries, etc.) and a control 402 for adding robots. When electronic device 10 detects a user clicking the control 402 for adding robots, electronic device 10 can display interface U3 for adding robots. When electronic device 10 detects a user entering the name of the corresponding management application's session object or functional control (such as the Jira automatic analysis robot) in the input box 403 of interface U3, electronic device 10 can display robot settings interface U4. Robot settings interface U4 can be used to set the robot's avatar, name (such as the Jira automatic analysis robot), or description. Finally, when electronic device 10 detects a user clicking the add control 405 in robot settings interface U4, electronic device 10 can add the corresponding management application's session object or functional control to the chat ecosystem where the chat interface is located. This allows users to access the corresponding management application's functional controls within the chat ecosystem (such as group chats) by mentioning the conversation object or triggering functional controls.
[0058] S203: The user's interaction with the interactive control is detected, and the interaction result of the corresponding interaction is displayed in the dialog area.
[0059] In some embodiments, the interactive control may include a first information receiving area and an analysis sub-control. The electronic device can receive query information described in natural language based on the first information receiving area. Then, when the electronic device detects a user's trigger operation on the analysis sub-control, it can display the interaction result corresponding to the query information in the dialog area. For example, the interaction result may include at least one of the following: query result, analysis result, or query failure information corresponding to the query information.
[0060] For example, as mentioned above Figure 3A As shown, the interactive control U12 may include a request description input box 302 (as an example of a first information receiving area) and a start artificial intelligence (AI) analysis control 303 (as an example of an analysis sub-control). The electronic device 10 can receive query information described by the user in natural language through the request description input box 302. Then, when the electronic device 10 detects that the user clicks the start AI analysis control 303, the electronic device 10 can generate the corresponding interactive results of the query information and display them in the dialog area U11, such as displaying the query results or analysis results of the corresponding query information.
[0061] The following describes the process by which electronic devices generate corresponding interactive results based on user-input query information.
[0062] First, after detecting a user's trigger operation on the analysis sub-control, such as detecting a user clicking the start AI analysis control 303, the electronic device can generate at least one query statement based on the query information received in the first information receiving area. This query statement can be used for data querying in a management application. For example, in a Jira system management application... TM At that time, the electronic device can generate the corresponding JQL query statement "project='Project A1' AND status!='Unresolved'" based on the query information described by the user in natural language, such as "Please query the unresolved issues in project A1".
[0063] For example, in some embodiments, when generating a query statement based on query information, the electronic device can first generate at least one query request based on keywords in the query information. For instance, based on the user's query information described in natural language, "Hello, please help me find unresolved issues in Project v1.0," the electronic device generates a query request {request description: "unresolved issues in Project v1.0"}. Then, the electronic device can convert the generated at least one query request into a query statement corresponding to each query request according to preset conversion rules (such as field names or syntax corresponding to keywords). In this way, the electronic device can generate at least one query statement based on the query information input by the user. See the following text for details. Figure 6 The details described in S605 and S606 are not elaborated here.
[0064] Next, the electronic device can invoke the management application to execute at least one of the generated query statements to obtain the query results corresponding to each query statement. For example, in a Jira system where the management application is... TM At that time, electronic devices can input the generated JQL query statements into the Jira system. TM In the data query box, execute the JQL query statement and obtain the corresponding query results.
[0065] For example, in some embodiments, before the electronic device calls the management application to execute each query statement to obtain the corresponding query results, the electronic device can first verify each generated query statement. Only if the generated query statement is verified to be accurate will the electronic device execute each query statement to obtain the corresponding query results. Specifically, each query statement can correspond to n (n is a positive integer) query results. For example, when using the JQL query statement "project='Project A1' AND status!='Unresolved'" to query unresolved issues in Project A1, multiple query results can be obtained. Therefore, when verifying the generated query statements, the electronic device can first call the management application to execute each query statement separately. Then, if i (i is a positive integer less than or equal to n) query results are obtained for each query statement, it indicates that the query statement verification is successful. Furthermore, after the query statement verification is successful, the electronic device can call the management application to execute each query statement to obtain n query results corresponding to each query statement. The specific verification process can be referred to later. Figure 6 As described in S607 and S608, they will not be elaborated here.
[0066] Next, after obtaining the query results for each query statement, the electronic device can directly display the query results in the dialog area.
[0067] Alternatively, after obtaining the query results for each query statement, the electronic device can analyze and process the query results to obtain analysis results, and display the analysis results in the dialog area.
[0068] For example, the electronic device can group and statistically process the query results according to preset grouping rules to obtain analysis results, and display the analysis results in the dialog area. For instance, the obtained query results can be grouped and statistically processed according to the managed object (also known as the project leader) to obtain analysis results. In this way, when the analysis results grouped and statistically processed according to the managed object are displayed in the dialog area, each managed object can more intuitively understand the status of the project they are responsible for. In addition, the electronic device can also group and statistically process the query results based on other grouping rules (such as by project module) to obtain analysis results, which is not limited in this application.
[0069] For another example, since the query results may include project information (such as processing progress) and management object identifiers, which are used in management applications to identify the management object (also known as the project leader) of the project information, the electronic device can perform statistical processing on the project information based on the management object identifiers to obtain the analysis results corresponding to each management object identifier. Then, the electronic device can display the analysis results corresponding to each management object identifier in the dialog area. Furthermore, the electronic device can also identify the session object corresponding to each management object identifier in the instant messaging application and prompt the session object corresponding to each management object identifier in the dialog area.
[0070] This ensures that each person under management is aware of the status of the projects they are responsible for. For example, ... Figure 5 As shown, the analysis result 501 can be displayed in the dialogue area U11 of the chat interface U1. Furthermore, the electronic device 10 can also @ each managed object to identify the corresponding session object in the dialogue area U11, so that each managed object can be aware of the status of the project it is responsible for. In addition, when @ing each managed object to identify the corresponding session object, the number of query results related to that session object can also be displayed. For example, Figure 5 The @sessionobjectA(5) shown can indicate that there are 5 query results related to sessionobjectA; or, Figure 5 The @session object X (7) shown can indicate that there are 7 query results related to session object X.
[0071] Therefore, based on the above method, the electronic device can generate corresponding interactive results according to the query information entered by the user in the first information receiving area, and display the interactive results in the chat interface's dialogue area.
[0072] In other embodiments, in addition to the first information receiving area for receiving query information described in natural language, the interactive control may also include a second information receiving area. The electronic device can receive a query statement (such as a JQL query statement) in a preset format based on the second information receiving area. Then, when the electronic device detects a user's trigger operation on the analysis sub-control, it can display the interactive result corresponding to the query statement in the dialog area.
[0073] For example, as mentioned above Figure 3AAs shown, the interactive control U12 may include a JQL query input box 304 (as an example of a second information receiving area) and a start AI analysis control 303 (as an example of an analysis sub-control). The electronic device 10 can receive JQL query statements input by the user through the JQL query input box 304. Then, upon detecting a user clicking the start AI analysis control 303, the electronic device 10 can display the interaction results (such as a query report) in the dialog area U11.
[0074] In addition, as mentioned above Figure 3A As shown, the interactive control U12 may also include a cancel control 305. When the electronic device 10 detects that the user clicks the cancel control 305, the electronic device 10 can terminate the analysis operation of the query information or query statement.
[0075] It is understood that the query information received in the first information receiving area can be information described in natural language, while the query statement received in the second information receiving area can be information in a preset format. Therefore, in some embodiments, the electronic device can also display corresponding prompts in different information receiving areas so that the user can input different types of information in different information receiving areas. For example, in the above... Figure 3A In the process, the electronic device 10 can display relevant information such as "Please enter the query information in natural language" in the requirement description input box 302 to prompt the user to enter the query information in natural language; and the electronic device 10 can display relevant information such as "Please enter the JQL query statement" in the JQL query statement input box 304 to prompt the user to enter the JQL statement with a preset format.
[0076] In this way, the instant messaging application and the management application can be integrated, allowing users to directly interact with the corresponding interactive controls in the instant messaging application when they need to retrieve data through the management application. That is, data querying using this method eliminates the need for frequent switching between the instant messaging and management applications, reducing operational steps and improving operational efficiency and user experience. Furthermore, when querying data in the management application, users can directly input natural language descriptions in the instant messaging application to obtain query results, eliminating the need for users to learn or write query statements, thus lowering the barrier to entry and learning cost. Additionally, it enhances the usability of the management application for users who are not proficient in coding.
[0077] The following uses management applications as an example of the Jira system. TM And instant messaging applications for Lark TM Taking the platform as an example, combined with Figure 6The flowchart shown illustrates the interaction method provided in this application embodiment. This method can be applied to electronic devices, such as the aforementioned computer and other electronic devices. Figure 6 As shown, specifically, the method is as follows:
[0078] S601: Detects the first command entered by the user in the chat interface and displays the corresponding management application's interactive controls in the chat interface's dialogue area.
[0079] For example, as mentioned above Figure 3A As shown, the first instruction can be the user's operation of @jira in the chat area U11 of the chat interface U1, which automatically analyzes the robot.
[0080] For example, as mentioned above Figure 3B As shown, the first instruction can be the user clicking the jira auto-analysis robot control 301 in the functional area U13 of the chat interface U1.
[0081] S602: Receives query information entered by the user in the first information receiving area of the interactive control, and detects the user's trigger operation on the analysis sub-control.
[0082] For example, as mentioned above Figure 3A As shown, the interactive control U12 may include a demand description input box 302 (as an example of a first information receiving area) and a start AI analysis control 303 (as an example of an analysis sub-control). The electronic device 10 can receive query information described by the user in natural language through the demand description input box 302. Then, after detecting the user's click on the start AI analysis control 303, the electronic device 10 can start executing S603 to S614 below.
[0083] In some embodiments, to improve the interactive experience, after detecting a user's trigger operation on the analysis sub-control, the electronic device can display information such as "Analyzing in progress" before displaying the interaction result. This allows for immediate feedback to the user after they perform an interaction, informing them that the operation is currently being processed, thus enhancing the user experience.
[0084] It is understood that, in some embodiments, to enable the electronic device to listen to user messages in real time when the user uses interactive controls, a persistent connection can be established between the electronic device (i.e., the client) and the server of the instant messaging application. Thus, through the establishment of this persistent connection, the electronic device can receive and execute any interactive operation initiated by the user on the interactive controls until the user exits the instant messaging application. For example, in the case of the instant messaging application Lark... TM At that time, electronic devices can directly access Lark. TMThis application provides a WebSocket object to enable persistent connections between electronic devices and servers. The method used to implement persistent connections is not limited in this application.
[0085] S603: Displays information related to "Analyzing".
[0086] In some embodiments, to improve the interactive experience, after detecting a user's trigger operation on the analysis sub-control, the electronic device can display information such as "Analyzing in progress" before displaying the interaction result. This allows for immediate feedback to the user after they perform an interaction, informing them that the operation is currently being processed, thus enhancing the user experience.
[0087] S604: Start a background thread.
[0088] In some embodiments, after detecting a user's trigger operation on the analysis sub-control, the electronic device can start a background thread to execute the operation instruction, so as to generate the interaction result of the corresponding interaction operation through the background thread.
[0089] In some embodiments, this application does not limit the execution order of S603 and S604. For example, the electronic device may execute S603 first and then S604; or, the electronic device may execute S604 first and then S603; or, the electronic device may execute S603 and S604 simultaneously.
[0090] S605: Generate at least one query requirement corresponding to the query information.
[0091] In some embodiments, the electronic device can extract keywords from the query information. Then, it generates at least one query request based on each keyword.
[0092] For example, when extracting keywords and generating query requirements, the integrity of the original symbols in the query information can be maintained. Symbols such as hyphens "-", underscores "_", or periods "•" can remain unchanged. For instance, if the query information contains the keyword "A-Parking Perception_OCC", the original symbols must also be preserved when generating the query requirement. That is, the generated query requirement must also include "A-Parking Perception_OCC", and cannot be split into "Item A" and "Parking Perception_OCC" in the query requirement. In this way, by maintaining the integrity of the original symbols, the key elements in the query information are not arbitrarily changed, thus ensuring that the query requirement accurately describes the meaning expressed by the query information.
[0093] For another example, when extracting keywords and generating query requirements, the integrity of version numbers, personnel names, module names, or time information in the query information can be maintained. For instance, if the query information includes a version number, such as "a problem with a Fix Version of v1.0.0," the version number can be kept unchanged when generating the query requirement. That is, the generated query requirement can be {requirement description: a problem with a Fix Version of v1.0.0}, and cannot be a query requirement with the version number omitted, such as {requirement description: a problem with a Fix Version}. Similarly, if the query information includes a project module name, such as "finding a problem with the A-Parking Perception_OCC module," the project module name can be kept unchanged when generating the query requirement. That is, the generated query requirement can be {requirement description: a problem with the A-Parking Perception_OCC module}, and cannot be a query requirement obtained by modifying the project module name or deleting parts of the content, such as {requirement description: a problem with the parking perception module of project A}. In this way, by maintaining the integrity of version numbers, personnel names, module names, or time information, key elements in the query information are not arbitrarily changed, thus ensuring that the query requirement accurately describes the meaning expressed by the query information.
[0094] In some embodiments, each of the at least one query request generated by the electronic device can be an independent request that can be processed separately. However, if there are dependencies between the generated query requests, such as query request B being executed based on the query result of query request A only after query request A is completed, then the dependent query requests need to be split or regenerated into independent requests that can be processed separately. That is, each query request generated by the electronic device does not depend on the query results of other query requests during execution; the query requests can be executed simultaneously or sequentially in any order.
[0095] For example, if the query is "Query the problems in project A and find the problems belonging to submodule A1", the electronic device can generate two independent requirements that can be processed separately based on the keywords "project A, problem, submodule A1, problem" in the query: [{requirement description: problem in project A}, {requirement description: problem in submodule A1 of project A}]. However, it cannot generate two dependent requirements based on the query: [{requirement description: problem in project A}, {requirement description: the problem belonging to submodule A1 among the above problems}].
[0096] In this way, by maintaining the independence of each query request, errors in query request generation caused by the complexity of logical coupling can be avoided. Furthermore, maintaining the independence of each query request also facilitates the execution of S606 below to generate corresponding query statements based on the query requests, thereby ensuring the accuracy of the query results.
[0097] In some embodiments, for ease of storage or management, electronic devices may represent at least one generated query requirement in the form of a structured list of requirements. For example, at least one generated query requirement may be represented as a JSON array, which may include one or more elements, each of which may represent a query requirement. For example, two generated query requirements may be represented as a JSON array [{requirement description: unresolved issue}, {requirement description: issue with Fix Version v3.7.0}].
[0098] S606: Generate query statements corresponding to each query requirement.
[0099] In some embodiments, the electronic device can convert each query request into its corresponding query statement according to a preset conversion rule. For example, the preset conversion rule can be JQL syntax and the JQL field names corresponding to the keyword fields in the query request.
[0100] For example, the electronic device can first extract the fields of keywords in the query requirements (e.g., project, module, patch version, etc.). Then, according to the pre-determined correspondence between the fields of keywords and JQL field names, the fields of keywords in the query requirements are converted into JQL field names. Among them, the fields of keywords and the corresponding JQL field names can include, but are not limited to, any one or more of the following: (1) The field name "project" represents the field of keywords "project". For example, if there is a keyword "project A" in the query requirements, the field name "project=A" can be used to represent the keyword "project A" when generating the JQL query statement. (2) The field name "issuetype" or "type" represents the field of keywords "issue type". For example, if there is a keyword "issue type 404" in the query requirements, the field name "issuetype=404" or "type=404" can be used to represent the keyword "issue type 404" when generating the JQL query statement. (3) The field name "labels" represents the keyword field "label". For example, if the query requirement contains the keyword "label A100", the field name "labels=A100" can be used to represent the keyword "label A100" when generating the JQL query statement. (4) The field name "assignee" represents the keyword field "person in charge" or "person in charge". For example, if the query requirement contains the keyword "person in charge Xiao Wang", the field name "assignee=Xiao Wang" can be used to represent the keyword "person in charge Xiao Wang" when generating the JQL query statement. (5) The field name "reporter" represents the keyword field "reporter". For example, if the query requirement contains the keyword "reporter Xiao Zhang", the field name "reporter=principal" can be used to represent the keyword "reporter Xiao Zhang" when generating the JQL query statement. (6) The field name "status" represents the keyword field "status". For example, if the query requirement contains the keyword "unresolved", the field name "status=unresolved" can be used to represent the keyword "unresolved" when generating the JQL query statement. (7) The field name "resolution" represents the keyword "solution". For example, if the query requirement contains the keyword "use A1 solution", the field name "resolution=A1" can be used to represent the keyword "use A1 solution" when generating the JQL query statement. (8) The field name "fixVersion" represents the keyword "fix version". For example, if the query requirement contains the keyword "v1.0.3 fixed version", the field name "fixVersion=v1.0.3" can be used to represent the keyword "v1.0.3 fixed version" when generating the JQL query statement.(9) The field name "priority" represents the keyword's "priority". For example, if the query requirement contains the keyword "priority 1", the field name "priority=1" can be used to represent the keyword "priority 1" when generating the JQL query statement. (10) The field name "created" represents the keyword's "creation time". For example, if the query requirement contains the keyword "creation time is 2025.10.8", the field name "created=2025.10.8" can be used to represent the keyword "creation time is 2025.10.8" when generating the JQL query statement. (11) The field name "updated" represents the keyword's "update time". For example, if the query requirement contains the keyword "update time is 2025.11.8", the field name "updated=2025.11.8" can be used to represent the keyword "update time is 2025.11.8" when generating the JQL query statement. (12) The keyword field "title" can be represented by the field name "summary". For example, if the query requirement contains the keyword "title is B", the keyword "title is B" can be represented by the field name "summary=B" when generating the JQL query statement. (13) The keyword field "description" can be represented by the field name "description". For example, if the query requirement contains the keyword "description: the cause of the problem is...", the keyword "description=the cause of the problem is..." can be represented by the field name "description=the cause of the problem is..." when generating the JQL query statement. (14) The keyword field "module" or "component" can be represented by the field name "component". For example, if the query requirement contains the keyword "A1 module", the keyword "A1 module" can be represented by the field name "component=A1" when generating the JQL query statement.
[0101] In this way, by using the corresponding keyword fields and JQL field names mentioned above, the keyword fields in the query requirements can be converted into JQL field names in the JQL query statement.
[0102] For example, when converting each query requirement into its corresponding query statement, it is also necessary to combine it with JQL syntax so that the field names determined above can be substituted into the JQL syntax. For example, the JQL syntax can include, but is not limited to, any one or more of the following: (1) Using the JQL syntax "field='value'" to indicate that fields are equal, where field represents the field name and value represents the value of the field name. For example, the JQL syntax "project=A" can be used to indicate project A, where project is the field name and A is the value of the project field name. (2) Using the JQL syntax "field in('value1', 'value2')" to indicate that fields contain each other, where field represents the field name, value1 represents one value of the field name, and value2 represents another value of the field name. For example, the JQL syntax "fixVersion in('v1.0', 'v1.1')" can be used to indicate that the fix version is v1.0 or the fix version is v1.1, where fixVersion is the field name, and v1.0 and v1.1 are the two values of the fixVersion field name. (3) The JQL syntax "field is EMPTY" indicates that the field is empty, and the JQL syntax "field is not EMPTY" indicates that the field is not empty. For example, the JQL syntax "issuetype is EMPTY" indicates that there is no issue. (4) The JQL syntax "created>=-'T'd" indicates a project created in the last T days. For example, the JQL syntax "created>=-7d" indicates a project created in the last 7 days, and the JQL syntax "created>=-30d" indicates a project created in the last 30 days. (5) The JQL syntax "created>='YYYY-MM-DD'" indicates a project created after the date YYYY-MM-DD. For example, the JQL syntax "created>=2025-10-10" indicates a project created after October 10, 2025. (6) The JQL syntax "summary~'×××'" indicates searching by the title ×××. (7) The JQL syntax “description~'×××'” indicates that the search is performed by the description of ×××.
[0103] In this way, by combining the above-mentioned JQL syntax, the field names determined above can be substituted into the JQL syntax to generate the query statement corresponding to each query requirement.
[0104] In some embodiments, when generating the query statement corresponding to each query requirement, if the query requirement is complex, the electronic device can first generate a basic JQL query statement, and then add additional filtering conditions to the basic JQL query statement to obtain the final query statement. For example, if the query requirement is "find the problem where fixVersion equals v1.0 in the MN project", the electronic device can first generate the basic JQL query statement "project=MN AND type=Bug" to indicate finding the problem in the MN project. Then, the electronic device can add the filtering condition "the problem where fixVersion equals v1.0" to the basic JQL query statement to generate the final query statement "project=MN AND type=Bug AND fixVersion=v1.0". As another example, if the query requirement is "find the problem of the A-Parking Perception_OCC module in the MN project", the electronic device can first generate the basic JQL query statement "project=MN AND type=Bug" to indicate finding the problem in the MN project. Then, the electronic device can add the filter condition "A-Parking Perception_OCC module issues" to the basic JQL query statement, thereby generating the final query statement "project=MN AND type=Bug AND fixVersion=A-Parking Perception_OCC". For example, if the query requirement is "Find issues in project MN where assignee is 'Xiao Zhang', and sort them in descending order of creation time", the electronic device can first generate the basic JQL query statement "project=MN ORDER BY created DESC" to find issues in project MN and sort them in descending order of creation time. Then, the electronic device can add the filter condition "assignee is 'Xiao Zhang'" to the basic JQL query statement, thereby generating the final query statement "project=MN AND assignee='Xiao Zhang' ORDER BY created DESC".
[0105] In this way, when the query requirements are complex, a basic JQL query can be generated first, and then additional filtering conditions can be added to the basic JQL query to obtain the final query. By breaking down the query requirements step by step, the process of generating the query can be simplified, and the accuracy of the generated query can be improved.
[0106] In summary, electronic devices can convert each query requirement into its corresponding query statement based on various conversion rules, such as the field name naming rules, JQL syntax rules, and JQL query statement decomposition and generation rules.
[0107] S607: Validate the generated query statement.
[0108] In some embodiments, the electronic device may invoke a management application to execute each query statement individually, and then determine whether each query statement has passed validation by determining whether the query result corresponding to each query statement can be obtained. For example, if the electronic device can obtain the query result of query statement A, it means that query statement A has passed validation. Or, if the electronic device cannot obtain the query result of query statement B, it means that query statement B has failed validation.
[0109] In some embodiments, each query statement can specifically correspond to n (n is a positive integer) query results. For example, when querying for problems in project A1 using the JQL query statement "project=A1 AND type=Bug", multiple query results can be obtained. Therefore, to save verification time, when verifying the generated query statements, the electronic device can first call the management application to execute each query statement separately. Then, by determining whether i (i is a positive integer less than or equal to n) query results corresponding to each query statement can be obtained, it is determined whether each query statement has passed verification. For example, if the electronic device can obtain i query results corresponding to query statement A, it means that query statement A has passed verification. Or, if the electronic device cannot obtain i query results corresponding to query statement B (as an example of the first query statement), it means that query statement B has failed verification.
[0110] In this way, when validating JQL query statements, limiting the number of query results returned by each query statement can save validation time and improve validation efficiency.
[0111] In some embodiments, when an electronic device invokes a management application to execute each query statement separately, it can log in to the management application using a pre-stored administrator account.
[0112] Alternatively, in some embodiments, the user-input query information may also carry account information. When the electronic device invokes the management application to execute each query statement, it can log in to the management application using the account information carried in the query information. In this case, before verifying the JQL query statement, the electronic device can first verify whether the account information can successfully log in to the management application. If the electronic device determines that the account information can log in to the management application, it will then execute each query statement through the management application to verify each query statement. Conversely, if the electronic device determines that the account information does not have permission to log in to the management application, it will not execute each query statement through the management application to verify each query statement, and the electronic device can also display relevant information about not having permission to access the management application in the chat area of the chat interface.
[0113] S608: Determine whether each query statement has passed validation.
[0114] In some embodiments, when the electronic device verifies a query statement, if the verification passes, it executes S610 to execute each query statement. Alternatively, when the electronic device verifies a query statement, if the verification fails, it executes S609 to send relevant information about the verification failure to the user.
[0115] S609: Displays information related to verification failure.
[0116] In some embodiments, when the electronic device verifies a query statement, if the verification of the first query statement fails, such as not obtaining the i query results corresponding to the first query statement, the electronic device can display the query failure information of the first query statement in the chat area of the chat interface.
[0117] S610: Call the management application to execute each query statement that has been successfully verified.
[0118] In some embodiments, when an electronic device verifies a query statement, if a certain query statement passes the verification, such as obtaining i query results corresponding to the query statement, the electronic device can execute the verified query statement through a management application to obtain n corresponding query results.
[0119] S611: Group and statistically process the query results according to the management object identifier and project module to obtain the analysis results.
[0120] In some embodiments, the query results may include project information (such as processing progress), project modules, and management object identifiers. The management object identifier is used to identify the management object (also known as the project manager) of the project information in the management application. Therefore, the electronic device can perform statistical processing on the project information based on the project modules and management object identifiers to obtain the analysis results corresponding to each management object identifier.
[0121] In this way, when the analysis results are displayed in the dialog area after being grouped and statistically analyzed according to the managed objects, each managed object can more intuitively understand the status of the projects they are responsible for.
[0122] In other embodiments, the query results can also be grouped and statistically processed according to other grouping rules such as creation time to obtain analysis results. This application does not limit this.
[0123] S612: Map the managed object identifier to a session object in the instant messaging application, and convert the analysis results into a report format supported by the instant messaging application.
[0124] In some embodiments, there is a one-to-one correspondence between the management object identifier in the management application and the session object in the instant messaging application. Furthermore, the electronic device can pre-store each management object identifier and its corresponding session object, so that once the management object identifier is determined, the corresponding session object can be found.
[0125] Alternatively, in some other embodiments, the management object identifier and the session object of the same user have the same name. In this way, after the management object identifier is determined, the electronic device can also find the session object with the same name as the session object corresponding to the management object identifier.
[0126] In some embodiments, in order to enable the viewing of analysis results reports in instant messaging applications, electronic devices can also convert the analysis results into a report format supported by the instant messaging application. For example, Lark. TM It supports the lightweight markup language (Mrkdown) format, so electronic devices can generate Markdown reports from analysis results based on Markdown format.
[0127] S613: Display the analysis results and the corresponding conversation object marked with @ for each managed object in the chat interface's dialogue area.
[0128] For example, as mentioned above Figure 5 As shown, the analysis result 501 can be displayed in the dialogue area U11 of the chat interface U1, and the electronic device 10 can also @ each managed object in the dialogue area U11 to identify the corresponding session object. In this way, each managed object can be aware of the status of the project it is responsible for.
[0129] S614: End.
[0130] Thus, the Jira system can be configured using the methods described above. TM With Feishu TM The platform is integrated, allowing users to access the Jira system whenever needed. TM When acquiring data, you can directly use Lark. TM Platform and corresponding Jira system TM Interact with interactive controls to obtain the results. That is, data retrieval can be performed using this method without needing to access Lark. TM Platform and Jira system TM Frequent switching between different modes and fewer steps improves operational efficiency and user experience. Furthermore, users can query the Jira system more efficiently. TM When you need data in Lark, you can also directly access it in Lark. TMThe platform allows users to input queries in natural language to obtain results, eliminating the need to learn or write JQL queries, thus lowering the barrier to entry and learning curve. Furthermore, it makes the Jira system accessible even to users who are not proficient in coding. TM Its availability is relatively high.
[0131] Furthermore, corresponding to the above-described interaction method, embodiments of this application also provide an interaction system. For example, such as Figure 7 As shown, the interactive system 700 may include a first display module 701, a first detection module 702, a second detection module 703, and a second display module 704.
[0132] The first display module 701 is used to display the chat interface of an instant messaging application. For example, it is used to display the interface described above. Figure 3A The chat interface U1 shown is shown.
[0133] The first detection module 702 is used to detect the first command input by the user in the chat interface. Furthermore, upon detecting the first command, the first display module 701 is also used to display the corresponding management application's interactive controls in the chat interface's dialogue area. For example, as described above. Figure 3A As shown, the first detection module 702 is used to detect the user's operation of @jira automatic analysis robot in the dialogue area U11 of the chat interface U1. Furthermore, when this operation is detected, the first display module 701 is also used to display the corresponding Jira system in the dialogue area U11. TM The interactive control U12.
[0134] The second detection module 703 is used to detect user interaction with interactive controls. For example, as described above. Figure 3A As shown, the second detection module 703 is used to detect the user's operation of entering query information in the demand description input box 302 and the operation of clicking the AI analysis control 303.
[0135] The second display module 704 is used to display the interaction result of the corresponding interactive operation in the dialog area. For example, the second display module 704 can be used to display the result as described above. Figure 5 The analysis result shown is 501.
[0136] Thus, the interactive method provided in this application can be realized through the aforementioned interactive system.
[0137] In other embodiments, the interactive system may further include a first information receiving module and / or a second information receiving module. The first information receiving module is used to receive query information described in natural language by the user, and the second information receiving module is used to receive query statements in a preset format by the user. In this way, through the first information receiving module and / or the second information receiving module, the interactive system can receive the user's input data, and then process the input data to complete the interactive method provided in this application.
[0138] In other embodiments, the interactive system may further include a query statement generation module, used to generate at least one query statement based on the query information received by the first information receiving module. For example, the query statement generation module can generate at least one query requirement based on keywords in the query information, and then convert each query requirement into a corresponding query statement based on preset conversion rules. In this way, the query statement generation module eliminates the need for users to write query statements in a preset format themselves, reducing the barrier to entry and the learning cost for users.
[0139] In other embodiments, the interactive system may also include a verification module for verifying the generated query statements. For example, each query statement may correspond to n (n is a positive integer) query results. When verifying each query statement, the verification module may invoke a management application to execute each query statement separately. Then, the verification module can determine whether each query statement has passed verification by determining whether i (i is a positive integer less than or equal to n) query results corresponding to each query statement can be obtained. In this way, by limiting the number of query results returned by each query statement, the verification module can save verification time and improve verification efficiency when verifying query statements.
[0140] In other embodiments, the interactive system may also include a data query module. The data query module can be used to invoke a management application to execute a validated query statement, thereby obtaining the query results.
[0141] In other embodiments, the interactive system may also include an analysis module for performing statistical analysis on the query results. For example, the analysis module can perform statistical processing on the project information in the query results based on the management object identifiers in the query results to obtain the analysis results corresponding to each management object identifier.
[0142] Thus, the interactive system described above enables the interactive method provided in this application. This allows users to retrieve data through the management application without frequently switching between the instant messaging and management applications, reducing operational steps and improving operational efficiency and user experience. Furthermore, when querying data in the management application, users can directly input natural language descriptions in the instant messaging application to obtain query results, eliminating the need for users to learn or write query statements, thus lowering the barrier to entry and learning cost.
[0143] In some embodiments, this application also provides a readable storage medium. The readable storage medium stores instructions that, when executed on an electronic device, cause the electronic device to perform the interaction method mentioned in this application.
[0144] In other embodiments, this application also provides a computer program product, wherein the computer program product includes computer instructions. When the computer instructions are executed on an electronic device, the electronic device enables the electronic device to implement the interactive methods mentioned in this application.
[0145] In other embodiments, this application also provides an electronic device. The electronic device includes at least one memory and at least one processor, the memory being coupled to the processor. The memory stores computer program code / instructions. When the computer program code / instructions are executed by the processor, the electronic device can implement the interactive methods mentioned in this application.
[0146] like Figure 8 The diagram illustrates the hardware structure of an electronic device 10 according to an embodiment of this application. Figure 8 As shown, the electronic device 10 may include one or more processors 110, a system control logic unit 101 connected to at least one of the processors 110, a system memory 105 connected to the system control logic unit 101, a memory 103 connected to the system control logic unit 101, and a network interface 107 connected to the system control logic unit 101.
[0147] It is understood that the structures illustrated in the embodiments of this application do not constitute a limitation on the only possible implementation of the electronic device 10. In other embodiments of this application, the electronic device 10 may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
[0148] Processor 110 may include one or more single-core or multi-core processors. In some embodiments, processor 110 may include any combination of general-purpose processors and special-purpose processors (e.g., application processors, baseband processors, etc.). It is understood that in this embodiment, processor 110 may be configured to execute executable instructions 104 stored in memory 103 to implement the interaction method of this embodiment. When at least one instruction is executed in processor 110, electronic device 10 implements the interaction method of this embodiment.
[0149] System control logic unit 101 may include any suitable interface controller to provide any suitable interface to at least one of the processors 110 and / or any suitable device or component communicating with system control logic unit 101. System control logic unit 101 may include one or more memory controllers to provide an interface to system memory 105. System memory 105 may be used to load and store data and / or instructions. In some embodiments, system memory 105 of electronic device 10 may include any suitable volatile memory, such as suitable dynamic random access memory.
[0150] Memory 103 may include one or more tangible, non-transitory computer-readable media for storing data and / or instructions. In some embodiments, memory 103 may include any suitable volatile memory and / or any suitable non-volatile storage device, such as memory 103 may include random access memory (RAM) and / or cache memory cells, and may further include read-only memory (ROM).
[0151] The memory 103 may include a portion of the storage resources on the device on which the electronic device 10 is installed, or it may be accessible by the device, but is not necessarily part of the device. For example, the memory 103 may be accessed over a network via the network interface 107.
[0152] Specifically, system memory 105 and memory 103 may each include a temporary copy and a permanent copy of instruction 104. Instruction 104 may include, when executed by at least one of processors 110, causing electronic device 10 to implement the interaction method of embodiments of this application. In some embodiments, instruction 104, hardware, firmware, and / or its software components may additionally / alternatively be located in system control logic unit 101, network interface 107, and / or processor 110.
[0153] Network interface 107 may include a transceiver for providing a radio interface to electronic device 10, thereby enabling communication with any other suitable device (such as a front-end module, antenna, etc.) via one or more networks. In some embodiments, network interface 107 may be integrated into other components of electronic device 10. For example, network interface 107 may be integrated into at least one of processor 110, system memory 105, memory 103, and firmware device (not shown) with instructions.
[0154] Network interface 107 may further include any suitable hardware and / or firmware to provide a multiple-input multiple-output radio interface. For example, network interface 107 may be a network adapter, a wireless network adapter, a telephone modem, and / or a wireless modem.
[0155] The electronic device 10 may further include an input / output device 106. The input / output device 106 enables a user to interact with the electronic device 10.
[0156] In some embodiments, the electronic device 10 may further include, but is not limited to, a display (e.g., a liquid crystal display, a touch screen display, etc.), a speaker, a microphone, one or more cameras (e.g., a still image camera and / or a video camera), a flashlight (e.g., a light-emitting diode flash) and a keyboard.
[0157] In some embodiments, the electronic device 10 further includes a sensor for determining at least one of environmental conditions or location information associated with the electronic device 10.
[0158] In some embodiments, the sensor may include, but is not limited to, a gyroscope sensor, an accelerometer, a proximity sensor, an ambient light sensor, and a positioning unit. The positioning unit may also be part of or interact with the network interface 107 to communicate with components of the positioning network, such as global positioning system (GPS) satellites.
[0159] For example, such as Figure 9 The diagram illustrates the hardware structure of an electronic device 10 according to another embodiment of this application. Figure 9As shown, the electronic device 10 may include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a sensor module 180, a button 190, a motor 191, an indicator 192, a camera 193, a display screen 194, and a subscriber identification module (SIM) card interface 195, etc.
[0160] It is understood that the structures illustrated in the embodiments of this application do not constitute a specific limitation on the electronic device 10. In other embodiments of this application, the electronic device 10 may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
[0161] Processor 110 may include one or more processing units, such as an application processor (AP), a modem processor, a controller, a digital signal processor (DSP), a baseband processor, etc. Different processing units may be independent devices or integrated into one or more processors.
[0162] The processor 110 may also include a memory for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. This memory can store instructions or data that the processor 110 has just used or that are used repeatedly. If the processor 110 needs to use the instruction or data again, it can retrieve it directly from the memory. This avoids repeated accesses, reduces the waiting time of the processor 110, and thus improves the efficiency of the system.
[0163] The wireless communication function of electronic device 10 can be implemented through antenna 1, antenna 2, mobile communication module 150, wireless communication module 160, modem processor and baseband processor, etc.
[0164] Antenna 1 and Antenna 2 are used to transmit and receive electromagnetic wave signals. Each antenna in electronic device 10 can be used to cover one or more communication frequency bands. Different antennas can also be multiplexed to improve antenna utilization. For example, antenna 1 can be multiplexed as a diversity antenna for a wireless local area network. In some other embodiments, the antennas can be used in conjunction with tuning switches.
[0165] The mobile communication module 150 can provide solutions for wireless communication, including 2G / 3G / 4G / 5G, applied to the electronic device 10. The mobile communication module 150 may include at least one filter, switch, power amplifier, low noise amplifier (LNA), etc. The mobile communication module 150 can receive electromagnetic waves via antenna 1, and perform filtering, amplification, and other processing on the received electromagnetic waves before transmitting them to a modem processor for demodulation. The mobile communication module 150 can also amplify the signal modulated by the modem processor and convert it into electromagnetic waves for radiation via antenna 1. In some embodiments, at least some functional modules of the mobile communication module 150 may be housed in the processor 110. In some embodiments, at least some functional modules of the mobile communication module 150 and at least some modules of the processor 110 may be housed in the same device.
[0166] The wireless communication module 160 can provide solutions for wireless communication applications on the electronic device 10, including wireless local area networks (WLANs) (such as wireless fidelity (Wi-Fi) networks) and Bluetooth (BT). The wireless communication module 160 can be one or more devices integrating at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via antenna 2, modulates and filters the electromagnetic wave signal, and sends the processed signal to processor 110. The wireless communication module 160 can also receive signals to be transmitted from processor 110, modulate and amplify them, and then convert them into electromagnetic waves for radiation via antenna 2.
[0167] In some embodiments, antenna 1 of electronic device 10 is coupled to mobile communication module 150, and antenna 2 is coupled to wireless communication module 160, so that electronic device 10 can communicate with networks and other devices through wireless communication technology.
[0168] Internal memory 121 can be used to store computer executable program code, which includes instructions. Internal memory 121 may include a program storage area and a data storage area. The program storage area may store the operating system, applications required for at least one function, etc. The data storage area may store data created during the use of electronic device 10 (such as audio data, phone book, etc.). In addition, internal memory 121 may include high-speed random access memory, and may also include non-volatile memory, such as at least one disk storage device, flash memory device, universal flash storage (UFS), etc. Processor 110 executes various functional applications and data processing of electronic device 10 by running instructions stored in internal memory 121 and / or instructions stored in memory disposed in processor 110.
[0169] Indicator 192 can be an indicator light, used to indicate charging status, power changes, or to indicate messages, missed calls, notifications, etc.
[0170] The SIM card interface 195 is used to connect a SIM card. The SIM card can be inserted into or removed from the SIM card interface 195 to make contact with and detach from the electronic device 10. The electronic device 10 can support one or N SIM card interfaces, where N is a positive integer greater than 1. Multiple cards can be inserted into the same SIM card interface 195 simultaneously. The multiple cards can be of the same or different types. The SIM card interface 195 is also compatible with different types of SIM cards. The SIM card interface 195 is also compatible with external memory cards. The electronic device 10 interacts with the network through the SIM card to realize functions such as making calls and data communication.
[0171] The embodiments disclosed in this application can be implemented in hardware, software, firmware, or a combination of these implementation methods. Embodiments of this application can be implemented as computer programs or program code executable on a programmable system, the programmable system including at least one processor, a storage system (including volatile and non-volatile memory and / or storage elements), at least one input device, and at least one output device.
[0172] Program code can be applied to input instructions to execute the functions described in this application and generate output information. The output information can be applied to one or more output devices in a known manner. For the purposes of this application, the processing system includes any system having a processor such as, for example, a digit gating processor, a microcontroller, an application-specific integrated circuit, or a microprocessor.
[0173] The program code can be implemented using a high-level procedural language or an object-oriented programming language to communicate with the processing system. Assembly language or machine language can also be used when needed. In fact, the mechanisms described in this application are not limited to any particular programming language. In either case, the language can be a compiled language or an interpreted language.
[0174] In some cases, the disclosed embodiments may be implemented in hardware, firmware, software, or any combination thereof. The disclosed embodiments may also be implemented as instructions carried or stored thereon on one or more temporary or non-temporary machine-readable (e.g., computer-readable) storage media, which may be read and executed by one or more processors. For example, the instructions may be distributed via a network or through other computer-readable media. Therefore, machine-readable media may include any mechanism for storing or transmitting information in a machine-readable (e.g., computer-readable) form, including but not limited to floppy disks, optical disks, optical discs, magneto-optical disks, ROM, RAM, magnetic cards or optical cards, or tangible machine-readable memories for transmitting information using electrical, optical, acoustic, or other forms of propagation signals via the Internet (e.g., carrier waves, infrared signal digit gating, etc.). Therefore, machine-readable media include any type of machine-readable medium suitable for storing or transmitting electronic instructions or information in a machine-readable (e.g., computer-readable) form.
[0175] In the accompanying drawings, some structural or methodological features may be shown in a specific arrangement and / or order. However, it should be understood that such a specific arrangement and / or order may not be necessary. Rather, in some embodiments, these features may be arranged in a manner and / or order different from that shown in the illustrative drawings. Furthermore, including structural or methodological features in a particular figure does not imply that such features are required in all embodiments, and in some embodiments, these features may be omitted or may be combined with other features.
[0176] It should be noted that all units / modules mentioned in the device embodiments of this application are logical units / modules. Physically, a logical unit / module can be a physical unit / module, a part of a physical unit / module, or a combination of multiple physical units / modules. The physical implementation of these logical units / modules themselves is not the most important factor; the combination of functions implemented by these logical units / modules is the key to solving the technical problems proposed in this application. Furthermore, to highlight the innovative aspects of this application, the above-described device embodiments of this application have not introduced units / modules that are not closely related to solving the technical problems proposed in this application. This does not mean that the above-described device embodiments do not contain other units / modules.
[0177] It should be noted that in the examples and description of this application, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one" does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.
[0178] Although this application has been illustrated and described with reference to certain preferred embodiments thereof, those skilled in the art will understand that various changes in form and detail may be made thereto without departing from the scope of this application.
Claims
1. An interaction method, characterized in that, Applied to electronic devices, including: Displays the chat interface of an instant messaging application; Upon detecting the first command input by the user in the chat interface, an interactive control for the corresponding management application is displayed in the chat area of the chat interface. The management application can be any one of the following: Jira system, Redmine system, MySQL system, or Oracle system. The system detects the user's interaction with the interactive control and displays the interaction result corresponding to the interaction in the dialog area; wherein the interactive control includes a first information receiving area and an analysis sub-control; Furthermore, the step of detecting the user's interaction with the interactive control and displaying the interaction result corresponding to the interaction in the dialog area includes: The system receives query information described in natural language in the first information receiving area and detects the user's trigger operation on the analysis sub-control. Generate at least one query statement based on the query information; The management application is invoked to execute at least one query statement, and the query results corresponding to each query statement are obtained. The interactive result is generated based on the query result, and the interactive result corresponding to the query information is displayed in the dialog area.
2. The interaction method of claim 1, wherein, The interaction result includes at least one of the query result, analysis result, or query failure information corresponding to the query information.
3. The interaction method of claim 2, wherein, The interaction result includes the analysis result corresponding to the query information; and generating the interaction result based on the query result includes: The analysis results are obtained by analyzing and processing the query results.
4. The interaction method of claim 3, wherein, The step of generating at least one query statement based on the query information includes: Generate at least one query request based on the keywords in the query information; The at least one query request is converted into a query statement corresponding to each query request according to a preset conversion rule.
5. The interaction method according to claim 3 or 4, characterized in that, Each query statement is used to obtain n query results, where n is a positive integer; The step of invoking the management application to execute at least one query statement and obtaining the query result corresponding to each query statement includes: The management application is invoked to execute each of the query statements; If i query results are obtained for each query statement, the management application is invoked to execute each query statement to obtain n query results for each query statement, where i is a positive integer less than or equal to n.
6. The interaction method of claim 5, wherein, The interaction result also includes query failure information; the method includes: If no i query results are obtained corresponding to the first query statement in the query statement, a query failure message corresponding to the first query statement is displayed in the dialog area.
7. The interaction method according to claim 3 or 4, characterized in that, The query results include project information and management object identifiers, wherein the management object identifiers are used to identify the management object of the project information in the management application; The process of analyzing and processing the query results to obtain the analysis results includes: Based on the management object identifier, the project information is statistically processed to obtain the analysis results corresponding to each management object identifier; The step of displaying the interaction result corresponding to the query information in the dialogue area includes: In the instant messaging application, determine the session object corresponding to each of the management object identifiers; The dialog area prompts the session object corresponding to each managed object identifier and displays the analysis results corresponding to each managed object identifier.
8. The interaction method according to claim 3 or 4, characterized in that, The process of analyzing and processing the query results to obtain the analysis results includes: The query results are grouped and statistically processed based on preset grouping rules to obtain the analysis results; The step of displaying the interaction results corresponding to the query information in the dialogue area includes: The analysis results are displayed in the dialog area.
9. The interaction method of claim 1, wherein, The interactive control also includes a second information receiving area; The step of detecting the user's interaction with the interactive control and displaying the interaction result corresponding to the interaction in the dialog area includes: A query statement in a preset format is received in the second information receiving area, and the user's trigger operation on the analysis sub-control is detected; The interactive results corresponding to the query statement are displayed in the dialog area, wherein the interactive results include at least one of the query results, analysis results, or query failure information corresponding to the query information.
10. An interactive system, characterized in that, include: The first display module is used to display the chat interface of the instant messaging application; The first detection module is used to detect the first command entered by the user in the chat interface; and, When the first instruction is detected, the first display module is also used to display the interactive control of the corresponding management application in the dialog area of the chat interface. The management application is any one of the Jira system, Redmine system, MySQL system or Oracle system. The interactive control includes a first information receiving area and an analysis sub-control. The second detection module is used to detect the user's interaction with the interactive control. The interaction includes the user's operation of inputting query information in natural language in the first information receiving area, and the user's triggering operation on the analysis sub-control. A query statement generation module is used to generate at least one query statement based on the query information. The data query module is used to call the management application to execute at least one query statement and obtain the query result corresponding to each query statement; The second display module is used to display the interaction result corresponding to the interaction operation in the dialog area, and the interaction result is generated based on the query result.
11. An electronic device, comprising: include: At least one memory and at least one processor, the memory being coupled to the processor; the memory being used to store computer program code / instructions; when the computer program code / instructions are executed by the processor, causing the electronic device to perform the interaction method as described in any one of claims 1 to 9.
12. A readable storage medium, characterized by, The readable storage medium stores instructions that, when executed on an electronic device, cause the electronic device to perform the interaction method as described in any one of claims 1 to 9.
13. A computer program product, characterised in that, include: computer instructions that, when executed on an electronic device, cause the electronic device to perform the interaction method of any of claims 1-9.