Equipment network distribution method, configurator and equipment

CN121444404APending Publication Date: 2026-01-30GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202380099616.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-09-06
Publication Date
2026-01-30

AI Technical Summary

Technical Problem

It is difficult for the prior art to realize customized distribution network processes through configurators that do not have user interaction capabilities, especially in scenarios where interaction with users is required.

Method used

Through other devices with user interaction capabilities (such as the first device) interacting with users, information associated with the devices to be distributed is obtained, thereby realizing the customized distribution process.

Benefits of technology

It solves the difficulties of configurators that do not have user interaction capabilities in implementing customized distribution network processes, improves the flexibility of distribution network methods, and can meet users' distribution network needs in different scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121444404A_ABST
    Figure CN121444404A_ABST
Patent Text Reader

Abstract

The invention provides an equipment network distribution method, a configurator and equipment. The device network configuration method comprises: a configurator sends a first command to a first device, the first command being used for indicating the first device to output first information, the first information being associated with a device to be subjected to network configuration, and the configurator having an association relationship with the first device. In the embodiment of the invention, the configurator which does not meet the customized network distribution requirement can execute the customized network distribution process through other equipment (such as the first equipment). For example, a configurator without user interaction capability can interact information (namely first information) associated with the equipment to be subjected to network configuration with the user through the equipment with the user interaction capability, so that customized network configuration can be realized.
Need to check novelty before this filing date? Find Prior Art

Description

Device network configuration method, configurator, and device Technical Field

[0001] The present application relates to the field of Internet of Things technology, and more specifically, to a device network configuration method, a configurator, and a device. Background Art

[0002] The device configuration process can include customized configuration processes to increase configuration flexibility. However, for some configuration devices (also known as configuration nodes) that cannot meet customized configuration requirements, such as those without user interaction capabilities, implementing customized configuration processes is also a problem that needs to be solved.

[0003] Summary of the Invention

[0004] This application provides a device network configuration method, a configurator, and a device. The following introduces various aspects involved in this application.

[0005] In a first aspect, a device network configuration method is provided, including: a configurator sends a first command to a first device, the first command is used to instruct the first device to output first information, the first information is associated with the device to be configured, and the configurator has an associated relationship with the first device.

[0006] In a second aspect, a device network configuration method is provided, including: a first device receives a first command sent by a configurator, the first command is used to instruct the first device to output first information, the first information is associated with the device to be configured, and the configurator has an associated relationship with the first device.

[0007] According to a third aspect, a device network configuration method is provided, comprising: a device to be configured sends first information to a configurator, where the first information is associated with the device to be configured.

[0008] In a fourth aspect, a configurator is provided, including: a first sending unit, used to send a first command to a first device, the first command is used to instruct the first device to output first information, the first information is associated with the device to be configured, and the configurator has an associated relationship with the first device.

[0009] In the fifth aspect, a device is provided, which is a first device, and the device includes: a receiving unit, used to receive a first command sent by a configurator, the first command is used to instruct the first device to output first information, the first information is associated with the device to be configured, and the configurator has an associated relationship with the first device.

[0010] In a sixth aspect, a device is provided, which is a device to be networked, and includes: a sending unit, configured to send first information to a configurator, where the first information is associated with the device to be networked.

[0011] In the seventh aspect, a configurator 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 configurator executes part or all of the steps in the method of the first aspect.

[0012] In the eighth aspect, a 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 device executes part or all of the steps in the method of the second aspect or the third aspect.

[0013] In a ninth aspect, an embodiment of the present application provides a communication system, which includes one or more of the above-mentioned configurators and devices. In another possible design, the system may also include other devices that interact with the configurator or device in the solution provided in the embodiment of the present application.

[0014] In a tenth 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 a configurator or device to execute part or all of the steps in the methods of the above aspects.

[0015] In an eleventh 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 configurator or 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.

[0016] In the twelfth 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.

[0017] In embodiments of the present application, a configurator that does not meet the customized network configuration requirements can execute the customized network configuration process through other devices (e.g., the first device). For example, a configurator that does not have user interaction capabilities can interact with a user through a device that has user interaction capabilities to exchange information associated with the device to be configured (i.e., the first information), thereby facilitating the implementation of customized network configuration. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] FIG1 is a model structure of a Matter device to which an embodiment of the present application can be applied.

[0019] FIG2 is a diagram illustrating an example of a system architecture of a communication system to which an embodiment of the present application may be applied.

[0020] FIG3 is a schematic diagram of the network configuration process of an IoT device provided in an embodiment of the present application.

[0021] FIG4 is a schematic diagram of a customized network configuration process according to an embodiment of the present application.

[0022] FIG5 is a flow chart of a device network configuration method according to an embodiment of the present application.

[0023] FIG6 is a schematic diagram of a customized network distribution process provided in an embodiment of the present application.

[0024] FIG7 is a schematic diagram of another customized network configuration process provided in an embodiment of the present application.

[0025] FIG8 is a schematic diagram of the structure of the configurator provided in an embodiment of the present application.

[0026] FIG9 is a schematic structural diagram of a device provided in an embodiment of the present application.

[0027] FIG10 is a schematic structural diagram of another device provided in an embodiment of the present application.

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

[0029] The technical solutions in this application will be described below in conjunction with the accompanying drawings. For ease of understanding, the following first introduces the terms involved in the embodiments of this application. 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 IoT protocols.

[0030] 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.

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

[0032] 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.

[0033] Data model of Matter device

[0034] 1 is a data model structure of a Matter device applicable to an embodiment of the present application. The data model structure 100 of the Matter device includes a node 110, an endpoint 120, and a function cluster 130.

[0035] Node 110 encapsulates a unique, addressable resource on the network, possessing a set of functions and capabilities that users can clearly perceive as a functional entity. Typically, node 110 can be the highest or outermost first-order element in a data model. In other words, node 110 is the only addressable element at the outermost level of a data model.

[0036] A physical entity (e.g., a Matter device) can be a node 110, or in other words, a node 110 can refer to a Matter device node. It should be noted that a node can have multiple node identifiers (IDs), and the scope of each node ID is a specific network (e.g., a fabric network). For example, when a node ID is used as the target address for an interaction, the network that specifies the node ID scope is the access network for the interaction.

[0037] A node may include one or more endpoints 120. An endpoint 120 is an instance, which can be a service or a virtual device, as indicated by a device type. Each endpoint 120 conforms to one or more device type definitions, which define the functional clusters supported by the endpoint. In some embodiments, an endpoint can be understood as a service / virtual device indicated by the device type. A functional cluster is an object class instantiated on the endpoint.

[0038] It should be noted that in this architecture model, the device type can be the highest semantic element. The device type defines a set of conformances of the endpoint 120. The device type defines a set of requirements for the node 110 or the endpoint 120.

[0039] Each endpoint 120 may be a collection of a type of functionality, which may include one or more functional clusters 130 .

[0040] Functional cluster 130 is a functional building block element of the data model. In some embodiments, functional cluster can also be referred to as functional set, cluster, cluster, cluster, etc., which is not limited by the embodiments of the present application. The functional cluster specification defines the client and server that correspond to each other through interaction. Functional cluster 130 can be regarded as an interface, service or object class, which is the lowest independent functional element in the data model. Each functional cluster 130 can be defined by a functional cluster specification, which defines the elements of the functional cluster 130, including attributes, events, commands and behaviors related to the interaction of these elements. In some embodiments, attributes, commands, and events can also be referred to as interface units of functional cluster 130, and corresponding functions can be provided through these three interface units.

[0041] In some embodiments, the attributes, events, commands, and behaviors in a functional cluster 130 are mandatory or optional, depending on the definition of the functional cluster 130 .

[0042] Generally, the above functional clusters can be divided into two categories: utility functional clusters and application functional clusters.

[0043] The utility function cluster is not part of the primary application operation of the endpoint. The utility function cluster can be used for configuration, discovery, addressing, diagnostics, monitoring device health, software updates, etc. The utility function cluster may have a temporary relationship with its function cluster counterpart. Exemplary utility function clusters may include a descriptor function cluster, a binding function cluster, a proxy configuration function cluster, etc.

[0044] An application function cluster supports the primary operations of an endpoint. In some embodiments, this cluster can also be referred to as a business function cluster. It can support the interaction of one or more persistent applications between a client and a server. For example, consider the on / off function cluster in a smart light. The client can send control commands to the server (i.e., the on / off function cluster) to turn the smart light on or off.

