Data reporting method and device, chip, storage medium and computer program

CN119604858APending Publication Date: 2025-03-11GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202280098580.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2022-08-04
Publication Date
2025-03-11

AI Technical Summary

Technical Problem

In the prior art, when a client device and a server device are performing a read interaction, the field in the data reporting message used to indicate whether the client device needs to respond is unreasonably set, resulting in limited interoperability of the read interaction and easily causing the client device to An error is reported after receiving the data reporting message.

Method used

By setting different values ​​in the first field of the data reporting message, the value is determined based on whether it is the last data reporting message corresponding to the read request or other information, ensuring that the client device responds correctly or not, thereby improving read interaction. interoperability. The specific method includes setting the value of the first field to the first value (the client device responds) or the second value (no response), or setting the corresponding value according to the location in multiple data reporting messages.

Benefits of technology

By reasonably setting the value of the first field, the client device solves the problem of responding after receiving the data reporting message, improves the interoperability of read interactions, and ensures the smooth progress of the data reporting process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119604858A_ABST
    Figure CN119604858A_ABST
Patent Text Reader

Abstract

The invention provides a data reporting method and device, a chip, a storage medium and a computer program. The data reporting method comprises the following steps: a server device receives a read request sent by a client device; the server device sends a first data reporting message to the client device, the first data reporting message comprises or omits a first field, the first field has a first value or a second value, the first value is used for indicating the client device to respond to the first data reporting message, and the second value is used for indicating the client device to respond to the second data reporting message. The second value is used for indicating that the client device does not respond to the first data reporting message; wherein the value of the first field is determined based on first information, and the first information is used for indicating whether the first data report message is the last data report message corresponding to the read request; or the value of the first field is a second value; or the value of the first field is the first value. According to the method provided by the embodiment of the invention, the setting of the first field can be ensured to be more reasonable, and the interoperability of read interaction can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Data reporting method, device, chip, storage medium and computer program Technical Field

[0001] The present application relates to the field of Internet of Things technology, and more specifically, to a data reporting method, device, chip, storage medium and computer program. Background Art

[0002] When a client device and a server device are performing a read interaction, the server device can send a ReportDataMessage to the client device, enabling the client device to read the server device's data. The ReportDataMessage includes a field that indicates whether the client device needs to respond to the ReportDataMessage. In related art, this field is improperly configured, hindering interoperability during read interactions.

[0003] Summary of the Invention

[0004] The present application provides a data reporting method, device, chip, storage medium, and computer program. The following introduces various aspects of the present application.

[0005] In a first aspect, a data reporting method is provided, including: a server device receives a read request sent by a client device; the server device sends a first data reporting message to the client device, the first data reporting message includes or omits a first field, the first field has a first value or a second value, the first value is used to indicate that the client device responds to the first data reporting message, and the second value is used to indicate that the client device does not respond to the first data reporting message; wherein, the value of the first field is determined based on first information, the first information is used to indicate whether the first data reporting message is the last data reporting message corresponding to the read request; or, the value of the first field is the second value; or, the value of the first field is the first value.

[0006] In a second aspect, a data reporting method is provided, including: a client device sends a read request to a server device; the client device receives a first data reporting message sent by the server device, the first data reporting message includes or omits a first field, the first field has a first value or a second value, the first value is used to indicate that the client device responds to the first data reporting message, and the second value is used to indicate that the client device does not respond to the first data reporting message; the client device determines whether to send a status response to the server device according to the value of the first field; wherein the value of the first field is determined based on first information, and the first information is used to indicate whether the first data reporting message is the last data reporting message corresponding to the read request; or, the value of the first field is the second value; or, the value of the first field is the first value.

[0007] According to a third aspect, a data reporting device is provided, which is configured on a server device, and the device includes: a receiving module for receiving a read request sent by a client device; a sending module for sending a first data reporting message to the client device, wherein the first data reporting message includes or omits a first field, and the first field has a first value or a second value, and the first value is used to indicate that the client device responds to the first data reporting message, and the second value is used to indicate that the client device does not respond to the first data reporting message; wherein the value of the first field is determined based on first information, and the first information is used to indicate whether the first data reporting message is the last data reporting message corresponding to the read request; or, the value of the first field is the second value; or, the value of the first field is the first value.

[0008] In a fourth aspect, a data reporting device is provided, which is configured on a client device, and the device includes: a first sending module, used to send a read request to a server device; a receiving module, used to receive a first data reporting message sent by the server device, the first data reporting message includes or omits a first field, the first field has a first value or a second value, the first value is used to indicate that the client device responds to the first data reporting message, and the second value is used to indicate that the client device does not respond to the first data reporting message; a determination module, used to determine whether to send a status response to the server device according to the value of the first field; wherein the value of the first field is determined based on first information, and the first information is used to indicate whether the first data reporting message is the last data reporting message corresponding to the read request; or, the value of the first field is the second value; or, the value of the first field is the first value.

[0009] In the fifth aspect, a server device is provided, comprising a processor, a memory, and a communication interface, wherein the memory is used to store one or more computer programs, and the processor is used to call the computer program in the memory so that the server device executes part or all of the steps in the method of the first aspect.

[0010] In the sixth aspect, a client device is provided, comprising a processor, a memory, and a communication interface, wherein the memory is used to store one or more computer programs, and the processor is used to call the computer program in the memory so that the client device executes part or all of the steps in the method of the second aspect.

[0011] In a seventh aspect, an embodiment of the present application provides a communication system, which includes the above-mentioned server device and / or client device. In another possible design, the system may also include other devices that interact with the server device or client device in the solution provided in the embodiment of the present application.

[0012] In an eighth aspect, an embodiment of the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and the computer program enables the data reporting device to execute part or all of the steps in the methods of the above aspects.

[0013] In a ninth aspect, embodiments of the present application provide a computer program product, wherein the computer program product includes a non-transitory computer-readable storage medium storing a computer program, wherein the computer program is operable to cause a data reporting device to perform some or all of the steps of the methods described in each of the above aspects. In some implementations, the computer program product may be a software installation package.

[0014] In the tenth aspect, an embodiment of the present application provides a chip, which includes a memory and a processor. The processor can call and run a computer program from the memory to implement some or all of the steps described in the methods of the above aspects.

[0015] When the client device and the server device perform a read interaction, the value of the first field in the first data reporting message can be set to the first value (i.e., the client device responds to the first data reporting message); or, the value of the first field can be set to the second value (i.e., the client device does not respond to the first data reporting message), so as to be consistent with the value of the field in the upper-layer data reporting operation used to indicate whether a response to the data reporting operation is required; or, the value of the first field can be determined based on whether the first data reporting message is the last data reporting message corresponding to the read request, so as to determine the value of the first field according to different situations. The above method can make the setting of the first field more reasonable, which helps to improve the interoperability of the read interaction. BRIEF DESCRIPTION OF THE DRAWINGS

[0016] FIG1 is a diagram illustrating an example architecture of a wireless communication system applicable to an embodiment of the present application.

[0017] Figure 2 is an example diagram of the layered architecture of a Matter device.

[0018] FIG3 is a flowchart of a read interaction provided in an embodiment of the present application.

[0019] FIG4 is a flowchart of a read interaction provided by another embodiment of the present application.

[0020] FIG5 is a flow chart of a data reporting method provided in an embodiment of the present application.

[0021] FIG6 is a flow chart of a data reporting method provided in another embodiment of the present application.

[0022] FIG7 is a flow chart of a data reporting method provided in another embodiment of the present application.

[0023] FIG8 is a flow chart of a data reporting method provided in yet another embodiment of the present application.

[0024] FIG9 is a flow chart of a data reporting method provided in another embodiment of the present application.

[0025] FIG10 is a flow chart of a data reporting method provided in another embodiment of the present application.

[0026] FIG11 is a flow chart of a data reporting method provided in another embodiment of the present application.

[0027] FIG12 is a flow chart of a data reporting method provided in another embodiment of the present application.

[0028] FIG13 is a schematic structural diagram of a data reporting device provided in an embodiment of the present application.

[0029] FIG14 is a schematic structural diagram of a data reporting device provided in another embodiment of the present application.