[0045] In some embodiments, the service function cluster may refer to a function cluster on other endpoints except endpoint 0 in the node (which may be understood as the first endpoint in the node, and the device type of the endpoint is "root node").

[0046] An application functionality cluster is not a utility functionality cluster, even though it may itself support utility functionality such as calibration, operation modes, etc. An application functionality cluster specification should not involve layers and processes outside its application domain.

[0047] The following is a brief introduction to the main elements of the function cluster, such as commands, properties, and events.

[0048] A functional cluster command (also known as a "command") is a set of data fields, each of which is passed between client and server functional cluster instances to invoke behavior on the command recipient. Currently, the protocol stipulates that each command can be listed in a table, which can contain columns for the command's data quality: ID, name, direction, response, access, and conformance. Accordingly, a command can indicate zero or more fields defined in a table. Each command field is defined as a row in the table.

[0049] Attributes are functional cluster data. Currently, the protocol stipulates that each attribute can be listed in a table. The data quality columns of the attribute defined in this table may include: ID, name, (data) type, constraint, other qualities, access, default (value), and compliance. In some implementations, attributes can also define their related semantics and behaviors. Attributes can reflect the queryable / settable state, configuration, and capabilities of a device. In some cases, if no permissions are explicitly defined for an attribute, the default access permissions take effect.

[0050] An event defines a record of something that happened in the past. In this respect, an event record can be thought of as a log entry that provides a chronological view of events on a node through a stream of event records. Unlike attributes, which do not provide any edge-preserving functionality (that is, there is no guarantee that every attribute change will be passed to the observer), events allow each individual edge or change to be captured and reliably passed to the observer. This is critical for safety and security applications that rely on guarantees of correct behavior. Currently, the protocol stipulates that each functional cluster event can be listed in a table, and the data quality columns defined by the table for the event can include: ID, priority, access, and compliance.

[0051] For ease of understanding, the following describes the meanings of several common data qualities included in commands, attributes, and events. It should be noted that the commands, attributes, and events in the embodiments of this application may also include other data qualities, or include some of the above data qualities. This embodiment of the application is not limited to this.

[0052] Identifier, which indicates the unique field ID of a field, or the unique identifier of a command (or attribute, event).

[0053] Name: The unique name of the field, or the name of the command (or attribute).

[0054] Type indicates the data type of the field, or the data type of the command parameter (or attribute parameter).

[0055] Direction, usually present in a command list, is used to define the transmission direction of the command. For example, it can be defined as from the client to the server. Another example is from the server to the client.

[0056] Access rights define how an element can be accessed (e.g., read or write) and what permissions are required to access the data. In some implementations, access rights may include V, which indicates that read access or call access requires view permission. Access rights may also include O, which indicates that "read access," "write access," or "call access" requires operation permission. Access rights may also include R, which indicates read access. Access rights may also include W, which indicates write access.

[0057] Response, usually exists in the command list, is used to define the response message of the command.

[0058] Quality, used to define additional data qualities not covered in other columns.

[0059] Default is used to define a default value. It should be noted that the default value is not the value used when the server returns the factory refresh settings. Default values ​​can indicate that the compliance specified for a data field is optional or can change over time. Default values ​​can be defined to fulfill dependencies when the actual data field value does not exist.

[0060] Conformance defines the optionality and dependencies of any data model element or set of elements. Typically, this column is valid for attributes, commands, events, enumerations, and fields of commands, events, or structures. In some implementations, "M" indicates that the corresponding command is part of the basic mandatory feature set, and "O" indicates that the corresponding command is part of the optional feature set.

[0061] For commands, client-to-server command conformance means that the server should recognize and support the client-to-server command and generate responses as defined. Server-to-client command conformance means that the server should send commands in a manner defined by the functional cluster behavior, i.e., respond to client-to-server commands. Command conformance depends on supported server features. Clients should not be required to support optional commands or commands that depend on optional features.

[0062] Constraints include "all" and "desc." "all" in a numeric data type indicates that all values ​​are allowed. "desc" indicates that the constraint is defined in the description section.

[0063] Range indicates the value range of the field. Range can support two forms: explicit constraint and width constraint. Among them, the explicit constraint can give the minimum and maximum values ​​corresponding to the value of the field, for example, the value range of a field is (0,128). The width constraint can limit the value of the field to a specific number of bytes, for example, the value of a field is limited to 8 bytes. In some embodiments, the value of the range may include "N / A" to indicate not applicable. Of course, "N / A" can also appear in other parts (other data quality), such as defaults, constraints, etc.

[0064] Priority: Each event record has an associated priority. This priority can be used to describe the usage semantics of the event.

[0065] Communication system based on Matter protocol

[0066] The following describes a communication system applicable to an embodiment of the present application in conjunction with Figure 2. The communication system shown in Figure 2 includes a Matter client device 210, a Matter server device 220, and a configurator 230. It should be noted that the data structure model of the Matter client device 210 and the Matter server device 220 can be as shown in Figure 1.

[0067] Matter client device 210 is a user-side client device that can communicate with Matter server device 220. In some implementations, Matter client device 210 can send control information to Matter server device 220 to control Matter server device 220. For example, when Matter server device 220 is a smart air conditioner, Matter client device 210 can send control information to Matter server device 220 to control the temperature of Matter server device 220.

[0068] In some embodiments, Matter client device 210 may also communicate with configurator 230 .

[0069] In some embodiments, the Matter client device 210 may refer to a terminal device installed with a Matter client, 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.

[0070] Matter server device 220 may refer to an IoT device that supports the Matter standard protocol, such as a smart air conditioner, a robot vacuum, etc. Matter server device 220 may communicate directly with Matter client device 210 so that Matter client device 210 can control Matter server device 220.

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

[0072] The commissioner 230 can be used to configure the Matter server device 220. In other words, the commissioner can be understood as a device with configuration authority, and the user can configure the Matter server device 220 through the commissioner.

[0073] In some embodiments, configurator 230 may be a device capable of configuring other devices to access a network. That is, the configurator can be used to connect a Matter server device to a network (e.g., the Internet, a local area network, etc.). In this case, configurator 230 may also be referred to as a network configuration device. As an implementation, configurator 230 may be a device that is already connected to a network.

[0074] The embodiment of the present application does not limit the specific type of configurator 230, as long as it can connect the Matter server device to the network. Exemplarily, configurator 230 can be a home gateway, terminal device, router, server, mobile phone, tablet computer, etc.

[0075] In some embodiments, for a certain network distribution system (for example, including a configurator and a Matter server device), the network distribution system may include one or more configurators 230 and one or more Matter server devices 220. Taking the network distribution system as a smart home life of a family as an example, the network distribution system may include one configurator 230 and multiple Matter server devices 220, or the network distribution system may include multiple configurators 230 and multiple Matter server devices 220.

[0076] Discovering the network configuration process

[0077] In certain situations, such as the first use of an unprovisioned IoT device (e.g., a Matter server device), the need to re-provision an IoT device after restoring factory settings, the use of an IoT device in a network change scenario (e.g., switching an IoT device from network A to network B), and the use of an IoT device in a network other than the current network (e.g., an IoT device (supporting Multi-Fabric network) has joined network A and needs to join network B, after which the device can exist in both network A and network B at the same time), it may be necessary to provision the IoT device based on its provisioning key in order to connect the IoT device to the network and thereby enable control of the IoT device through the network.

[0078] In some embodiments, the state in which an IoT device needs to access a network can be understood as the IoT device being in a commissionable state, or an authorized state, a pending configuration state, etc. For example, an IoT device can be understood to be in a commissionable state after being restored to factory settings, or an IoT device can be configured to enter a commissionable state when it needs to switch from network A to network B.

[0079] In some embodiments, the IoT device that needs to access the network can be called a device to be networked.

[0080] The following describes the network configuration process of IoT devices in conjunction with Figure 3.

[0081] 3 , in step 1-step 2, when the network device to be configured is in a configurable state, it may broadcast information indicating that it is in a configurable state.

[0082] In step 3, the user initiates interaction with the configurator and inputs an onboarding payload from the configurator.