[0030] FIG15 is a schematic structural diagram of a communication device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0031] The technical solutions in this application will be described below in conjunction with the accompanying drawings. For ease of understanding, the terms involved in the embodiments of this application are introduced below in conjunction with Figures 1 and 2. It should be noted that the following uses the Matter protocol scenario as an example to introduce the terms involved in the embodiments of this application, as well as the solutions of the embodiments of this application. Of course, the solutions of the embodiments of this application can also be applied to other Internet of Things protocols.

[0032] The Internet of Things (IoT), or "Internet of Everything," is an extension and expansion of the Internet. Through various information sensing devices (such as radio frequency identification and global positioning systems), any object can be connected to the Internet to form a vast network for information exchange and communication, enabling interconnection and interoperability between all things. In some embodiments, IoT devices can be smart home devices, such as smart air conditioners, smart refrigerators, washing machines, rice cookers, and robot vacuums. In some embodiments, IoT devices can be smart monitoring devices, such as surveillance cameras, temperature sensors, and sound sensors.

[0033] At present, different manufacturers may use different communication protocols (also called ecological protocols) to achieve interoperability between IoT devices that support the communication protocols. This may lead to the inability of IoT devices produced by different manufacturers to communicate with each other, and the failure to achieve true interconnection of all things.

[0034] Based on this, the Connectivity Standards Alliance (CSA) has launched an IoT application layer technology standard - the Matter standard protocol, which can provide an interoperable application layer solution for smart home devices based on the Internet Protocol (IP). In some embodiments, the Matter standard can also be called the connected home over IP (CHIP) standard. In some embodiments, the Matter standard can support three underlying communication protocols: Ethernet, Wi-Fi, and Thread, and can enable IoT devices with different protocols to communicate with each other.

[0035] Communication system based on Matter protocol

[0036] The following describes a communication system applicable to an embodiment of the present application in conjunction with FIG1 . The communication system 100 shown in FIG1 may include a Matter client device 110 and a Matter server device 120 .

[0037] The Matter client device 110 is a user-side client device that can communicate with the Matter server device 120. In some implementations, the Matter client device 110 can send control information to the Matter server device 120 to control the Matter server device 120. For example, when the Matter server device 120 is a smart air conditioner, the Matter client device 110 can control the temperature of the Matter server device 120 by sending control information to the Matter server device 120. In some implementations, the Matter client device 110 can send request information to the Matter server device 120 to request interaction with the Matter server device 120, such as data transmission. For example, when the Matter server device 120 is a smart air conditioner, the Matter client device 110 can send a subscription request information to the Matter server device 120 to subscribe to the indoor temperature measured by the air conditioner sensor of the Matter server device 120. In this case, the user can monitor the indoor temperature by receiving reports regularly.

[0038] In some embodiments, the Matter client device 110 may refer to a terminal device on which a Matter client is installed, wherein the terminal device may be a mobile phone, a computer, a tablet computer, a smart bracelet, a smart watch, etc., which is not limited in the embodiments of the present application. It should be understood that the Matter client may be an application (APP) or a mini-program, etc., which is not limited in the embodiments of the present application.

[0039] The Matter server device 120 may refer to an IoT device that supports the Matter standard protocol. The Matter server device 120 may communicate directly with the Matter client device 110 so that the Matter client device 110 can control the Matter server device 120.

[0040] For example, when the Matter server device 120 is a smart air conditioner that supports the Matter standard protocol, the Matter client device 110 can control the smart air conditioner's power on and off, and set the temperature and wind speed. When the Matter server device 120 is a robot vacuum that supports the Matter standard protocol, the Matter client device 110 can control the robot vacuum to start or stop working, control the robot vacuum's operating mode, etc.

[0041] Optionally, the communication system 100 shown in Figure 1 may also include other devices such as a configuration device (commissioner), which is not limited in this embodiment of the present application. For example, the configuration device can be used to configure the Matter server device 120. In other words, the configuration device can be understood as a terminal device equipped with a configuration terminal, and the user can configure the Matter server device 120 through the configuration terminal. Among them, the terminal device can be a mobile phone, a computer, a tablet computer, a smart bracelet, a smart watch, etc., which is not limited in this embodiment of the present application. In some embodiments, the configuration terminal can be an application or a mini-program, etc., which is not limited in this embodiment of the present application.

[0042] It should be noted that the configuration terminal can be the same APP or mini-program as the Matter client. Of course, the configuration terminal can be a different APP or mini-program from the Matter client. This embodiment of the application is not limited to this.

[0043] Layered architecture of Matter devices

[0044] The architecture of a Matter device can be divided into multiple layers, with different layers fulfilling different responsibilities. Figure 2 shows an example diagram of the layered architecture of a Matter device. As shown in Figure 2, the architecture of a Matter device can be divided into seven layers, from high to low: application layer, data model layer, interaction model layer, action framing layer, security layer, message layer, and IP transport layer.

[0045] The application layer corresponds to the high-level business logic of a Matter device. For example, an application focused on lighting might contain logic to handle turning a light bulb on / off, as well as its color characteristics.

[0046] The data model layer corresponds to data primitives that help describe the functionality of a device. When a Matter device has the intent to interact with another device (for example, another Matter device), the application can execute these data structures.

[0047] The interaction model layer represents a set of operations that can be performed on a Matter device to interact with other devices (for example, another Matter device). These operations can execute the structures defined in the data model layer.

[0048] Once an operation is constructed using the interaction model, it is serialized into a specified binary format for encoding for network transmission. This process is handled at the operation frame layer.

[0049] The security layer can process the encoded operation frame, such as encrypting the message, adding a message authentication code, etc. These operations can ensure that the data remains confidential and authentic between the sender and receiver of the message.

[0050] For serialized, encrypted, and signed interactions, the messaging layer can use required and optional header fields to construct a payload format that can specify message properties and logical routing information.

[0051] After the message layer constructs the payload, the message is sent to the IP transport layer for IP management of the data through the underlying transport protocol (e.g., TCP protocol).

[0052] Interaction model of Matter device

[0053] The interaction model of Matter devices is implemented in the interaction model layer of Matter devices. The interaction model of Matter devices can be used to define interactions, transactions, and actions between Matter client devices and Matter server devices. Matter client devices and Matter server devices can be understood as different nodes.

[0054] It should be noted that a physical entity (e.g., a Matter device) can support multiple nodes. Furthermore, a node can have multiple node identifiers (IDs), each scoped to a specific fabric. For example, when a node ID is used as the target address for an interaction, the network scoped to the specified node ID is the access network for the interaction.

[0055] An operation may be understood as a single logical communication from a source node to one or more target nodes, for example, a single logical communication from a Matter client device to a Matter server device, or a single logical communication from a Matter server device to a Matter client device.

[0056] Operation types can include various types, such as read request operations, report data operations, status response operations, subscription request operations, and subscription response operations. A read request operation can be used to request cluster attribute data and / or events. A report data operation can be used to respond to a read request operation or a subscription request operation. A status response operation can be used to return a success or error response. A subscription request operation can be used to request subscription to cluster attribute data and / or events. A subscription response operation can be used to respond to a subscription request operation.

[0057] Transaction types include various types, such as read transactions, subscription transactions, report transactions, write transactions, and call transactions. Read transactions can be used to request capability set attributes and / or event data. Subscribe transactions can be used to subscribe to capability set attributes and / or event data. Report transactions can be used as part of a subscription interaction to maintain a subscription interaction. Write transactions can be used to modify capability set attributes. Call transactions can be used to invoke capability set commands.

[0058] A transaction consists of a series of operations, or in other words, a transaction can include one or more operations. For example, a read transaction can include multiple operations, such as a read request, a data report, and a status response. For example, a subscription transaction can include multiple operations, such as a subscription request, a data report, and a subscription response. For example, a report transaction can include only a data report, or multiple operations, such as a data report and a status response.

[0059] There are many types of interactions, such as read interactions, subscription interactions, write interactions, and call interactions. Read interactions can be used to request feature set attributes and / or event data. Subscription interactions can be used to subscribe to feature set attributes and / or event data. Write interactions can be used to modify feature set attributes. Call interactions can be used to invoke feature set commands.

[0060] An interaction consists of a series of transactions, or in other words, an interaction can include one or more transactions. For example, a read interaction can include only a single transaction: a read transaction. For example, a subscription interaction can include multiple transactions, such as a subscription transaction and a report transaction.

[0061] Report data action

[0062] As described above, different transactions may include data reporting operations, such as read transactions, subscription transactions, and report transactions. In some embodiments, the data reporting operation is the first operation in a report transaction (as part of a subscription interaction), for example, the first operation of each synchronous report transaction. In some embodiments, the data reporting operation is a subsequent operation of a read request operation or a subscription request operation, for example, as part of a read transaction that directly responds to a read request operation, or as part of a subscription transaction that directly responds to a subscription request operation.

[0063] For detailed information about the data reporting operation, see Table 2. As shown in Table 2, a data reporting operation can consist of one or more required and optional fields. Taking the required field "SuppressResponse" as an example, this field can be used to indicate whether the client device should respond to the data reporting operation. When "SuppressResponse" is set to TRUE, it indicates that the client device does not respond to the data reporting operation; when "SuppressResponse" is set to FALSE, it indicates that the client device does respond to the data reporting operation.

[0064] Table 2

[0065]

[0066] In some embodiments, the data reporting operation may be unicast.

[0067] In some embodiments, the attribute reporting and / or event reporting list in the data reporting operation may be empty.

[0068] In some embodiments, if the associated fabric of the operation field of a data reporting operation does not match the access fabric of the interaction, then the data reporting operation shall not include any nested attribute data fields or nested event data fields defined as fabric sensitive.

[0069] In some embodiments, SuppressResponse may be set to TRUE for a data reporting operation that initiates a report transaction with an empty list of delivery attributes and event reports. In some embodiments, SuppressResponse should be set to TRUE for a data reporting operation that is part of a read transaction. In some embodiments, SuppressResponse should be set to FALSE for a report data operation that is part of a subscription transaction.

[0070] It should be noted that after the client device receives the data reporting operation, if the SuppressResponse of the data reporting operation is TRUE, the client device does not generate a response to the data reporting operation; otherwise, the client device may generate a status response operation.

[0071] In some embodiments, when the client device generates a status response operation, the status codes corresponding to the status response operation may include the following: success (SUCCESS), to continue interacting with the server device; invalid subscription (INVALID_SUBSCRIPTION), this status code can be used when the data reporting operation is part of a subscription interaction and the subscription ID is invalid; failure (FAILURE), to terminate the interaction with the server device.

[0072] Data reporting message (ReportDataMessage)

[0073] Operations can be delivered by one or more messages. The actual construction and encoding of messages occurs at the message layer, which sits below the interaction model layer. In other words, the message layer can encode an interaction model layer operation into one or more messages and deliver the messages to their destination. For example, the message layer of a server device can encode a data reporting operation into one or more data reporting messages and deliver these one or more data reporting messages to a client device.

[0074] The content of the data reporting message may be referred to Table 3. As shown in Table 3, the data reporting message may include one or more fields, such as SuppressResponse, MoreChunkedMessages, and the like.

[0075] Table 3

[0076]

[0077] In some embodiments, if a single data reporting message cannot satisfy the data reporting operation, the sender (eg, a server device) may send multiple data reporting messages.

[0078] In some embodiments, for each data reporting message received by a receiver (eg, a client device), the receiver should return a successful status response message (StatusResponseMessage) to the sender unless SuppressResponse is TRUE.

[0079] In some embodiments, SuppressResponse should not be set to TRUE when AttributeReports or EventReports is a non-empty array.

[0080] As can be seen from the description above, when a client device and a server device perform a read interaction, at the interaction model layer, the SuppressResponse field of the data reporting operation should be set to TRUE. At the message layer, the SuppressResponse field of the data reporting message should be set to FALSE if AttributeReports or EventReports is a non-empty array. As a result, when the server device sends a data reporting message to the client device, the client device may report an error due to a different understanding of the SuppressResponse field. In other words, improperly setting the field in the data reporting message that indicates whether the client device needs to respond to the data reporting message can cause the client device to report an error after receiving the data reporting message, complicating interoperability in read interactions.

[0081] In order to avoid the above problems, the embodiments of the present application propose three embodiments, which can make the setting of the field used to indicate whether the client device needs to respond to the data reporting message (i.e., the first field below) more reasonable, and help to improve the interoperability of read interaction. Among them, embodiment one aims to determine the value of the first field based on whether the first data reporting message is the last data reporting message corresponding to the read request. Embodiment two aims to set the value of the first field in the data reporting message to the second value (i.e., the client device does not respond to the first data reporting message) to be consistent with the value of the field in the upper-layer data reporting operation for indicating whether a response to the data reporting operation is required. Embodiment three aims to set the value of the first field in the data reporting message to the first value (the client device responds to the first data reporting message). Embodiments one to three are described below respectively.

[0082] To facilitate understanding, the process of performing read interaction between the client device and the server device is first described.

[0083] Figures 3 and 4 are flowcharts of read interactions provided by embodiments of the present application. In some embodiments, the flowchart can also be understood as a flowchart of a read transaction. As described above, a read interaction can include multiple operations such as a read request operation, a data reporting operation, and a status response operation. For each operation in a read interaction, one or more messages can be delivered. For example, a read request operation can be delivered by a read request message, a data reporting operation can be delivered by one or more data reporting messages, and so on. Among them, the data reporting operation is constructed at the interaction model layer, and the data reporting message is constructed and encoded at the message layer.

[0084] Figure 3 shows a schematic flow diagram of a data reporting operation transmitted by a data reporting message. As shown in Figure 3, in step S310, the client device sends a read request to the server device.

[0085] The read request may be used to request function set attribute data and / or events. In some embodiments, the read request may be understood as a read request message, which is used to transmit a read request operation of a client device.

[0086] In step S320, the server device sends a first data reporting message to the client device.

[0087] After the server device receives the read request sent by the client device, it can determine the function set attribute data and / or event corresponding to the read request based on the read request, and send a data reporting message to the client device, wherein the data reporting message carries the function set attribute data report and / or event report corresponding to the read request.

[0088] In some embodiments, function set attribute data reports and event reports can be carried in data reporting messages in the form of arrays. For example, the attribute data report can include one or more attribute reporting information block arrays (for example, AttributeReportIB array), and the event report can include one or more event reporting information block arrays (for example, EventReportIB array).

[0089] As mentioned above, a read request can correspond to one or more data reporting messages. In the example of Figure 3, the read request corresponds to only one data reporting message (i.e., only the first data reporting message). In this case, the first data reporting message can carry all function set attribute data and / or events corresponding to the read request. In some embodiments, when a read request corresponds to only one data reporting message, it can be considered that the server device uses a single reporting method to send a data reporting message to the client device.

[0090] In some embodiments, the first data reporting message may include a first field, and the first field may be used to indicate whether the client device needs to respond to the first data reporting message.

[0091] In some embodiments, the first data reporting message may omit the first field. For example, if the value of the first field is used to indicate that the client device is responding to the first data reporting message (i.e., the value of the first field described below is the first value), the first data reporting message may omit the first field. The first field will be described in detail later and is not detailed here.

[0092] In step S330, the client device determines whether to send a status response to the server device. In some embodiments, if the value of the first field is used to instruct the client device to send a status response to the server device, or if the first field is omitted from the first data reporting message, the process shown in Figure 3 may also include step S340. In step S340, the client device sends a status response to the server device. The status response can be used to return a success or error response to the server device. In some embodiments, the status response can be understood as a status response message, which is used to convey the status response operation of the client device.

[0093] The embodiment of the present application does not limit the status code included in the status response message. For example, the status code can be any one of a successful, failed, or invalid subscription.

[0094] Figure 4 shows a flow chart of a data reporting operation transmitted by multiple data reporting messages. As shown in Figure 4, in step S410, the client device sends a read request to the server device.

[0095] For the relevant description of step S410, please refer to step S310, which will not be repeated here.

[0096] In step S420, the server device sends a data reporting message to the client device.

[0097] In this example, the read request corresponds to multiple data reporting messages, and the first data reporting message can be any one of the multiple data reporting messages. In other words, the function set attribute data and / or events corresponding to the read request require multiple data reporting messages to carry, and the first data reporting message carries part of the function set attribute data and / or events corresponding to the read request. In some embodiments, when a read request corresponds to multiple data reporting messages, it can be considered that the server device sends the data reporting message to the client device in a segmented reporting manner, wherein each data reporting message carries part of the segmented data.