[0083] In some embodiments, the onboarding payload can be understood as the network configuration information parameters corresponding to the device to be configured. For the specific content included in the onboarding payload, please refer to the description below.

[0084] The embodiments of this application do not specifically limit the method for obtaining the onboarding payload. For example, the onboarding payload can be obtained by the user by scanning a QR code on the device to be configured; or the user can obtain the onboarding payload from the product introduction information of the device to be configured, etc.

[0085] In some implementations, the user can obtain the discriminator and personal identification number (PIN) of the device to be configured in step 3 by scanning the QR code of the device to be configured, manually entering information including the setup code, or through other means.

[0086] In some embodiments, the content included in the onboarding payload and the content included in the configuration code may be the same, for example, both include the authentication code of the device to be configured, the configuration key, etc.

[0087] In some embodiments, the process of a user inputting an onboarding payload from a configurator can be understood as a setup code acquisition phase.

[0088] In some embodiments, after step 3, the device to be configured may return setup payload information to the configurator.

[0089] In step 4, the configurator decides which technologies to use for device discovery and searches for devices to be configured through the device discovery process.

[0090] The embodiments of the present application do not specifically limit the method of device discovery. For example, device discovery can be performed based on an IP bearer network, or based on Bluetooth low energy (BLE) or soft access point (Soft AP) broadcast.

[0091] In some embodiments, when the provisioner attempts to locate a device to be provisioned on an IP bearer network, it can use a provisioner discovery method, typically a Domain Name System Service Discovery (DNS-SD) service subtype with a long or short authenticator, and specify a configuration mode to filter the results to devices that match the authenticator in the onboarding payload and are in a configurable state. In some embodiments, when the provisioner attempts to locate a device to be provisioned via a BLE or Soft AP broadcast, the authenticator can be used to filter the results.

[0092] In some embodiments, the configurator may search for the device to be configured based on a discovery mechanism corresponding to a technology (eg, BLE or wireless fidelity (Wi-Fi)) specified in a message returned by the device to be configured.

[0093] In some embodiments, the process of the configurator searching for the device to be configured according to the discovery mechanism specified by the device to be configured can be understood as an early identify phase.

[0094] In steps 5 to 8, the configurator starts the configuration process and connects the device to be configured to the network.

[0095] In some embodiments, if the provisioner finds more than one device to be provisioned, the provisioner can further refine the results using any additional information (such as an authentication code, vendor ID, or product ID) to identify the device that requires provisioning. In some embodiments, this additional information can be obtained from the onboarding payload.

[0096] In some embodiments, if there are still multiple discovered devices to be configured after the configurator further refines using additional information, the configurator will typically attempt to establish a password authenticated session establishment (PASE) secure configuration session with each device to be configured. In some embodiments, the process of the configurator establishing a secure configuration session with the device to be configured can be understood as the session establishment phase.

[0097] In some embodiments, after initiating the configuration process, the configurator can determine the authenticity of the device to be configured as a certified Matter device, i.e., authenticate the device so that it can be connected to the network after authentication. In some embodiments, the process of requesting and validating the device authentication credentials of the manufacturer of the device to be configured can be understood as the late identify phase.

[0098] In some embodiments, after the configurator determines that the device authentication credentials of the manufacturer of the network device to be configured can be requested and are valid, the device to be configured can be granted a Matter operation certificate and other configuration parameters. In some embodiments, this process can be understood as a provisioning phase.

[0099] At this point, the device to be networked can use the granted network certificate to join the IPv6-borne network so as to operate the device through the network.

[0100] Onboarding Payload

[0101] The configurator can use the onboarding payload to ensure interoperability between the configurator and the device to be provisioned and provide a consistent user experience. The onboarding payload can consist of mandatory and optional information. Some or all of the information in the onboarding payload can be encoded in different formats. For example, some can be human-readable (e.g., a numeric string) and some can be machine-readable (e.g., a QR code or near field communication (NFC)) so that the onboarding payload can be printed or displayed on the device or integrated into the device.

[0102] The onboarding payload can include one or more of the following information: vendor and product IDs, custom flows, discovery capabilities bitmask, discriminator, and passcode. These are described in detail below.

[0103] Manufacturer ID and Product ID: The manufacturer ID and product ID (each value can be 16 bits) should be included in a machine-readable format and can be included in the manual pairing code. In some embodiments, the manufacturer ID can be assigned by the CSA Alliance. In some embodiments, the product ID can be specified by the vendor.

[0104] The manufacturer ID and product ID can be used to determine the brand and model of the device for further use in the commissioning process, such as in the device certification procedure. It should be understood that the manufacturer ID and product ID should not be specific to a unique physical device. Instead, the manufacturer ID and product ID are used to describe the product type, which may have many manufacturing instances.

[0105] In some embodiments, unique identifiers such as the manufacturer ID and product ID facilitate retrieval of device model metadata from the blockchain, such as product name, product description, and firmware update uniform resource locator (URL).

[0106] Custom Flow: A custom flow can include a 2-bit unsigned enumeration used to specify manufacturer-specific custom flow options.

[0107] In some embodiments, the value of the custom process field can be set to a non-zero value only if a custom device setup process is required before configuration. For example, a value of 1 indicates that user interaction with the device (e.g., pressing a button) is required before configuration can proceed. In some embodiments, for a given manufacturer ID and product ID, the specific steps required can be found in the Configuration Mode Initial Steps Prompt field on the blockchain. Alternatively, a value of 2 indicates that initial device setup requires interaction with a manufacturer-provided service before configuration by other Matter configurators. In some embodiments, the URL of the manufacturer-provided service can be found on the blockchain for a given manufacturer ID and product ID. In some embodiments, a unique identifier for the product type (e.g., a combination of the manufacturer ID and product ID) can be used to facilitate retrieval to locate the URL of the manufacturer-provided service from a local or remote database. For example, the URL field can be obtained directly from the configurator's own dataset or a database maintained by the vendor, providing additional details beyond the default value in the blockchain.

[0108] Discovery Capabilities Mask: The discovery capabilities mask may contain information about the technologies available for device discovery. In some embodiments, the 8-bit capabilities bitmask may be included in a machine-readable format.

[0109] Authenticator: The authenticator helps further identify a potential device during the pairing process and helps improve the speed and robustness of the user's pairing experience.

[0110] In some embodiments, the authentication code may be a 12-bit unsigned integer that should match the value advertised by the device upon pairing.

[0111] In some embodiments, in order to easily distinguish the device that broadcasts, the authentication code corresponding to each device should be different.

[0112] In some embodiments, for a machine-readable format, the full 12-digit authentication code may be used. In some embodiments, for a manual pairing code, only the upper 4 digits of the 12-digit authentication code may be used.

[0113] Configuration Key: The configuration key can be used to establish proof of possession and can also be used as a shared key to establish an initial secure channel for further activation steps on that channel. In some embodiments, the configuration key can also be called a configuration password, password, etc.

[0114] In some embodiments, the configuration key can be a 27-bit unsigned integer that serves as proof of possession during pairing. A 27-bit unsigned integer can encode an 8-digit decimal value, so the configuration key should be limited to 0x0000001 to 0x5F5E0FE (00000001 to 99999998 decimal), excluding invalid configuration key values.

[0115] Customized network configuration process

[0116] The device network configuration process can include customized configuration processes to increase configuration flexibility. This customized configuration process is one implementation of discovery and configuration. The following describes the customized configuration process for IoT devices, using Figure 4.

[0117] The method shown in FIG4 may involve interactions between a user, a configurator, a database, a manufacturer's webpage, and a manufacturer's application. The database may be a blockchain database, such as a distributed blockchain database, such as a distributed compliance ledger (DCL).

[0118] Referring to FIG4 , after the user starts the network configuration process, in steps 1 and 2, the user can obtain the network configuration method, manufacturer ID, and product ID of the device through the configurator.

[0119] In some embodiments, the user can obtain the device's network configuration method by scanning a QR code on the device to be configured; alternatively, the user can obtain the device's manufacturer ID and product ID from the product introduction information or broadcast information of the device to be configured.

[0120] In steps 3 and 4, the configurator queries the database for the device's customized network configuration flow based on the product ID and manufacturer ID. For example, if the custom flow field is 2, the device's customized network configuration flow is a customized network configuration flow. Therefore, the customized network configuration flow can also be referred to as a manufacturer-customized network configuration flow or a custom network configuration flow.