[0098] In some embodiments, the server device may split the function set attribute data and / or event corresponding to the read request into multiple segmented data, and each data reporting message carries part of the segmented data among the multiple segmented data.

[0099] For any one of the multiple data reporting messages, it may include the first field or omit the first field.

[0100] For any one of the multiple data reporting messages, after the client device receives the data reporting message sent by the server device, it can determine whether to send a status response to the server device based on the received data reporting message. For example, when the value of the first field is the first value or the first field is omitted in the first data reporting message, a status response is sent to the server device; when the value of the first field is the second value, no status response is sent to the server device.

[0101] If the value of the first field in a data report message among the multiple data report messages is used to instruct the client device to send a status response to the server device, or if the first field is omitted from the data report message, then in the process shown in FIG4 , after the server device sends the data report message to the client device, the client device may also send a status response to the server device. For details about the status response, please refer to the description of step S340 above and will not be repeated here.

[0102] From the above description, it can be seen that after the client device receives the data report message sent by the server device, whether it needs to respond to the data report message is related to the first field. The following describes how to determine the value of the first field in conjunction with Examples 1 to 3.

[0103] It should be noted that the following embodiments are described using the first data reporting message as an example. The first data reporting message can be understood as any one of one or more data reporting messages sent by the server device to the client device.

[0104] In an embodiment of the present application, the first field is used to indicate whether the client device needs to respond to the data reporting message. In some embodiments, the first field can be, for example, the SuppressResponse mentioned above.

[0105] The first field may have different values, for example, two values ​​(a first value and / or a second value), wherein the first value may be used to instruct the client device to respond to the first data reporting message, and the second value may be used to instruct the client device not to respond to the first data reporting message.

[0106] In some embodiments, the type of the first field may be a Boolean type. For example, the first value may be FALSE to indicate that the client device responds to the first data reporting message; the second value may be TRUE to indicate that the client device does not respond to the data reporting message. However, the embodiments of the present application are not limited thereto. For example, the type of the first field may be a numeric type. As an example, the first value may be 0 to indicate that the client device responds to the first data reporting message; the second value may be any value other than 0 (for example, the second value may be any value greater than 0, such as the second value is 1) to indicate that the client device does not respond to the first data reporting message.

[0107] In some embodiments, if the value of the first field is the first value, when the server device sends the first data reporting message to the client device, the first field in the first data reporting message can be omitted, that is, when the value of the first field is the first value, the first data reporting message can omit the first field. After the client device receives the first data reporting message, if the first data reporting message omits the first field, the client device needs to respond to the first data reporting message, that is, the client device needs to send a status response to the server device. Of course, the embodiments of the present application are not limited to this. In some embodiments, if the value of the first field is the second value, when the server device sends the first data reporting message to the client device, the first field in the first data reporting message can be omitted.

[0108] Example 1:

[0109] In the first embodiment, the value of the first field may be determined based on the first information. The first information is used to indicate whether the first data report message is the last data report message corresponding to the read request.

[0110] In some embodiments, if the first information indicates that the first data reporting message is not the last data reporting message corresponding to the read request, the value of the first field can be the first value; if the first information indicates that the first data reporting message is the last data reporting message corresponding to the read request, the value of the first field can be the second value.

[0111] In some embodiments, before sending the first data reporting message to the client device, the server device may set the value of the first field according to the first information.

[0112] As an implementation method, if the read request corresponds only to the first data report message (i.e., the server device sends the data report message using a single report method), the first data report message can be understood as the last data report message corresponding to the read request. In this case, the server device can set the value of the first field to the second value.

[0113] Figure 5 is a flow chart of a data reporting method provided by an embodiment of the present application, wherein the flow chart of the data reporting method can also be understood as a flow chart of a read interaction between a client device and a server device. In the method shown in Figure 5, a read request corresponds to only one data reporting message.

[0114] In step S510 , the client device sends a read request to the server device.

[0115] In step S520 , after receiving the read request, the server device sets the value of the first field according to the first information.

[0116] In this example, the server device determines that the read request corresponds only to the first data report message, and then determines that the first data report message is the last data report message corresponding to the read request. Based on this, the server device can set the value of the first field to the second value.

[0117] In step S530, the server device sends a first data reporting message to the client device, wherein the value of the first field in the first data reporting message is the second value.

[0118] In this way, after receiving the reported data sent by the server device, the client device determines not to respond to the data reporting message according to the value of the first field.

[0119] As another implementation, if the read request corresponds to multiple data report messages (i.e., the server device sends data report messages in segmented reporting), before sending the first data report message to the client device, the server device needs to determine whether the first data report message is the last data report message among the multiple data report messages. In this case, the server device can set the value of the first field based on the determination result.

[0120] Specifically, if the read request corresponds to multiple data reporting messages, and the first data reporting message is the last data reporting message among the multiple data reporting messages, the server device sets the value of the first field to the second value. If the read request corresponds to multiple data reporting messages, and the first data reporting message is not the last data reporting message among the multiple data reporting messages, the server device sets the value of the first field to the first value.

[0121] Figure 6 is a flow chart of a data reporting method provided by another embodiment of the present application. In the method shown in Figure 6, a read request corresponds to multiple data reporting messages.

[0122] In step S610 , the client device sends a read request to the server device.

[0123] In step S620, after receiving the read request, the server device sets the value of the first field of the first data report message among the multiple data report messages.

[0124] In this example, the server device determines that the read request corresponds to multiple data reporting messages. The server device can set the value of the first field of the first data reporting message in the multiple data reporting messages to the first value (in this case, the first field of the first data reporting message can also be omitted).

[0125] In step S630, the server device sends a first data reporting message among multiple data reporting messages to the client device, wherein the value of the first field in the first data reporting message is a first value.

[0126] In step S640 , the client device sends a status response to the server device to return a success or error response.

[0127] In step S650, the server device sets a value of a first field of a second data reporting message among the multiple data reporting messages.

[0128] If the second data report message is the last data report message among the multiple data report messages, the server device sets the value of the first field of the second data report message to the second value. In this way, after receiving the data report message sent by the server device, the client device determines not to respond to the data report message based on the value of the first field.

[0129] If the second data report message is not the last data report message among the multiple data report messages, the server device sets the value of the first field of the second data report message to the first value. In this way, after receiving the data report message sent by the server device, the client device determines to send a status response to the server device based on the value of the first field.

[0130] If the second data report message is not the last data report message among the multiple data report messages, the server device continues to determine whether subsequent data report messages are the last data report message among the multiple data report messages until it is determined that a data report message is the last data report message among the multiple data report messages. In this case, the server device sets the value of the first field of the last data report message to the second value.

[0131] In some embodiments, if the first information indicates that the first data reporting message is not the last data reporting message corresponding to the read request, the value of the first field can be the second value; if the first information indicates that the first data reporting message is the last data reporting message corresponding to the read request, the value of the first field can be the first value.

[0132] In some embodiments, before sending the first data reporting message to the client device, the server device may set the value of the first field according to the first information.

[0133] As an implementation, if the read request corresponds only to the first data report message (i.e., the server device sends the data report message using a single report), the first data report message can be understood as the last data report message corresponding to the read request. In this case, the server device can set the value of the first field to the first value.

[0134] Figure 7 is a flow chart of a data reporting method provided by another embodiment of the present application. In the method shown in Figure 7, a read request corresponds to only one data reporting message.

[0135] In step S710 , the client device sends a read request to the server device.

[0136] In step S720 , after receiving the read request, the server device sets the value of the first field according to the first information.

[0137] In this example, the server device determines that the read request corresponds only to the first data report message, and then determines that the first data report message is the last data report message corresponding to the read request. Based on this, the server device can set the value of the first field to the first value.

[0138] In step S730, the server device sends a first data reporting message to the client device, wherein the value of the first field in the first data reporting message is a first value.

[0139] In step S740 , the client device sends a status response to the server device to return a success or error response.

[0140] As another implementation, if the read request corresponds to multiple data report messages (i.e., the server device sends data report messages in segmented reporting), before sending the first data report message to the client device, the server device needs to determine whether the first data report message is the last data report message among the multiple data report messages. In this case, the server device can set the value of the first field based on the determination result.