[0121] In steps 5 and 6, the configurator retrieves and obtains the URL of the customized network configuration process from the DCL.

[0122] In step 7, the configurator prompts and guides (eg, redirects) the user to use manufacturer support or a manufacturer application.

[0123] In some embodiments, the customized network configuration process URL points to the device manufacturer's webpage to display the user terms document (such as Legal Text), such as steps 8 and 9 below.

[0124] In step 8, the configurator expands the customized network configuration process URL.

[0125] In step 9, the configurator opens the extended customized network configuration process URL to display the user terms document.

[0126] In other embodiments, the customized network configuration process URL directs the user to the device manufacturer's webpage, downloads the manufacturer's application, and displays the user terms document after opening the APP, such as steps 10 to 14 below.

[0127] In step 10, the manufacturer web page redirects to the manufacturer application download link.

[0128] In step 11, the manufacturer application guides the user to set the device to a configurable or authorizable state. For example, the manufacturer application displays a user terms document, and if the user accepts the user terms document, the device can be set to a configurable state.

[0129] In step 12, the manufacturer application sends a status message to the user indicating that the setup is complete and network configuration is ready, and redirects the response message.

[0130] In step 13, the manufacturer app extension returns a URL.

[0131] In step 14, the return URL is opened.

[0132] After the user completes the above interaction with the manufacturer service, the device can be set to a configurable state, so that step 15 can be executed, that is, network configuration can be started.

[0133] As can be seen from the network configuration process described above, a customized network configuration process requires the configurator to have certain capabilities, such as displaying the contents of the user terms document and / or receiving user feedback. Therefore, for configurators that do not have user interaction capabilities, how to implement a customized network configuration process is a problem that needs to be solved.

[0134] The present invention provides a device network configuration method and device to address the aforementioned issues. In this embodiment, a configurator that does not meet customized network configuration requirements can execute the customized network configuration process through another device (e.g., a first device). For example, a configurator without user interaction capabilities can communicate with a user through a device with user interaction capabilities to exchange information associated with the device to be configured (i.e., the first information), thereby facilitating customized network configuration.

[0135] Figure 5 is a flow chart of the device network configuration method provided in an embodiment of the present application. The method shown in Figure 5 involves a configurator, a first device, and a device to be configured. The method shown in Figure 5 can be applied to a variety of scenarios for discovering network configuration, such as the first use of an unconfigured IoT device (e.g., a Matter server device), the need to reconfigure the IoT device after restoring factory settings, the use scenario of the IoT device changing the network (e.g., switching the IoT device from network A to network B), and the use scenario of the IoT device joining other networks outside the current network (e.g., an IoT device (supporting Multi-Fabric network) has joined network A and needs to join network B, after which the device can exist in both network A and network B at the same time).

[0136] The method shown in FIG5 may include step S510, which is described below.

[0137] In step S510, the configurator sends a first command to the first device. In other words, the first device receives the first command sent by the configurator.

[0138] The configurator described above can refer to a device capable of configuring other devices to access the network. For example, the configurator can be a home gateway, terminal device, router, server, mobile phone, tablet computer, smart speaker, or other device. In some embodiments, the configurator does not support user interaction, such as displaying information or receiving user feedback. For example, the configurator can be a smart speaker without a display function, a home gateway, or the like. User feedback mentioned here can refer to, for example, user confirmation, acceptance, or rejection.

[0139] The first command described above can be used to instruct the first device to output first information, such as displaying the first information, to enable interaction with the user. The first information may be associated with the device to be provisioned. In some embodiments, the first information may be information that the device to be provisioned requires interaction with the user. For example, the first information may include a user terms document for the device to be provisioned, such as a user manual or privacy policy for the device to be provisioned.

[0140] In some embodiments, the association between the configurator and the first device may include the first device being an auxiliary network configuration device for the configurator. In other words, the configurator can implement the device's network configuration process through the first device. For example, the configurator can implement the device's network configuration process with the assistance of certain functions of the first device, such as display functions or user interaction functions. As an example, the first device may be a configurator with user interaction functions, such as a mobile phone.

[0141] In an embodiment of the present application, the configurator can implement customized network configuration by exchanging first information with the user through the first device, which helps to implement customized network configuration when the configurator does not support related functions.

[0142] As mentioned above, the customized network configuration process may require presenting a user terms document to the user and receiving user feedback regarding the user terms document. In some embodiments, the method shown in FIG5 may further include step S520, receiving user feedback regarding the user terms document.

[0143] In step S520, the configurator receives the second command sent by the first device. In other words, the first device sends the second command to the configurator.

[0144] The second command includes user feedback regarding the first information, or in other words, the second command indicates a response to the content of the first information. For example, the second command may indicate that the user accepts the content of the first information, such as accepting the content of the user privacy clause; the second command may also indicate that the user rejects the content of the first information, such as rejecting the content of the user privacy clause. As an example, the content of the second command may be determined based on the user's interaction with the first device (such as whether a button is pressed or an area on the screen indicating "accept" or "reject" is clicked).

[0145] After receiving a response to the content of the first information, it is necessary to determine whether the configurator continues to execute the network configuration process.

[0146] In some embodiments, the configurator may determine whether to continue the network configuration process based on the second command. For example, if the second command indicates that the user does not accept the content of the first message, the configurator may cancel the network configuration process; if the second command indicates that the user accepts the content of the first message, the configurator may continue the network configuration process.

[0147] In other embodiments, the configurator may receive a third command sent by the first device (or, in other words, the first device sends a third command to the configurator). This third command may be used to instruct the configurator to cancel the network configuration process for the device to be configured. Therefore, the configurator can determine whether to continue the network configuration process based on the third command sent by the first device, thereby helping to reduce the capacity requirements of the configurator during the network configuration process.

[0148] In other embodiments, for configurators with user interaction capabilities, such as voice interaction capabilities, whether to continue the network configuration process can be determined by interacting with the user. For example, when a smart Bluetooth speaker is used as a configurator, the user can control the smart Bluetooth speaker through voice to determine whether to continue the network configuration process. As an example, after displaying the user terms document to the user, if the smart Bluetooth speaker receives a voice command of "Continue network configuration," the smart Bluetooth speaker will continue the network configuration process; if the smart Bluetooth speaker receives a voice command of "Cancel network configuration," the smart Bluetooth speaker will cancel the network configuration process.

[0149] In an embodiment of the present application, whether the configurator continues to execute the network configuration process can be determined based on the capabilities of the configurator, thereby helping to improve the flexibility of the device network configuration method.

[0150] In some cases, even if the user does not accept the content of the first message, the configurator still continues to execute the network configuration process. For example, if the user does not accept the content of the first message, but still wants to continue network configuration (such as temporary network configuration), the configurator continues to execute the network configuration process, thereby helping to meet the user's different network configuration needs. As an example, if the configurator does not receive the above-mentioned third command within the first time window after learning that the user has rejected the content of the first message, the configurator continues to execute the network configuration process. As another example, a new command, such as a fourth command, can be introduced to instruct the configurator to continue executing the network configuration process.

[0151] It should be noted that when the user does not accept the content of the first message, the network configuration process executed can be the same as or different from the network configuration process executed when the user accepts the content of the first message. For example, when the user does not accept the content of the first message, the network configuration device to be configured can use a channel with a higher security level or a channel isolated from other data for data transmission.

[0152] In some embodiments, the configurator may send a second message to the device to be configured, or the device to be configured may receive the second message sent by the configurator. The second message may indicate a response to the first message, such as an acceptance or rejection response, to help the device determine whether to continue the configuration process based on user feedback.

[0153] In some embodiments, the second information may be associated with the second command, or the second information may be determined based on the second command. That is, if the second command instructs the user to accept the content of the first information, then the second information includes or instructs the user to accept the content of the first information, i.e., an acceptance response; if the second command instructs the user to reject the content of the first information, then the second information includes or instructs the user to reject the content of the first information, i.e., a rejection response.

[0154] In some embodiments, the second information can be used to determine whether the device to be configured should continue with the configuration process. Alternatively, the device to be configured can determine whether to continue with the configuration process based on the second information. For example, if the user does not accept the first information, the device to be configured can cancel the configuration process; if the user accepts the first information, the device to be configured can continue with the configuration process.