[0141] Specifically, if the read request corresponds to multiple data reporting messages, and the first data reporting message is the last data reporting message among the multiple data reporting messages, the server device sets the value of the first field to the first value. If the read request corresponds to multiple data reporting messages, and the first data reporting message is not the last data reporting message among the multiple data reporting messages, the server device sets the value of the first field to the second value.

[0142] Figure 8 is a flow chart of a data reporting method provided by another embodiment of the present application. In the method shown in Figure 8, a read request corresponds to multiple data reporting messages.

[0143] In step S810 , the client device sends a read request to the server device.

[0144] In step S820, after receiving the read request, the server device sets the value of the first field of the first data report message among the multiple data report messages.

[0145] In this example, the server device determines that the read request corresponds to multiple data reporting messages, and the server device may set the value of the first field of the first data reporting message among the multiple data reporting messages to the second value.

[0146] In step S830, the server device sends a first data report message from among the multiple data report messages to the client device, wherein the value of the first field in the first data report message is the second value. Thus, upon receiving the first data report message from the server device, the client device determines not to respond to the first data report message based on the value of the first field.

[0147] In step S840, the server device sets a value of a first field of a second data reporting message among the multiple data reporting messages.

[0148] If the second data report message is the last of the multiple data report messages, the server device sets the value of the first field of the second data report message to the first value. In this way, after receiving the data report message sent by the server device, the client device determines whether to respond to the data report message based on the value of the first field. In this case, after step S840, the client device may also send a status response to the server device to return a success or error response.

[0149] If the second data report message is not the last data report message among the multiple data report messages, the server device sets the value of the first field of the second data report message to the second value. In this way, after the client device receives the data report message sent by the server device, it does not send a status response to the server device based on the value of the first field.

[0150] If the second data report message is not the last data report message among the multiple data report messages, the server device continues to determine whether subsequent data report messages are the last data report message among the multiple data report messages until it is determined that a data report message is the last data report message among the multiple data report messages. In this case, the server device sets the value of the first field of the last data report message to the first value.

[0151] In some embodiments, the first data reporting message may include a second field, and the second field is used to carry the first information. That is, the second field may be used to indicate whether the first data reporting message is the last data reporting message corresponding to the read request.

[0152] In some embodiments, when the value of the second field is used to indicate that the first data reporting message is the last data reporting message corresponding to the read request, the second field may be omitted in the first data reporting message.

[0153] In some embodiments, the second field may be used to directly indicate whether the first data reporting message is the last data reporting message corresponding to the read request.

[0154] In some embodiments, the second field can be used to indirectly indicate whether the first data reporting message is the last data reporting message corresponding to the read request. For example, the second field can be used to indicate whether the read request corresponds to more block messages after the first data reporting message (that is, after the server device sends the first data reporting message, whether there is subsequent to-be-sent data corresponding to the read request that needs to be sent). If the value of the second field is used to indicate that the read request has no block messages to be sent after the first data reporting message, it can be considered that the first data reporting message is the last data reporting message corresponding to the read request; if the value of the second field is used to indicate that the read request corresponds to more block messages after the first data reporting message (the read request has block messages to be sent after the first data reporting message), it can be considered that the first data reporting message is not the last data reporting message corresponding to the read request.

[0155] That is to say, if there is no subsequent data to be sent after the server device sends the first data reporting message, the first data reporting message is the last data reporting message corresponding to the read request; if there is still subsequent data to be sent after the server device sends the first data reporting message, the first data reporting message is not the last data reporting message corresponding to the read request.

[0156] In some embodiments, the second field may have a third value and / or a fourth value, wherein the third value may be used to indicate that the first data reporting message is the last data reporting message corresponding to the read request, and the fourth value may be used to indicate that the first data reporting message is not the last data reporting message corresponding to the read request.

[0157] In some embodiments, the second field may be, for example, the MoreChunkedMessages mentioned above.

[0158] In some embodiments, the type of the second field may be a Boolean type. For example, the third value may be FALSE to indicate that the first data reporting message is the last data reporting message corresponding to the read request; the fourth value may be TRUE to indicate that the first data reporting message is not the last data reporting message corresponding to the read request. However, the embodiments of the present application are not limited to this. For example, the type of the second field may be a numerical type. As an example, the third value may be 0 to indicate that the first data reporting message is the last data reporting message corresponding to the read request; the second value may be any value other than 0 (for example, the second value may be any value greater than 0, such as the second value is 1) to indicate that the first data reporting message is not the last data reporting message corresponding to the read request.

[0159] In some embodiments, if the value of the second field is the third value, when the server device sends the first data reporting message to the client device, the second field in the first data reporting message may be omitted.

[0160] In some embodiments, the first data reporting message is a data reporting message including an attribute data report and / or an event report.

[0161] In some embodiments, at least one of the attribute data report and the event report in the first data reporting message is a non-empty array, for example, the attribute data report in the first data reporting message is a non-empty array, or both the attribute data report and the event report in the first data reporting message are non-empty arrays.

[0162] In some embodiments, the attribute data report and / or event report in the first data reporting message being a non-empty array may mean that the AttributeReports and / or EventReports in the first data reporting message are non-empty arrays. However, the embodiments of the present application are not limited to this. In some embodiments, the first data reporting message may be a data reporting message that does not include an attribute data report and / or event report. In other words, the AttributeReports and / or EventReports in the first data reporting message are empty arrays.

[0163] Example 2:

[0164] In Example 2, the value of the first field is the second value. In other words, regardless of the circumstances, the first field in the first data reporting message can be used to instruct the client device not to respond to the first data reporting message. This is because, for data reporting operations in read transactions, the client device does not respond to the data reporting operation. The setting mechanism of the first field in the lower-layer data reporting message is consistent with the setting mechanism of the corresponding field in the upper-layer data reporting operation, which is conducive to improving the interoperability of read interactions.

[0165] As an implementation method, if the read request corresponds only to the first data report message (i.e., the server device sends the data report message using a single report method), the first data report message can be understood as the last data report message corresponding to the read request. In this case, the server device can set the value of the first field to the second value.

[0166] Figure 9 is a flow chart of a data reporting method provided by another embodiment of the present application. In the method shown in Figure 9, a read request corresponds to only one data reporting message.

[0167] In step S910 , the client device sends a read request to the server device.

[0168] In step S920 , after receiving the read request, the server device sets the value of the first field to the second value.

[0169] In step S930, the server device sends a first data reporting message to the client device, wherein the value of the first field in the first data reporting message is the second value.

[0170] In this way, after receiving the reported data sent by the server device, the client device determines not to respond to the data reporting message according to the value of the first field.

[0171] As another implementation method, if the read request corresponds to multiple data reporting messages (that is, the server device sends data reporting messages in a segmented reporting manner), in this case, the server device can set the value of the first field to the second value before sending the first data reporting message.

[0172] Specifically, if the read request corresponds to multiple data reporting messages, regardless of whether the first data reporting message is the last data reporting message in the multiple data reporting messages, the server device sets the value of the first field to the second value.

[0173] Figure 10 is a flow chart of a data reporting method provided by another embodiment of the present application. In the method shown in Figure 10, a read request corresponds to multiple data reporting messages.

[0174] In step S1010 , the client device sends a read request to the server device.

[0175] In step S1020, after receiving the read request, the server device sets the value of the first field of the first data report message among the multiple data report messages to the second value.

[0176] In step S1030, the server device sends a first data reporting message among multiple data reporting messages to the client device, wherein the value of the first field in the first data reporting message is the second value.

[0177] In step S1040, the server device sets the value of the first field of the second data reporting message among the multiple data reporting messages to the second value.

[0178] In step S1050, the server device sends a second data reporting message to the client device, where the value of the first field in the second data reporting message is the second value.

[0179] This process is deduced in this way until the server device sends multiple data reporting messages corresponding to the read request to the client device, wherein the value of the first field in any one of the multiple data reporting messages is set to the second value.

[0180] Example 3:

[0181] In the third embodiment, the value of the first field is the first value. In other words, no matter under what circumstances, the first field in the first data reporting message can be used to instruct the client device to respond to the first data reporting message.

[0182] As an implementation, if the read request corresponds only to the first data report message (i.e., the server device sends the data report message using a single report), the first data report message can be understood as the last data report message corresponding to the read request. In this case, the server device can set the value of the first field to the first value.