[0155] In some embodiments, the configurator may include a first functional cluster (eg, a commissioner assistant cluster), and the first functional cluster may include one or more of the first command, the second command, and the third command.

[0156] As an example, Table 1 provides an example of a first command, a second command, and a third command. In the example in Table 1, the first command is a ShowLegalTextRequest command, the second command is a ShowLegalTextResponse command, and the third command is a CancelCommissioning command. However, this application does not limit the names of the first command, the second command, and the third command, as long as they are used to implement one or more of the functions mentioned above.

[0157] Table 1

[0158] For example, the parameters of the first command may include the UserAgreement parameter in Table 2. In another example, the first command may also include the UserAgreementRevision parameter in Table 2, which may be used to indicate the version information of the user terms document. As an example, the value of the first version of the user terms document may be 1, and the new version document may have the original value of this parameter increased by 1.

[0159] Table 2

[0160] For example, the parameters of the second command may include the Acceptance parameter in Table 3.

[0161] Table 3

[0162] The Acceptance parameter is of Boolean type (bool). For example, a value of 1 (True) indicates that the user accepts the request, while a value of 0 (False) indicates that the user does not accept the request. Conversely, a value of 1 indicates that the user does not accept the request, while a value of 0 indicates that the user accepts the request.

[0163] As mentioned above, the configurator has an association relationship with the first device. In some embodiments, the association relationship between the first device and the configurator can be configured or pre-configured before or during the configurator performs customized network configuration.

[0164] Before configuring the above association relationship, it is necessary to determine whether the configurator and / or the first device supports the configuration of the above association relationship.

[0165] In some embodiments, the configurator may receive a discovery message sent by the first device, or in other words, the first device may send a discovery message to the configurator. The discovery message may be used to query the configurator whether it supports configuring associated devices. Based on the query result of the discovery message, it may be determined whether the configurator supports configuring the aforementioned association relationship. In addition, if the first device sends the discovery message, the first device may support configuring the aforementioned association relationship.

[0166] In other embodiments, the information on whether the configurator supports the above association relationship may be carried in a broadcast message of the configurator.

[0167] If the configurator supports configuring the aforementioned association relationship, the first device may initiate an association configuration request to the configurator, or the configurator may receive the association configuration request sent by the first device. For example, if the configurator is found to support configuration of the aforementioned association relationship through a discovery message query, or if the first device receives a broadcast message from the configurator indicating that the configurator supports configuration of the aforementioned association relationship, the first device may initiate an association configuration request to the configurator.

[0168] In some embodiments, the association configuration request may include device information of the first device, such as a node identifier (nodeID) of the first device.

[0169] In some embodiments, based on the association configuration request, the configurator may configure an association relationship between the configurator and the first device.

[0170] In some embodiments, the configurator may include a functional cluster, the functional cluster including a first attribute. The first attribute may be used to configure an association between the first device and the configurator. In addition, the functional cluster may be the first functional cluster mentioned above.

[0171] For example, Table 4 provides an example of the first attribute. In the example of Table 4, the first attribute is the AssociatedCommissioner attribute.

[0172] Table 4

[0173] "all" indicates that all values ​​of this type are supported. "F" indicates that this attribute is fabric-specific, and "A" indicates that access to this attribute requires administrator privileges.

[0174] Based on the first attribute, the first device may query the function cluster of the configurator through a discovery message to determine whether the configurator supports configuring the association relationship.

[0175] Based on the first attribute, the configurator can configure its association relationship with the first device. For example, the configurator can record the device information of the first device, such as nodeID, in the first attribute.

[0176] Based on the first attribute, when the configurator does not support exchanging first information with the user, the configurator can query the device information of the first device associated with it from the first attribute, thereby requesting the first device to exchange the first information with the user.

[0177] In some cases, a configurator may be associated with multiple specific networks (e.g., fabric networks). For example, a configurator may belong to multiple fabric networks. Therefore, multiple associated devices can be configured for the configurator, each associated device corresponding to one of the multiple fabric networks. In other words, the configurator can have an associated device in each fabric network, and the associated device can serve as an auxiliary network configuration device for the configurator in that fabric network.

[0178] In some embodiments, the aforementioned association between the configurator and the first device can be applied to a first network, where the first network is the network to which the device to be configured belongs. For example, when the device to be configured belongs to a first fabric network, the configurator can configure the device to be configured through an associated device in the first fabric network.

[0179] As an example, another example of the first attribute is provided in Table 5. In the example of Table 5, the first attribute is the AssociatedCommissioners attribute.

[0180] Table 5

[0181] For each fabric network to which the configurator belongs, an associated device must be set. For example, if the configurator has three associated fabric networks (i.e., SupportedFabrics = 3), the AssociatedCommissioners list will contain three NodeIDs, one for each associated device on each fabric network. Additionally, F indicates that the attribute is fabric network specific, and A indicates that access to the attribute requires administrator privileges.

[0182] As mentioned earlier, the customized network configuration process often requires exchanging information about the devices to be configured with the user through the manufacturer's website or application, which is a rather cumbersome operation.

[0183] Therefore, embodiments of the present application provide an enhanced network configuration process (or also referred to as a customized network configuration process) that addresses the aforementioned issues by instructing the device to be configured to support the sending of the aforementioned first information. Specifically, in the enhanced network configuration process, the device to be configured directly sends the first information to the configurator, or the configurator directly receives the first information from the device to be configured, instead of obtaining the first information through the manufacturer's website or manufacturer's application. This helps simplify the customized network configuration process and reduces the reliance on the network for obtaining the first information.

[0184] In some embodiments, whether the device to be networked supports sending the first information may be determined based on the third information. That is, whether the device to be networked supports the enhanced network configuration process may be determined based on the third information.

[0185] The third information can be carried in the payload of the device to be provisioned, such as a provisioning QR code or NFC tag. In some embodiments, a new field can be added to the payload, or a value can be added to an existing field in the payload, to indicate that the device supports the enhanced provisioning process.

[0186] Typically, the network configuration information element of the network configuration QR code of the device to be configured includes a network configuration process field. In an embodiment of the present application, a value can be added to the network configuration process field to indicate that the device supports the above-mentioned enhanced network configuration process for easy implementation. For example, in the related art, the value of the network configuration process field is 0, 1, 2, and there is another value used to indicate reservation. In an embodiment of the present application, the value of the network configuration process field can be 0, 1, 2, 3, and a value indicating reservation (such as 4). The value of the network configuration process field is 3, indicating that the device to be configured supports the enhanced network configuration process.

[0187] As an example, Table 6 provides an example of an information element table of a QR code of a device to be configured. In the example of Table 6, the configuration process field is Custom Flow, and the value of this field is 3 to indicate that the device supports the enhanced configuration process.

[0188] Table 6

[0189] The above-mentioned third information can also be carried in the DCL, such as carried in the DeviceModel Schema associated with the device to be networked. In some embodiments, a new field can be added, or a value can be added to an existing field to indicate that the device supports the above-mentioned enhanced network configuration process. The above-mentioned data table usually includes a CommissioningCustomFlow field, which is used to indicate the network configuration process supported by the device. In an embodiment of the present application, a value can be added to the CommissioningCustomFlow field to indicate that the device supports the above-mentioned enhanced network configuration process, so as to facilitate implementation. For example, the limit (or value) of the CommissioningCustomFlow field is increased from 0-2 to 0-3. As an example, when the value of the CommissioningCustomFlow field is 3, it indicates that the device supports the enhanced network configuration process, as shown in Table 7.

[0190] Table 7

[0191] The third information may be carried in the device discovery information broadcast by the device to be configured. For example, a new field may be added to the device discovery information, or a value of a field may be added to indicate that the device supports the enhanced configuration process.

[0192] In some embodiments, when the device to be configured supports the enhanced configuration process, that is, supports the device to directly send the first information, the configurator can receive the first information sent by the device to be configured, or the device to be configured can send the first information to the configurator.

[0193] The following takes the configurator as a home gateway, the first device as a mobile phone, and the first information as a user terms document as an example, and introduces two customized network configuration processes provided in the embodiment of the present application in combination with Figures 6 and 7.

[0194] Figure 6 is a schematic diagram of a customized network configuration process provided by an embodiment of the present application. The process shown in Figure 6 is implemented by querying the device's QR code information to determine whether the device to be configured supports the enhanced network configuration process. The network configuration process shown in Figure 6 involves a first device, a configurator, and the device to be configured (or, alternatively, a network-entering device).

[0195] The process shown in FIG6 may include steps S601 to S614 .

[0196] In step S601, a user may use a mobile phone to send a discovery message to a home gateway to query whether the home gateway supports configuration of associated devices. For example, the user uses a mobile phone to discover the Commissioner Assistant Cluster on the home gateway to query the first attribute in the Commissioner Assistant Cluster on the home gateway.

[0197] In step S602, the mobile phone writes its own nodeID into the AssociatedCommissioner attribute (ie, the first attribute). That is, if the home gateway supports configuring the associated commissioner, the mobile phone sends its own nodeID to the home gateway.

[0198] In step S603, the home gateway records the associated device. For example, the home gateway can save the nodeID of the mobile phone, such as in the AssociatedCommissioner attribute. Afterwards, the home gateway can act as a configurator, and the mobile phone can be an associated device of the home gateway.

[0199] In step S604, the device configuration begins. After the device to be configured is started, the home gateway discovers the device to be configured and starts the device configuration process.

[0200] In step S605, the device to be provisioned sends its user terms document to the configurator. Before this step is executed, the device to be provisioned first determines whether it has a user terms document. Furthermore, after obtaining the device's QR code, the home gateway confirms that the device supports the enhanced provisioning flow (e.g., Custom Flow = 3).

[0201] In step S606, the home gateway may determine whether it can display the user terms document information. If the home gateway does not have the ability to interact with the user, that is, the home gateway cannot display the user terms document information, then step S607 is executed.

[0202] In step S607, the home gateway searches for the associated device. For example, the home gateway finds the nodeID of the associated device (mobile phone) according to the recorded Associated Commissioner.

[0203] In step S608, the home gateway and the mobile phone establish a secure connection channel (such as a CASE connection). The connection channel can be used for secure communication between the mobile phone and the home gateway.

[0204] In step S609, the home gateway sends the user terms document to the mobile phone. For example, the home gateway sends the user terms document to the mobile phone via a ShowLegalTextRequest command.

[0205] In step S610, the mobile phone displays the user terms document to the user. After viewing the user terms document, the user can choose to accept or reject the content of the information.

[0206] In step S611, the mobile phone returns the user's confirmation information to the home gateway. The user's confirmation information is used to indicate that the user accepts the user terms document. For example, the mobile phone returns the user confirmation information (such as Acceptance=True) to the home gateway through the ShowLegalTextResponse command.

[0207] In step S612, the home gateway returns the user confirmation information to the device to be configured.

[0208] In step S613, the device to be networked determines whether to allow the network configuration to continue. In the above example, if the user accepts the terms document, the device to be networked saves the information and allows the network configuration to continue.

[0209] In step S614, the home gateway continues the network configuration process.

[0210] Figure 7 is a schematic diagram of another customized network configuration process provided by an embodiment of the present application. The process shown in Figure 7 is implemented by querying the relevant information in the DCL data table to determine whether the device to be configured supports the enhanced network configuration process. The network configuration process shown in Figure 7 involves a first device, a configurator, a device to be configured (or a network access device), and a DCL.

[0211] The process shown in FIG. 7 may include steps S701 to S719 .

[0212] In step S701, the user may use a mobile phone to send a discovery message to the home gateway to query whether the home gateway supports configuration of associated devices. For example, the user uses a mobile phone to discover the Commissioner Assistant Cluster on the home gateway to query the first attribute in the Commissioner Assistant Cluster on the home gateway.

[0213] In step S702, the mobile phone writes its own nodeID into the AssociatedCommissioner attribute (ie, the first attribute). That is, if the home gateway supports configuring the associated commissioner, the mobile phone sends its own nodeID to the home gateway.

[0214] In step S703, the home gateway records the associated devices. For example, the home gateway can save the nodeID of the mobile phone, such as in the AssociatedCommissioners attribute. Subsequently, the home gateway can act as a configurator on the fabric network, and the mobile phone can be an associated device of the home gateway.

[0215] In step S704, the device configuration is started. After the device to be configured is started, the home gateway discovers the device to be configured and starts the device configuration process.

[0216] In step S705, the home gateway obtains the manual pairing code of the device from the device to be paired, which includes the manufacturer ID and product ID of the device.

[0217] In step S706 , the home gateway uses the manufacturer ID and product ID to search the customized network configuration process field in the DCL.

[0218] In step S707, the home gateway obtains the value of the CommissioningCustomFlow field. For example, if the value of this field is 3, it means that the device supports the enhanced network configuration process.

[0219] In step S708, the device to be networked sends the user terms document information of the device to the configurator.

[0220] In step S709, the home gateway may determine whether it can display the user terms document information. If the home gateway does not have the ability to interact with the user, that is, the home gateway cannot display the user terms document information, then step S710 is executed.

[0221] In step S710, the home gateway searches for associated devices in the corresponding fabric network. For example, the home gateway finds the nodeID of the associated device (mobile phone) in the corresponding fabric network based on the recorded Associated Commissioners list.

[0222] In step S711, the home gateway and the mobile phone establish a secure connection channel (such as a CASE connection). The connection channel can be used for secure communication between the mobile phone and the home gateway.

[0223] In step S712, the home gateway sends the user terms document to the mobile phone. For example, the home gateway sends the user terms document to the mobile phone via a ShowLegalTextRequest command.

[0224] In step S713, the mobile phone displays the user terms document to the user. After browsing the user terms document, the user can choose to accept or reject the content of the information.

[0225] In step S714, the mobile phone returns the user's rejection information to the home gateway. The user's rejection information is used to indicate that the user does not accept the user terms document. For example, the mobile phone returns the user rejection information (such as Acceptance=False) to the home gateway through the ShowLegalTextResponse command.

[0226] In step S715, the home gateway returns the user rejection information to the device to be configured.

[0227] In step S716, the device to be networked determines whether to allow network configuration to continue. Since the user does not accept the user terms document, the device to be networked saves this information and suspends network configuration.

[0228] In step S717, the user cancels the network configuration for the device through the mobile phone.

[0229] In step S718, the mobile phone sends a command to cancel network provisioning, such as a CancelCommissioning command, to the home gateway.

[0230] In step S719, the home gateway cancels the network configuration process of the device and simultaneously closes the configuration channel.

[0231] The method embodiment of the present application is described in detail above in conjunction with Figures 1 to 7 . The device embodiment of the present application is described in detail below in conjunction with Figures 8 to 11 . It should be understood that the description of the method embodiment corresponds to the description of the device embodiment. Therefore, for portions not described in detail, reference can be made to the above method embodiment.

[0232] FIG8 is a schematic diagram of the structure of a configurator provided in an embodiment of the present application. The configurator 800 shown in FIG8 may include a first sending unit 810.

[0233] The first sending unit 810 can be used to send a first command to the first device, where the first command is used to instruct the first device to output first information, the first information is associated with the device to be configured, and the configurator has an associated relationship with the first device.

[0234] In some embodiments, the configurator further includes: a first receiving unit, configured to receive a second command sent by the first device, where the second command is used to indicate a response to content of the first information.

[0235] In some embodiments, the configurator further includes: a second receiving unit, configured to receive a third command sent by the first device, wherein the third command is configured to instruct the configurator to cancel the network configuration process of the device to be configured.

[0236] In some embodiments, the configurator further includes: a second sending unit, configured to send second information to the to-be-configured network device, wherein the second information is used to indicate a response to the content of the first information.

[0237] In some embodiments, the configurator includes a first functional cluster, which includes one or more of the following: the first command; the second command; and the third command; wherein the second command is used to indicate whether the user accepts the content of the first information, and the third command is used to instruct the configurator to cancel the network configuration process of the device to be configured.

[0238] In some embodiments, the association relationship between the configurator and the first device is applied to a first network, wherein the first network is the network to which the device to be configured belongs.

[0239] In some embodiments, the configurator includes a first functional cluster, the first functional cluster includes a first attribute, and the first attribute is used to configure an association relationship between the configurator and the first device.

[0240] In some embodiments, the configurator further includes: a third receiving unit, configured to receive the first information sent by the device to be configured before the configurator sends the first command to the first device if the device to be configured supports sending the first information.