[0183] Figure 11 is a flow chart of a data reporting method provided by another embodiment of the present application. In the method shown in Figure 11, a read request corresponds to only one data reporting message.

[0184] In step S1110 , the client device sends a read request to the server device.

[0185] In step S1120 , after receiving the read request, the server device sets the value of the first field to the first value.

[0186] In step S1130 , the server device sends a first data reporting message to the client device, wherein the value of the first field in the first data reporting message is a first value.

[0187] In step S1140 , the client device sends a status response to the server device.

[0188] As another implementation method, if the read request corresponds to multiple data reporting messages (that is, the server device sends data reporting messages in a segmented reporting manner), in this case, the server device can set the value of the first field to the first value before sending the first data reporting message.

[0189] Specifically, if the read request corresponds to multiple data reporting messages, the server device sets the value of the first field to the first value regardless of whether the first data reporting message is the last data reporting message among the multiple data reporting messages.

[0190] Figure 12 is a flow chart of a data reporting method provided by another embodiment of the present application. In the method shown in Figure 12, a read request corresponds to multiple data reporting messages.

[0191] In step S1210 , the client device sends a read request to the server device.

[0192] In step S1220, after receiving the read request, the server device sets the value of the first field of the first data report message among the multiple data report messages to the first value.

[0193] In step S1230, the server device sends a first data reporting message among multiple data reporting messages to the client device, wherein the value of the first field in the first data reporting message is a first value.

[0194] In step S1240, after receiving the reported data sent by the server device, the client device sends a status response to the server device.

[0195] In step S1250, the server device sets the value of the first field of the second data reporting message among the multiple data reporting messages to the first value, and sends the second data reporting message to the client device.

[0196] This process is deduced in this way until the server device sends multiple data reporting messages corresponding to the read request to the client device, wherein the value of the first field in any one of the multiple data reporting messages is set to the first value.

[0197] The method embodiment of the present application is described in detail above in conjunction with Figures 1 to 12. The device embodiment of the present application is described in detail below in conjunction with Figures 13 to 15. It should be understood that the description of the method embodiment corresponds to the description of the device embodiment. Therefore, for parts not described in detail, reference can be made to the above method embodiment.

[0198] Figure 13 is a schematic diagram of the structure of a data reporting device provided in one embodiment of the present application. The data reporting device 1300 shown in Figure 13 can be configured on a server device, which can be any of the server devices described above. The data reporting device 1300 can include a receiving module 1310 and a sending module 1320.

[0199] The receiving module 1310 may be used for a read request sent by a client device.

[0200] The sending module 1320 can be used to send a first data reporting message to the client device, the first data reporting message includes or omits a first field, the first field has a first value or a second value, the first value is used to indicate that the client device responds to the first data reporting message, and the second value is used to indicate that the client device does not respond to the first data reporting message; wherein, the value of the first field is determined based on first information, and the first information is used to indicate whether the first data reporting message is the last data reporting message corresponding to the read request; or, the value of the first field is the second value; or, the value of the first field is the first value.

[0201] Optionally, if the first information indicates that the first data reporting message is not the last data reporting message corresponding to the read request, the value of the first field is the first value; if the first information indicates that the first data reporting message is the last data reporting message corresponding to the read request, the value of the first field is the second value.

[0202] Optionally, the apparatus 1300 further includes: a first setting module, configured to set the value of the first field to the second value if the read request corresponds only to the first data reporting message.

[0203] Optionally, the device 1300 also includes: a second setting module, used to set the value of the first field to the second value if the read request corresponds to multiple data reporting messages and the first data reporting message is the last data reporting message among the multiple data reporting messages; and / or a third setting module, used to set the value of the first field to the first value if the read request corresponds to multiple data reporting messages and the first data reporting message is not the last data reporting message among the multiple data reporting messages.

[0204] Optionally, if the first information indicates that the first data reporting message is not the last data reporting message corresponding to the read request, the value of the first field is the second value; if the first information indicates that the first data reporting message is the last data reporting message corresponding to the read request, the value of the first field is the first value.

[0205] Optionally, the apparatus 1300 further includes: a fourth setting module, configured to set the value of the first field to the first value if the read request corresponds only to the first data reporting message.

[0206] Optionally, the device 1300 also includes: a fifth setting module, used to set the value of the first field to the first value if the read request corresponds to multiple data reporting messages and the first data reporting message is the last data reporting message among the multiple data reporting messages; and / or a sixth setting module, used to set the value of the first field to the second value if the read request corresponds to multiple data reporting messages and the first data reporting message is not the last data reporting message among the multiple data reporting messages.

[0207] Optionally, the first data reporting message includes or omits a second field, and the second field is used to carry the first information.

[0208] Optionally, when the value of the second field is used to indicate that the first data reporting message is the last data reporting message corresponding to the read request, the first data reporting message omits the second field.

[0209] Optionally, when the value of the first field is the first value, the first data reporting message omits the first field.

[0210] Optionally, the first data reporting message is a data reporting message including an attribute data report and / or an event report, and at least one of the attribute data report and the event report is a non-empty array.

[0211] Figure 14 is a schematic diagram of the structure of a data reporting device provided in another embodiment of the present application. The data reporting device 1400 shown in Figure 14 can be configured on a client device, which can be any of the client devices described above. The data reporting device 1400 can include a first sending module 1410, a receiving module 1420, and a determining module 1430.

[0212] The first sending module 1410 may be configured to send a read request to the server device.

[0213] The receiving module 1420 can be used to receive a first data reporting message sent by the server device, the first data reporting message includes or omits a first field, the first field has a first value or a second value, the first value is used to indicate that the client device responds to the first data reporting message, and the second value is used to indicate that the client device does not respond to the first data reporting message.

[0214] The determination module 1430 can be used to determine whether to send a status response to the server device based on the value of the first field; wherein the value of the first field is determined based on first information, and the first information is used to indicate whether the first data reporting message is the last data reporting message corresponding to the read request; or, the value of the first field is the second value; or, the value of the first field is the first value.

[0215] Optionally, if the first information indicates that the first data reporting message is not the last data reporting message corresponding to the read request, the value of the first field is the first value; if the first information indicates that the first data reporting message is the last data reporting message corresponding to the read request, the value of the first field is the second value.

[0216] Optionally, if the read request only corresponds to the first data reporting message, the value of the first field is the second value.

[0217] Optionally, if the read request corresponds to multiple data reporting messages, and the first data reporting message is the last data reporting message among the multiple data reporting messages, the value of the first field is the second value; and / or if the read request corresponds to multiple data reporting messages, and the first data reporting message is not the last data reporting message among the multiple data reporting messages, the value of the first field is the first value.

[0218] Optionally, if the first information indicates that the first data reporting message is not the last data reporting message corresponding to the read request, the value of the first field is the second value; if the first information indicates that the first data reporting message is the last data reporting message corresponding to the read request, the value of the first field is the first value.

[0219] Optionally, if the read request only corresponds to the first data reporting message, the value of the first field is the first value.

[0220] Optionally, if the read request corresponds to multiple data reporting messages, and the first data reporting message is the last data reporting message among the multiple data reporting messages, the value of the first field is the first value; and / or if the read request corresponds to multiple data reporting messages, and the first data reporting message is not the last data reporting message among the multiple data reporting messages, the value of the first field is the second value.

[0221] Optionally, the first data reporting message includes or omits a second field, and the second field is used to carry the first information.

[0222] Optionally, when the value of the second field is used to indicate that the first data reporting message is the last data reporting message corresponding to the read request, the first data reporting message omits the second field.

[0223] Optionally, when the value of the first field is the first value, the first data reporting message omits the first field.

[0224] Optionally, the first data reporting message is a data reporting message including an attribute data report and / or an event report, and at least one of the attribute data report and the event report is a non-empty array.

[0225] Optionally, the apparatus 1400 further includes: a second sending module, configured to send the status response to the server device if the value of the first field is the first value or the first field is omitted from the first data reporting message.

[0226] Figure 15 is a schematic block diagram of a communication device according to an embodiment of the present application. The dashed lines in Figure 15 indicate that the unit or module is optional. Apparatus 1500 may be used to implement the method described in the above method embodiment. Apparatus 1500 may be a chip, a terminal device, or a network device.

[0227] The device 1500 may include one or more processors 1510. The processor 1510 may support the device 1500 to implement the method described in the method embodiment above. The processor 1510 may be a general-purpose processor or a special-purpose processor. For example, the processor may be a central processing unit (CPU). Alternatively, the processor may be another general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic device, discrete hardware component, etc. The general-purpose processor may be a microprocessor or the processor may be any conventional processor, etc.

[0228] The apparatus 1500 may further include one or more memories 1520. The memories 1520 store programs that can be executed by the processor 1510, causing the processor 1510 to perform the methods described in the above method embodiments. The memories 1520 may be independent of the processor 1510 or integrated into the processor 1510.

[0229] The apparatus 1500 may further include a transceiver 1530. The processor 1510 may communicate with other devices or chips via the transceiver 1530. For example, the processor 1510 may transmit and receive data with other devices or chips via the transceiver 1530.

[0230] The present application also provides a computer-readable storage medium for storing a program. The computer-readable storage medium can be applied to a terminal or network device provided in the present application, and the program enables a computer to execute the method performed by the terminal or network device in each embodiment of the present application.

[0231] The present application also provides a computer program product. The computer program product includes a program. The computer program product can be applied to a terminal or network device provided in the present application, and the program causes a computer to execute the method performed by the terminal or network device in each embodiment of the present application.

[0232] The embodiments of the present application also provide a computer program. The computer program can be applied to the terminal or network device provided in the embodiments of the present application, and the computer program enables a computer to execute the method performed by the terminal or network device in each embodiment of the present application.

[0233] It should be understood that the terms "system" and "network" in this application can be used interchangeably. In addition, the terms used in this application are only used to explain the specific embodiments of this application and are not intended to limit this application. The terms "first", "second", "third", and "fourth" in the specification and claims of this application and the accompanying drawings are used to distinguish different objects rather than to describe a specific order. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions.

[0234] In the embodiments of this application, the term "indication" may refer to a direct indication, an indirect indication, or an indication of an association. For example, "A indicates B" may refer to a direct indication of B, e.g., B can obtain information through A; it may refer to an indirect indication of B, e.g., A indicates C, e.g., B can obtain information through C; or it may refer to an association between A and B.

[0235] In the embodiment of the present application, "B corresponding to A" means that B is associated with A and B can be determined based on A. However, it should be understood that determining B based on A does not mean determining B based solely on A, but B can also be determined based on A and / or other information.

[0236] In the embodiments of the present application, the term "corresponding" may indicate a direct or indirect correspondence between the two, or an association relationship between the two, or a relationship between indication and indication, configuration and configuration, etc.

[0237] In the embodiments of the present application, "pre-definition" or "pre-configuration" may be implemented by pre-storing corresponding codes, tables, or other methods that can be used to indicate relevant information in a device (e.g., a terminal device and a network device). The present application does not limit the specific implementation method. For example, pre-definition may refer to information defined in a protocol.

[0238] In the embodiments of the present application, the “protocol” may refer to a standard protocol in the communications field, for example, it may include an LTE protocol, an NR protocol, and related protocols used in future communication systems, and the present application does not limit this.

[0239] In the embodiments of this application, the term "and / or" is simply a description of the association relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. In addition, the character " / " in this document generally indicates that the related objects are in an "or" relationship.

[0240] In various embodiments of the present application, the size of the serial numbers of the above-mentioned processes does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.

[0241] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0242] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.

[0243] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.

[0244] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from one website, computer, server or data center to another website, computer, server or data center via a wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) method. The computer-readable storage medium can be any available medium that can be read by a computer or a data storage device such as a server or data center that includes one or more available media integrated therein. The available medium may be a magnetic medium (eg, a floppy disk, a hard disk, a magnetic tape), an optical medium (eg, a digital versatile disc (DVD)), or a semiconductor medium (eg, a solid state disk (SSD)).

[0245] The above description is merely a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in this application should be included in the scope of protection of this application. Therefore, the scope of protection of this application should be based on the scope of protection of the claims.

Claims

1. A data reporting method, characterized in that: include: The server device receives the read request sent by the client device; The server device sends a first data reporting message to the client device, where the first data reporting message includes or omits a first field, the first field has a first value or a second value, the first value is used to instruct the client device to respond to the first data reporting message, and the second value is used to instruct the client device not to respond to the first data reporting message; The value of the first field is determined based on first information, and the first information is used to indicate whether the first data reporting message is the last data reporting message corresponding to the read request; or, the value of the first field is the second value; or, the value of the first field is the first value.

2. The method according to claim 1, characterized in that If the first information indicates that the first data reporting message is not the last data reporting message corresponding to the read request, the value of the first field is the first value; If the first information indicates that the first data reporting message is the last data reporting message corresponding to the read request, the value of the first field is the second value.

3. The method according to claim 2, characterized in that Before the server device sends the first data reporting message to the client device, the method further includes: If the read request corresponds only to the first data reporting message, the server device sets the value of the first field to the second value.

4. The method according to claim 2 or 3, characterized in that Before the server device sends the first data reporting message to the client device, the method further includes: If the read request corresponds to multiple data reporting messages, and the first data reporting message is the last data reporting message of the multiple data reporting messages, the server device sets the value of the first field to the second value; and / or If the read request corresponds to multiple data reporting messages, and the first data reporting message is not the last data reporting message among the multiple data reporting messages, the server device sets the value of the first field to the first value.

5. The method according to claim 1, wherein If the first information indicates that the first data reporting message is not the last data reporting message corresponding to the read request, the value of the first field is the second value; If the first information indicates that the first data reporting message is the last data reporting message corresponding to the read request, the value of the first field is the first value.

6. The method according to claim 5, characterized in that Before the server device sends the first data reporting message to the client device, the method further includes: If the read request corresponds only to the first data reporting message, the server device sets the value of the first field to the first value.

7. The method according to claim 5 or 6, characterized in that Before the server device sends the first data reporting message to the client device, the method further includes: If the read request corresponds to multiple data reporting messages, and the first data reporting message is the last data reporting message of the multiple data reporting messages, the server device sets the value of the first field to the first value; and / or If the read request corresponds to multiple data reporting messages, and the first data reporting message is not the last data reporting message among the multiple data reporting messages, the server device sets the value of the first field to the second value.

8. The method according to any one of claims 1 to 7, characterized in that The first data reporting message includes or omits a second field, and the second field is used to carry the first information.

9. The method according to claim 8, characterized in that In a case where the value of the second field is used to indicate that the first data reporting message is the last data reporting message corresponding to the read request, the first data reporting message omits the second field.

10. The method according to any one of claims 1 to 9, characterized in that When the value of the first field is the first value, the first data reporting message omits the first field.

11. The method according to any one of claims 1 to 10, characterized in that The first data reporting message is a data reporting message including an attribute data report and / or an event report, and at least one of the attribute data report and the event report is a non-empty array.

12. A data reporting method, characterized in that: include: The client device sends a read request to the server device; The client device receives a first data reporting message sent by the server device, where the first data reporting message includes or omits a first field, the first field has a first value or a second value, the first value is used to instruct the client device to respond to the first data reporting message, and the second value is used to instruct the client device not to respond to the first data reporting message; The client device determines whether to send a status response to the server device according to the value of the first field; The value of the first field is determined based on first information, and the first information is used to indicate whether the first data reporting message is the last data reporting message corresponding to the read request; or, the value of the first field is the second value; or, the value of the first field is the first value.

13. The method according to claim 12, characterized in that If the first information indicates that the first data reporting message is not the last data reporting message corresponding to the read request, the value of the first field is the first value; If the first information indicates that the first data reporting message is the last data reporting message corresponding to the read request, the value of the first field is the second value.

14. The method according to claim 13, characterized in that If the read request only corresponds to the first data reporting message, the value of the first field is the second value.

15. The method according to claim 13 or 14, characterized in that If the read request corresponds to multiple data reporting messages, and the first data reporting message is the last data reporting message of the multiple data reporting messages, the value of the first field is the second value; and / or If the read request corresponds to multiple data reporting messages, and the first data reporting message is not the last data reporting message among the multiple data reporting messages, the value of the first field is the first value.