[0241] In some embodiments, whether the device to be configured supports sending the first information is determined based on third information, and the third information is carried in one or more of the following: the configuration QR code of the device to be configured; the distributed compliance ledger DCL; and the device discovery information broadcast by the device to be configured.

[0242] In some embodiments, the configurator further includes: a fourth receiving unit, configured to receive discovery information sent by the first device before the configurator sends the first command to the first device, wherein the discovery information is used to query whether the configurator supports configuring associated devices.

[0243] In some embodiments, the configurator further includes: a fifth receiving unit, configured to receive an association configuration request sent by the first device, where the association configuration request includes device information of the first device.

[0244] In some embodiments, the configurator further includes: a configuration unit, configured to configure an association relationship between the configurator and the first device based on the association configuration request.

[0245] In some embodiments, the association relationship between the configurator and the first device includes that the first device is an auxiliary network configuration device of the configurator.

[0246] In some embodiments, the configurator does not support interaction of the first information with a user, and the first device supports interaction of the first information with a user.

[0247] In some embodiments, the first information includes a user terms document.

[0248] In some embodiments, the first command includes a first parameter, and the first parameter is used to indicate version information of the user terms document.

[0249] FIG9 is a schematic diagram of the structure of a device provided in an embodiment of the present application. The device 900 shown in FIG9 may be the first device mentioned above, and the device 900 may include a receiving unit 910.

[0250] The receiving unit 910 can be used to receive a first command sent by a configurator, where the first command is used to instruct the first device to output first information, where the first information is associated with the device to be configured, and the configurator has an associated relationship with the first device.

[0251] In some embodiments, the device further includes: a first sending unit, configured to send a second command to the configurator, where the second command is used to indicate a response to content of the first information.

[0252] In some embodiments, the device further includes: a second sending unit, configured to send a third command to the configurator, wherein the third command is configured to instruct the configurator to cancel the network configuration process of the device to be configured.

[0253] In some embodiments, the configurator includes a first functional cluster, which includes one or more of the following: the first command; the second command; and the third command; wherein the second command is used to indicate whether the user accepts the content of the first information, and the third command is used to instruct the configurator to cancel the network configuration process of the device to be configured.

[0254] In some embodiments, the association relationship between the configurator and the first device is applied to a first network, wherein the first network is the network to which the device to be configured belongs.

[0255] In some embodiments, the device further includes: a third sending unit, configured to send discovery information to the configurator before the first device receives the first command sent by the configurator, wherein the discovery information is used to query whether the configurator supports configuration of the associated device.

[0256] In some embodiments, the device further includes: a fourth sending unit, configured to send an association configuration request to the configurator, wherein the association configuration request includes device information of the first device.

[0257] In some embodiments, the association relationship between the configurator and the first device includes that the first device is an auxiliary network configuration device of the configurator.

[0258] In some embodiments, the configurator does not support interaction of the first information with a user, and the first device supports interaction of the first information with a user.

[0259] In some embodiments, the first information includes a user terms document.

[0260] In some embodiments, the first command includes a first parameter, and the first parameter is used to indicate version information of the user terms document.

[0261] FIG10 is a schematic diagram of the structure of another device provided in an embodiment of the present application. The device shown in FIG10 can be any of the network-to-be-provisioned devices described above. The device 1000 shown in FIG10 can include a sending unit 1010.

[0262] The sending unit 1010 may be configured to send first information to a configurator, where the first information is associated with the to-be-configured network device.

[0263] In some embodiments, the device further includes: a receiving unit, configured to receive second information sent by the configurator, where the second information is used to indicate a response to content of the first information.

[0264] In some embodiments, whether the device to be configured supports sending the first information is determined based on third information, and the third information is carried in one or more of the following: the configuration QR code of the device to be configured; the distributed compliance ledger DCL; and the device discovery information broadcast by the device to be configured.

[0265] In some embodiments, the first information includes a user terms document.

[0266] In an optional embodiment, the transmitting unit and the receiving unit mentioned above may be the transceiver 1130. The configurator 800, the device 900 and the device 1000 may further include a processor 1110 and a memory 1120, as specifically shown in FIG11 .

[0267] Figure 11 is a schematic block diagram of a communication device according to an embodiment of the present application. The dashed lines in Figure 11 indicate that the unit or module is optional. The device 1100 may be used to implement the method described in the above method embodiment. The device 1100 may be a chip, a configurator, or a device.

[0268] The device 1100 may include one or more processors 1110. The processor 1110 may support the device 1100 to implement the method described in the method embodiment above. The processor 1110 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.

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

[0270] The apparatus 1100 may further include a transceiver 1130. The processor 1110 may communicate with other devices or chips via the transceiver 1130. For example, the processor 1110 may transmit and receive data with other devices or chips via the transceiver 1130.

[0271] The present invention also provides a computer-readable storage medium for storing a program. The computer-readable storage medium can be applied to the configurator or device provided in the present invention, and the program causes a computer to execute the method performed by the configurator or device in each embodiment of the present invention.

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

[0273] The present application also provides a computer program that can be applied to the configurator or device provided in the present application, and enables a computer to execute the method performed by the configurator or device in each embodiment of the present application.

[0274] 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.

[0275] 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.

[0276] 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.

[0277] 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.

[0278] 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.

[0279] 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.

[0280] 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.

[0281] 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.

[0282] 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.

[0283] 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.

[0284] 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.

[0285] 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)).

[0286] 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 method for equipment network configuration, comprising: The configurator sends a first command to the first device, where the first command is used to instruct the first device to output first information, where the first information is associated with the to-be-configured network device, and the configurator has an associated relationship with the first device.

2. The method according to claim 1, further comprising: The configurator receives a second command sent by the first device, where the second command is used to indicate a response to content of the first information.

3. The method according to claim 2, further comprising: The configurator receives a third command sent by the first device, where the third command is used to instruct the configurator to cancel the network configuration process of the device to be configured.

4. The method according to claim 2 or 3, further comprising: The configurator sends second information to the to-be-configured network device, wherein the second information is used to indicate a response to the content of the first information.

5. The method according to any one of claims 1 to 4, wherein the configurator comprises a first functional cluster, wherein the first functional cluster comprises one or more of the following: the first command; Second Order; as well as Third Order; The second command is used to instruct the user whether to accept the content of the first information, and the third command is used to instruct the configurator to cancel the network configuration process of the device to be configured.

6. The method according to any one of claims 1 to 5, wherein the association relationship between the configurator and the first device is applied to a first network, wherein: The first network is the network to which the to-be-configured network device belongs. 7 . The method according to claim 1 , wherein the configurator comprises a first functional cluster, the first functional cluster comprises a first attribute, and the first attribute is used to configure an association relationship between the configurator and the first device.

8. The method according to any one of claims 1 to 7, before the configurator sends the first command to the first device, the method further comprises: In the case that the to-be-configured network device supports sending the first information, the configurator receives the first information sent by the to-be-configured network device.

9. According to the method of claim 8, whether the network device to be configured supports sending the first information is determined based on third information, and the third information is carried in one or more of the following: The network configuration QR code of the device to be configured; In the distributed compliance ledger DCL; and The device discovery information broadcast by the network device to be configured.

10. The method according to any one of claims 1 to 9, before the configurator sends the first command to the first device, the method further comprises: The configurator receives discovery information sent by the first device, where the discovery information is used to query whether the configurator supports configuration of associated devices.

11. The method according to claim 10, further comprising: The configurator receives an association configuration request sent by the first device, where the association configuration request includes device information of the first device.

12. The method according to claim 11, further comprising: Based on the association configuration request, the configurator configures an association relationship between the configurator and the first device.

13. According to the method according to any one of claims 1-12, the association relationship between the configurator and the first device includes that the first device is an auxiliary network configuration device of the configurator. 14 . The method according to claim 1 , wherein the configurator does not support interaction of the first information with a user, and the first device supports interaction of the first information with a user.

15. The method according to any one of claims 1-14, wherein the first information comprises a user terms document.

16. The method according to claim 15, wherein the first command comprises a first parameter, and the first parameter is used to indicate version information of the user terms document.

17. A method for equipment network configuration, comprising: The first device receives a first command sent by a configurator, wherein the first command is used to instruct the first device to output first information. A piece of information is associated with the device to be configured, and the configurator is associated with the first device.

18. The method according to claim 17, further comprising: The first device sends a second command to the configurator, where the second command is used to indicate a response to the content of the first information.

19. The method according to claim 18, further comprising: The first device sends a third command to the configurator, where the third command is used to instruct the configurator to cancel the network configuration process of the device to be configured.

20. The method according to any one of claims 17 to 19, wherein the configurator comprises a first functional cluster, wherein the first functional cluster comprises one or more of the following: the first command; Second Order; as well as Third Order; The second command is used to instruct the user whether to accept the content of the first information, and the third command is used to instruct the configurator to cancel the network configuration process of the device to be configured.

21. The method according to any one of claims 17 to 20, wherein the association relationship between the configurator and the first device is applied to a first network, wherein: The first network is the network to which the to-be-configured network device belongs.

22. The method according to any one of claims 17 to 21, before the first device receives the first command sent by the configurator, the method further comprises: The first device sends discovery information to the configurator, where the discovery information is used to query whether the configurator supports configuration of an associated device.

23. The method according to claim 22, further comprising: The first device sends an association configuration request to the configurator, where the association configuration request includes device information of the first device.

24. According to the method according to any one of claims 17-23, the association relationship between the configurator and the first device includes that the first device is an auxiliary network configuration device of the configurator.

25. The method according to any one of claims 17-24, wherein the configurator does not support interaction of the first information with a user, and the first device supports interaction of the first information with a user.

26. The method of any one of claims 17-25, wherein the first information comprises a user terms document.

27. The method according to claim 26, wherein the first command comprises a first parameter, and the first parameter is used to indicate version information of the user terms document.

28. A method for equipment network configuration, comprising: The network device to be configured sends first information to the configurator, where the first information is associated with the network device to be configured.

29. The method according to claim 28, further comprising: The network device to be configured receives second information sent by the configurator, where the second information is used to indicate a response to the content of the first information; The device to be networked determines whether to continue the network configuration process based on the second information.

30. According to the method of claim 28 or 29, whether the network device to be configured supports sending the first information is determined based on third information, and the third information is carried in one or more of the following: The network configuration QR code of the device to be configured; In the distributed compliance ledger DCL; and The device discovery information broadcast by the network device to be configured.

31. The method of any one of claims 28-30, wherein the first information comprises a user terms document.

32. A configurator comprising: The first sending unit is used to send a first command to a first device, where the first command is used to instruct the first device to output first information, where the first information is associated with the device to be configured, and the configurator has an associated relationship with the first device.

33. The configurator according to claim 32, further comprising: The first receiving unit is used to receive a second command sent by the first device, where the second command is used to indicate a response to the content of the first information.

34. The configurator of claim 33, further comprising: The second receiving unit is used to receive a third command sent by the first device, where the third command is used to instruct the configurator to cancel the network configuration process of the device to be configured.

35. The configurator according to claim 33 or 34, further comprising: A second sending unit is used to send second information to the network device to be configured, wherein the second information is used to indicate the first The content of the message is the response.

36. The configurator according to any one of claims 32 to 35, the configurator comprising a first functional cluster, wherein the first functional cluster comprises one or more of the following: the first command; Second Order; as well as Third Order; The second command is used to instruct the user whether to accept the content of the first information, and the third command is used to instruct the configurator to cancel the network configuration process of the device to be configured.

37. The configurator according to any one of claims 32 to 36, wherein the association relationship between the configurator and the first device is applied to a first network, wherein: The first network is the network to which the to-be-configured network device belongs.

38. The configurator according to any one of claims 32-37, the configurator comprising a first functional cluster, the first functional cluster comprising a first attribute, and the first attribute is used to configure an association relationship between the configurator and the first device.

39. The configurator according to any one of claims 32 to 38, further comprising: The third receiving unit is configured to receive the first information sent by the to-be-configured network device before the configurator sends the first command to the first device if the to-be-configured network device supports sending the first information.

40. The configurator according to claim 39, wherein whether the network device to be configured supports sending the first information is determined based on third information, and the third information is carried in one or more of the following: The network configuration QR code of the device to be configured; In the distributed compliance ledger DCL; and The device discovery information broadcast by the network device to be configured.

41. The configurator according to any one of claims 32 to 40, further comprising: The fourth receiving unit is used to receive discovery information sent by the first device before the configurator sends the first command to the first device, where the discovery information is used to query whether the configurator supports configuring associated devices.

42. The configurator of claim 41 , further comprising: The fifth receiving unit is configured to receive an association configuration request sent by the first device, where the association configuration request includes device information of the first device.

43. The configurator of claim 42, further comprising: A configuration unit is used to configure the association relationship between the configurator and the first device based on the association configuration request.

44. The configurator according to any one of claims 32-43, wherein the association relationship between the configurator and the first device includes that the first device is an auxiliary network configuration device of the configurator.

45. The configurator according to any one of claims 32-44, wherein the configurator does not support interaction of the first information with a user, and the first device supports interaction of the first information with a user.

46. ​​A configurator according to any one of claims 32-45, wherein the first information comprises a user terms document.

47. The configurator according to claim 46, wherein the first command comprises a first parameter for indicating version information of the user terms document.

48. A device, the device being a first device, comprising: The receiving unit is used to receive a first command sent by a configurator, where the first command is used to instruct the first device to output first information, where the first information is associated with a to-be-configured network device, and the configurator has an associated relationship with the first device.

49. The apparatus of claim 48, further comprising: The first sending unit is used to send a second command to the configurator, where the second command is used to indicate a response to the content of the first information.

50. The apparatus of claim 49, further comprising: The second sending unit is used to send a third command to the configurator, where the third command is used to instruct the configurator to cancel the network configuration process of the device to be configured.

51. The device according to any one of claims 48 to 50, wherein the configurator comprises a first functional cluster, wherein the first functional cluster comprises one or more of the following: the first command; Second Order; as well as Third Order; The second command is used to instruct the user whether to accept the content of the first information, and the third command is used to instruct the configurator to cancel the network configuration process of the device to be configured.

52. The device according to any one of claims 48 to 51, wherein the association between the configurator and the first device is applied to a first network, wherein: The first network is the network to which the to-be-configured network device belongs.

53. The apparatus of any one of claims 48-52, further comprising: The third sending unit is used to send discovery information to the configurator before the first device receives the first command sent by the configurator, where the discovery information is used to query whether the configurator supports the configuration of the associated device.

54. The apparatus of claim 53, further comprising: A fourth sending unit is configured to send an association configuration request to the configurator, where the association configuration request includes device information of the first device.

55. The device according to any one of claims 48-54, wherein the association relationship between the configurator and the first device includes that the first device is an auxiliary network configuration device of the configurator.

56. The device of any one of claims 48-55, wherein the configurator does not support interaction of the first information with a user, and the first device supports interaction of the first information with a user.

57. The apparatus of any one of claims 48-56, wherein the first information comprises a user terms document.

58. The device according to claim 57, the first command includes a first parameter, and the first parameter is used to indicate version information of the user terms document.

59. A device, the device being a device to be networked, comprising: The sending unit is used to send first information to the configurator, where the first information is associated with the network device to be configured.

60. The apparatus of claim 59, further comprising: A receiving unit is used to receive second information sent by the configurator, where the second information is used to indicate a response to the content of the first information.

61. According to the device of claim 59 or 60, whether the network device to be configured supports sending the first information is determined based on third information, and the third information is carried in one or more of the following: The network configuration QR code of the device to be configured; In the distributed compliance ledger DCL; and The device discovery information broadcast by the network device to be configured.

62. The apparatus of any one of claims 59-61, wherein the first information comprises a user terms document.

63. A configurator, comprising 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 configurator executes the method as described in any one of claims 1 to 16.

64. A device comprising 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 device executes the method as described in any one of claims 17-27 or 28-31.

65. An apparatus comprising a processor, configured to call a program from a memory so that the apparatus executes the method according to any one of claims 1 to 31.

66. A chip comprising a processor, configured to call a program from a memory so that a device equipped with the chip executes a method as claimed in any one of claims 1 to 29.

67. A computer-readable storage medium having a program stored thereon, wherein the program causes a computer to execute the method according to any one of claims 1 to 31.

68. A computer program product comprising a program, the program causing a computer to execute the method according to any one of claims 1 to 31.

69. A computer program, the computer program causing a computer to execute the method according to any one of claims 1 to 31.