16. The method according to claim 12, characterized in that If the first information indicates that the first data reporting message is not the last data reporting message corresponding to the read request, the value of the first field is the second value; If the first information indicates that the first data reporting message is the last data reporting message corresponding to the read request, the value of the first field is the first value.

17. The method according to claim 16, characterized in that If the read request only corresponds to the first data reporting message, the value of the first field is the first value.

18. The method according to claim 16 or 17, characterized in that If the read request corresponds to multiple data reporting messages, and the first data reporting message is the last data reporting message of the multiple data reporting messages, the value of the first field is the first value; and / or If the read request corresponds to multiple data reporting messages, and the first data reporting message is not the last data reporting message among the multiple data reporting messages, the value of the first field is the second value.

19. The method according to any one of claims 12 to 18, characterized in that The first data reporting message includes or omits a second field, and the second field is used to carry the first information.

20. The method according to claim 19, characterized in that In a case where the value of the second field is used to indicate that the first data reporting message is the last data reporting message corresponding to the read request, the first data reporting message omits the second field.

21. The method according to any one of claims 12 to 20, characterized in that When the value of the first field is the first value, the first data reporting message omits the first field.

22. The method according to any one of claims 12 to 21, characterized in that The first data reporting message is a data reporting message including an attribute data report and / or an event report, and at least one of the attribute data report and the event report is a non-empty array.

23. The method according to any one of claims 12 to 22, further comprising: after the client device determines whether to send a status response to the server device based on the value of the first field; If the value of the first field is the first value or the first data reporting message omits the first field, the client device sends the status response to the server device.

24. A data reporting device, characterized in that: The device is configured on a server device and includes: A receiving module, configured to receive a read request sent by a client device; a sending module, configured to send a first data reporting message to the client device, where the first data reporting message includes or omits a first field, the first field having a first value or a second value, the first value being used to instruct the client device to respond to the first data reporting message, and the second value being used to instruct the client device not to respond to the first data reporting message; The value of the first field is determined based on first information, and the first information is used to indicate whether the first data reporting message is the last data reporting message corresponding to the read request; or, the value of the first field is the second value; or, the value of the first field is the first value.

25. The device according to claim 24, characterized in that If the first information indicates that the first data reporting message is not the last data reporting message corresponding to the read request, the value of the first field is the first value; If the first information indicates that the first data reporting message is the last data reporting message corresponding to the read request, the value of the first field is the second value.

26. The device according to claim 25, characterized in that The device further comprises: A first setting module is configured to set the value of the first field to the second value if the read request only corresponds to the first data reporting message.

27. The device according to claim 25 or 26, characterized in that The device further comprises: a second setting module, configured to set the value of the first field to the second value if the read request corresponds to multiple data reporting messages and the first data reporting message is the last data reporting message among the multiple data reporting messages; and / or A third setting module is configured to set the value of the first field to the first value if the read request corresponds to multiple data reporting messages and the first data reporting message is not the last data reporting message among the multiple data reporting messages.

28. The device according to claim 24, characterized in that If the first information indicates that the first data reporting message is not the last data reporting message corresponding to the read request, the value of the first field is the second value; If the first information indicates that the first data reporting message is the last data reporting message corresponding to the read request, the value of the first field is the first value.

29. The device according to claim 28, characterized in that The device further comprises: A fourth setting module is configured to set the value of the first field to the first value if the read request only corresponds to the first data reporting message.

30. The device according to claim 28 or 29, characterized in that The device further comprises: a fifth setting module, configured to set the value of the first field to the first value if the read request corresponds to multiple data reporting messages and the first data reporting message is the last data reporting message of the multiple data reporting messages; and / or A sixth setting module is configured to set the value of the first field to the second value if the read request corresponds to multiple data reporting messages and the first data reporting message is not the last data reporting message among the multiple data reporting messages.

31. The device according to any one of claims 24 to 30, characterized in that The first data reporting message includes or omits a second field, and the second field is used to carry the first information.

32. The device according to claim 31, characterized in that In a case where the value of the second field is used to indicate that the first data reporting message is the last data reporting message corresponding to the read request, the first data reporting message omits the second field.

33. The device according to any one of claims 24 to 32, characterized in that When the value of the first field is the first value, the first data reporting message omits the first field.

34. The device according to any one of claims 24 to 33, characterized in that The first data reporting message is a data reporting message including an attribute data report and / or an event report, and at least one of the attribute data report and the event report is a non-empty array.

35. A data reporting device, characterized in that: The device is configured on a client device, and includes: A first sending module, configured to send a read request to a server device; a receiving module, configured to receive a first data reporting message sent by the server device, where the first data reporting message includes or omits a first field, the first field having a first value or a second value, the first value being used to instruct the client device to respond to the first data reporting message, and the second value being used to instruct the client device not to respond to the first data reporting message; a determination module, configured to determine whether to send a status response to the server device according to a value of the first field; The value of the first field is determined based on first information, and the first information is used to indicate whether the first data reporting message is the last data reporting message corresponding to the read request; or, the value of the first field is the second value; or, the value of the first field is the first value.

36. The device according to claim 35, characterized in that If the first information indicates that the first data reporting message is not the last data reporting message corresponding to the read request, the value of the first field is the first value; If the first information indicates that the first data reporting message is the last data reporting message corresponding to the read request, the value of the first field is the second value.

37. The device according to claim 36, characterized in that If the read request only corresponds to the first data reporting message, the value of the first field is the second value.

38. The device according to claim 36 or 37, characterized in that If the read request corresponds to multiple data reporting messages, and the first data reporting message is the last data reporting message of the multiple data reporting messages, the value of the first field is the second value; and / or If the read request corresponds to multiple data reporting messages, and the first data reporting message is not the last data reporting message among the multiple data reporting messages, the value of the first field is the first value.

39. The device according to claim 35, characterized in that If the first information indicates that the first data reporting message is not the last data reporting message corresponding to the read request, the value of the first field is the second value; If the first information indicates that the first data reporting message is the last data reporting message corresponding to the read request, the value of the first field is the first value.

40. The device according to claim 39, characterized in that If the read request only corresponds to the first data reporting message, the value of the first field is the first value.

41. The device according to claim 39 or 40, characterized in that If the read request corresponds to multiple data reporting messages, and the first data reporting message is the last data reporting message of the multiple data reporting messages, the value of the first field is the first value; and / or If the read request corresponds to multiple data reporting messages, and the first data reporting message is not the last data reporting message among the multiple data reporting messages, the value of the first field is the second value.

42. The device according to any one of claims 35 to 41, characterized in that The first data reporting message includes or omits a second field, and the second field is used to carry the first information.

43. The device according to claim 42, characterized in that In a case where the value of the second field is used to indicate that the first data reporting message is the last data reporting message corresponding to the read request, the first data reporting message omits the second field.

44. The device according to any one of claims 35 to 43, characterized in that When the value of the first field is the first value, the first data reporting message omits the first field.

45. The device according to any one of claims 35 to 44, characterized in that The first data reporting message is a data reporting message including an attribute data report and / or an event report, and at least one of the attribute data report and the event report is a non-empty array.

46. ​​The device according to any one of claims 35 to 45, characterized in that The device further comprises: The second sending module is configured to send the status response to the server device if the value of the first field is the first value or the first field is omitted in the first data reporting message.

47. A server device, characterized in that: The server comprises a memory and a processor, wherein the memory is used to store a program, and the processor is used to call the program in the memory so that the server device executes the method according to any one of claims 1 to 11.

48. A client device, characterized in that The method comprises a memory and a processor, wherein the memory is used to store a program, and the processor is used to call the program in the memory so as to enable the client device to execute the method according to any one of claims 12 to 23.

49. A device, characterized in that The device comprises a processor configured to call a program from a memory so as to enable the device to execute the method according to any one of claims 1 to 23.

50. A chip, characterized in that: The device comprises a processor configured to call a program from a memory so that a device equipped with the chip executes the method according to any one of claims 1 to 23.

51. A computer-readable storage medium, characterized in that A program is stored thereon, the program causing a computer to execute the method according to any one of claims 1 to 23.

52. A computer program product, characterized in that The method comprises a program for causing a computer to execute the method according to any one of claims 1 to 23.

53. A computer program, characterized in that The computer program causes a computer to execute the method according to any one of claims 1 to 23.