WO2024050754A1 - Method for starting client, first device, configuration device, and cloud platform - Google Patents

Method for starting client, first device, configuration device, and cloud platform Download PDF

Info

Publication number
WO2024050754A1
WO2024050754A1 PCT/CN2022/117782 CN2022117782W WO2024050754A1 WO 2024050754 A1 WO2024050754 A1 WO 2024050754A1 CN 2022117782 W CN2022117782 W CN 2022117782W WO 2024050754 A1 WO2024050754 A1 WO 2024050754A1
Authority
WO
WIPO (PCT)
Prior art keywords
client
request
cloud platform
information
user
Prior art date
Application number
PCT/CN2022/117782
Other languages
French (fr)
Chinese (zh)
Inventor
茹昭
吕小强
包永明
张军
杨宁
Original Assignee
Oppo广东移动通信有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oppo广东移动通信有限公司 filed Critical Oppo广东移动通信有限公司
Priority to PCT/CN2022/117782 priority Critical patent/WO2024050754A1/en
Publication of WO2024050754A1 publication Critical patent/WO2024050754A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context

Definitions

  • the present application relates to the field of communication technology, and more specifically, to a method for starting a client, a first device, a configuration device and a cloud platform.
  • the client is usually a temporary client, or the user type of the client is a temporary user
  • a complete connection plan needs to be executed when establishing a connection between the client and the cloud platform, that is to say, a complete connection plan needs to be executed
  • Client configuration process, client registration process, and client login process are stipulated that a complete connection plan needs to be executed
  • Client configuration process, client registration process, and client login process are stipulated that a complete connection plan needs to be executed.
  • client configuration process, client registration process, and client login process Client configuration process, client registration process, and client login process.
  • the user types corresponding to the client also include long-term users. For long-term users, complex connection solutions will degrade the user experience if the connection between the client and the cloud platform needs to be re-established before each use of the client. Therefore, traditional connection solutions are not compatible with both temporary user and long-term user scenarios.
  • This application provides a method for starting a client, a first device, a configuration device and a cloud platform.
  • a client a first device
  • a configuration device a configuration device
  • a cloud platform a cloud platform
  • a method for starting a client including: a first device receiving a first request sent by a configuration device, the first request being used to request starting the client in the first device, the The client is used to communicate with the cloud platform.
  • a method for starting a client including: the cloud platform communicates with a client configured in a first device, the client of the first device is started based on the first request, and the third A request is used to request to start the client.
  • a method for starting a client including: configuring a device to send a first request to a first device, the first request being used to request to start a client in the first device, and the client The terminal is used to communicate with the cloud platform.
  • a first device including: a receiving unit configured to receive a first request sent by a configuration device, the first request being used to request to start a client in the first device, and the client The terminal is used to communicate with the cloud platform.
  • a cloud platform including: a communication unit configured to communicate with a client configured in a first device, where the client of the first device is started based on a first request, and the first Request is used to request to start the client.
  • a configuration device including: a sending unit configured to send a first request to a first device, the first request being used to request to start a client in the first device, and the client Used to communicate with the cloud platform.
  • a seventh aspect provides a first device, including a processor, a memory and a communication interface, the memory is used to store one or more computer programs, the processor is used to call the computer program in the memory, so that the The first device performs some or all of the steps of the method of the first aspect.
  • An eighth aspect provides a cloud platform, including a processor, a memory, and a transceiver.
  • the memory is used to store one or more computer programs.
  • the processor is used to call the computer program in the memory so that the cloud The platform performs some or all of the steps in the method of the second aspect.
  • a ninth aspect provides a configuration device, including a processor, a memory, and a transceiver.
  • the memory is used to store one or more computer programs.
  • the processor is used to call the computer program in the memory so that the configuration
  • the device performs some or all of the steps of the method of the third aspect.
  • embodiments of the present application provide a communication system, which includes one or more of the above-mentioned first device, configuration device, and cloud platform.
  • the system may also include other devices that interact with terminal devices or network devices in the solutions provided by the embodiments of this application.
  • embodiments of the present application provide a computer-readable storage medium that stores a computer program, and the computer program enables a communication device (for example, a first device, a configuration device, and a cloud platform ) performs some or all of the steps in the methods of each aspect described above.
  • a communication device for example, a first device, a configuration device, and a cloud platform
  • 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, and the computer program is operable to cause the communication device ( For example, the first device, the configuration device, and the cloud platform) perform some or all of the steps in the methods of the above aspects.
  • the computer program product can be a software installation package.
  • embodiments of the present application provide 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. .
  • a request for starting the client (also called the "first request") is introduced to start the client to accommodate the needs of both long-term users and temporary users.
  • the configuration device can directly request to start the client by sending a first request to the client. Compared with the traditional connection scheme, it does not require Repeating the client configuration process helps simplify the connection solution and improve user experience.
  • the configuration device may also request to start the client corresponding to the temporary user by sending a first request to the first device.
  • Figure 1 is a schematic diagram of the system architecture applicable to the embodiment of the present application.
  • Figure 2 is a model structure of a Matter device applicable to the embodiment of this application.
  • Figure 3 is a flow chart for connecting the client to the cloud platform.
  • Figure 4 is a flow chart for starting a client according to an embodiment of the present application.
  • Figures 5(a) to 5(c) are schematic flowcharts of a method for starting a client according to an embodiment of the present application.
  • 6(a) to 6(c) are schematic flow charts of a method for starting a client according to another embodiment of the present application.
  • Figure 7 is a schematic diagram of the first device according to the embodiment of the present application.
  • Figure 8 is a schematic diagram of the cloud platform according to the embodiment of the present application.
  • Figure 9 is a schematic diagram of a configuration device according to an embodiment of the present application.
  • Figure 10 is a schematic structural diagram of a communication device according to an embodiment of the present application.
  • Figure 1 is a schematic diagram of the system architecture applicable to the embodiment of the present application.
  • the system 100 shown in Figure 1 may include a first device 110, a configuration device (mediator) 120, a cloud platform 130 and a second device 140.
  • the first device 110 may be a device capable of communicating with the cloud platform 130 .
  • the first device 110 may be provided with a client, and the client may be used to communicate with the cloud platform 130 and communicate with the second device 140 through the cloud platform 130 .
  • the user can access the cloud platform 130 through the client and access the second device 140 through the cloud platform 130 .
  • the user can access the cloud platform 130 through the client and control the second device 140 through the cloud platform 130 .
  • the above-mentioned client may be an application (application, APP) or an applet, etc.
  • the second device 140 may be a device capable of communicating with the cloud platform 130 .
  • the second device 140 can provide service functions for users. Therefore, the second device 140 can also be called a server (server) or a service device.
  • the configuration device 120 is used to configure the first device 110 and/or the second device 140 .
  • the configuration device 120 may configure the first device 110 and/or the second device 140 to communicate with the cloud platform 130 .
  • the configuration device 120 can configure the client in the first device 110 so that the client can communicate with the cloud platform 130 .
  • the configuration device 120 may be an application (application, APP) or applet.
  • the configuration device 120 can be installed on a terminal device, where the terminal device can be a mobile phone, a tablet computer (Pad), a notebook computer, a handheld computer, a mobile internet device (mobile internet device, MID), a wearable Equipment, virtual reality (VR) equipment, augmented reality (AR) equipment, wireless terminals in industrial control, wireless terminals in self-driving, remote surgery (remote medical) Wireless terminals in surgery, wireless terminals in smart grid, wireless terminals in transportation safety, wireless terminals in smart city, and wireless terminals in smart home wait.
  • the embodiments of the present application do not limit this.
  • Cloud platform 130 also known as cloud computing platform or “cloud” can be understood as providing network communication capabilities for services based on hardware resources and software resources. Therefore, in this embodiment of the present application, the client in the first device 110 can access or control the second device 140 through the cloud platform 130 .
  • the cloud platform 130 can be built based on one or more cloud servers to provide network functions.
  • the above-mentioned cloud platform 130 can also be other systems or devices that can provide network functions.
  • a cluster system that can provide network functions, etc.
  • the embodiments of the present application do not limit this.
  • configuration device 120 may be an APP or applet that matches the client.
  • configuration device 230 may be a different APP or applet from the client. The embodiments of the present application do not limit this.
  • the above-mentioned system 100 may be, for example, an Internet of Things (IoT) system.
  • IoT Internet of Things
  • the Internet of Things is the "Internet where everything is connected", which can be understood as a network that is extended and expanded based on the Internet. Any item can be connected to the Internet through various information sensing devices (such as radio frequency identification, global positioning systems, etc.) Together they form a huge network for information exchange and communication to achieve interconnection between all things.
  • the above-mentioned first device and/or second device may be an IoT device.
  • IoT devices can include vehicle-mounted terminals, smart home equipment, intelligent monitoring equipment, etc.
  • Smart home devices may include, for example, smart air conditioners, smart refrigerators, washing machines, rice cookers, sweeping robots, and other devices.
  • Intelligent monitoring devices may include, for example, surveillance cameras, temperature sensors, sound sensors and other devices.
  • the above-mentioned cloud platform may be an IoT cloud platform, referred to as "IOT cloud", which is used to provide communication service functions for IOT devices in the IOT system.
  • IOT cloud an IoT cloud platform
  • the system 100 is introduced taking an IoT device as an example.
  • the first device 110 is a vehicle-mounted terminal
  • the second device 140 is a smart home device
  • the configuration device 120 can be a terminal device.
  • the terminal device 120 can configure the client in the vehicle-mounted terminal 110 so that the client can communicate with the cloud platform 130 .
  • the user can access and/control the smart home devices on the cloud platform (or smart home devices connected to the cloud platform) through the client.
  • a client that can access and/or control smart home devices can also be called a "smart home client".
  • the client can control the switch of the smart air conditioner and set the air conditioner temperature, wind speed, etc. through the cloud platform.
  • the client can control the sweeping robot to start or stop working, control the working mode of the sweeping robot, etc. through the cloud platform.
  • the Connectivity Standards Alliance launched an Internet of Things application layer technology standard—Matter Standard Protocol, which can provide an interoperable application layer for smart home devices based on Internet Protocol (Internet Protocol, IP) solution.
  • IP Internet Protocol
  • the matter standard may also be called a connected home over IP (CHIP) standard.
  • the Matter standard can support three underlying communication protocols: Ethernet, Wi-Fi, and Thread, and can allow IoT devices with different protocols to communicate with each other.
  • the client introduced above supports the Matter protocol, it can be called a "Matter client”.
  • the above-mentioned second device supports the Matter protocol, it can be called a “Matter server”.
  • the first device and/or the second device supporting the Matter protocol may also be called “Matter devices”.
  • Figure 2 is a model structure of a Matter device applicable to the embodiment of this application.
  • the data model structure 200 of the Matter device includes a node 210, an endpoint 220, and a cluster 230.
  • Node 210 encapsulates an addressable and unique resource on the network, has a set of functions and capabilities, and the user can clearly view it as a functional whole.
  • node 210 may be the highest or outermost first-order element in the data model. In other words, node 210 is the only addressable element in the outermost layer of the data model.
  • one physical entity can support multiple nodes 210 .
  • a node can have multiple node IDs, and the scope of each node ID is a specific network (fabric). For example, when a node ID is used as the target address for an interaction, the network within the scope of the specified node ID is the access network for the interaction.
  • a node may include one or more endpoints 220. Endpoint 220 is an instance, which can be a service or a virtual device, as indicated by the device type. Each endpoint 220 conforms to one or more device type definitions that define the clusters supported on the endpoint. Whereas a cluster is an object class instantiated on an endpoint.
  • a device type defines a consistent set of endpoints 220.
  • a device type defines a set of requirements for a node 210 or endpoint 220.
  • Clusters 230 are functional building block elements of the data model, and thus clusters may also be referred to as “functional sets”, “functional clusters", “functional clusters”, etc.
  • the cluster specification defines clients and servers that interact with each other.
  • Cluster 230 can be viewed as an interface, service or object class, which is the lowest independent functional element in the data model.
  • Each cluster 230 is defined by a cluster specification that defines the elements of the cluster 230, including properties, events, commands, and behaviors related to interactions with these elements. Properties, events, commands, and behaviors in cluster 230 are mandatory or optional, depending on the definition of cluster 230 .
  • the above clusters can be divided into two categories: utility cluster (utility cluster) or application cluster (application cluster).
  • Utility clusters are not part of the endpoint's primary application operations. It can be used for configuration, discovery, addressing, diagnostics, monitoring device health, software updates, and more. It may have a temporary relationship with its cluster counterpart.
  • the utility cluster may include a client cluster.
  • Application clusters support the primary operations of endpoints.
  • Application clustering supports one or more persistent application interactions between clustered clients and clustered servers.
  • the client of the cluster can send control commands to the server of the cluster (i.e., switch cluster) to control the switch of the smart light.
  • a cluster command (also known as a "command") is a set of data fields, each data type, that is passed between client and server cluster instances to invoke the behavior of the command recipient.
  • each command can be listed in a table, which can contain the data quality columns of the command: identification (ID), name (name), direction (direction), response (response), access (access) ), constraint 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.
  • Attributes can be understood as cluster data. Currently, the agreement stipulates that each attribute can be listed in a table, including a data quality column. Data quality columns can include ID, name, (data) type, constraints, other qualities, access, default (value), and consistency. In some implementations, properties may also define their associated semantics and behavior. Properties can reflect the device's queryable/settable status, configuration, and capabilities. In some cases, if no privileges are explicitly defined for a property, default access privileges take effect.
  • commands and attributes in the embodiments of this application may also include other quantitative qualities, or include part of the above-mentioned data qualities.
  • the embodiments of the present application do not limit this.
  • Identification represents the unique field ID of the field, or in other words, it is the unique identification of the command.
  • Name represents the unique name of the field, or in other words, the name of the command.
  • the value of the data type can be an octet string, expressed as "octstr or octstring"; the value of the data type can be a string (string); the value of the data type can be X Bit unsigned number (unsigned X-bit integer, uintX), where the value of ; Boolean value is represented as "bool”.
  • Direction usually present in the command list, is used to define the transmission direction of the command. For example, it can be defined as from client to server. For another example, it can be determined from the server to the client.
  • Access permissions are used to define how an element can be accessed (such as read or write) and what permissions are required to access the data.
  • access rights may include V, where V indicates that read access or call access requires view privileges.
  • Access permissions can also include O, which means "read access”, “write access” or “call access” require operation permissions.
  • Access permissions can also include R, which stands for read access.
  • Access permissions can also include W, which represents write access.
  • Responses usually present in a command list, are used to define the command's response.
  • Default used to define the default value. It should be noted that the default value is not the value used when the service device returns to the factory refresh settings. The default value can indicate that the consistency specified for the data field can be optional or change over time. Default values can be defined to complete the dependency when the actual data field value is not present.
  • Consistency used to define the optionality and dependencies of any data model element or set of elements.
  • this column is valid for properties, commands, events, enumerations, and fields of commands, events, or structures.
  • "M" indicates that the corresponding command is part of the basic mandatory feature set.
  • client-to-server command consistency means that the server should recognize and support client-to-server commands and generate responses as defined.
  • Server-to-client command consistency means that the server should send commands in a manner defined by cluster behavior, i.e., in response to client-to-server commands. The consistency of the command depends on the supported server features. Clients should not be required to support optional commands or commands that rely on optional features.
  • constraints can contain all and desc. Among them, all is used to define that all values are allowed in numeric data types. Desc is used to indicate that the constraints are defined in the description section. In other cases, constraints can also indicate the maximum value of the corresponding parameter value, expressed as "max N". For example, in the embodiment of this application, when N is 99, "max 99" is used to indicate that the maximum value of the corresponding parameter is 99. For another example, in the embodiment of this application, when N is 400, “max 400” is used to indicate that the maximum value of the corresponding parameter is 400. In other cases, constraints can be used to define the number of bytes occupied by parameters. For example, when the value of the constraint is 32, it is used to indicate that the number of bytes occupied by the corresponding parameter is 32.
  • Range represents the value range of the field.
  • the range can support two forms: explicit constraints and width constraints.
  • explicit constraints can indicate the minimum and maximum values corresponding to the values of the fields.
  • explicit constraints indicate that the value range of a certain field is (0, 128).
  • the above width constraint can be used to limit the number of bytes occupied by the value of a field, or in other words, the width constraint can limit the value of a field to a specific number of bytes.
  • a width constraint can indicate that the maximum number of bytes occupied by the value of a certain field is 8 bytes.
  • the client needs to establish a connection with the cloud platform based on the connection solution between the client and the platform.
  • the connection solution between the client and the platform includes the client configuration process, client registration process, client login process, etc. The following describes the client configuration process, client registration process, and client login process in conjunction with steps S311 to S327 shown in FIG. 3 .
  • step S311 the configuration device determines that the first device has the capability to support the client.
  • the configuration device can query the capabilities of the first device to determine whether the first device supports the configuration client.
  • the first device can also directly configure and report the capability of the first device, so that the configuration device can determine whether the first device supports the configuration client.
  • step S312 the configuration device pops up a dialog interface, prompting the user to choose whether to agree to use the first device to control the second device.
  • step S313 if the user agrees to use the first device to control the second device, the configuration device sends a certificate request to the first device.
  • CSR certificate signing request
  • step S314 the client generates a key pair and stores the private key in the key pair in the safe zone.
  • step S315 the client sends a CSR response command to the configuration device to transmit the CSR.
  • CSR may be a CSR data format defined in public key cryptography standards (PKCS) #10. Accordingly, CSR can follow the following principles: CSR carries certificate request information, which can include version information, subject information, public key information, etc.
  • the subject information may include the vendor ID of the first device, the product ID of the first device, etc.
  • the public key information may indicate the public key in the above-mentioned key pair (see step S340).
  • the above-mentioned supplier ID of the first device and the product ID of the first device can be obtained from the data recorded in the basic information cluster (general_Info cluster) of the first device.
  • the above-mentioned CSR can be digitally signed, and the digital signature of the CSR can be generated based on the private key in the key pair.
  • step S316 the configuration device sends information 1 to the cloud platform, where information 1 is used to apply for a cloud connection credential, that is, an access token (access token) for the client, and information 1 carries a CSR.
  • a cloud connection credential that is, an access token (access token) for the client
  • information 1 carries a CSR.
  • step S317 after the CSR verification is passed, the cloud platform can assign a client identification to the client.
  • step S318 the cloud platform generates the client's certificate based on the client ID and public key corresponding to the client.
  • step S319 the cloud platform allocates an access token to the client and establishes a binding relationship between the user ID, client ID and access token.
  • step S320 the cloud platform uses the client's public key to encrypt the access token to obtain an encrypted access token.
  • step S321 the cloud platform sends information 2 to the configuration device to indicate the client's certificate and CToken.
  • the parameters contained in the above information 2 may include CToken, certificate chain (CertChain) and token expiration (TokenExpiration) information.
  • CToken certificate chain
  • CitChain certificate chain
  • TokenExpiration token expiration
  • Table 1 shows information such as the parameters included in the information 2, the value type of the parameters, whether the parameters are necessary, and the description of the parameters.
  • step S322 the configuration device sends information 3 to the first device to configure the client's certificate, CToken, and cloud registration address for the client.
  • the configuration parameters in the above information 3 can include: client certificate (represented by "ClienCert”), intermediate certificate (represented by “IntermediateCert”), root certificate (represented by "RootCert”), cloud address of the cloud platform (cloud address) , CToken and token expiration information.
  • client certificate represented by "ClienCert”
  • intermediate certificate represented by "IntermediateCert”
  • root certificate represented by "RootCert”
  • cloud address of the cloud platform cloud address
  • CToken and token expiration information can be found in Table 2.
  • Table 2 shows the parameters included in the information 3, the field where the parameter is located, the identifier of the parameter, the data type of the parameter, the constraints of the parameter, the necessity of the parameter, and the description of the parameter.
  • step S323 the first device decrypts the information 3 using the private key to obtain the above parameters in the information 3. And configure the client based on the above parameters.
  • step S324 the client connects to the cloud platform based on the cloud address and uses the client certificate to establish a secure connection with the cloud platform.
  • step S325 the client sends a registration request (also called “cloud registration request” or “client registration request”) to the cloud platform.
  • a registration request also called “cloud registration request” or “client registration request”
  • the above registration request can carry the client ID and access token.
  • Table 3 shows the interface description of the registration request.
  • the hypertext transfer protocol (HTTP) method based on the registration request can be the POST method, and the interface access address of the registration request can be the account (account). .
  • HTTP hypertext transfer protocol
  • Table 4 shows the interface parameters of the registration request. Table 4 points out the position of the parameters in the registration request in the request, the name of the parameter, the value type of the parameter, whether the parameter is necessary, and the description of the parameter and other information.
  • Location parameter value type necessity illustrate body access token string yes Client access token main body Client ID string yes The client ID assigned to the client by the cloud platform.
  • step S326 the cloud platform sends a registration response command (also called “cloud registration response") to the configuration device.
  • the registration response command will carry the updated access token sent by the cloud platform.
  • the cloud platform does not need to update the client's access token.
  • Table 5 shows the parameters included in the registration response command, the location of the parameters, the value type of the parameters, whether the parameters are necessary, and the description of the parameters.
  • step S327 the client of the first device logs in to the cloud platform based on the client identifier and the access token carried in the registration response.
  • the user After successfully logging into the cloud platform, the user can communicate with the second device on the cloud platform through the client. For example, discover the second device, access the second device, control the second device, etc.
  • the client is usually a temporary client, or the user type of the client is a temporary user, therefore, when establishing a connection between the client and the cloud platform, it is stipulated that the complete solution shown in Figure 3 needs to be executed, that is to say , need to perform the client configuration process, client registration process and client login process.
  • the user types corresponding to the client also include long-term users. For long-term users, complex connection solutions will degrade the user experience if the connection between the client and the cloud platform needs to be re-established before each use of the client. Therefore, traditional connection solutions are not suitable for long-term user scenarios.
  • the embodiment of the present application provides a solution for starting a client, and introduces a request for starting the client (also called a "first request") to be compatible with the needs of long-term users or temporary users.
  • a request for starting the client also called a "first request”
  • the configuration device can directly request to start the client by sending a first request to the client.
  • the configuration device may also request to start the client corresponding to the temporary user by sending a first request to the first device.
  • Figure 4 is a flow chart for starting a client according to an embodiment of the present application.
  • the method shown in Figure 4 includes step S410.
  • step S410 the configuration device sends a first request to the first device.
  • the first request is used to request the first device to start the client (also called “client to be started”). Therefore, the first request can also be called “start client request” (start client request).
  • the user type of the above-mentioned client may be a long-term user, or in other words, the above-mentioned client may be a long-term client.
  • the user corresponding to the client may be the owner of the vehicle.
  • the user type of the above-mentioned client can also be a temporary user, or in other words, the above-mentioned client can be a temporary client.
  • the user corresponding to the client may be a temporary passenger of the vehicle.
  • the first device may also send a response command to the first request (see step S420) to the configuration device to indicate whether the client is successfully started.
  • the first request may indicate the client to be activated by carrying indication information of the client to be activated.
  • the indication information may be, for example, a client identifier.
  • the client can be started based on the startup password, where the startup password is used to verify whether to start the client, or in other words, the startup password is used to authenticate the user who starts the client, or in other words, to start the client.
  • the password is used to authenticate to the configuration device. If the startup password is used to authenticate the configuration device, the startup password can also be called the configuration device password (mediator password, MedPassword).
  • the first request may carry the client's startup password.
  • the startup password carried in the first request matches the startup password of the client prestored in the first device, the client can be started.
  • the startup password carried in the first request does not match the startup password of the client prestored by the first device, the client may be refused to be started.
  • the above matching can be understood as the startup password carried in the first request is the same as the pre-stored startup password of the client, or the startup password carried in the first request is different from the pre-stored startup password of the client but satisfies the preset correspondence. relation.
  • the embodiments of the present application do not limit this.
  • the client can inform the configuration device of the client's startup password, so that when the configuration device starts the client through the first request, it can carry the startup password in the first request.
  • the client can carry the above-mentioned startup password through the add cloud response command (also known as the "response command for the second request").
  • the add cloud response command may include: status code (status code) and startup password, where the status code is used to indicate to the client Whether the cloud platform was added successfully.
  • the first device may be equipped with clients that communicate with different cloud platforms, and the client identifiers of these clients may be the same.
  • the first request may carry the cloud platform corresponding to the client to be started. Instruction information so that the first device can identify the client to be started.
  • the first request may only carry the unique identifier corresponding to the client to be started, and no longer carry the indication information of the cloud platform.
  • the above indication information of the cloud platform may be any information used to identify the cloud platform, which is not limited in the embodiments of the present application.
  • the indication information of the cloud platform may be the identification of the cloud platform (cloud ID).
  • the indication information of the cloud platform may be the address of the cloud platform.
  • the parameters in the first request may include the client identifier of the client to be activated, the activation password of the client to be activated, and the cloud address corresponding to the client to be activated.
  • Table 7 also shows the data type of the parameter, the identification of the parameter, the constraints of the parameter, the quality of the parameter, the default value of the parameter and the necessity of the parameter.
  • the first device may determine the client to be started based on the client identifier in the first request. Then based on the correspondence between the pre-stored client identification and the startup password, it is determined whether the pre-stored startup password of the client to be started matches the startup password in the first request. And based on the corresponding relationship between the pre-stored client and the cloud address, it is determined whether the pre-stored cloud address of the client to be started matches the cloud address in the first request.
  • the first device can start the client to be started, and send a response command to the first request to the configuration device to indicate that the client is started successfully.
  • the first device may refuse to start the client to be started, and send a response command to the first request to the configuration device to indicate that the client fails to start.
  • client information such as client identification and cloud platform indication information introduced above can be maintained as attributes of the functional cluster.
  • the first device may include a function cluster (also called a "client function cluster"), and the function cluster is used to record the client in the first device.
  • the first device may be recorded in the functional cluster, and for information about clients of temporary users, the first device may not be recorded in the functional cluster.
  • the functional cluster can include attributes: long-term user list (or long-term client list), the constraint of this attribute can be "all”, the quality of this attribute can be "N”, and the permission of this attribute can be " R”, the default value of this attribute can be "empty”, the necessity of this attribute can be "M”, the data type of this attribute can be a list, and the client structure (represented as "ClientStruct” is recorded in the list ").
  • the client information recorded in the client structure can be as shown in Table 9, including client identification, user identification and cloud address.
  • Table 9 also shows the data type of the parameter, the identification of the parameter, the constraints of the parameter, the quality of the parameter, the authority of the parameter, the default value of the parameter and the necessity of the parameter.
  • the configuration device may query whether there is a suitable client in the first device (for example, a client corresponding to the cloud platform where the configuration device is located). If it is determined that the first device is configured with If there is a suitable client, the configuration device can request the first device to start the client by sending a first request.
  • a suitable client for example, a client corresponding to the cloud platform where the configuration device is located.
  • the configuration device can determine that the first device has been configured with a client connected to the cloud platform. At this time, the configuration device can directly start the client through the first request.
  • the information of the client in the first device can be maintained through the functional cluster.
  • the commands supported by the client for example, the command for configuring the client and/or the command for starting the client
  • the above functional cluster also includes commands supported by the client.
  • the above functional cluster includes one or more of the following commands: a first request; a response command for the first request; a second request for instructing the client to add the cloud platform; a response command for the second request , where the response command for the second request is used to indicate whether the cloud platform is added successfully; the third request for requesting the client's CSR; the response command for the third request, where the response command for the third request is used to
  • the cloud platform requests a certificate from the client for authentication.
  • the above second request is also called add cloud request.
  • the second request includes one or more of the following information: the client's certificate information for authentication on the cloud platform, the cloud platform's Instruction information, as well as access token information of the cloud platform.
  • the response command for the second request may also be called "add cloud response command”.
  • the response command to the second request includes: information indicating whether the cloud platform is successfully added, and/or the client's startup password.
  • the above third request may also be called a CSR request command, and accordingly, the third response command to the third request command may be called a "CSR response command".
  • the commands supported by the functional cluster in the embodiment of this application are introduced below in conjunction with Table 10.
  • the commands included in the functional cluster include CSR request command, CSR response command, add cloud request command, add cloud response command, and start client request command.
  • Table 10 also shows the identification corresponding to each command, the direction of the command, the response of the command, the authority of the command, and the necessity of the command.
  • the above-mentioned client information and commands supported by the client can also be maintained through multiple different functional clusters, which is not limited in the embodiment of the present application.
  • the parameters contained in each of the above commands will be introduced in detail below. For the sake of brevity, they will not be described again here.
  • the client configuration process may be triggered.
  • the configuration device can read the long-term user list in the first device. If a suitable client is not recorded in the long-term user list, the client configuration process can be triggered.
  • the configuration device determines that the first device is not configured with a client connected to the cloud platform.
  • the configuration device can trigger the client configuration process.
  • the first device may perform related operations slightly differently for a long-term user client or a temporary user client. Therefore, during the process of configuring the client, the configuration device may inform the first device of the user type of the client.
  • the configuration device may send first indication information to the first device to indicate the user type of the client.
  • the first indication information may indicate that the user type of the client is a long-term user, or the first indication information may indicate that the user type of the client is a temporary user.
  • the second indication information may indicate whether the user type of the client is a long-term user.
  • the second indication information may indicate whether the user type of the client is a temporary user.
  • the above-mentioned first indication information may be carried in a CSR request command (also called a third request).
  • the parameters of the CSR request command in the embodiment of this application are introduced below in conjunction with Table 11.
  • the CSR request can carry the parameter long-term user (ie, the first indication information) to indicate the user type corresponding to the client.
  • the identifier of the long-term user field can be 0, and the data type of this field can be a Boolean value.
  • the Boolean value is true (true)
  • it is used to indicate that the user type of the client is a long-term user.
  • the Boolean value is false, it is used to indicate that the client's user type is a temporary user.
  • first instruction information can also be carried in other commands except the CSR request command, or the first instruction information can also be carried in a dedicated command, which is not limited in the embodiments of the present application.
  • the first device may send a CSR response command (also called a "response command for the third request") to the configuration device, where the CSR response command carries the client's CSR.
  • Table 12 shows the parameters of the CSR response command in the embodiment of the present application. Refer to Table 12.
  • the CSR request can carry the parameter CSR.
  • Table 12 also shows the identification corresponding to the parameters, the data type of the parameters, the constraints of the parameters, the quality of the parameters, the default values of the parameters, and the necessity of the parameters.
  • the configuration device may send second indication information to the cloud platform to indicate the user type of the client.
  • the second indication information may indicate that the user type of the client is a long-term user, or the second indication information may indicate that the user type of the client is a temporary user.
  • the second indication information may indicate whether the user type of the client is a long-term user.
  • the second indication information may indicate whether the user type of the client is a temporary user.
  • the above-mentioned second instruction information may be carried in a client application request (also called an "application request"), where the client application request is used to apply for the client's certificate and token from the cloud platform.
  • client application request also called an "application request”
  • the client application interface description and the parameters in the client application request according to the embodiment of the present application in conjunction with Table 13 and Table 14. Refer to Table 13.
  • the HTTP method used by the client to apply for the interface is POST, and the interface access address is "/addclient".
  • Table 14 shows the parameters carried in the client application request command.
  • the application request command may include acceptance, Internet media type (content-type), access token, CSR, and long-term user.
  • Table 14 also shows the location, value type, necessity and description of the parameters.
  • the user type of the client may be configured by the user through the configuration device. That is to say, the user can select the user type of the client as a long-term user or a temporary customer by configuring the device.
  • the user can select the user type of the client as a long-term user or a temporary customer by configuring the device.
  • other methods can also be used to help the configuration device determine the user type of the client, and the embodiment of the present application does not limit this.
  • the cloud platform can send the client's certificate to the configuration device through a client application response command for the client application request.
  • the above certificate can be indicated by the parameter "CertChain” in the client application response command.
  • the above certificate may include one or more of a client certificate (represented by "ClienCert”), an intermediate certificate (represented by "IntermediateCert”), and a root certificate (represented by "RootCert”).
  • the client needs to access the cloud platform based on the access token.
  • the client may need to access the cloud platform multiple times. If the client uses the same access token each time to access the cloud platform, it may not be conducive to improving the security of the cloud platform. For example, for a long-term user client, the user may access the cloud platform multiple times through the client. If the access token remains unchanged, it may be intercepted by the attacker, threatening the security of the cloud platform.
  • the cloud platform can configure a first token (also called "refresh token") for the client, which is used by the client to request the cloud platform to update the access token. Accordingly, the client can access the cloud platform based on the updated access token.
  • a first token also called "refresh token”
  • the above access token update mechanism helps to improve the security of the cloud platform compared to always using the same access token to access the cloud platform.
  • the first device when the original access token of the first device expires, can apply to the cloud platform for updating the access token based on the first token.
  • the embodiment of this application does not specifically limit the timing of applying for an update token.
  • the first device can also apply to the cloud platform for an update access token based on the first token when the original access token is about to expire. . That is, the first device may apply to the cloud platform for updating the access token based on the first token at the target time, where the expiration time of the target time and the original access token is less than the first time interval.
  • the first device may periodically apply to the cloud platform for updating the access token, where the update period of the access token may be less than or equal to the validity period of the access token.
  • the above-mentioned first token may be carried in the registration response command.
  • Table 15 shows the interface parameters of the registration response command in the embodiment of this application. Referring to Table 15, the registration response command may include access token, token expiry, user identification and first token. Among them, the position of the above parameters in the command, the value type corresponding to the parameter, the necessity of the parameter, and the description of the parameter can be found in Table 15.
  • the first device can log in to the cloud platform based on the user identity, that is, the first device sends the second information to the cloud platform.
  • the second information is used to request to log in to the cloud platform. Therefore, the second information may be called a "login request".
  • the second information may include the user identification of the client.
  • the HTTP method of the login interface can be POST, and the access address of the login interface can be expressed as "/session”.
  • the login request command may include acceptance, Internet media type (content-type), access token, user ID, client ID, and login status (login).
  • content-type content-type
  • access token access token
  • user ID user ID
  • client ID login status
  • login status login status
  • the AMTP protocol can be used to communicate between the client and the second device.
  • the client needs to send the client's access address to the cloud platform so that subsequent communication can be based on the client's access address.
  • the above method also includes: the first device sends third information to the cloud platform, and the third information includes the access address of the client.
  • the access address is an access address based on the AMTP protocol.
  • the cloud platform can determine that the client selects the AMTP protocol for communication. That is to say, the third information is also used to indicate that the communication protocol supported by the client is the AMTP protocol. .
  • the above third information may be carried in a registration request, where the registration request is used by the client to request registration on the cloud platform.
  • the parameters carried in the registration request in the embodiment of this application are introduced below in conjunction with Table 18.
  • the registration request may include an access token, a client identifier, and a client access address (eg, client uniform resource locator (ClientURL)).
  • client URL client uniform resource locator
  • Table 18 also shows the position of each parameter in the command, the value type of the parameter, the necessity of the parameter, and the description of the parameter.
  • the third information may be carried in the login request, which is used by the client to request to log in to the cloud platform.
  • the parameters carried in the login request command in the embodiment of this application are introduced below in conjunction with Table 19. Compared with the parameters shown in Table 17, the parameters in Table 19 include the client access address (for example, ClientURL).
  • the cloud platform can inform the first device of the access address of the second device, that is, the access address of the second device based on the AMTP protocol (also known as "access URL"). "). That is to say, the above method further includes: in response to the third information, the first device receives fourth information sent by the cloud platform, where the fourth information includes the access address of the second device to be accessed by the client.
  • the client when the client successfully logs in to the cloud platform, the client can communicate with the second device based on the access address of the second device. For example, the client can send control information to the second device based on the access address of the second device to control the second device.
  • the above fourth information may be carried in a response command to the registration request, that is, a registration response command.
  • Table 20 shows the parameters included in the registration response command in this embodiment of the present application.
  • the registration response command includes an access token, a user ID, and an access URL, where the access URL is used to indicate the access address of the second device.
  • Table 20 also shows the position of the above parameters in the registration response command, the value type corresponding to the parameter, the necessity of the parameter, and the description of the parameter.
  • the above fourth information may be carried in a response command to the login request, that is, a login response command.
  • Table 21 shows the parameters included in the login response command in the embodiment of this application. As shown in Table 21, the login response command includes an access token, a client identifier, and a URL of the client, where the access URL is used to indicate the access address of the second device. In addition, Table 21 also shows the position of the above parameters in the login response command, the value type corresponding to the parameter, the necessity of the parameter, and the description of the parameter.
  • the transmission method of the third information and the transmission method of the fourth information introduced above can be used alone or in combination.
  • the third information may be carried in the login request, and accordingly, the fourth information may be carried in the login response command.
  • the third information may be carried in the registration request, and accordingly, the fourth information may be carried in the registration response command.
  • the third information may be carried in the registration request, and correspondingly, the fourth information may be carried in the login response command.
  • the third information may be carried in the registration response, and correspondingly, the fourth information may be carried in the login request.
  • the embodiment of the present application does not limit the order of interaction between the access address of the client and the access address of the second device.
  • the client may first send the client's access address to the cloud platform, and then the cloud platform may send the access address of the second device to the client.
  • the cloud platform may first send the access address of the second device to the client, and then the client may send the access address of the client to the cloud platform.
  • the cloud platform may send the access address of the second device to the client through a registration response command, and then the client sends the client's access address to the cloud platform through a login request.
  • the solution of the embodiment of the present application will be introduced below with reference to Figures 5 and 6, taking the IOT scenario as an example.
  • the above-mentioned cloud platform can be an IoT cloud platform
  • the client can be an IoT client
  • the first device can be a vehicle-mounted terminal
  • the second device can be a smart home device
  • the configuration device can be a mobile phone.
  • the command and information function clusters involved in Figure 5 and Figure 6 have the same meaning as the above introduction and use the same names. For the sake of brevity, please refer to the above introduction and will not go into details below.
  • Figures 5(a) to 5(c) are schematic flowcharts of a method for starting a client according to an embodiment of the present application.
  • the method shown in Figure 5(a) includes steps S511 to S527.
  • step S511 the mobile phone establishes a secure connection with the vehicle-mounted terminal.
  • a mobile phone can establish a connection with a vehicle-mounted terminal through Bluetooth low energy (BLE) combined with the wireless network communication technology Wifi.
  • BLE Bluetooth low energy
  • step S512 the mobile phone checks the client cluster of the vehicle-mounted terminal.
  • the client cluster can be seen in the above introduction combined with Table 9 and Table 10. For the sake of simplicity, it will not be described again here.
  • step S513 the user confirms using the mobile phone to use the vehicle-mounted terminal as the IoT client to access the smart home device.
  • step S513 may be located before step S512, or the two steps may be performed simultaneously, or step S512 may be located before step S513, which is not limited in the embodiment of the present application.
  • step S514 the mobile phone reads the long-term user list in the client cluster and confirms whether a suitable client is recorded in the long-term user list.
  • step S515 is executed. If the client included in the long-term user list is different from the cloud platform where the mobile phone is located, or the user ID of the client is inconsistent with the user ID of the mobile phone, step S516 is executed.
  • step S515 the mobile phone sends a client start request command to the vehicle-mounted terminal to request to start the client.
  • step S5166 the mobile phone prompts the user to select long-term mode or temporary mode.
  • the above long-term mode corresponds to creating a client whose user type is long-term user
  • the temporary mode can correspond to creating a client whose user type is temporary user.
  • the following description takes the client where the user chooses to create a long-term user as an example.
  • the solution below can also be applied to creating temporary users.
  • step S517 the mobile phone sends a CSR request command to the IoT client.
  • the CSR request command can carry the user type of the client.
  • CSR request command can be found in the introduction shown in Table 11 above.
  • step S5128 the IoT client generates a key pair and sends a CSR response command to the mobile phone.
  • the CSR response command can be found in the introduction above in conjunction with Table 12.
  • step S519 the mobile phone sends a client application request command to the IoT cloud platform to apply for an IoT client certificate and token through the IoT cloud interface.
  • the client's application request carries the client's user type.
  • step S520 the IoT cloud platform sends a client application response command to the mobile phone.
  • the mobile phone can obtain the IoT client certificate chain and token returned by the IoT cloud platform through the client application response interface.
  • Table 22 shows the parameters included in the client application response command in the embodiment of the present application, as well as the value type of the parameters, the position of the parameters, the necessity of the parameters, and the description of the parameters.
  • step S521 the mobile phone sends an add cloud request command to the IoT client to request the client to add a cloud.
  • Table 23 shows the parameters included in the add cloud request command in this embodiment of the present application.
  • the add cloud request command can include the IoT client certificate, intermediate certificate, root certificate, cloud address, CToken and token expiration information.
  • Table 23 also shows the identifier of the parameter, the data type of the parameter, the constraints of the parameter, the quality of the parameter, the default value of the parameter and the necessity of the parameter.
  • step S522 the IoT client uses the private key in the key pair to decrypt the Ctoken and obtain the access token.
  • step S523 the IoT client sends an add cloud response command to the mobile phone.
  • the add cloud response command includes the client's startup password.
  • the mobile phone can store the startup password in the add cloud response command and associate the startup password with the client ID and cloud address of the IoT client.
  • add cloud response commands please refer to the relevant introduction in Table 6 above.
  • step S524 the mobile phone sends a client start request command to the vehicle-mounted terminal to request to start the IoT client.
  • a client start request command to the vehicle-mounted terminal to request to start the IoT client.
  • Step S515 can be understood as that when a suitable client is configured in the first device, the configuration device can directly start the client through step S515.
  • Step S524 can be understood as that when the first device is not configured with a suitable client, the configuration device can start the client through step S524 after reconfiguring the client.
  • step S525 the IoT client verifies whether the cloud address and startup password corresponding to the client ID in the client startup request are consistent with those recorded in the client cluster.
  • step S526 is executed. If the cloud address and startup password corresponding to the client ID in the client startup request are inconsistent with those recorded in the client cluster, step S527 is executed.
  • step S526 the vehicle-mounted terminal starts the IoT client and indicates that the mobile phone IoT client is started successfully.
  • step S527 the vehicle-mounted terminal indicates to the mobile phone that the IoT client fails to start.
  • the vehicle-mounted terminal can indicate to the mobile phone the reason why the IoT client fails to start, for example, the startup password of the IoT client is wrong, the client ID of the IoT client does not exist, etc.
  • the cloud platform can generate a CToken and establish a binding relationship according to the method shown in steps S317 to S320.
  • the cloud platform can generate a CToken and establish a binding relationship according to the method shown in steps S317 to S320.
  • step S531 the IoT client connects to the IoT cloud address and uses the certificate to establish a secure connection with the IoT cloud platform.
  • step S532 the IoT client sends a client registration request to the IoT cloud platform to request client registration on the IoT cloud platform.
  • the client registration request may include the client ID and access token.
  • the client registration request please refer to the introduction in Table 3 above.
  • step S533 in response to the client registration request, the IoT cloud platform sends a client registration response command to the IoT client.
  • the client registration response command can carry a new access token, user ID, and first token assigned by the IoT cloud platform to the IoT client.
  • client registration response command please refer to the introduction in Table 5 above.
  • the client login process in the embodiment of this application is introduced below with reference to Figure 5(c).
  • the method shown in Figure 5(c) includes steps S541 to S542.
  • step S541 the IoT client sends a login request to the IoT cloud platform to request to log in to the IoT cloud platform.
  • the above login request includes a user ID, a client ID, and an access token. Please refer to the introduction in conjunction with Table 17 above.
  • step S542 in response to the login request, the IoT cloud platform sends a login response command to the IoT client.
  • Table 24 shows a possible implementation of the login response command in the embodiment of this application.
  • the login response command may include Internet media type and token expiration information.
  • FIGS. 6(a) to 6(c) are schematic flow charts of a method for starting a client according to another embodiment of the present application.
  • the method shown in Figure 6(a) includes steps S611 to S627. It should be noted that the method shown in Figure 6 can be applied to the client using the AMTP protocol to communicate with smart home devices.
  • step S611 the mobile phone establishes a secure connection with the vehicle-mounted terminal.
  • step S612 the mobile phone checks the client cluster of the vehicle-mounted terminal.
  • the client cluster can be seen in the above introduction combined with Table 9 and Table 10. For the sake of simplicity, it will not be described again here.
  • step S613 the user confirms using the mobile phone to use the vehicle-mounted terminal as the IoT client to access the smart home device.
  • step S613 may be located before step S612, or the two steps may be performed simultaneously, or step S612 may be located before step S613, which is not limited in the embodiment of the present application.
  • step S614 the mobile phone reads the long-term user list in the client cluster and confirms whether a suitable client is recorded in the long-term user list.
  • step S615 is executed. If the client included in the long-term user list is on a different cloud platform than the mobile phone, or the user ID of the client is inconsistent with the user ID of the mobile phone, step S616 is executed.
  • step S615 the mobile phone sends a client start request command to the vehicle-mounted terminal to request to start the client.
  • step S616 the mobile phone prompts the user to select long-term mode or temporary mode.
  • the above long-term mode corresponds to creating a client whose user type is long-term user
  • the temporary mode can correspond to creating a client whose user type is temporary user.
  • the following description takes the client where the user chooses to create a long-term user as an example.
  • the solution below can also be applied to creating temporary users.
  • step S617 the mobile phone sends a CSR request command to the IoT client.
  • the CSR request command can carry the user type of the client.
  • CSR request command can be found in the introduction shown in Table 11 above.
  • step S618 the IoT client generates a key pair and sends a CSR response command to the mobile phone.
  • the CSR response command can be found in the introduction above in conjunction with Table 12.
  • step S619 the mobile phone sends a client application request command to the IoT cloud platform to apply for an IoT client certificate and token through the IoT cloud interface.
  • the client's application request carries the client's user type.
  • step S620 the IoT cloud platform sends a client application response command to the mobile phone.
  • the mobile phone can obtain the IoT client certificate chain and token returned by the IoT cloud platform through the client application response interface.
  • Table 25 shows the parameters included in the client application response command in the embodiment of the present application, as well as the value type of the parameters, the position of the parameters, the necessity of the parameters, and the description of the parameters.
  • step S621 the mobile phone sends an add cloud request command to the IoT client to request the client to add a cloud.
  • Table 26 shows the parameters included in the add cloud request command in this embodiment of the present application.
  • the add cloud request command can include the IoT client certificate, intermediate certificate, root certificate, cloud address, CToken and token expiration information.
  • Table 26 also shows the identifier of the parameter, the data type of the parameter, the constraints of the parameter, the quality of the parameter, the default value of the parameter and the necessity of the parameter.
  • step S622 the IoT client decrypts the Ctoken using the private key in the key pair to obtain the access token.
  • step S623 the IoT client sends an add cloud response command to the mobile phone.
  • the add cloud response command includes the client's startup password.
  • the mobile phone can store the startup password in the add cloud response command and associate the startup password with the client ID and cloud address of the IoT client.
  • add cloud response commands please refer to the relevant introduction in Table 6 above.
  • step S624 the mobile phone sends a client start request command to the vehicle-mounted terminal to request to start the IoT client.
  • a client start request command to the vehicle-mounted terminal to request to start the IoT client.
  • step S615 and step S624 can be understood as two scenarios of sending a start client request command.
  • Step S615 can be understood as that when a suitable client is configured in the first device, the configuration device can directly start the client through step S615.
  • Step S624 can be understood as that when the first device is not configured with a suitable client, the configuration device can start the client through step S624 after reconfiguring the client.
  • step S625 the IoT client verifies whether the cloud address and startup password corresponding to the client ID in the client startup request are consistent with those recorded in the client cluster.
  • step S626 is executed. If the cloud address and startup password corresponding to the client ID in the client startup request are inconsistent with those recorded in the client cluster, step S627 is executed.
  • step S626 the vehicle-mounted terminal starts the IoT client and indicates that the mobile phone IoT client is started successfully.
  • step S627 the vehicle-mounted terminal indicates to the mobile phone that the IoT client fails to start.
  • the vehicle-mounted terminal can indicate to the mobile phone the reason why the IoT client fails to start, for example, the startup password of the IoT client is wrong, the client ID of the IoT client does not exist, etc.
  • the cloud platform can generate a CToken and establish a binding relationship according to the method shown in steps S317 to S320.
  • the cloud platform can generate a CToken and establish a binding relationship according to the method shown in steps S317 to S320.
  • the client configuration process and client startup process are introduced above in conjunction with steps S611 to S627. If the IoT client is started successfully, the client registration process will be introduced below with reference to Figure 6(b).
  • the method shown in Figure 6(b) includes steps S631 to S633.
  • step S631 the IoT client connects to the IoT cloud address and uses the certificate to establish a secure connection with the IoT cloud.
  • step S632 the IoT client sends a client registration request to the IoT cloud platform to request client registration on the IoT cloud platform.
  • the client registration request may include the client ID, access token, and access address of the IoT client.
  • the client registration request please refer to the introduction in Table 18 above.
  • step S633 in response to the client registration request, the IoT cloud platform sends a client registration response command to the IoT client.
  • the client registration response command can carry the new access token, user ID, first token, and access address of the smart home device assigned by the IoT cloud platform to the IoT client.
  • the client registration response command please refer to the introduction in Table 20 above.
  • the client login process in the embodiment of this application is introduced below with reference to Figure 6(c).
  • the method shown in Figure 6(c) includes steps S641 to S642.
  • step S641 the IoT client sends a login request to the IoT cloud platform to request to log in to the IoT cloud platform.
  • the above login request includes a user ID, a client ID, and an access token. Please refer to the above introduction in conjunction with Table 17.
  • step S642 in response to the login request, the IoT cloud platform sends a login response command to the IoT client.
  • Table 27 shows a possible implementation of the login response command in the embodiment of this application.
  • the login response command may include Internet media type and token expiration information.
  • the access address of the IoT client and the access address of the smart home device are exchanged.
  • the access address of the IoT client and the access address of the smart home device can also be interacted through login request and login response commands.
  • the commands introduced in Table 19 and Table 21 can be used.
  • the client registration request and client registration response can be combined with the commands introduced in Table 3 and Table 5.
  • FIG. 7 is a schematic diagram of the first device according to the embodiment of the present application.
  • the first device 700 shown in FIG. 7 includes: a receiving unit 710.
  • the receiving unit 710 is configured to receive a first request sent by a configuration device, where the first request is used to request to start a client in the first device, where the client is used to communicate with the cloud platform.
  • the first request carries a startup password of the client, and the startup password is used to authenticate the user who starts the client.
  • the first device further includes: a first processing unit, configured to determine whether the startup password carried in the first request matches the prestored startup password of the client; if the The startup password carried in the first request matches the pre-stored startup password, and the first processing unit is also used to start the client.
  • a first processing unit configured to determine whether the startup password carried in the first request matches the prestored startup password of the client; if the The startup password carried in the first request matches the pre-stored startup password, and the first processing unit is also used to start the client.
  • the first request carries indication information of the cloud platform.
  • the first device further includes: a second processing unit configured to select the client based on the cloud platform information carried in the first request.
  • the first device includes a functional cluster
  • the functional cluster is used to indicate commands supported by the client; and/or the functional cluster is used to record the first device Client corresponding to long-term users.
  • the function cluster is used to indicate one or more of the following information of the client: the client identifier of the client; The user identification of the terminal; and the instruction information of the cloud platform.
  • the function cluster includes one or more of the following commands: the first request; a second request for instructing the client to add the cloud platform; for the second The response command for the request, wherein the response command for the second request is used to indicate whether the cloud platform is added successfully; the third request for requesting the CSR of the client; the response command for the third request, wherein, the response command to the third request is used to request from the cloud platform a certificate for identity verification of the client.
  • the second request includes one or more of the following information: the client authenticates itself on the cloud platform. Certificate information, indication information of the cloud platform, and access token information of the cloud platform.
  • the response command to the second request includes: information indicating whether the cloud platform is added successfully, and /or, the startup password of the client.
  • the receiving unit is configured to receive the first information sent by the cloud platform, where the first information includes a first token, and the first token is used to send the message to the cloud platform.
  • the cloud platform requests to update the access token.
  • the first device further includes: a first sending unit, configured to send second information to the cloud platform, where the second information is used to request to log in to the cloud platform, the The second information includes the user identification of the client.
  • the receiving unit is configured to: receive first indication information sent by the configuration device, where the first indication information is used to configure the user type of the client.
  • the user type of the client is configured by the user through the configuration device.
  • the user types include long-term users or temporary users.
  • the user type of the client is a long-term user.
  • the first device further includes: a second sending unit, configured to send third information to the cloud platform, where the third information includes the access address of the client.
  • the third information is carried in a registration request of the client requesting to register on the cloud platform, and/or the third information is carried in a login request of the client. Describe the login request of the cloud platform.
  • the access address is an access address based on the AMTP protocol
  • the third information is used to instruct the client to use the AMTP protocol to communicate.
  • the receiving unit is configured to: in response to the third information, receive fourth information sent by the cloud platform, where the fourth information includes the information to be accessed by the client.
  • the access address of the second device is configured to: in response to the third information, receive fourth information sent by the cloud platform, where the fourth information includes the information to be accessed by the client. The access address of the second device.
  • the fourth information is carried in a response command to a registration request for the client to register on the cloud platform, and/or the fourth information is carried in a response command to the registration request of the client.
  • the response command of the login request of the client requesting to log in to the cloud platform.
  • FIG. 8 is a schematic diagram of the cloud platform according to the embodiment of the present application.
  • the cloud platform shown in Figure 8 may be, for example, one or more cloud servers.
  • the cloud platform 800 shown in FIG. 8 includes: a communication unit 810.
  • the communication unit 810 is used to communicate with the client configured in the first device.
  • the client of the first device is started based on a first request, and the first request is used to request to start the client.
  • the first request carries a startup password of the client, and the startup password is used to authenticate the user who starts the client.
  • the first request carries cloud platform information of the client.
  • the first device includes a functional cluster, and the functional cluster is used to record the client.
  • the function cluster is used to indicate one or more of the following information of the client: a client identification of the client; a user identification of the client; and an indication of the cloud platform information.
  • the function cluster includes one or more of the following commands: the first request; a second request for instructing the client to add the cloud platform; for the second The response command for the request, wherein the response command for the second request is used to indicate whether the cloud platform is added successfully; the third request for requesting the CSR of the client; the response command for the third request, Wherein, the response command to the third request is used to request the cloud platform for a certificate used for identity authentication of the client.
  • the second request includes one or more of the following information: used for the client to identify itself on the cloud platform Verified certificate information, indication information of the cloud platform and access token information of the cloud platform.
  • the response command to the second request includes: information indicating whether the cloud platform is added successfully, and /or, the startup password of the client.
  • the communication unit is further configured to: send first information to the first device, where the first information includes a first token, and the first token is used to send The cloud platform requests to update the access token.
  • the communication unit is further configured to: receive second information sent by the first device, where the second information is used to request to log in to the cloud platform. Contains the user ID of the client.
  • the communication unit is further configured to: receive second instruction information sent by the configuration device, where the second instruction information is used to configure the user type of the client.
  • the user type of the client is configured by the user through the configuration device.
  • the user types include long-term users or temporary users.
  • the user type of the client is a long-term user.
  • the communication unit is further configured to receive third information sent by the first device, where the third information includes the access address of the client.
  • the third information is carried in a registration request of the client requesting to register on the cloud platform, and/or the third information is carried in a login request of the client. Describe the login request of the cloud platform.
  • the access address is an access address based on the AMTP protocol
  • the third information is used to instruct the client to use the AMTP protocol to communicate.
  • the communication unit is further configured to: in response to the third information, send fourth information to the first device, where the fourth information includes the client to be accessed The access address of the second device.
  • the fourth information is carried in a response command to a registration request for the client to register on the cloud platform, and/or the fourth information is carried in a response command to the registration request of the client.
  • the response command of the login request of the client requesting to log in to the cloud platform.
  • FIG. 9 is a schematic diagram of a configuration device according to an embodiment of the present application.
  • the configuration device 900 shown in FIG. 9 includes a sending unit 910.
  • the sending unit 910 is configured to send a first request to the first device, where the first request is used to request to start a client in the first device, where the client is used to communicate with the cloud platform.
  • the first request carries a startup password of the client
  • the startup password is used to authenticate the user who starts the client
  • the first request carries the The client’s cloud platform information.
  • the first device includes a function cluster
  • the function cluster is used to indicate the commands supported by the client; and/or the function cluster is used to record the commands in the first device.
  • a client for long-term users.
  • the function cluster is used to indicate one or more of the following information of the client: a client identification of the client; a user identification of the client; and an indication of the cloud platform information.
  • the function cluster includes one or more of the following commands: the first request; a second request for instructing the client to add the cloud platform; for the second The response command for the request, wherein the response command for the second request is used to indicate whether the cloud platform is added successfully; the third request for requesting the CSR of the client; the response command for the third request, wherein, the response command to the third request is used to request from the cloud platform a certificate for identity verification of the client.
  • the second request includes one or more of the following information: used for the client to identify itself on the cloud platform The verified certificate information, the address information of the cloud platform and the access token information of the cloud platform.
  • the response command to the second request includes: information indicating whether the cloud platform is added successfully, and /or, the startup password of the client.
  • the configuration device further includes: a processing unit, configured to: if the user type of the client is a long-term user, Stores the client's startup password.
  • the sending unit is further configured to: send first indication information to the first device, where the first indication information is used to configure the user type of the client.
  • the user type of the client is configured by the user through the configuration device.
  • the user types include long-term users or temporary users.
  • the user type of the client is a long-term user.
  • the receiving unit 710 may be a transceiver 1040.
  • the first device 700 may also include a processor 1010 and a memory 1020, as specifically shown in FIG. 10 .
  • the communication unit 810 may be a transceiver 1040.
  • the cloud platform 800 may also include a processor 1010 and a memory 1020, as specifically shown in Figure 10.
  • the sending unit 910 may be a transceiver 1040.
  • the configuration device 900 may also include a processor 1010 and a memory 1020, as specifically shown in Figure 10.
  • Figure 10 is a schematic structural diagram of a communication device according to an embodiment of the present application.
  • the dashed line in Figure 10 indicates that the unit or module is optional.
  • the device 1000 can be used to implement the method described in the above method embodiment.
  • the device 1000 may be a chip, a terminal device or a network device.
  • Apparatus 1000 may include one or more processors 1010.
  • the processor 1010 can support the device 1000 to implement the method described in the foregoing method embodiments.
  • the processor 1010 may be a general-purpose processor or a special-purpose processor.
  • the processor may be a central processing unit (CPU).
  • the processor can also be another general-purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), or an off-the-shelf programmable gate array (FPGA) Or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
  • DSP digital signal processor
  • ASIC application specific integrated circuit
  • FPGA off-the-shelf programmable gate array
  • a general-purpose processor may be a microprocessor or the processor may be any conventional processor, etc.
  • Apparatus 1000 may also include one or more memories 1020.
  • the memory 1020 stores a program, which can be executed by the processor 1010, so that the processor 1010 executes the method described in the foregoing method embodiment.
  • the memory 1020 may be independent of the processor 1010 or integrated in the processor 1010.
  • Apparatus 1000 may also include a transceiver 1030.
  • Processor 1010 may communicate with other devices or chips through transceiver 1030.
  • the processor 1010 can transmit and receive data with other devices or chips through the transceiver 1030.
  • An embodiment of the present application also provides a computer-readable storage medium for storing a program.
  • the computer-readable storage medium can be applied in the terminal or network device provided by the embodiments of the present application, and the program causes the computer to execute the methods performed by the terminal or network device in various embodiments of the present application.
  • An embodiment of the present application also provides a computer program product.
  • the computer program product includes a program.
  • the computer program product can be applied in the terminal or network device provided by the embodiments of the present application, and the program causes the computer to execute the methods performed by the terminal or network device in various embodiments of the present application.
  • An embodiment of the present application also provides a computer program.
  • the computer program can be applied to the terminal or network device provided by the embodiments of the present application, and the computer program causes the computer to execute the methods performed by the terminal or network device in various embodiments of the present application.
  • the "instruction" mentioned may be a direct instruction, an indirect instruction, or an association relationship.
  • a indicates B which can mean that A directly indicates B, for example, B can be obtained through A; it can also mean that A indirectly indicates B, for example, A indicates C, and B can be obtained through C; it can also mean that there is an association between A and B. relation.
  • B corresponding to A means that B is associated with A, and B can be determined based on A.
  • determining B based on A does not mean determining B only based on A.
  • B can also be determined based on A and/or other information.
  • the term "correspondence” can mean that there is a direct correspondence or indirect relationship between the two, or it can also mean that there is an associated relationship between the two, or it can also be a relationship between indicating and being instructed, configuring and being configured, etc. .
  • predefinition or “preconfiguration” can be achieved by pre-saving corresponding codes, tables or other methods that can be used to indicate relevant information in devices (for example, including terminal devices and network devices).
  • devices for example, including terminal devices and network devices.
  • predefined can refer to what is defined in the protocol.
  • the "protocol” may refer to a standard protocol in the communication field, which may include, for example, LTE protocol, NR protocol, and related protocols applied in future communication systems. This application does not limit this.
  • the size of the sequence numbers of the above-mentioned processes does not mean the order of execution.
  • the execution order of each process should be determined by its functions and internal logic, and should not be determined by the implementation process of the embodiments of the present application. constitute any limitation.
  • the disclosed systems, devices and methods can be implemented in other ways.
  • the device embodiments described above are only illustrative.
  • the division of the units is only a logical function division. In actual implementation, there may be other division methods.
  • multiple units or components may be combined or can be integrated into another system, or some features can be ignored, or not implemented.
  • the coupling or direct coupling or communication connection between each other shown or discussed may be through some interfaces, and the indirect coupling or communication connection of the devices or units may be in electrical, mechanical or other forms.
  • the units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place, or they may be distributed to multiple network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
  • each functional unit in various embodiments of the present application may be integrated into one processing unit, or each unit may exist physically alone, or two or more units may be integrated into one unit.
  • the computer program product includes one or more computer instructions.
  • the computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device.
  • the computer instructions may be stored in or transmitted from one computer-readable storage medium to another, e.g., the computer instructions may be transferred from a website, computer, server, or data center Transmission to another website, computer, server or data center through wired (such as coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (such as infrared, wireless, microwave, etc.) means.
  • the computer-readable storage medium may be any available medium that can be read by a computer or a data storage device such as a server or data center integrated with one or more available media.
  • the available media may be magnetic media (e.g., floppy disks, hard disks, magnetic tapes), optical media (e.g., digital video discs (DVD)) or semiconductor media (e.g., solid state disks (SSD) )wait.
  • magnetic media e.g., floppy disks, hard disks, magnetic tapes
  • optical media e.g., digital video discs (DVD)
  • semiconductor media e.g., solid state disks (SSD)

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Provided are a method for starting a client, a first device, a configuration device, and a cloud platform. The method comprises: a first device receives a first request sent by a configuration device, the first request being used for requesting to start a client in the first device, and the client being used for communicating with a cloud platform. In embodiments of the present application, a first request used for starting a client is introduced, so as to be compatible with requirements of both long-term users and temporary users.

Description

用于启动客户端的方法、第一设备、配置设备及云平台Method for starting the client, first device, configuration device and cloud platform 技术领域Technical field
本申请涉及通信技术领域,并且更为具体地,涉及用于启动客户端的方法、第一设备、配置设备及云平台。The present application relates to the field of communication technology, and more specifically, to a method for starting a client, a first device, a configuration device and a cloud platform.
背景技术Background technique
目前,由于客户端通常是临时客户端,或者说,客户端的用户类型都是临时用户,因此,在建立客户端与云平台的连接时规定需要执行完整的连接方案,也即是说,需要执行客户端配置过程、客户端注册过程以及客户端登录过程。然而,随着技术的发展,客户端对应的用户类型也包括长期用户。对于长期用户而言,在每次使用客户端之前如果都需要重新建立客户端与云平台之间的连接,复杂的连接方案会降低用户体验。因此,传统的连接方案并不能兼容临时用户和长期用户两种场景。At present, since the client is usually a temporary client, or the user type of the client is a temporary user, it is stipulated that a complete connection plan needs to be executed when establishing a connection between the client and the cloud platform, that is to say, a complete connection plan needs to be executed Client configuration process, client registration process, and client login process. However, with the development of technology, the user types corresponding to the client also include long-term users. For long-term users, complex connection solutions will degrade the user experience if the connection between the client and the cloud platform needs to be re-established before each use of the client. Therefore, traditional connection solutions are not compatible with both temporary user and long-term user scenarios.
发明内容Contents of the invention
本申请提供一种用于启动客户端的方法、第一设备、配置设备及云平台。下面对本申请涉及的各个方面进行介绍。This application provides a method for starting a client, a first device, a configuration device and a cloud platform. Each aspect involved in this application is introduced below.
第一方面,提供了一种用于启动客户端的方法,包括:第一设备接收配置设备发送的第一请求,所述第一请求用于请求启动所述第一设备中的客户端,所述客户端用于与所述云平台进行通信。In a first aspect, a method for starting a client is provided, including: a first device receiving a first request sent by a configuration device, the first request being used to request starting the client in the first device, the The client is used to communicate with the cloud platform.
第二方面,提供了一种用于启动客户端的方法,包括:云平台与第一设备中配置的客户端进行通信,所述第一设备的客户端是基于第一请求启动的,所述第一请求用于请求启动所述客户端。In a second aspect, a method for starting a client is provided, including: the cloud platform communicates with a client configured in a first device, the client of the first device is started based on the first request, and the third A request is used to request to start the client.
第三方面,提供了一种用于启动客户端的方法,包括:配置设备向第一设备发送第一请求,所述第一请求用于请求启动所述第一设备中的客户端,所述客户端用于与所述云平台进行通信。In a third aspect, a method for starting a client is provided, including: configuring a device to send a first request to a first device, the first request being used to request to start a client in the first device, and the client The terminal is used to communicate with the cloud platform.
第四方面,提供了一种第一设备,包括:接收单元,用于接收配置设备发送的第一请求,所述第一请求用于请求启动所述第一设备中的客户端,所述客户端用于与所述云平台进行通信。In a fourth aspect, a first device is provided, including: a receiving unit configured to receive a first request sent by a configuration device, the first request being used to request to start a client in the first device, and the client The terminal is used to communicate with the cloud platform.
第五方面,提供了一种云平台,包括:通信单元,用于与第一设备中配置的客户端进行通信,所述第一设备的客户端是基于第一请求启动的,所述第一请求用于请求启动所述客户端。In a fifth aspect, a cloud platform is provided, including: a communication unit configured to communicate with a client configured in a first device, where the client of the first device is started based on a first request, and the first Request is used to request to start the client.
第六方面,提供了一种配置设备,包括:发送单元,用于向第一设备发送第一请求,所述第一请求用于请求启动所述第一设备中的客户端,所述客户端用于与所述云平台进行通信。In a sixth aspect, a configuration device is provided, including: a sending unit configured to send a first request to a first device, the first request being used to request to start a client in the first device, and the client Used to communicate with the cloud platform.
第七方面,提供一种第一设备,包括处理器、存储器以及通信接口,所述存储器用于存储一个或多个计算机程序,所述处理器用于调用所述存储器中的计算机程序,使得所述第一设备执行第一方面的方法中的部分或全部步骤。A seventh aspect provides a first device, including a processor, a memory and a communication interface, the memory is used to store one or more computer programs, the processor is used to call the computer program in the memory, so that the The first device performs some or all of the steps of the method of the first aspect.
第八方面,提供一种云平台,包括处理器、存储器、收发器,所述存储器用于存储一个或多个计算机程序,所述处理器用于调用所述存储器中的计算机程序,使得所述云平台执行第二方面的方法中的部分或全部步骤。An eighth aspect provides a cloud platform, including a processor, a memory, and a transceiver. The memory is used to store one or more computer programs. The processor is used to call the computer program in the memory so that the cloud The platform performs some or all of the steps in the method of the second aspect.
第九方面,提供一种配置设备,包括处理器、存储器、收发器,所述存储器用于存储一个或多个计算机程序,所述处理器用于调用所述存储器中的计算机程序,使得所述配置设备执行第三方面的方法中的部分或全部步骤。A ninth aspect provides a configuration device, including a processor, a memory, and a transceiver. The memory is used to store one or more computer programs. The processor is used to call the computer program in the memory so that the configuration The device performs some or all of the steps of the method of the third aspect.
第十方面,本申请实施例提供了一种通信系统,该系统包括上述的第一设备、配置设备以及云平台中的一种或多种。在另一种可能的设计中,该系统还可以包括本申请实施例提供的方案中与终端设备或网络设备进行交互的其他设备。In a tenth aspect, embodiments of the present application provide a communication system, which includes one or more of the above-mentioned first device, configuration device, and cloud platform. In another possible design, the system may also include other devices that interact with terminal devices or network devices in the solutions provided by the embodiments of this application.
第十一方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序使得通信设备(例如,第一设备、配置设备以及云平台)执行上述各个方面的方法中的部分或全部步骤。In an eleventh aspect, embodiments of the present application provide a computer-readable storage medium that stores a computer program, and the computer program enables a communication device (for example, a first device, a configuration device, and a cloud platform ) performs some or all of the steps in the methods of each aspect described above.
第十二方面,本申请实施例提供了一种计算机程序产品,其中,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,所述计算机程序可操作来使通信设备(例如,第一设备、配置设备以及云平台)执行上述各个方面的方法中的部分或全部步骤。在一些实现方式中,该计算机程序产品可以为一个软件安装包。In a twelfth 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, and the computer program is operable to cause the communication device ( For example, the first device, the configuration device, and the cloud platform) perform some or all of the steps in the methods of the above aspects. In some implementations, the computer program product can be a software installation package.
第十三方面,本申请实施例提供了一种芯片,该芯片包括存储器和处理器,处理器可以从存储器中调用并运行计算机程序,以实现上述各个方面的方法中所描述的部分或全部步骤。In a thirteenth aspect, embodiments of the present application provide 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. .
在本申请实施例中,引入了用于启动客户端的请求(又称“第一请求”),来启动客户端,以兼容长期用户或临时用户两种场景的需求。对于长期用户而言,若第一设备中已配置有对应长期用户的客户端 时,配置设备可以通过向客户端发送第一请求,来直接请求启动客户端,相比于传统的连接方案可以不再重复执行客户端的配置流程,有助于简化连接方案,提高用户体验。对于临时用户而言,在配置完成对应临时用户的客户端之后,配置设备也可以通过向第一设备发送第一请求,来请求启动对应临时用户的客户端。In the embodiment of this application, a request for starting the client (also called the "first request") is introduced to start the client to accommodate the needs of both long-term users and temporary users. For long-term users, if the first device has been configured with a client corresponding to the long-term user, the configuration device can directly request to start the client by sending a first request to the client. Compared with the traditional connection scheme, it does not require Repeating the client configuration process helps simplify the connection solution and improve user experience. For a temporary user, after configuring the client corresponding to the temporary user, the configuration device may also request to start the client corresponding to the temporary user by sending a first request to the first device.
附图说明Description of the drawings
图1是本申请实施例适用的系统架构的示意图。Figure 1 is a schematic diagram of the system architecture applicable to the embodiment of the present application.
图2是本申请实施例适用的Matter设备的模型结构。Figure 2 is a model structure of a Matter device applicable to the embodiment of this application.
图3是客户端与云平台进行连接的流程图。Figure 3 is a flow chart for connecting the client to the cloud platform.
图4是本申请实施例的用于启动客户端的流程图。Figure 4 is a flow chart for starting a client according to an embodiment of the present application.
图5(a)~图5(c)是本申请实施例的用于启动客户端的方法的示意性流程图。Figures 5(a) to 5(c) are schematic flowcharts of a method for starting a client according to an embodiment of the present application.
图6(a)~图6(c)是本申请另一实施例的用于启动客户端的方法的示意性流程图。6(a) to 6(c) are schematic flow charts of a method for starting a client according to another embodiment of the present application.
图7是本申请实施例的第一设备的示意图。Figure 7 is a schematic diagram of the first device according to the embodiment of the present application.
图8是本申请实施例的云平台的示意图。Figure 8 is a schematic diagram of the cloud platform according to the embodiment of the present application.
图9是本申请实施例的配置设备的示意图。Figure 9 is a schematic diagram of a configuration device according to an embodiment of the present application.
图10是本申请实施例的通信装置的示意性结构图。Figure 10 is a schematic structural diagram of a communication device according to an embodiment of the present application.
具体实施方式Detailed ways
下面将结合附图,对本申请中的技术方案进行描述。为了便于理解,下文先结合图1介绍本申请实施例适用的系统架构。The technical solutions in this application will be described below with reference to the accompanying drawings. In order to facilitate understanding, the system architecture applicable to the embodiment of the present application will be introduced below with reference to Figure 1 .
图1是本申请实施例适用的系统架构的示意图。图1所示的系统100可以包括第一设备110,配置设备(mediator)120,云平台130以及第二设备140。Figure 1 is a schematic diagram of the system architecture applicable to the embodiment of the present application. The system 100 shown in Figure 1 may include a first device 110, a configuration device (mediator) 120, a cloud platform 130 and a second device 140.
第一设备110,可以是具有与云平台130进行通信功能的设备。在一些实现方式中,第一设备110可以设置有客户端(client),客户端可以用于与云平台130进行通信,并通过云平台130与第二设备140进行通信。例如,用户可以通过客户端访问云平台130,并通过云平台130访问第二设备140。又例如,用户可以通过客户端访问云平台130,并通过云平台130控制第二设备140。The first device 110 may be a device capable of communicating with the cloud platform 130 . In some implementations, the first device 110 may be provided with a client, and the client may be used to communicate with the cloud platform 130 and communicate with the second device 140 through the cloud platform 130 . For example, the user can access the cloud platform 130 through the client and access the second device 140 through the cloud platform 130 . For another example, the user can access the cloud platform 130 through the client and control the second device 140 through the cloud platform 130 .
在一些实施例中,上述客户端可以为应用程序(application,APP)或者小程序等。In some embodiments, the above-mentioned client may be an application (application, APP) or an applet, etc.
第二设备140,可以是具有与云平台130进行通信功能的设备。在一些实现方式中,第二设备140可以为用户提供服务功能,因此,第二设备140又可以称为服务端(server),或者服务设备。The second device 140 may be a device capable of communicating with the cloud platform 130 . In some implementations, the second device 140 can provide service functions for users. Therefore, the second device 140 can also be called a server (server) or a service device.
配置设备120,用于对第一设备110和/或第二设备140进行配置。例如,配置设备120可以配置第一设备110和/或第二设备140与云平台130进行通信。又例如,配置设备120可以为第一设备110中的客户端进行配置,使得客户端可以与云平台130进行通信。The configuration device 120 is used to configure the first device 110 and/or the second device 140 . For example, the configuration device 120 may configure the first device 110 and/or the second device 140 to communicate with the cloud platform 130 . For another example, the configuration device 120 can configure the client in the first device 110 so that the client can communicate with the cloud platform 130 .
在一些实现方式中,配置设备120可以为应用程序(application,APP)或者小程序等。在另一些实现方式中,配置设备120可以安装在终端设备上,其中,终端设备可以是手机、平板电脑(Pad)、笔记本电脑、掌上电脑、移动互联网设备(mobile internet device,MID)、可穿戴设备,虚拟现实(virtual reality,VR)设备、增强现实(augmented reality,AR)设备、工业控制(industrial control)中的无线终端、无人驾驶(self driving)中的无线终端、远程手术(remote medical surgery)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等。本申请实施例对此并不进行限定。In some implementations, the configuration device 120 may be an application (application, APP) or applet. In other implementations, the configuration device 120 can be installed on a terminal device, where the terminal device can be a mobile phone, a tablet computer (Pad), a notebook computer, a handheld computer, a mobile internet device (mobile internet device, MID), a wearable Equipment, virtual reality (VR) equipment, augmented reality (AR) equipment, wireless terminals in industrial control, wireless terminals in self-driving, remote surgery (remote medical) Wireless terminals in surgery, wireless terminals in smart grid, wireless terminals in transportation safety, wireless terminals in smart city, and wireless terminals in smart home wait. The embodiments of the present application do not limit this.
云平台130,又称为云计算平台(cloud computing platform)或者“云端”,可以理解为基于硬件资源和软件资源的服务提供网络通信能力。因此,在本申请实施例中,第一设备110中的客户端可以通过云平台130对第二设备140进行访问或控制。Cloud platform 130, also known as cloud computing platform or "cloud", can be understood as providing network communication capabilities for services based on hardware resources and software resources. Therefore, in this embodiment of the present application, the client in the first device 110 can access or control the second device 140 through the cloud platform 130 .
在一些实现方式中,云平台130可以基于一个或多个云端服务器搭建而成,来提供网络功能。In some implementations, the cloud platform 130 can be built based on one or more cloud servers to provide network functions.
需要说明的是,上述云平台130还可以是其他可以提供网络功能的系统或设备。例如,可以提供网络功能的集群系统等等。本申请实施例对此不作限定。It should be noted that the above-mentioned cloud platform 130 can also be other systems or devices that can provide network functions. For example, a cluster system that can provide network functions, etc. The embodiments of the present application do not limit this.
另外,上述配置设备120可以与客户端是匹配的APP或小程序,当然,配置设备230可以与客户端是不同的APP或小程序。本申请实施例对此不作限定。In addition, the above-mentioned configuration device 120 may be an APP or applet that matches the client. Of course, the configuration device 230 may be a different APP or applet from the client. The embodiments of the present application do not limit this.
在一些场景中,上述系统100例如可以是物联网(internet of things,IoT)系统。其中,物联网即“万物相连的互联网”,可以理解为是在互联网基础上延伸和扩展的网络,可以通过各种信息传感设备(如射频识别、全球定位系统等)将任何物品与互联网连接起来形成一个巨大的网络,来进行信息交换和通信,以实现万物之间的互联互通。In some scenarios, the above-mentioned system 100 may be, for example, an Internet of Things (IoT) system. Among them, the Internet of Things is the "Internet where everything is connected", which can be understood as a network that is extended and expanded based on the Internet. Any item can be connected to the Internet through various information sensing devices (such as radio frequency identification, global positioning systems, etc.) Together they form a huge network for information exchange and communication to achieve interconnection between all things.
相应地,在一些实施例中,上述第一设备和/或第二设备可以是IoT设备。其中,IoT设备可以包括 车载终端、智能家居设备、智能监控设备等。智能家居设备例如可以包括智能空调、智能冰箱、洗衣机、电饭煲、扫地机器人等设备。智能监控设备例如可以包括监控摄像头、温度传感器、声音传感器等设备。Correspondingly, in some embodiments, the above-mentioned first device and/or second device may be an IoT device. Among them, IoT devices can include vehicle-mounted terminals, smart home equipment, intelligent monitoring equipment, etc. Smart home devices may include, for example, smart air conditioners, smart refrigerators, washing machines, rice cookers, sweeping robots, and other devices. Intelligent monitoring devices may include, for example, surveillance cameras, temperature sensors, sound sensors and other devices.
在另一些实施例中,上述云平台可以是IoT云平台,简称“IOT云”,用于为IOT系统中的IOT设备提供通信服务功能。In other embodiments, the above-mentioned cloud platform may be an IoT cloud platform, referred to as "IOT cloud", which is used to provide communication service functions for IOT devices in the IOT system.
为了便于理解,以IoT设备为例介绍系统100。假设第一设备110为车载终端,第二设备140为智能家居设备,配置设备120可以为终端设备。继续参见图1,终端设备120可以对车载终端110中的客户端进行配置,使得客户端可以与云平台130进行通信。在客户端配置成功后,用户便可以通过客户端对于云平台上的智能家居设备(或者说与云平台连接的智能家居设备)进行访问和/控制。对于可以对智能家居设备进行访问和/或控制的客户端又可以称为“智能家居客户端(smart home client)”。For ease of understanding, the system 100 is introduced taking an IoT device as an example. Assume that the first device 110 is a vehicle-mounted terminal, the second device 140 is a smart home device, and the configuration device 120 can be a terminal device. Continuing to refer to FIG. 1 , the terminal device 120 can configure the client in the vehicle-mounted terminal 110 so that the client can communicate with the cloud platform 130 . After the client is successfully configured, the user can access and/control the smart home devices on the cloud platform (or smart home devices connected to the cloud platform) through the client. A client that can access and/or control smart home devices can also be called a "smart home client".
示例性地,假设第二设备为智能空调,并且智能空调位于云平台,此时,客户端可以通过云平台控制智能空调的开关以及设置空调温度、风速等。当第二设备为扫地机器人时,客户端可以通过云平台控制扫地机器人开始工作或停止工作、控制扫地机器人的工作模式等。For example, assuming that the second device is a smart air conditioner, and the smart air conditioner is located on the cloud platform, at this time, the client can control the switch of the smart air conditioner and set the air conditioner temperature, wind speed, etc. through the cloud platform. When the second device is a sweeping robot, the client can control the sweeping robot to start or stop working, control the working mode of the sweeping robot, etc. through the cloud platform.
目前,不同厂家可能使用不同的通信协议(也可以称为生态链协议),实现支持该通信协议的物联网设备之间的互联互通,这样可能导致不同厂家生产的物联网设备之间不能通信,不能达到真正的万物互联。At present, different manufacturers may use different communication protocols (also called ecological chain protocols) to achieve interconnection and interoperability between IoT devices that support this communication protocol. This may cause IoT devices produced by different manufacturers to be unable to communicate with each other. The true Internet of Everything cannot be achieved.
基于此,连接标准联盟(connectivity standards alliance,CSA)推出一种物联网应用层技术标准—Matter标准协议,其可以提供基于互联网协议(internet protocol,IP)的智能家居设备的可互操作的应用层解决方案。在一些实施例中,matter标准也可以称为基于IP的互联家居(connected home over IP,CHIP)标准。在一些实施例中,Matter标准可以支持以太网、Wi-Fi和Thread三种底层通信协议,并且可以让不同协议的物联网设备互相通信。Based on this, the Connectivity Standards Alliance (CSA) launched an Internet of Things application layer technology standard—Matter Standard Protocol, which can provide an interoperable application layer for smart home devices based on Internet Protocol (Internet Protocol, IP) solution. In some embodiments, the matter standard may also be called a 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 allow IoT devices with different protocols to communicate with each other.
相应地,若上文介绍的客户端支持Matter协议,可以称为“Matter客户端”。若上述第二设备支持Matter协议,可以称为“Matter服务端”。对于支持Matter协议的第一设备和/或第二设备也可以称为“Matter设备”。Correspondingly, if the client introduced above supports the Matter protocol, it can be called a "Matter client". If the above-mentioned second device supports the Matter protocol, it can be called a "Matter server". The first device and/or the second device supporting the Matter protocol may also be called "Matter devices".
下文以Matter协议的场景为例,介绍本申请实施例涉及的术语,以及本申请实施例的方案。当然,本申请实施例的方案还可以应用于其他物联网协议。The following uses the Matter protocol scenario as an example to introduce the terminology involved in the embodiments of this application and the solutions of the embodiments of this application. Of course, the solutions in the embodiments of this application can also be applied to other Internet of Things protocols.
Matter设备的模型Matter device model
图2是本申请实施例适用的Matter设备的模型结构。Matter设备的数据模型结构200包括节点(node)210、端点(endpoint)220、群集(cluster)230。Figure 2 is a model structure of a Matter device applicable to the embodiment of this application. The data model structure 200 of the Matter device includes a node 210, an endpoint 220, and a cluster 230.
节点(node)210,封装了网络上可寻址的、唯一的资源,具有一组功能和能力,用户可以清楚地将其视为一个功能整体。通常,节点210可以是数据模型中最高或最外层的一阶元素。或者说,节点210是数据模型最外层唯一的可寻址元素。Node 210 encapsulates an addressable and unique resource on the network, has a set of functions and capabilities, and the user can clearly view it as a functional whole. Typically, node 210 may be the highest or outermost first-order element in the data model. In other words, node 210 is the only addressable element in the outermost layer of the data model.
需要说明的是,一个物理实体(例如,Matter设备)可以支持多个节点210。另外,一个节点可以有多个节点ID,每个节点ID的作用域是一个特定的网络(fabric)。例如,当节点ID被用作交互的目标地址时,指定节点ID作用域的网络就是交互的访问网络。一个节点可以包括一个或多个端点220。端点220是一个实例,它可以是一个服务或虚拟设备,由设备类型指示。每个端点220都符合一个或多个设备类型定义,这些设备类型定义了端点上支持的群集。而群集是在端点上实例化的对象类。It should be noted that one physical entity (for example, Matter device) can support multiple nodes 210 . In addition, a node can have multiple node IDs, and the scope of each node ID is a specific network (fabric). For example, when a node ID is used as the target address for an interaction, the network within the scope of the specified node ID is the access network for the interaction. A node may include one or more endpoints 220. Endpoint 220 is an instance, which can be a service or a virtual device, as indicated by the device type. Each endpoint 220 conforms to one or more device type definitions that define the clusters supported on the endpoint. Whereas a cluster is an object class instantiated on an endpoint.
需要说明的是,在这个体系结构模型中,上述设备类型可以是最高语义元素。设备类型定义了一组端点220的一致性。设备类型为节点210或端点220定义了一组需求。It should be noted that in this architectural model, the above device types can be the highest semantic elements. A device type defines a consistent set of endpoints 220. A device type defines a set of requirements for a node 210 or endpoint 220.
群集230是数据模型的功能构建块元素,因此,群集又可以称为“功能集”、“功能集群”、“功能群集”等。群集规范定义了通过交互相互对应的客户端和服务端。群集230可以被视为接口、服务或对象类,是数据模型中最低的独立功能元素。每个群集230都由一个群集规范定义,该规范定义了群集230的元素,包括属性、事件、命令以及与这些元素交互相关的行为。群集230中的属性、事件、命令和行为是强制性的还是可选的,取决于群集230的定义。Clusters 230 are functional building block elements of the data model, and thus clusters may also be referred to as "functional sets", "functional clusters", "functional clusters", etc. The cluster specification defines clients and servers that interact with each other. Cluster 230 can be viewed as an interface, service or object class, which is the lowest independent functional element in the data model. Each cluster 230 is defined by a cluster specification that defines the elements of the cluster 230, including properties, events, commands, and behaviors related to interactions with these elements. Properties, events, commands, and behaviors in cluster 230 are mandatory or optional, depending on the definition of cluster 230 .
通常,上述群集可以分为实用程序群集(utility cluster)或应用程序群集(application cluster)两类。实用程序群集不是端点的主要应用程序操作的一部分。它可以用于配置、发现、寻址、诊断、监视设备运行状况、软件更新等。它可能与它的群集对等物有一个临时的关系。在本申请实施例中,实用程序群集可以包括客户端群集。Generally, the above clusters can be divided into two categories: utility cluster (utility cluster) or application cluster (application cluster). Utility clusters are not part of the endpoint's primary application operations. It can be used for configuration, discovery, addressing, diagnostics, monitoring device health, software updates, and more. It may have a temporary relationship with its cluster counterpart. In this embodiment of the present application, the utility cluster may include a client cluster.
应用程序群集(又称“业务群集”)支持端点的主要操作。应用程序群集支持群集的客户端和群集的服务端之间的一个或多个持久应用程序交互。例如,智能电灯中的开关群集(On/Off cluster),该群集的客户端可以向群集的服务端(即,开关群集)发送控制命令,以控制智能电灯的开关。Application clusters (also known as "business clusters") support the primary operations of endpoints. Application clustering supports one or more persistent application interactions between clustered clients and clustered servers. For example, in a switch cluster (On/Off cluster) in a smart light, the client of the cluster can send control commands to the server of the cluster (i.e., switch cluster) to control the switch of the smart light.
群集命令(又称“命令”)是一组数据字段,每个数据类型在客户端和服务端群集实例之间传递,以调用命令接收者的行为。目前,协议中约定,每个命令都可以列在一个表中,该表可以包含命令的数 据质量列:标识(ID)、名称(name)、方向(direction)、响应(response)、访问(access)、约束(constraint)一致性(conformance)。相应地,一条命令可以指示一个表中定义的零个或多个字段。每个命令字段定义为表中的一行。A cluster command (also known as a "command") is a set of data fields, each data type, that is passed between client and server cluster instances to invoke the behavior of the command recipient. Currently, the agreement stipulates that each command can be listed in a table, which can contain the data quality columns of the command: identification (ID), name (name), direction (direction), response (response), access (access) ), constraint 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.
属性可以理解为是群集数据。目前,协议中约定每个属性可以列在一个表中,包含数据质量列。数据质量列可以包括ID、name、(数据)类型、约束、其他质量、访问、默认(值)和一致性。在一些实现方式中,属性还可以定义其相关的语义和行为。属性可以反映设备的可查询/可设置的状态、配置和能力。在一些情况下,如果没有为属性显式定义特权,则默认的访问特权生效。Attributes can be understood as cluster data. Currently, the agreement stipulates that each attribute can be listed in a table, including a data quality column. Data quality columns can include ID, name, (data) type, constraints, other qualities, access, default (value), and consistency. In some implementations, properties may also define their associated semantics and behavior. Properties can reflect the device's queryable/settable status, configuration, and capabilities. In some cases, if no privileges are explicitly defined for a property, default access privileges take effect.
为了便于理解,下文介绍命令和属性中包含几种常见的数据质量的含义。需要说明的是,本申请实施例中的命令和属性中还可以包含其他数量质量,或者包含上述数据质量中的部分。本申请实施例对此不作限定。For ease of understanding, the following describes the meanings of several common data qualities contained in commands and properties. It should be noted that the commands and attributes in the embodiments of this application may also include other quantitative qualities, or include part of the above-mentioned data qualities. The embodiments of the present application do not limit this.
标识,表示字段的唯一字段ID,或者说,是命令的唯一标识。Identification represents the unique field ID of the field, or in other words, it is the unique identification of the command.
名称,表示字段的唯一名称,或者说,表示命令的名称。Name represents the unique name of the field, or in other words, the name of the command.
类型,表示字段的数据类型,命令参数的数据类型,或者属性参数的数据类型。在一些实现方式中,数据类型的取值可以为字节串(octet string),表示为“octstr或octstring”;数据类型的取值可以为字符串(string);数据类型的取值可以为X位无符号数(unsigned X-bit integer,uintX),其中X的取值可以为8、16、24、32、40、48、56、64等;数据类型的取值可以为数值型(Number);布尔值(boolean)表示为“bool”。Type, indicating the data type of a field, the data type of a command parameter, or the data type of an attribute parameter. In some implementations, the value of the data type can be an octet string, expressed as "octstr or octstring"; the value of the data type can be a string (string); the value of the data type can be X Bit unsigned number (unsigned X-bit integer, uintX), where the value of ; Boolean value is represented as "bool".
方向,通常存在于命令列表中,用于定义命令的传输方向,例如,可以定义为从客户端到服务端。又例如,可以定于为从服务端到客户端。Direction, usually present in the command list, is used to define the transmission direction of the command. For example, it can be defined as from client to server. For another example, it can be determined from the server to the client.
访问权限,用于定义一个元素如何被访问(例如读或写)以及访问该数据需要哪些权限。Access permissions are used to define how an element can be accessed (such as read or write) and what permissions are required to access the data.
在一些实现方式中,访问权限可以包括V,V表示读取访问或调用访问需要视图特权。访问权限还可以包括O,O表示“读访问”、“写访问”或“调用访问”需要操作权限。访问权限还可以包括R,R表示读访问。访问权限还可以包括W,W表示写访问。In some implementations, access rights may include V, where V indicates that read access or call access requires view privileges. Access permissions can also include O, which means "read access", "write access" or "call access" require operation permissions. Access permissions can also include R, which stands for read access. Access permissions can also include W, which represents write access.
响应,通常存在于命令列表中,用于定义命令的响应命令。Responses, usually present in a command list, are used to define the command's response.
质量,用于定义其他列中没有涉及的其他数据质量。Quality, used to define additional data quality not covered in other columns.
默认,用于定义的默认值。需要说明的是,默认值并不是服务设备返回出厂刷新设置时使用的值。默认值可以指示为数据字段指定的一致性可以是可选的,也可以随时间变化。当实际数据字段值不存在时,可以定义默认值以完成依赖关系。Default, used to define the default value. It should be noted that the default value is not the value used when the service device returns to the factory refresh settings. The default value can indicate that the consistency specified for the data field can be optional or change over time. Default values can be defined to complete the dependency when the actual data field value is not present.
一致性,用于定义任何数据模型元素或元素集的可选性和依赖性。Consistency, used to define the optionality and dependencies of any data model element or set of elements.
通常,此列对属性、命令、事件、枚举以及命令、事件或结构的字段有效。在一些实现方式中,“M”表示对应的命令为基本的强制特性集的一部分。Typically, this column is valid for properties, 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.
对于命令而言,客户端到服务端命令的一致性意味着服务器应该识别并支持客户端到服务器的命令,并按照定义生成响应。服务端到客户端命令的一致性意味着服务器应该按照群集行为定义的方式发送命令,例如,响应客户端到服务器的命令。命令的一致性取决于所支持的服务器特性。客户端不应被要求支持可选命令或依赖于可选特性的命令。For commands, client-to-server command consistency means that the server should recognize and support client-to-server commands and generate responses as defined. Server-to-client command consistency means that the server should send commands in a manner defined by cluster behavior, i.e., in response to client-to-server commands. The consistency of the command depends on the supported server features. Clients should not be required to support optional commands or commands that rely on optional features.
约束,在一些情况下,约束可以包含all和desc。其中,all用于定义在数值数据类型中表示允许所有值。Desc用于表示约束是在描述部分定义的。在另一些情况下,约束还可以指示对应参数取值的最大值,表示为“max N”。例如,在本申请实施例中,N为99时,“max 99”用于指示对应的参数的取值最大值为99。又例如,在本申请实施例中,N为400时,“max 400”用于指示对应的参数的取值最大值为400。在另一些情况下,约束可以用于定义参数的占用的字节数量,例如,约束的取值为32时用于指示对应的参数占用的字节数量为32。Constraints, in some cases, constraints can contain all and desc. Among them, all is used to define that all values are allowed in numeric data types. Desc is used to indicate that the constraints are defined in the description section. In other cases, constraints can also indicate the maximum value of the corresponding parameter value, expressed as "max N". For example, in the embodiment of this application, when N is 99, "max 99" is used to indicate that the maximum value of the corresponding parameter is 99. For another example, in the embodiment of this application, when N is 400, "max 400" is used to indicate that the maximum value of the corresponding parameter is 400. In other cases, constraints can be used to define the number of bytes occupied by parameters. For example, when the value of the constraint is 32, it is used to indicate that the number of bytes occupied by the corresponding parameter is 32.
范围(range),表示字段的取值范围。Range (range) represents the value range of the field.
在一些实现方式中,范围可以支持两种形式:显式约束(explicit constraint)和宽度约束(width constraint)。其中,显式约束可以指示字段的取值对应的最小值和最大值,例如,显示约束指示某个字段的取值范围为(0,128)。In some implementations, the range can support two forms: explicit constraints and width constraints. Among them, explicit constraints can indicate the minimum and maximum values corresponding to the values of the fields. For example, explicit constraints indicate that the value range of a certain field is (0, 128).
上述宽度约束可以用于约束字段的取值占用的字节数,或者说,宽度约束可以将字段的取值限定在特定字节数内。例如,宽度约束可以指示某个字段的取值占用的最大字节数为8字节。The above width constraint can be used to limit the number of bytes occupied by the value of a field, or in other words, the width constraint can limit the value of a field to a specific number of bytes. For example, a width constraint can indicate that the maximum number of bytes occupied by the value of a certain field is 8 bytes.
需要说明的是,范围的取值包含“N/A”时,指示不适用。另外,在本申请实施例中,“N/A”也可以出现在其他部分(其他数据质量中),比如,默认、约束等。It should be noted that when the value of the range contains "N/A", the indication is not applicable. In addition, in the embodiment of this application, "N/A" may also appear in other parts (other data quality), such as default, constraints, etc.
另外,上文介绍的命令或属性中数据质量的含义,可以实用本申请实施例的方案,为了简洁,下文在介绍命令或属性涉及相同含义的数据质量时,可以参见上文的介绍,不再赘述。In addition, the meaning of data quality in the commands or attributes introduced above can be applied to the solution of the embodiment of the present application. For the sake of simplicity, when introducing commands or attributes involving data quality with the same meaning below, you can refer to the above introduction. Repeat.
客户端与云平台的连接方案Connection solution between client and cloud platform
目前,如果希望通过客户端通过云平台与第二设备进行通信,客户端需要基于客户端与平台的连接方案,来与云平台建立连接。其中,客户端与平台的连接方案包括经过客户端配置过程、客户端注册过程以及客户端登录过程等。下文结合图3所示的步骤S311至步骤S327介绍客户端配置过程、客户端注册过程以及客户端登录过程。Currently, if you want to communicate with a second device through the cloud platform through the client, the client needs to establish a connection with the cloud platform based on the connection solution between the client and the platform. Among them, the connection solution between the client and the platform includes the client configuration process, client registration process, client login process, etc. The following describes the client configuration process, client registration process, and client login process in conjunction with steps S311 to S327 shown in FIG. 3 .
在步骤S311中,配置设备确定第一设备具有支持客户端的能力。In step S311, the configuration device determines that the first device has the capability to support the client.
通常,第一设备与配置设备建立连接之后,配置设备可以查询第一设备的能力,来确定第一设备是否支持配置客户端。当然,第一设备也可以直接上配置上报第一设备的能力,以便配置设备确定第一设备是否支持配置客户端。Generally, after the first device establishes a connection with the configuration device, the configuration device can query the capabilities of the first device to determine whether the first device supports the configuration client. Of course, the first device can also directly configure and report the capability of the first device, so that the configuration device can determine whether the first device supports the configuration client.
在步骤S312中,配置设备弹出对话界面,提示用户选择是否同意用第一设备控制第二设备。In step S312, the configuration device pops up a dialog interface, prompting the user to choose whether to agree to use the first device to control the second device.
在步骤S313中,若用户同意用第一设备控制第二设备,则配置设备向第一设备发送证书请求In step S313, if the user agrees to use the first device to control the second device, the configuration device sends a certificate request to the first device.
(certificate signing request,CSR)请求命令。(certificate signing request, CSR) request command.
在步骤S314中,客户端生成密钥对,并将密钥对中的私钥存储在安全区。In step S314, the client generates a key pair and stores the private key in the key pair in the safe zone.
在步骤S315中,客户端向配置设备发送CSR响应命令以传输CSR。In step S315, the client sends a CSR response command to the configuration device to transmit the CSR.
上述CSR的格式可以是符合公钥加密标准(public key cryptography standards,PKCS)#10定义的CSR数据格式。相应地,CSR可以遵循以下原则:CSR携带证书请求信息,该信息可以包括版本(version)信息、主题(subject)信息、公钥信息等。其中,主题信息可以包含第一设备的供应商标识(vendor ID)、第一设备的产品标识(product ID)等。公钥信息可以指示上述密钥对(参见步骤S340)中的公钥。The format of the above-mentioned CSR may be a CSR data format defined in public key cryptography standards (PKCS) #10. Accordingly, CSR can follow the following principles: CSR carries certificate request information, which can include version information, subject information, public key information, etc. The subject information may include the vendor ID of the first device, the product ID of the first device, etc. The public key information may indicate the public key in the above-mentioned key pair (see step S340).
需要说明的是,上述第一设备的供应商标识、第一设备的产品标识可以与第一设备的基本信息群集(general_Info cluster)中记录的数据获得。It should be noted that the above-mentioned supplier ID of the first device and the product ID of the first device can be obtained from the data recorded in the basic information cluster (general_Info cluster) of the first device.
另外,上述CSR可以经过数字签名,并且CSR的数字签名可以是基于密钥对中的私钥生成的。In addition, the above-mentioned CSR can be digitally signed, and the digital signature of the CSR can be generated based on the private key in the key pair.
在步骤S316中,配置设备向云平台发送信息1,其中,信息1用于为客户端申请云连接的凭证即接入令牌(access token),并且,信息1中携带CSR。In step S316, the configuration device sends information 1 to the cloud platform, where information 1 is used to apply for a cloud connection credential, that is, an access token (access token) for the client, and information 1 carries a CSR.
在步骤S317中,在CSR验证通过后,云平台可以为客户端分配客户端标识。In step S317, after the CSR verification is passed, the cloud platform can assign a client identification to the client.
在步骤S318中,云平台基于客户端对应的客户端标识和公钥,生成客户端的证书。In step S318, the cloud platform generates the client's certificate based on the client ID and public key corresponding to the client.
在步骤S319中,云平台为客户端分配接入令牌,并建立用户ID、客户端ID和接入令牌之间的绑定关系。In step S319, the cloud platform allocates an access token to the client and establishes a binding relationship between the user ID, client ID and access token.
在步骤S320中,云平台利用客户端的公钥对接入令牌进行加密得到加密后的访问令牌,用In step S320, the cloud platform uses the client's public key to encrypt the access token to obtain an encrypted access token.
“CToken”表示。"CToken" means.
在步骤S321中,云平台向配置设备发送信息2,以指示客户端的证书和CToken。In step S321, the cloud platform sends information 2 to the configuration device to indicate the client's certificate and CToken.
上述信息2中包含的参数可以包括CToken、证书链(CertChain)以及令牌到期(TokenExpiration)信息。上述参数的说明以及对应的属性可以参见表1所示。表1示出了信息2包括的参数、参数的值类型、参数是否为必要性以及参数的说明等信息。The parameters contained in the above information 2 may include CToken, certificate chain (CertChain) and token expiration (TokenExpiration) information. The description of the above parameters and the corresponding attributes can be found in Table 1. Table 1 shows information such as the parameters included in the information 2, the value type of the parameters, whether the parameters are necessary, and the description of the parameters.
表1Table 1
Figure PCTCN2022117782-appb-000001
Figure PCTCN2022117782-appb-000001
在步骤S322中,配置设备向第一设备发送信息3,以为客户端配置将客户端的证书、CToken、以及云注册地址。In step S322, the configuration device sends information 3 to the first device to configure the client's certificate, CToken, and cloud registration address for the client.
上述信息3中的配置参数可以包括:客户端证书(用“ClienCert”表示)、中间证书(用“IntermediateCert”表示)、根证书(用“RootCert”表示)、云平台的云地址(cloud address)、CToken以及令牌到期信息。上述参数的说明、参数的标识、参数对应的属性以及参数所在字段可以参见表2所示。表2示出了信息3包括的参数、参数所在的字段、参数的标识、参数的数据类型、参数的约束、参数的必要性以及参数的说明等信息。The configuration parameters in the above information 3 can include: client certificate (represented by "ClienCert"), intermediate certificate (represented by "IntermediateCert"), root certificate (represented by "RootCert"), cloud address of the cloud platform (cloud address) , CToken and token expiration information. The description of the above parameters, the identification of the parameters, the attributes corresponding to the parameters, and the fields where the parameters are located can be found in Table 2. Table 2 shows the parameters included in the information 3, the field where the parameter is located, the identifier of the parameter, the data type of the parameter, the constraints of the parameter, the necessity of the parameter, and the description of the parameter.
表2Table 2
Figure PCTCN2022117782-appb-000002
Figure PCTCN2022117782-appb-000002
Figure PCTCN2022117782-appb-000003
Figure PCTCN2022117782-appb-000003
在步骤S323中,第一设备用私钥对信息3进行解密,得到信息3中的上述参数。并基于上述参数对客户端进行配置。In step S323, the first device decrypts the information 3 using the private key to obtain the above parameters in the information 3. And configure the client based on the above parameters.
在步骤S324中,客户端基于云地址连接云平台,并使用客户端证书与云平台建立安全连接。In step S324, the client connects to the cloud platform based on the cloud address and uses the client certificate to establish a secure connection with the cloud platform.
在步骤S325中,客户端向云平台发送注册请求(又称“云端注册请求”、或者“客户端注册请求”)。上述注册请求可以携带客户端ID和接入令牌。In step S325, the client sends a registration request (also called "cloud registration request" or "client registration request") to the cloud platform. The above registration request can carry the client ID and access token.
表3示出了注册请求的接口说明,参见表3,注册请求的基于的超文本传输协议(hyper text transfer protocol,HTTP)方法可以是POST方法,注册请求的接口访问地址可以是账户(account)。Table 3 shows the interface description of the registration request. Refer to Table 3. The hypertext transfer protocol (HTTP) method based on the registration request can be the POST method, and the interface access address of the registration request can be the account (account). .
表3table 3
HTTP方法HTTP method 接口访问地址Interface access address
POSTPOST /account/account
表4示出了注册请求的接口参数。表4中指出了注册请求中的参数在请求中的位置、参数的名称、参数的值类型、参数是否为必要性,以及参数的说明等信息。Table 4 shows the interface parameters of the registration request. Table 4 points out the position of the parameters in the registration request in the request, the name of the parameter, the value type of the parameter, whether the parameter is necessary, and the description of the parameter and other information.
表4Table 4
位置Location 参数parameter 值类型value type 必要性necessity 说明illustrate
主体(body)body 接入令牌access token stringstring yes 客户端的访问令牌Client access token
主体main body 客户端IDClient ID stringstring yes 云平台为客户端分配的客户端ID。The client ID assigned to the client by the cloud platform.
在步骤S326中,云平台向配置设备发送注册响应命令(又称“云端注册响应”)。在一些实现方式中,注册响应命令中会携带云平台发送的更新后的接入令牌。当然,云平台也可以不更新客户端的接入令牌。In step S326, the cloud platform sends a registration response command (also called "cloud registration response") to the configuration device. In some implementations, the registration response command will carry the updated access token sent by the cloud platform. Of course, the cloud platform does not need to update the client's access token.
表5示出了注册响应命令包括的参数、参数所在的位置、参数的值类型、参数是否为必要性以及参数的说明等信息。Table 5 shows the parameters included in the registration response command, the location of the parameters, the value type of the parameters, whether the parameters are necessary, and the description of the parameters.
表5table 5
Figure PCTCN2022117782-appb-000004
Figure PCTCN2022117782-appb-000004
在步骤S327中,第一设备的客户端基于客户端标识以及注册响应中携带的接入令牌,登录云平台。In step S327, the client of the first device logs in to the cloud platform based on the client identifier and the access token carried in the registration response.
在成功登录云平台后,用户便可以通过客户端与云平台上的第二设备进行通信。例如,发现第二设备,对第二设备进行访问,对第二设备进行控制等。After successfully logging into the cloud platform, the user can communicate with the second device on the cloud platform through the client. For example, discover the second device, access the second device, control the second device, etc.
目前,由于客户端通常是临时客户端,或者说,客户端的用户类型都是临时用户,因此,在建立客户端与云平台的连接时规定需要执行图3所示的完整方案,也即是说,需要执行客户端配置过程、客户端注册过程以及客户端登录过程。然而,随着技术的发展,客户端对应的用户类型也包括长期用户。对于长期用户而言,在每次使用客户端之前如果都需要重新建立客户端与云平台之间的连接,复杂的连接方案会降低用户体验。因此,传统的连接方案并不适用于长期用户的场景。At present, because the client is usually a temporary client, or the user type of the client is a temporary user, therefore, when establishing a connection between the client and the cloud platform, it is stipulated that the complete solution shown in Figure 3 needs to be executed, that is to say , need to perform the client configuration process, client registration process and client login process. However, with the development of technology, the user types corresponding to the client also include long-term users. For long-term users, complex connection solutions will degrade the user experience if the connection between the client and the cloud platform needs to be re-established before each use of the client. Therefore, traditional connection solutions are not suitable for long-term user scenarios.
本申请实施例提供了一种用于启动客户端的方案,引入了用于启动客户端的请求(又称“第一请求”),以兼容长期用户或临时用户两种场景的需求。对于长期用户而言,若第一设备中已配置有对应长期用户的客户端时,配置设备可以通过向客户端发送第一请求,来直接请求启动客户端,相比于传统的连接方案可以不再重复执行客户端的配置流程,有助于简化连接方案,提高用户体验。对于临时用户而言,在配置完成对应临时用户的客户端之后,配置设备也可以通过向第一设备发送第一请求,来请求启动对应临时用户的客户端。The embodiment of the present application provides a solution for starting a client, and introduces a request for starting the client (also called a "first request") to be compatible with the needs of long-term users or temporary users. For long-term users, if the first device has been configured with a client corresponding to the long-term user, the configuration device can directly request to start the client by sending a first request to the client. Compared with the traditional connection scheme, it does not require Repeating the client configuration process helps simplify the connection solution and improve user experience. For a temporary user, after configuring the client corresponding to the temporary user, the configuration device may also request to start the client corresponding to the temporary user by sending a first request to the first device.
下文结合图4介绍本申请实施例的用于启动客户端的方法。图4是本申请实施例的用于启动客户端的流程图。图4所示的方法包括步骤S410。The method for starting the client according to the embodiment of the present application is introduced below with reference to Figure 4. Figure 4 is a flow chart for starting a client according to an embodiment of the present application. The method shown in Figure 4 includes step S410.
在步骤S410中,配置设备向第一设备发送第一请求。In step S410, the configuration device sends a first request to the first device.
第一请求用于请求第一设备启动客户端(又称“待启动客户端”),因此,第一请求又可以称为“启动客户端请求”(start client request)。The first request is used to request the first device to start the client (also called "client to be started"). Therefore, the first request can also be called "start client request" (start client request).
上述客户端的用户类型可以是长期用户,或者说,上述客户端可以是长期客户端。以第一设备为车辆为例,客户端对应的用户可以是车辆的车主。当然,上述客户端的用户类型还可以是临时用户,或者说,上述客户端可以是临时客户端。以第一设备为车辆为例,客户端对应的用户可以是车辆的临时搭乘人员。The user type of the above-mentioned client may be a long-term user, or in other words, the above-mentioned client may be a long-term client. Taking the first device as a vehicle as an example, the user corresponding to the client may be the owner of the vehicle. Of course, the user type of the above-mentioned client can also be a temporary user, or in other words, the above-mentioned client can be a temporary client. Taking the first device as a vehicle as an example, the user corresponding to the client may be a temporary passenger of the vehicle.
在一些实现方式中,第一设备还可以向配置设备发送针对第一请求的响应命令(参见步骤S420),来指示客户端是否被成功启动。In some implementations, the first device may also send a response command to the first request (see step S420) to the configuration device to indicate whether the client is successfully started.
在一些实现方式中,第一请求中可以通过携带待启动客户端的指示信息,来指示待启动的客户端。其中,指示信息例如可以是客户端标识。In some implementations, the first request may indicate the client to be activated by carrying indication information of the client to be activated. The indication information may be, for example, a client identifier.
为了提高启动客户端的安全性,可以基于启动口令来启动客户端,其中,启动口令用于验证是否启动客户端,或者说,启动口令用于对启动客户端的用户进行身份验证,又或者说,启动口令用于对配置设备进行身份验证。若启动口令用于对配置设备进行身份认证,则启动口令又可以称为配置设备密码(mediator password,MedPassword)。In order to improve the security of starting the client, the client can be started based on the startup password, where the startup password is used to verify whether to start the client, or in other words, the startup password is used to authenticate the user who starts the client, or in other words, to start the client. The password is used to authenticate to the configuration device. If the startup password is used to authenticate the configuration device, the startup password can also be called the configuration device password (mediator password, MedPassword).
在一些实现方式中,第一请求可以携带客户端的启动口令。相应地,如果第一请求中携带的启动口令,与第一设备预存的客户端的启动口令匹配,则可以启动客户端。相反地,如果第一请求中携带的启动口令与第一设备预存的客户端的启动口令不匹配,则可以拒绝启动客户端。In some implementations, the first request may carry the client's startup password. Correspondingly, if the startup password carried in the first request matches the startup password of the client prestored in the first device, the client can be started. On the contrary, if the startup password carried in the first request does not match the startup password of the client prestored by the first device, the client may be refused to be started.
需要说明的是,上述匹配可以理解为第一请求中携带的启动口令与预存的客户端的启动口令相同,或者,第一请求中携带的启动口令与预存的客户端的启动口令不同但满足预设对应关系。本申请实施例对此不作限定。It should be noted that the above matching can be understood as the startup password carried in the first request is the same as the pre-stored startup password of the client, or the startup password carried in the first request is different from the pre-stored startup password of the client but satisfies the preset correspondence. relation. The embodiments of the present application do not limit this.
在一些实现方式中,客户端可以向配置设备告知客户端的启动口令,以便配置设备在通过第一请求启动客户端时,可以在第一请求中携带启动口令。其中,客户端可以通过添加云响应(add cloud response)命令(又称“针对第二请求的响应命令”)来携带上述启动口令。In some implementations, the client can inform the configuration device of the client's startup password, so that when the configuration device starts the client through the first request, it can carry the startup password in the first request. Among them, the client can carry the above-mentioned startup password through the add cloud response command (also known as the "response command for the second request").
表6示出了本申请实施例的添加云响应命令中携带的参数,参见表6,添加云响应命令中可以包括:状态编码(status code)以及启动口令,其中,状态编码用于指示客户端是否成功添加云平台。Table 6 shows the parameters carried in the add cloud response command in the embodiment of the present application. Refer to Table 6. The add cloud response command may include: status code (status code) and startup password, where the status code is used to indicate to the client Whether the cloud platform was added successfully.
表6Table 6
IDID 字段Field 数据类型type of data 约束constraint 质量quality 默认值default value 必要性necessity
00 状态编码status code octstroctstr       MM
11 启动口令Start password octstroctstr 3232     MM
在一些场景中,第一设备中可能会设置有与不同云平台进行通信的客户端,这些客户端的客户端标识可能相同,此时,可以在第一请求中携带待启动客户端对应的云平台的指示信息,以便第一设备识别待启动的客户端。当然,如果第一设备中不同的客户端具有唯一的标识(例如,客户端ID),则第一请求可以仅携带待启动客户端对应的唯一标识,而不再携带云平台的指示信息。In some scenarios, the first device may be equipped with clients that communicate with different cloud platforms, and the client identifiers of these clients may be the same. In this case, the first request may carry the cloud platform corresponding to the client to be started. Instruction information so that the first device can identify the client to be started. Of course, if different clients in the first device have unique identifiers (for example, client IDs), the first request may only carry the unique identifier corresponding to the client to be started, and no longer carry the indication information of the cloud platform.
上述云平台的指示信息可以是用于标识云平台的任意信息,本申请实施例对此不作限定。例如,云平台的指示信息可以是云平台的标识(cloud ID)。又例如,云平台的指示信息可以是云平台的地址。The above indication information of the cloud platform may be any information used to identify the cloud platform, which is not limited in the embodiments of the present application. For example, the indication information of the cloud platform may be the identification of the cloud platform (cloud ID). For another example, the indication information of the cloud platform may be the address of the cloud platform.
为了便于理解,下文结合表7介绍第一请求的可能的实现方式。参见表7,第一请求中的参数可以包括待启动客户端的客户端标识、待启动客户端的启动口令以及待启动客户端对应的云地址。另外,表7中还示出了参数的数据类型,参数的标识,参数的约束,参数的质量,参数的默认值以及参数的必要性。For ease of understanding, possible implementations of the first request are introduced below in conjunction with Table 7. Referring to Table 7, the parameters in the first request may include the client identifier of the client to be activated, the activation password of the client to be activated, and the cloud address corresponding to the client to be activated. In addition, Table 7 also shows the data type of the parameter, the identification of the parameter, the constraints of the parameter, the quality of the parameter, the default value of the parameter and the necessity of the parameter.
表7Table 7
IDID 字段Field 数据类型type of data 约束constraint 质量quality 默认值default value 必要性necessity
00 客户端标识Client ID octstroctstr max99max99     MM
11 启动口令Start password octstroctstr 3232     MM
22 云地址Cloud address stringstring       MM
相应地,第一设备在接收到上述第一请求后,可以基于第一请求中的客户端标识确定待启动的客户端。然后基于预存的客户端标识与启动口令之间的对应关系,确定预存的待启动的客户端的启动口令与第一请求中的启动口令是否匹配。并基于预存的客户端与云地址之间的对应关系,确定预存的待启动的客户端的云地址与第一请求中的云地址是否匹配。Correspondingly, after receiving the above-mentioned first request, the first device may determine the client to be started based on the client identifier in the first request. Then based on the correspondence between the pre-stored client identification and the startup password, it is determined whether the pre-stored startup password of the client to be started matches the startup password in the first request. And based on the corresponding relationship between the pre-stored client and the cloud address, it is determined whether the pre-stored cloud address of the client to be started matches the cloud address in the first request.
若启动口令与云地址都匹配,则第一设备可以启动待启动的客户端,并向配置设备发送针对第一请求的响应命令,以指示客户端启动成功。相反地,若启动口令与云地址至少一个不匹配,则第一设备可以拒绝启动待启动的客户端,并向配置设备发送针对第一请求的响应命令,以指示客户端启动失败。If both the startup password and the cloud address match, the first device can start the client to be started, and send a response command to the first request to the configuration device to indicate that the client is started successfully. On the contrary, if at least one of the startup password and the cloud address does not match, the first device may refuse to start the client to be started, and send a response command to the first request to the configuration device to indicate that the client fails to start.
在一些实现方式中,上文介绍的客户端标识、云平台指示信息等客户端的信息,可以作为功能集群的属性维护。也即是说,第一设备可以包括功能集群(又称“客户端功能集群”),功能集群用于记录第一设备中的客户端。通常,对于长期用户的客户端的信息而言,第一设备可以记录在功能集群中,对于临时用户的客户端的信息而言,第一设备可以不在功能集群中记录。In some implementations, client information such as client identification and cloud platform indication information introduced above can be maintained as attributes of the functional cluster. That is to say, the first device may include a function cluster (also called a "client function cluster"), and the function cluster is used to record the client in the first device. Generally, for information about clients of long-term users, the first device may be recorded in the functional cluster, and for information about clients of temporary users, the first device may not be recorded in the functional cluster.
为了便于理解,下文结合表8介绍功能集群的可能的实现方式。参见表8,功能集群中可以包括属性:长期用户列表(或者说长期客户端列表),该属性的约束可以为“all”,该属性的质量可以为“N”,该属性的权限可以为“R”,该属性的默认值可以为“空(empty)”,该属性的必要性可以为“M”,该属性的数据类型可以列表,并且列表中记录有客户端结构体(表示为“ClientStruct”)。For ease of understanding, possible implementation methods of functional clusters are introduced below in conjunction with Table 8. Referring to Table 8, the functional cluster can include attributes: long-term user list (or long-term client list), the constraint of this attribute can be "all", the quality of this attribute can be "N", and the permission of this attribute can be " R", the default value of this attribute can be "empty", the necessity of this attribute can be "M", the data type of this attribute can be a list, and the client structure (represented as "ClientStruct" is recorded in the list ").
表8Table 8
IDID 名称name 数据类型type of data 约束constraint 质量quality 权限Permissions 默认值default value 必要性necessity
00 长期用户列表Long term user list 列表[客户端结构体]list[client structure] allall NN RR null MM
其中,客户端结构体中记录的客户端信息可以如表9所示,即包括客户端标识,用户标识以及云地址。另外,表9中还示出了参数的数据类型,参数的标识,参数的约束,参数的质量,参数的权限、参数的默认值以及参数的必要性。Among them, the client information recorded in the client structure can be as shown in Table 9, including client identification, user identification and cloud address. In addition, Table 9 also shows the data type of the parameter, the identification of the parameter, the constraints of the parameter, the quality of the parameter, the authority of the parameter, the default value of the parameter and the necessity of the parameter.
表9Table 9
IDID 名称name 数据类型type of data 约束constraint 质量quality 权限Permissions 默认值default value 必要性necessity
00 客户端标识Client ID octstringoctstring max99max99   RR   MM
11 用户标识User ID octstringoctstring max99max99   RR   MM
22 云地址Cloud address stringstring     RR   MM
在一些实现方式中,配置设备在发送第一请求之前,可以查询第一设备中是否有合适的客户端(例如,配置设备所在的云平台对应的客户端),若确定第一设备中配置有合适的客户端,则配置设备可以通过发送第一请求,请求第一设备启动该客户端。In some implementations, before sending the first request, the configuration device may query whether there is a suitable client in the first device (for example, a client corresponding to the cloud platform where the configuration device is located). If it is determined that the first device is configured with If there is a suitable client, the configuration device can request the first device to start the client by sending a first request.
例如,若配置设备确认长期用户列表中包含与配置设备所在云平台相同的客户端(即客户端的云地址与配置设备所在的云地址一致),且客户端的用户ID与配置设备的用户ID也一致,则配置设备可以确定第一设备中已配置有连接云平台的客户端,此时,配置设备可以通过第一请求直接启动该客户端。For example, if the configuration device confirms that the long-term user list contains the same client as the cloud platform where the configuration device is located (that is, the client's cloud address is consistent with the cloud address where the configuration device is located), and the user ID of the client is also consistent with the user ID of the configuration device , the configuration device can determine that the first device has been configured with a client connected to the cloud platform. At this time, the configuration device can directly start the client through the first request.
如上文介绍,第一设备中客户端的信息可以通过功能群集来维护,相应地,客户端支持的命令(例如,用于配置客户端的命令和/或用于启动客户端的命令)也可以通过相同的功能群集维护。也就是说,上述功能集群还包括客户端支持的命令。As introduced above, the information of the client in the first device can be maintained through the functional cluster. Correspondingly, the commands supported by the client (for example, the command for configuring the client and/or the command for starting the client) can also be maintained through the same Functional cluster maintenance. That is to say, the above functional cluster also includes commands supported by the client.
在一些实现方式中,上述功能集群包括以下一种或多种命令:第一请求;针对第一请求的响应命令;用于指示客户端添加云平台的第二请求;针对第二请求的响应命令,其中,针对第二请求的响应命令用于指示云平台是否添加成功;用于请求客户端的CSR的第三请求;针对第三请求的响应命令,其中,针对第三请求的响应命令用于向云平台请求客户端进行身份验证的证书。In some implementations, the above functional cluster includes one or more of the following commands: a first request; a response command for the first request; a second request for instructing the client to add the cloud platform; a response command for the second request , where the response command for the second request is used to indicate whether the cloud platform is added successfully; the third request for requesting the client's CSR; the response command for the third request, where the response command for the third request is used to The cloud platform requests a certificate from the client for authentication.
上述第二请求又称添加云请求(add cloud request),在一些实现方式中,第二请求包括以下信息中的一种或多种:客户端在云平台进行身份验证的证书信息,云平台的指示信息,以及云平台的接入令牌信息。The above second request is also called add cloud request. In some implementations, the second request includes one or more of the following information: the client's certificate information for authentication on the cloud platform, the cloud platform's Instruction information, as well as access token information of the cloud platform.
相应地,针对第二请求的响应命令又可以称为“添加云响应命令”。在一些实现方式中,针对第二请求的响应命令包括:指示云平台是否添加成功的信息,和/或,客户端的启动口令。Correspondingly, the response command for the second request may also be called "add cloud response command". In some implementations, the response command to the second request includes: information indicating whether the cloud platform is successfully added, and/or the client's startup password.
上述第三请求又可以称为CSR请求命令,相应地,针对第三请求命令的第三响应命令可以称为“CSR响应命令”。The above third request may also be called a CSR request command, and accordingly, the third response command to the third request command may be called a "CSR response command".
为了便于理解,下文结合表10介绍本申请实施例中功能集群支持的命令。参见表10,功能集群中包含的命令包括CSR请求命令、CSR响应命令、添加云请求命令、添加云响应命令、启动客户端请求命令。另外,表10还示出了各个命令对应的标识、命令的方向、命令的响应、命令的权限以及命令的必要性。For ease of understanding, the commands supported by the functional cluster in the embodiment of this application are introduced below in conjunction with Table 10. Referring to Table 10, the commands included in the functional cluster include CSR request command, CSR response command, add cloud request command, add cloud response command, and start client request command. In addition, Table 10 also shows the identification corresponding to each command, the direction of the command, the response of the command, the authority of the command, and the necessity of the command.
表10Table 10
Figure PCTCN2022117782-appb-000005
Figure PCTCN2022117782-appb-000005
在本申请实施例中,上述客户端的信息以及客户端支持的命令也可以通过多个不同的功能群集维护,本申请实施例对此不作限定。另外,上述各个命令包含的参数将在下文中具体介绍,为了简洁,在此不再赘述。In the embodiment of the present application, the above-mentioned client information and commands supported by the client can also be maintained through multiple different functional clusters, which is not limited in the embodiment of the present application. In addition, the parameters contained in each of the above commands will be introduced in detail below. For the sake of brevity, they will not be described again here.
上文介绍了本申请实施例中的客户端启动过程,下文介绍本申请实施例中客户端配置过程。The above describes the client startup process in the embodiment of the present application, and the following describes the client configuration process in the embodiment of the present application.
若配置设备确定第一设备中未配置客户端,则可以触发客户端配置过程。在一些实现方式中,配置设备可以读取第一设备中的长期用户列表,若长期用户列表中并未记录合适的客户端,则可以触发客户端配置过程。If the configuration device determines that the client is not configured in the first device, the client configuration process may be triggered. In some implementations, the configuration device can read the long-term user list in the first device. If a suitable client is not recorded in the long-term user list, the client configuration process can be triggered.
例如,若配置设备确认长期用户列表中不包含与配置设备所在云平台相同的客户端,(即客户端的云地址与配置设备所在的云地址一致),和/或,第一设备中客户端的用户ID与配置设备的用户ID不一致,则配置设备确定第一设备中未配置有连接云平台的客户端,此时,配置设备可以触发客户端配置过程。For example, if the configuration device confirms that the long-term user list does not contain the same client as the cloud platform where the configuration device is located (that is, the cloud address of the client is consistent with the cloud address of the configuration device), and/or, the user of the client in the first device The ID is inconsistent with the user ID of the configuration device, and the configuration device determines that the first device is not configured with a client connected to the cloud platform. At this time, the configuration device can trigger the client configuration process.
针对长期用户的客户端,或者针对临时用户的客户端,第一设备执行相关操作可能略有区别,因此,配置设备在配置客户端的过程中,可以告知第一设备客户端的用户类型。在一些实现方式中,配置设备可以向第一设备发送第一指示信息,以指示客户端的用户类型。其中,第一指示信息可以指示客户端的用户类型为长期用户,或第一指示信息可以指示客户端的用户类型为临时用户。又或者,第二指示信息可以指示客户端的用户类型是否为长期用户。又或者,第二指示信息可以指示客户端的用户类型是否为临时用户。The first device may perform related operations slightly differently for a long-term user client or a temporary user client. Therefore, during the process of configuring the client, the configuration device may inform the first device of the user type of the client. In some implementations, the configuration device may send first indication information to the first device to indicate the user type of the client. The first indication information may indicate that the user type of the client is a long-term user, or the first indication information may indicate that the user type of the client is a temporary user. Alternatively, the second indication information may indicate whether the user type of the client is a long-term user. Alternatively, the second indication information may indicate whether the user type of the client is a temporary user.
上述第一指示信息可以承载于CSR请求命令(又称第三请求)中。下文结合表11介绍本申请实施例的CSR请求命令的参数。参见表11,CSR请求可以携带参数长期用户(即第一指示信息),来指示客户端对应的用户类型。其中,长期用户字段的标识可以为0,该字段的数据类型可以为布尔值,当布尔值为真(true)时,用于指示客户端的用户类型为长期用户。当布尔值为假(false)时,用于指示客户端的用户类型为临时用户。The above-mentioned first indication information may be carried in a CSR request command (also called a third request). The parameters of the CSR request command in the embodiment of this application are introduced below in conjunction with Table 11. Referring to Table 11, the CSR request can carry the parameter long-term user (ie, the first indication information) to indicate the user type corresponding to the client. Among them, the identifier of the long-term user field can be 0, and the data type of this field can be a Boolean value. When the Boolean value is true (true), it is used to indicate that the user type of the client is a long-term user. When the Boolean value is false, it is used to indicate that the client's user type is a temporary user.
表11Table 11
IDID 字段Field 数据类型type of data 约束constraint 质量quality 默认值default value 必要性necessity
00 长期用户long term user boolbool     FalseFalse MM
需要说明的是,上述第一指示信息也可以承载于除CSR请求命令之外的其他命令中,或者第一指示信息也可以承载于专用命令中,本申请实施例对此不作限定。It should be noted that the above-mentioned first instruction information can also be carried in other commands except the CSR request command, or the first instruction information can also be carried in a dedicated command, which is not limited in the embodiments of the present application.
在一些实现方式中,在接收到CSR请求命令后,第一设备可以向配置设备发送CSR响应命令(又称“针对第三请求的响应命令”),该CSR响应命令中携带客户端的CSR。表12示出了本申请实施例的CSR响应命令的参数。参见表12,CSR请求可以携带参数CSR。另外,表12中还示出了参数对应的标识、参数的数据类型、参数的约束、参数的质量、参数的默认值以及参数的必要性。In some implementations, after receiving the CSR request command, the first device may send a CSR response command (also called a "response command for the third request") to the configuration device, where the CSR response command carries the client's CSR. Table 12 shows the parameters of the CSR response command in the embodiment of the present application. Refer to Table 12. The CSR request can carry the parameter CSR. In addition, Table 12 also shows the identification corresponding to the parameters, the data type of the parameters, the constraints of the parameters, the quality of the parameters, the default values of the parameters, and the necessity of the parameters.
表12Table 12
IDID 字段Field 数据类型type of data 约束constraint 质量quality 默认值default value 必要性necessity
00 CSRCSR octstroctstr max 900max 900     MM
针对长期用户的客户端,或者针对临时用户的客户端,云平台执行相关操作可能略有区别,因此,配置设备在配置客户端的过程中,可以告知云平台客户端的用户类型。在一些实现方式中,配置设备可以向云平台发送第二指示信息,以指示客户端的用户类型。其中,第二指示信息可以指示客户端的用户类型为长期用户,或第二指示信息可以指示客户端的用户类型为临时用户。又或者,第二指示信息可以指示客户端的用户类型是否为长期用户。又或者,第二指示信息可以指示客户端的用户类型是否为临时用户。The relevant operations performed by the cloud platform may be slightly different for long-term users or temporary users. Therefore, during the process of configuring the client, the cloud platform can be informed of the user type of the client. In some implementations, the configuration device may send second indication information to the cloud platform to indicate the user type of the client. The second indication information may indicate that the user type of the client is a long-term user, or the second indication information may indicate that the user type of the client is a temporary user. Alternatively, the second indication information may indicate whether the user type of the client is a long-term user. Alternatively, the second indication information may indicate whether the user type of the client is a temporary user.
上述第二指示信息可以承载于客户端申请请求(又称“申请请求”)中,其中,客户端申请请求用于向云平台申请客户端的证书以及令牌。下文结合表13和表14介绍本申请实施例的客户端申请接口说明以及客户端申请请求中的参数。参见表13,客户端申请接口使用的HTTP方法为POST,接口访问地址为“/addclient”。The above-mentioned second instruction information may be carried in a client application request (also called an "application request"), where the client application request is used to apply for the client's certificate and token from the cloud platform. The following describes the client application interface description and the parameters in the client application request according to the embodiment of the present application in conjunction with Table 13 and Table 14. Refer to Table 13. The HTTP method used by the client to apply for the interface is POST, and the interface access address is "/addclient".
表13Table 13
HTTP MethodHTTP Method 接口访问地址Interface access address
POSTPOST /addclient/addclient
表14示出了客户端申请请求命令中携带的参数。申请请求命令中可以包括接收(accept)、互联网媒体类型(content-type)、接入令牌、CSR、长期用户。另外,表14还示出了参数的位置、值类型、必要性以及参数的说明。Table 14 shows the parameters carried in the client application request command. The application request command may include acceptance, Internet media type (content-type), access token, CSR, and long-term user. In addition, Table 14 also shows the location, value type, necessity and description of the parameters.
表14Table 14
Figure PCTCN2022117782-appb-000006
Figure PCTCN2022117782-appb-000006
在一些实现方式中,客户端的用户类型可以是由用户通过配置设备配置的。也即是说,用户可以通过配置设备选择客户端的用户类型为长期用户或临时客户。当然,在本申请实施例中,还可以采用其他方式帮助配置设备确定客户端的用户类型,本申请实施例对此不作限定。In some implementations, the user type of the client may be configured by the user through the configuration device. That is to say, the user can select the user type of the client as a long-term user or a temporary customer by configuring the device. Of course, in the embodiment of the present application, other methods can also be used to help the configuration device determine the user type of the client, and the embodiment of the present application does not limit this.
在本申请实施例中,云平台可以通过针对客户端申请请求的客户端申请响应命令,向配置设备发送客户端的证书。在一些实现方式中,上述证书可以通过客户端申请响应命令中的参数“证书链(CertChain)”指示。在另一些实现方式中,上述证书可以包括客户端证书(用“ClienCert”表示)、中间证书(用“IntermediateCert”表示)、根证书(用“RootCert”表示)中的一种或多种。In this application embodiment, the cloud platform can send the client's certificate to the configuration device through a client application response command for the client application request. In some implementations, the above certificate can be indicated by the parameter "CertChain" in the client application response command. In other implementations, the above certificate may include one or more of a client certificate (represented by "ClienCert"), an intermediate certificate (represented by "IntermediateCert"), and a root certificate (represented by "RootCert").
通常,客户端需要基于接入令牌来接入云平台。在一些场景中,客户端可能需要多次接入云平台,如果客户端每次接入云平台使用的接入令牌相同,可能不利于提高云平台的安全性。例如,对于长期用户的客户端而言,用户可能会通过该客户端多次接入云平台,如果接入令牌不变,可能导致被攻击方截获,威胁云平台的安全。Usually, the client needs to access the cloud platform based on the access token. In some scenarios, the client may need to access the cloud platform multiple times. If the client uses the same access token each time to access the cloud platform, it may not be conducive to improving the security of the cloud platform. For example, for a long-term user client, the user may access the cloud platform multiple times through the client. If the access token remains unchanged, it may be intercepted by the attacker, threatening the security of the cloud platform.
因此,在本申请实施例中,云平台可以为客户端配置第一令牌(又称“更新令牌(refresh token)”),用于客户端向云平台请求更新接入令牌。相应地,客户端可以基于更新后的接入令牌接入云平台。上述接入令牌的更新机制相比于一直使用相同的接入令牌接入云平台,有助于提高云平台的安全性。Therefore, in this embodiment of the present application, the cloud platform can configure a first token (also called "refresh token") for the client, which is used by the client to request the cloud platform to update the access token. Accordingly, the client can access the cloud platform based on the updated access token. The above access token update mechanism helps to improve the security of the cloud platform compared to always using the same access token to access the cloud platform.
在一些实现方式中,当第一设备原有的接入令牌到期后,第一设备可以基于第一令牌向云平台申请更新接入令牌。当然,本申请实施例对申请更新令牌的时机不作具体限定,例如,第一设备还可以在原有的接入令牌快到期时,基于第一令牌向云平台申请更新接入令牌。即,第一设备可以在目标时间基于第一令牌向云平台申请更新接入令牌,其中目标时间与原有的接入令牌的到期时间小于第一时间间隔。又例如,第一设备可以周期性地向云平台申请更新接入令牌,其中,接入令牌的更新周期可以小于或等于接入令牌的有效时间段。In some implementations, when the original access token of the first device expires, the first device can apply to the cloud platform for updating the access token based on the first token. Of course, the embodiment of this application does not specifically limit the timing of applying for an update token. For example, the first device can also apply to the cloud platform for an update access token based on the first token when the original access token is about to expire. . That is, the first device may apply to the cloud platform for updating the access token based on the first token at the target time, where the expiration time of the target time and the original access token is less than the first time interval. For another example, the first device may periodically apply to the cloud platform for updating the access token, where the update period of the access token may be less than or equal to the validity period of the access token.
在一些实现方式中,上述第一令牌可以承载于注册响应命令中。表15示出了本申请实施例的注册响应命令的接口参数。参见表15,注册响应命令可以包括接入令牌、令牌到期、用户标识以及第一令牌。其中,上述参数在命令中的位置、参数对应的值类型、参数的必要性以及参数的说明可以参见表15的介绍。In some implementations, the above-mentioned first token may be carried in the registration response command. Table 15 shows the interface parameters of the registration response command in the embodiment of this application. Referring to Table 15, the registration response command may include access token, token expiry, user identification and first token. Among them, the position of the above parameters in the command, the value type corresponding to the parameter, the necessity of the parameter, and the description of the parameter can be found in Table 15.
表15Table 15
Figure PCTCN2022117782-appb-000007
Figure PCTCN2022117782-appb-000007
Figure PCTCN2022117782-appb-000008
Figure PCTCN2022117782-appb-000008
在一些实现方式中,第一设备可以基于用户标识登录云平台,即第一设备向云平台发送第二信息。其中,第二信息用于请求登录云平台。因此,第二信息可以称为“登录请求”。第二信息中可以包括客户端的用户标识。In some implementations, the first device can log in to the cloud platform based on the user identity, that is, the first device sends the second information to the cloud platform. Among them, the second information is used to request to log in to the cloud platform. Therefore, the second information may be called a "login request". The second information may include the user identification of the client.
下文结合表16和表17示出了本申请实施例的登录接口说明以及登录请求包含的参数。参见表16所示,登录接口的HTTP方法可以为POST,登录接口的访问地址可以表示为“/session”。The description of the login interface and the parameters included in the login request according to the embodiment of the present application are shown below in conjunction with Table 16 and Table 17. As shown in Table 16, the HTTP method of the login interface can be POST, and the access address of the login interface can be expressed as "/session".
表16Table 16
HTTP方法HTTP method 接口访问地址Interface access address
POSTPOST /session/session
参见表17,登录请求命令可以包括接收(accept)、互联网媒体类型(content-type)、接入令牌、用户标识、客户端标识以及登录状态(login)。其中,各个参数在命令中的位置、参数的值类型、参数的必要性以及参数的说明可以参见表17所示。Referring to Table 17, the login request command may include acceptance, Internet media type (content-type), access token, user ID, client ID, and login status (login). Among them, the position of each parameter in the command, the value type of the parameter, the necessity of the parameter, and the description of the parameter can be seen in Table 17.
表17Table 17
Figure PCTCN2022117782-appb-000009
Figure PCTCN2022117782-appb-000009
在一些场景中,客户端与第二设备之间可以采用AMTP协议进行通信。这种情况下,客户端需要将客户端的访问地址发送给云平台,以便后续可以基于客户端的访问地址进行通信。即上述方法还包括:第一设备向云平台发送第三信息,第三信息中包括客户端的访问地址。其中,访问地址为基于AMTP协议的访问地址。In some scenarios, the AMTP protocol can be used to communicate between the client and the second device. In this case, the client needs to send the client's access address to the cloud platform so that subsequent communication can be based on the client's access address. That is, the above method also includes: the first device sends third information to the cloud platform, and the third information includes the access address of the client. Among them, the access address is an access address based on the AMTP protocol.
在一些实现方式中,若第三信息中携带客户端的访问地址,则云平台可以确定客户端选择AMTP协议进行通信,也就是说,第三信息还用于指示客户端支持的通信协议为AMTP协议。In some implementations, if the third information carries the access address of the client, the cloud platform can determine that the client selects the AMTP protocol for communication. That is to say, the third information is also used to indicate that the communication protocol supported by the client is the AMTP protocol. .
在一些实现方式中,上述第三信息可以承载于注册请求中,其中,注册请求用于客户端请求在云平台上进行注册。下文结合表18介绍本申请实施例的注册请求中携带的参数。参见表18所示,注册请求可以包括接入令牌、客户端标识以及客户端访问地址(例如,客户端统一资源定位器(client uniform resource locator,ClientURL))。另外,表18还示出了各个参数在命令中的位置、参数的值类型、参数的必要性以及参数的说明。In some implementations, the above third information may be carried in a registration request, where the registration request is used by the client to request registration on the cloud platform. The parameters carried in the registration request in the embodiment of this application are introduced below in conjunction with Table 18. As shown in Table 18, the registration request may include an access token, a client identifier, and a client access address (eg, client uniform resource locator (ClientURL)). In addition, Table 18 also shows the position of each parameter in the command, the value type of the parameter, the necessity of the parameter, and the description of the parameter.
表18Table 18
Figure PCTCN2022117782-appb-000010
Figure PCTCN2022117782-appb-000010
需要说明的是,注册请求的接口说明可以参见表3所示,为了简洁,在此不再赘述。It should be noted that the interface description of the registration request can be found in Table 3. For the sake of brevity, it will not be described again here.
在另一些实现方式中,第三信息可以承载于登录请求中,登录请求用于客户端请求登录云平台。下文结合表19介绍本申请实施例的登录请求命令中携带的参数。表19中的参数相比于表17所示的参数,增加了客户端访问地址(例如,ClientURL)。In other implementations, the third information may be carried in the login request, which is used by the client to request to log in to the cloud platform. The parameters carried in the login request command in the embodiment of this application are introduced below in conjunction with Table 19. Compared with the parameters shown in Table 17, the parameters in Table 19 include the client access address (for example, ClientURL).
表19Table 19
Figure PCTCN2022117782-appb-000011
Figure PCTCN2022117782-appb-000011
Figure PCTCN2022117782-appb-000012
Figure PCTCN2022117782-appb-000012
需要说明的是,登录请求的接口说明可以参见表16所示,为了简洁,在此不再赘述。It should be noted that the interface description of the login request can be found in Table 16. For the sake of brevity, it will not be described again here.
相应地,如果客户端与第二设备之间基于AMTP协议进行通信,云平台可以向第一设备告知第二设备的访问地址,即第二设备基于AMTP协议的访问地址(又称“接入URL”)。也即是说,上述方法还包括:响应于第三信息,第一设备接收云平台发送的第四信息,第四信息中包括客户端待访问的第二设备的访问地址。Correspondingly, if the client and the second device communicate based on the AMTP protocol, the cloud platform can inform the first device of the access address of the second device, that is, the access address of the second device based on the AMTP protocol (also known as "access URL"). "). That is to say, the above method further includes: in response to the third information, the first device receives fourth information sent by the cloud platform, where the fourth information includes the access address of the second device to be accessed by the client.
相应地,当客户端登录云平台成功后,客户端可以基于第二设备的访问地址,与第二设备进行通信。例如,客户端可以基于第二设备的访问地址,向第二设备发送控制信息,以对第二设备进行控制。Correspondingly, when the client successfully logs in to the cloud platform, the client can communicate with the second device based on the access address of the second device. For example, the client can send control information to the second device based on the access address of the second device to control the second device.
在一些实现方式中,上述第四信息可以承载于针对注册请求的响应命令中,即注册响应命令。表20示出了本申请实施例的注册响应命令包含的参数。参见表20所示,注册响应命令包括接入令牌、用户标识以及接入URL,其中,接入URL用于指示第二设备的访问地址。另外,表20还示出了上述参数在注册响应命令中的位置、参数对应的值类型、参数的必要性以及参数的说明。In some implementations, the above fourth information may be carried in a response command to the registration request, that is, a registration response command. Table 20 shows the parameters included in the registration response command in this embodiment of the present application. As shown in Table 20, the registration response command includes an access token, a user ID, and an access URL, where the access URL is used to indicate the access address of the second device. In addition, Table 20 also shows the position of the above parameters in the registration response command, the value type corresponding to the parameter, the necessity of the parameter, and the description of the parameter.
表20Table 20
Figure PCTCN2022117782-appb-000013
Figure PCTCN2022117782-appb-000013
需要说明的是,注册请求的接口说明可以参见表3所示,为了简洁,在此不再赘述。It should be noted that the interface description of the registration request can be found in Table 3. For the sake of brevity, it will not be described again here.
在另一些实现方式中,上述第四信息可以承载于针对登录请求的响应命令中,即登录响应命令。表21示出了本申请实施例的登录响应命令包含的参数。参见表21所示,登录响应命令包括接入令牌、客户端标识以及客户端的URL,其中,接入URL用于指示第二设备的访问地址。另外,表21还示出了上述参数在登录响应命令中的位置、参数对应的值类型、参数的必要性以及参数的说明。In other implementations, the above fourth information may be carried in a response command to the login request, that is, a login response command. Table 21 shows the parameters included in the login response command in the embodiment of this application. As shown in Table 21, the login response command includes an access token, a client identifier, and a URL of the client, where the access URL is used to indicate the access address of the second device. In addition, Table 21 also shows the position of the above parameters in the login response command, the value type corresponding to the parameter, the necessity of the parameter, and the description of the parameter.
表21Table 21
Figure PCTCN2022117782-appb-000014
Figure PCTCN2022117782-appb-000014
需要说明的是,登录请求的接口说明可以参见表16所示,为了简洁,在此不再赘述。It should be noted that the interface description of the login request can be found in Table 16. For the sake of brevity, it will not be described again here.
在本申请实施例中,上文介绍的第三信息的传输方式与第四信息的传输方式可以单独使用,也可以结合使用。例如,第三信息可以承载于登录请求中,相应地,第四信息可以承载于登录响应命令中。又例如,第三信息可以承载于注册请求中,相应地,第四信息可以承载于注册响应命令中。又例如,第三信息可以承载于注册请求中,相应地,第四信息可以承载于登录响应命令中。又例如,第三信息可以承载于注册响应中,相应地,第四信息可以承载于登录请求中。In the embodiment of the present application, the transmission method of the third information and the transmission method of the fourth information introduced above can be used alone or in combination. For example, the third information may be carried in the login request, and accordingly, the fourth information may be carried in the login response command. For another example, the third information may be carried in the registration request, and accordingly, the fourth information may be carried in the registration response command. For another example, the third information may be carried in the registration request, and correspondingly, the fourth information may be carried in the login response command. For another example, the third information may be carried in the registration response, and correspondingly, the fourth information may be carried in the login request.
另外,本申请实施例对上述客户端的访问地址与第二设备的访问地址的交互顺序不作限定。如上文所述,在一种实现方式中,可以由客户端先向云平台发送客户端的访问地址,然后,由云平台向客户端发送第二设备的访问地址。在另一种实现方式中,可以由云平台先向客户端发送第二设备的访问地址,然后,由客户端向云平台发送客户端的访问地址。例如,云平台可以通过注册响应命令向客户端发送第二设备的访问地址,然后,由客户端通过登录请求向云平台发送客户端的访问地址。In addition, the embodiment of the present application does not limit the order of interaction between the access address of the client and the access address of the second device. As mentioned above, in one implementation, the client may first send the client's access address to the cloud platform, and then the cloud platform may send the access address of the second device to the client. In another implementation manner, the cloud platform may first send the access address of the second device to the client, and then the client may send the access address of the client to the cloud platform. For example, the cloud platform may send the access address of the second device to the client through a registration response command, and then the client sends the client's access address to the cloud platform through a login request.
为了便于理解,下文结合图5和图6,以IOT场景为例介绍本申请实施例的方案。此时,上述云平 台可以为IoT云平台,客户端为IoT客户端,第一设备可以为车载终端,第二设备可以为智能家居设备,配置设备为手机。另外,图5和图6中涉及的命令、信息功能集群与上文的介绍含义相同,并采用相同的名称,为了简洁可以参见上文介绍,下文不再赘述。In order to facilitate understanding, the solution of the embodiment of the present application will be introduced below with reference to Figures 5 and 6, taking the IOT scenario as an example. At this time, the above-mentioned cloud platform can be an IoT cloud platform, the client can be an IoT client, the first device can be a vehicle-mounted terminal, the second device can be a smart home device, and the configuration device can be a mobile phone. In addition, the command and information function clusters involved in Figure 5 and Figure 6 have the same meaning as the above introduction and use the same names. For the sake of brevity, please refer to the above introduction and will not go into details below.
图5(a)~图5(c)是本申请实施例的用于启动客户端的方法的示意性流程图。图5(a)所示的方法包括步骤S511至步骤S527。Figures 5(a) to 5(c) are schematic flowcharts of a method for starting a client according to an embodiment of the present application. The method shown in Figure 5(a) includes steps S511 to S527.
在步骤S511中,手机与车载终端建立安全连接。In step S511, the mobile phone establishes a secure connection with the vehicle-mounted terminal.
例如,手机可以与车载终端通过蓝牙低能耗(bluetooth low energy,BLE)结合无线网络通信技术Wifi建立连接。For example, a mobile phone can establish a connection with a vehicle-mounted terminal through Bluetooth low energy (BLE) combined with the wireless network communication technology Wifi.
在步骤S512中,手机查看车载终端的客户端集群。In step S512, the mobile phone checks the client cluster of the vehicle-mounted terminal.
其中,客户端集群可以参见上文结合表9和表10的介绍,为了简洁,在此不再赘述。Among them, the client cluster can be seen in the above introduction combined with Table 9 and Table 10. For the sake of simplicity, it will not be described again here.
在步骤S513中,用户通过手机确认以车载终端为IoT客户端访问智能家居设备。In step S513, the user confirms using the mobile phone to use the vehicle-mounted terminal as the IoT client to access the smart home device.
需要说明的是,步骤S513可以位于步骤S512之前,或者两个步骤同时进行,又或者,骤S512可以位于步骤S513之前,本申请实施例对此不作限定。It should be noted that step S513 may be located before step S512, or the two steps may be performed simultaneously, or step S512 may be located before step S513, which is not limited in the embodiment of the present application.
在步骤S514中,手机读取客户端集群中的长期用户列表,并确认长期用户列表中是否记录有合适的客户端。In step S514, the mobile phone reads the long-term user list in the client cluster and confirms whether a suitable client is recorded in the long-term user list.
若长期用户列表中包含与手机所在云平台相同的客户端,且该客户端的用户ID与手机的用户ID一致,则执行步骤S515。若长期用户列表中包含的客户端与手机所在云平台不同,或者客户端的用户ID与手机的用户ID不一致,则执行步骤S516。If the long-term user list includes a client that is the same as the cloud platform where the mobile phone is located, and the user ID of the client is consistent with the user ID of the mobile phone, step S515 is executed. If the client included in the long-term user list is different from the cloud platform where the mobile phone is located, or the user ID of the client is inconsistent with the user ID of the mobile phone, step S516 is executed.
在步骤S515中,手机向车载终端发送启动客户端请求命令,以请求启动该客户端。In step S515, the mobile phone sends a client start request command to the vehicle-mounted terminal to request to start the client.
在步骤S516中,手机提示用户选择长期模式或临时模式。In step S516, the mobile phone prompts the user to select long-term mode or temporary mode.
上述长期模式对应创建用户类型为长期用户的客户端,临时模式可以对应创建用户类型为临时用户的客户端。下文以用户选择创建长期用户的客户端为例进行说明,下文的方案也可以适用于创建临时用户。The above long-term mode corresponds to creating a client whose user type is long-term user, and the temporary mode can correspond to creating a client whose user type is temporary user. The following description takes the client where the user chooses to create a long-term user as an example. The solution below can also be applied to creating temporary users.
在步骤S517中,手机向IoT客户端发送CSR请求命令。其中,CSR请求命令可以携带客户端的用户类型。In step S517, the mobile phone sends a CSR request command to the IoT client. Among them, the CSR request command can carry the user type of the client.
另外,CSR请求命令可以参见上文结合表11所示的介绍。In addition, the CSR request command can be found in the introduction shown in Table 11 above.
在步骤S518中,IoT客户端生成密钥对,并向手机发送CSR响应命令。其中,CSR响应命令可以参见上文结合表12的介绍。In step S518, the IoT client generates a key pair and sends a CSR response command to the mobile phone. Among them, the CSR response command can be found in the introduction above in conjunction with Table 12.
在步骤S519中,手机向IoT云平台发送客户端申请请求命令,以通过IoT云接口申请IoT客户端证书及令牌。其中,客户端申请请求中携带客户端的用户类型。In step S519, the mobile phone sends a client application request command to the IoT cloud platform to apply for an IoT client certificate and token through the IoT cloud interface. Among them, the client's application request carries the client's user type.
另外,客户端申请请求包括的参数可以参见上文结合表13和表14的介绍。In addition, the parameters included in the client application request can be found in the above introduction in combination with Table 13 and Table 14.
在步骤S520中,IoT云平台向手机发送客户端申请响应命令。In step S520, the IoT cloud platform sends a client application response command to the mobile phone.
在一些实现方式中,手机可以通过客户端申请响应接口获得IoT云平台返回的IoT客户端证书链及令牌。表22示出了本申请实施例中客户端申请响应命令中包含的参数,以及参数的值类型、参数的位置、参数的必要性以及参数的说明。In some implementations, the mobile phone can obtain the IoT client certificate chain and token returned by the IoT cloud platform through the client application response interface. Table 22 shows the parameters included in the client application response command in the embodiment of the present application, as well as the value type of the parameters, the position of the parameters, the necessity of the parameters, and the description of the parameters.
表22Table 22
Figure PCTCN2022117782-appb-000015
Figure PCTCN2022117782-appb-000015
在步骤S521中,手机向IoT客户端发送添加云请求命令,以请求客户端添加云。In step S521, the mobile phone sends an add cloud request command to the IoT client to request the client to add a cloud.
其中,表23示出了本申请实施例的添加云请求命令包括的参数。参见表23,添加云请求命令可以包括IoT客户端证书、中间证书、根证书、云地址、CToken以及令牌到期信息。另外,表23中还示出了参数的标识、参数的数据类型、参数的约束、参数的质量、参数的默认值以及参数的必要性。Table 23 shows the parameters included in the add cloud request command in this embodiment of the present application. Referring to Table 23, the add cloud request command can include the IoT client certificate, intermediate certificate, root certificate, cloud address, CToken and token expiration information. In addition, Table 23 also shows the identifier of the parameter, the data type of the parameter, the constraints of the parameter, the quality of the parameter, the default value of the parameter and the necessity of the parameter.
表23Table 23
IDID 字段Field 数据类型type of data 约束constraint 质量quality 默认值default value 必要性necessity
00 IOT客户端证书IoT client certificate octstringoctstring max400max400     MM
11 中间证书intermediate certificate octstringoctstring max400max400     OO
22 根证书root certificate octstringoctstring max400max400     MM
33 云地址Cloud address stringstring       MM
44 CTokenCToken octstringoctstring       MM
55 令牌到期信息Token expiry information uint16uint16       MM
在步骤S522中,IoT客户端利用密钥对中的私钥解密Ctoken,得到接入令牌。In step S522, the IoT client uses the private key in the key pair to decrypt the Ctoken and obtain the access token.
在步骤S523中,IoT客户端向手机发送添加云响应命令。其中,添加云响应命令中包括客户端的启动口令。In step S523, the IoT client sends an add cloud response command to the mobile phone. Among them, the add cloud response command includes the client's startup password.
通常,当IoT客户端的用户类型为长期用户时,手机可以存储添加云响应命令中的启动口令,并将启动口令与该IoT客户端的客户端ID、云地址进行关联。另外,添加云响应命令可以参见上文结合表6的相关介绍。Usually, when the user type of the IoT client is a long-term user, the mobile phone can store the startup password in the add cloud response command and associate the startup password with the client ID and cloud address of the IoT client. In addition, to add cloud response commands, please refer to the relevant introduction in Table 6 above.
在步骤S524中,手机向车载终端发送启动客户端请求命令,以请求启动IoT客户端。其中,启动客户端请求命令可以参见上文关于表7所示的介绍。In step S524, the mobile phone sends a client start request command to the vehicle-mounted terminal to request to start the IoT client. For the command to start the client request, please refer to the introduction shown in Table 7 above.
需要说明的是,上述步骤S515和步骤S524可以理解为是发送启动客户端请求命令的两种场景。其中,步骤S515可以理解为是第一设备中配置有合适的客户端的情况下,配置设备可以通过步骤S515直接启动客户端。步骤S524可以理解为是第一设备中未配置有合适的客户端的情况下,配置设备在重新配置客户端之后可以通过步骤S524启动客户端。It should be noted that the above-mentioned steps S515 and S524 can be understood as two scenarios of sending a start client request command. Step S515 can be understood as that when a suitable client is configured in the first device, the configuration device can directly start the client through step S515. Step S524 can be understood as that when the first device is not configured with a suitable client, the configuration device can start the client through step S524 after reconfiguring the client.
在步骤S525中,IoT客户端校验启动客户端请求中的客户端ID对应的云地址和启动口令是否与客户端集群中记录的一致。In step S525, the IoT client verifies whether the cloud address and startup password corresponding to the client ID in the client startup request are consistent with those recorded in the client cluster.
若启动客户端请求中的客户端ID对应的云地址和启动口令与客户端集群中记录的一致,则执行步骤S526。若启动客户端请求中的客户端ID对应的云地址和启动口令与客户端集群中记录的不一致,则执行步骤S527。If the cloud address and startup password corresponding to the client ID in the client startup request are consistent with those recorded in the client cluster, step S526 is executed. If the cloud address and startup password corresponding to the client ID in the client startup request are inconsistent with those recorded in the client cluster, step S527 is executed.
在步骤S526中,车载终端启动IoT客户端,并指示手机IoT客户端启动成功。In step S526, the vehicle-mounted terminal starts the IoT client and indicates that the mobile phone IoT client is started successfully.
在步骤S527中,车载终端向手机指示IoT客户端启动失败。In step S527, the vehicle-mounted terminal indicates to the mobile phone that the IoT client fails to start.
在一些实现方式中,车载终端可以向手机指示IoT客户端启动失败的原因,例如,IoT客户端的启动口令错误,IoT客户端的客户端ID不存在等。In some implementations, the vehicle-mounted terminal can indicate to the mobile phone the reason why the IoT client fails to start, for example, the startup password of the IoT client is wrong, the client ID of the IoT client does not exist, etc.
需要说明的是,上述客户端配置过程中,云平台可以按照步骤S317至步骤S320所示的方法,生成CToken并建立绑定关系,为了简洁,可以参见上文的介绍。It should be noted that during the above client configuration process, the cloud platform can generate a CToken and establish a binding relationship according to the method shown in steps S317 to S320. For simplicity, please refer to the above introduction.
上文结合步骤S511至步骤S527介绍了客户端配置过程以及客户端启动过程。若IoT客户端启动成功,下文结合图5(b)介绍客户端注册过程。图5(b)所示的方法包括步骤S531至步骤S533。The above describes the client configuration process and client startup process in conjunction with steps S511 to S527. If the IoT client starts successfully, the client registration process will be introduced below with reference to Figure 5(b). The method shown in Figure 5(b) includes steps S531 to S533.
在步骤S531中,IoT客户端连接IoT云地址,并使用证书与IoT云平台建立安全连接。In step S531, the IoT client connects to the IoT cloud address and uses the certificate to establish a secure connection with the IoT cloud platform.
在步骤S532中,IoT客户端向IoT云平台发送客户端注册请求,以请求在IoT云平台上进行客户端注册。In step S532, the IoT client sends a client registration request to the IoT cloud platform to request client registration on the IoT cloud platform.
在一些实现方式中,客户端注册请求可以包括客户端ID和接入令牌。其中,客户端注册请求可以参见上文结合表3的介绍。In some implementations, the client registration request may include the client ID and access token. For the client registration request, please refer to the introduction in Table 3 above.
在步骤S533中,响应于客户端注册请求,IoT云平台向IoT客户端发送客户端注册响应命令。In step S533, in response to the client registration request, the IoT cloud platform sends a client registration response command to the IoT client.
在一些场景中,客户端注册响应命令可以携带IoT云平台为IoT客户端分配的新的接入令牌、用户ID、第一令牌。其中,客户端注册响应命令可以参见上文结合表5的介绍。In some scenarios, the client registration response command can carry a new access token, user ID, and first token assigned by the IoT cloud platform to the IoT client. For the client registration response command, please refer to the introduction in Table 5 above.
下文结合图5(c)介绍本申请实施例中的客户端登录过程。图5(c)所示的方法包括步骤S541至步骤S542。The client login process in the embodiment of this application is introduced below with reference to Figure 5(c). The method shown in Figure 5(c) includes steps S541 to S542.
在步骤S541中,IoT客户端向IoT云平台发送登录请求,以请求登录IoT云平台。In step S541, the IoT client sends a login request to the IoT cloud platform to request to log in to the IoT cloud platform.
在一些实现方式中,上述登录请求包括用户ID、客户端ID和接入令牌。可以参见上文结合表17的介绍。In some implementations, the above login request includes a user ID, a client ID, and an access token. Please refer to the introduction in conjunction with Table 17 above.
在步骤S542中,响应于登录请求,IoT云平台向IoT客户端发送登录响应命令。In step S542, in response to the login request, the IoT cloud platform sends a login response command to the IoT client.
表24示出了本申请实施例的登录响应命令的一种可能的实现方式。参见表24所示,登录响应命令可以包括互联网媒体类型以及令牌到期信息。Table 24 shows a possible implementation of the login response command in the embodiment of this application. As shown in Table 24, the login response command may include Internet media type and token expiration information.
表24Table 24
Figure PCTCN2022117782-appb-000016
Figure PCTCN2022117782-appb-000016
图6(a)~图6(c)是本申请另一实施例的用于启动客户端的方法的示意性流程图。图6(a)所示的方法包括步骤S611至步骤S627。需要说明的是,图6所示的方法可以适用于客户端采用AMTP协议与智能家居设备通信。6(a) to 6(c) are schematic flow charts of a method for starting a client according to another embodiment of the present application. The method shown in Figure 6(a) includes steps S611 to S627. It should be noted that the method shown in Figure 6 can be applied to the client using the AMTP protocol to communicate with smart home devices.
在步骤S611中,手机与车载终端建立安全连接。In step S611, the mobile phone establishes a secure connection with the vehicle-mounted terminal.
在步骤S612中,手机查看车载终端的客户端集群。In step S612, the mobile phone checks the client cluster of the vehicle-mounted terminal.
其中,客户端集群可以参见上文结合表9和表10的介绍,为了简洁,在此不再赘述。Among them, the client cluster can be seen in the above introduction combined with Table 9 and Table 10. For the sake of simplicity, it will not be described again here.
在步骤S613中,用户通过手机确认以车载终端为IoT客户端访问智能家居设备。In step S613, the user confirms using the mobile phone to use the vehicle-mounted terminal as the IoT client to access the smart home device.
需要说明的是,步骤S613可以位于步骤S612之前,或者两个步骤同时进行,又或者,骤S612可以位于步骤S613之前,本申请实施例对此不作限定。It should be noted that step S613 may be located before step S612, or the two steps may be performed simultaneously, or step S612 may be located before step S613, which is not limited in the embodiment of the present application.
在步骤S614中,手机读取客户端集群中的长期用户列表,并确认长期用户列表中是否记录有合适的客户端。In step S614, the mobile phone reads the long-term user list in the client cluster and confirms whether a suitable client is recorded in the long-term user list.
若长期用户列表中包含与手机所在云平台相同的客户端,且该客户端的用户ID与手机的用户ID一致,则执行步骤S615。若长期用户列表中包含的客户端与手机所在云平台不同,或者客户端的用户ID与手机的用户ID不一致,则执行步骤S616。If the long-term user list includes a client that is the same as the cloud platform where the mobile phone is located, and the user ID of the client is consistent with the user ID of the mobile phone, step S615 is executed. If the client included in the long-term user list is on a different cloud platform than the mobile phone, or the user ID of the client is inconsistent with the user ID of the mobile phone, step S616 is executed.
在步骤S615中,手机向车载终端发送启动客户端请求命令,以请求启动该客户端。In step S615, the mobile phone sends a client start request command to the vehicle-mounted terminal to request to start the client.
在步骤S616中,手机提示用户选择长期模式或临时模式。In step S616, the mobile phone prompts the user to select long-term mode or temporary mode.
上述长期模式对应创建用户类型为长期用户的客户端,临时模式可以对应创建用户类型为临时用户的客户端。下文以用户选择创建长期用户的客户端为例进行说明,下文的方案也可以适用于创建临时用户。The above long-term mode corresponds to creating a client whose user type is long-term user, and the temporary mode can correspond to creating a client whose user type is temporary user. The following description takes the client where the user chooses to create a long-term user as an example. The solution below can also be applied to creating temporary users.
在步骤S617中,手机向IoT客户端发送CSR请求命令。其中,CSR请求命令可以携带客户端的用户类型。In step S617, the mobile phone sends a CSR request command to the IoT client. Among them, the CSR request command can carry the user type of the client.
另外,CSR请求命令可以参见上文结合表11所示的介绍。In addition, the CSR request command can be found in the introduction shown in Table 11 above.
在步骤S618中,IoT客户端生成密钥对,并向手机发送CSR响应命令。其中,CSR响应命令可以参见上文结合表12的介绍。In step S618, the IoT client generates a key pair and sends a CSR response command to the mobile phone. Among them, the CSR response command can be found in the introduction above in conjunction with Table 12.
在步骤S619中,手机向IoT云平台发送客户端申请请求命令,以通过IoT云接口申请IoT客户端证书及令牌。其中,客户端申请请求中携带客户端的用户类型。In step S619, the mobile phone sends a client application request command to the IoT cloud platform to apply for an IoT client certificate and token through the IoT cloud interface. Among them, the client's application request carries the client's user type.
另外,客户端申请请求包括的参数可以参见上文结合表13和表14的介绍。In addition, the parameters included in the client application request can be found in the above introduction in combination with Table 13 and Table 14.
在步骤S620中,IoT云平台向手机发送客户端申请响应命令。In step S620, the IoT cloud platform sends a client application response command to the mobile phone.
在一些实现方式中,手机可以通过客户端申请响应接口获得IoT云平台返回的IoT客户端证书链及令牌。表25示出了本申请实施例中客户端申请响应命令中包含的参数,以及参数的值类型、参数的位置、参数的必要性以及参数的说明。In some implementations, the mobile phone can obtain the IoT client certificate chain and token returned by the IoT cloud platform through the client application response interface. Table 25 shows the parameters included in the client application response command in the embodiment of the present application, as well as the value type of the parameters, the position of the parameters, the necessity of the parameters, and the description of the parameters.
表25Table 25
Figure PCTCN2022117782-appb-000017
Figure PCTCN2022117782-appb-000017
在步骤S621中,手机向IoT客户端发送添加云请求命令,以请求客户端添加云。In step S621, the mobile phone sends an add cloud request command to the IoT client to request the client to add a cloud.
其中,表26示出了本申请实施例的添加云请求命令包括的参数。参见表26,添加云请求命令可以包括IoT客户端证书、中间证书、根证书、云地址、CToken以及令牌到期信息。另外,表26中还示出了参数的标识、参数的数据类型、参数的约束、参数的质量、参数的默认值以及参数的必要性。Table 26 shows the parameters included in the add cloud request command in this embodiment of the present application. Referring to Table 26, the add cloud request command can include the IoT client certificate, intermediate certificate, root certificate, cloud address, CToken and token expiration information. In addition, Table 26 also shows the identifier of the parameter, the data type of the parameter, the constraints of the parameter, the quality of the parameter, the default value of the parameter and the necessity of the parameter.
表26Table 26
IDID 字段Field 数据类型type of data 约束constraint 质量quality 默认值default value 必要性necessity
00 IOT客户端证书IoT client certificate octstringoctstring max400max400     MM
11 中间证书intermediate certificate octstringoctstring max400max400     OO
22 根证书root certificate octstringoctstring max400max400     MM
33 云地址Cloud address stringstring       MM
44 CTokenCToken octstringoctstring       MM
55 令牌到期信息Token expiry information uint16uint16       MM
在步骤S622中,IoT客户端利用密钥对中的私钥解密Ctoken,得到接入令牌。In step S622, the IoT client decrypts the Ctoken using the private key in the key pair to obtain the access token.
在步骤S623中,IoT客户端向手机发送添加云响应命令。其中,添加云响应命令中包括客户端的启动口令。In step S623, the IoT client sends an add cloud response command to the mobile phone. Among them, the add cloud response command includes the client's startup password.
通常,当IoT客户端的用户类型为长期用户时,手机可以存储添加云响应命令中的启动口令,并将启动口令与该IoT客户端的客户端ID、云地址进行关联。另外,添加云响应命令可以参见上文结合表6的相关介绍。Usually, when the user type of the IoT client is a long-term user, the mobile phone can store the startup password in the add cloud response command and associate the startup password with the client ID and cloud address of the IoT client. In addition, to add cloud response commands, please refer to the relevant introduction in Table 6 above.
在步骤S624中,手机向车载终端发送启动客户端请求命令,以请求启动IoT客户端。其中,启动客户端请求命令可以参见上文关于表7所示的介绍。In step S624, the mobile phone sends a client start request command to the vehicle-mounted terminal to request to start the IoT client. For the command to start the client request, please refer to the introduction shown in Table 7 above.
需要说明的是,上述步骤S615和步骤S624可以理解为是发送启动客户端请求命令的两种场景。其中,步骤S615可以理解为是第一设备中配置有合适的客户端的情况下,配置设备可以通过步骤S615直接启动客户端。步骤S624可以理解为是第一设备中未配置有合适的客户端的情况下,配置设备在重新配置客户端之后可以通过步骤S624启动客户端。It should be noted that the above-mentioned step S615 and step S624 can be understood as two scenarios of sending a start client request command. Step S615 can be understood as that when a suitable client is configured in the first device, the configuration device can directly start the client through step S615. Step S624 can be understood as that when the first device is not configured with a suitable client, the configuration device can start the client through step S624 after reconfiguring the client.
在步骤S625中,IoT客户端校验启动客户端请求中的客户端ID对应的云地址和启动口令是否与客户端集群中记录的一致。In step S625, the IoT client verifies whether the cloud address and startup password corresponding to the client ID in the client startup request are consistent with those recorded in the client cluster.
若启动客户端请求中的客户端ID对应的云地址和启动口令与客户端集群中记录的一致,则执行步骤S626。若启动客户端请求中的客户端ID对应的云地址和启动口令与客户端集群中记录的不一致,则执行步骤S627。If the cloud address and startup password corresponding to the client ID in the client startup request are consistent with those recorded in the client cluster, step S626 is executed. If the cloud address and startup password corresponding to the client ID in the client startup request are inconsistent with those recorded in the client cluster, step S627 is executed.
在步骤S626中,车载终端启动IoT客户端,并指示手机IoT客户端启动成功。In step S626, the vehicle-mounted terminal starts the IoT client and indicates that the mobile phone IoT client is started successfully.
在步骤S627中,车载终端向手机指示IoT客户端启动失败。In step S627, the vehicle-mounted terminal indicates to the mobile phone that the IoT client fails to start.
在一些实现方式中,车载终端可以向手机指示IoT客户端启动失败的原因,例如,IoT客户端的启动口令错误,IoT客户端的客户端ID不存在等。In some implementations, the vehicle-mounted terminal can indicate to the mobile phone the reason why the IoT client fails to start, for example, the startup password of the IoT client is wrong, the client ID of the IoT client does not exist, etc.
需要说明的是,上述客户端配置过程中,云平台可以按照步骤S317至步骤S320所示的方法,生成CToken并建立绑定关系,为了简洁,可以参见上文的介绍。It should be noted that during the above client configuration process, the cloud platform can generate a CToken and establish a binding relationship according to the method shown in steps S317 to S320. For simplicity, please refer to the above introduction.
上文结合步骤S611至步骤S627介绍了客户端配置过程以及客户端启动过程。若IoT客户端启动成功,下文结合图6(b)介绍客户端注册过程。图6(b)所示的方法包括步骤S631至步骤S633。The client configuration process and client startup process are introduced above in conjunction with steps S611 to S627. If the IoT client is started successfully, the client registration process will be introduced below with reference to Figure 6(b). The method shown in Figure 6(b) includes steps S631 to S633.
在步骤S631中,IoT客户端连接IoT云地址,并使用证书与IoT云建立安全连接。In step S631, the IoT client connects to the IoT cloud address and uses the certificate to establish a secure connection with the IoT cloud.
在步骤S632中,IoT客户端向IoT云平台发送客户端注册请求,以请求在IoT云平台上进行客户端注册。In step S632, the IoT client sends a client registration request to the IoT cloud platform to request client registration on the IoT cloud platform.
在一些实现方式中,客户端注册请求可以包括客户端ID、接入令牌以及IoT客户端的访问地址。其中,客户端注册请求可以参见上文结合表18的介绍。In some implementations, the client registration request may include the client ID, access token, and access address of the IoT client. For the client registration request, please refer to the introduction in Table 18 above.
在步骤S633中,响应于客户端注册请求,IoT云平台向IoT客户端发送客户端注册响应命令。In step S633, in response to the client registration request, the IoT cloud platform sends a client registration response command to the IoT client.
在一些场景中,客户端注册响应命令可以携带IoT云平台为IoT客户端分配的新的接入令牌、用户ID、第一令牌、以及智能家居设备的访问地址。其中,客户端注册响应命令可以参见上文结合表20的介绍。In some scenarios, the client registration response command can carry the new access token, user ID, first token, and access address of the smart home device assigned by the IoT cloud platform to the IoT client. For the client registration response command, please refer to the introduction in Table 20 above.
下文结合图6(c)介绍本申请实施例中的客户端登录过程。图6(c)所示的方法包括步骤S641至步骤S642。The client login process in the embodiment of this application is introduced below with reference to Figure 6(c). The method shown in Figure 6(c) includes steps S641 to S642.
在步骤S641中,IoT客户端向IoT云平台发送登录请求,以请求登录IoT云平台。In step S641, the IoT client sends a login request to the IoT cloud platform to request to log in to the IoT cloud platform.
在一些实现方式中,上述登录请求包括用户ID、客户端ID和接入令牌。可以参见上文结合表17的介绍。In some implementations, the above login request includes a user ID, a client ID, and an access token. Please refer to the above introduction in conjunction with Table 17.
在步骤S642中,响应于登录请求,IoT云平台向IoT客户端发送登录响应命令。In step S642, in response to the login request, the IoT cloud platform sends a login response command to the IoT client.
表27示出了本申请实施例的登录响应命令的一种可能的实现方式。参见表27所示,登录响应命令可以包括互联网媒体类型以及令牌到期信息。Table 27 shows a possible implementation of the login response command in the embodiment of this application. As shown in Table 27, the login response command may include Internet media type and token expiration information.
表27Table 27
Figure PCTCN2022117782-appb-000018
Figure PCTCN2022117782-appb-000018
需要说明的是,在本申请实施例中,除了按照图6所示的方法通过注册请求以及注册响应命令,交互IoT客户端的访问地址以及智能家居设备的访问地址。另外,如上文的介绍IoT客户端的访问地址以及智能家居设备的访问地址,也可以通过登录请求以及登录响应命令交互,例如,可以采用表19和表21所介绍的命令。此时,客户端注册请求以及客户端注册响应可以结合表3和表5所介绍的命令。为了简洁,下文不再赘述。It should be noted that in this embodiment of the present application, in addition to using the registration request and registration response commands according to the method shown in Figure 6, the access address of the IoT client and the access address of the smart home device are exchanged. In addition, as described above, the access address of the IoT client and the access address of the smart home device can also be interacted through login request and login response commands. For example, the commands introduced in Table 19 and Table 21 can be used. At this time, the client registration request and client registration response can be combined with the commands introduced in Table 3 and Table 5. For the sake of brevity, no further details will be given below.
上文结合图1至图6,详细描述了本申请的方法实施例,下面结合图7至图10,详细描述本申请的装置实施例。应理解,方法实施例的描述与装置实施例的描述相互对应,因此,未详细描述的部分可以参见前面方法实施例。The method embodiments of the present application are described in detail above with reference to FIGS. 1 to 6 , and the device embodiments of the present application are described in detail below with reference to FIGS. 7 to 10 . It should be understood that the description of the method embodiments corresponds to the description of the device embodiments. Therefore, the parts not described in detail can be referred to the previous method embodiments.
图7是本申请实施例的第一设备的示意图。图7所示的第一设备700包括:接收单元710。Figure 7 is a schematic diagram of the first device according to the embodiment of the present application. The first device 700 shown in FIG. 7 includes: a receiving unit 710.
接收单元710,用于接收配置设备发送的第一请求,所述第一请求用于请求启动所述第一设备中的客户端,所述客户端用于与所述云平台进行通信。The receiving unit 710 is configured to receive a first request sent by a configuration device, where the first request is used to request to start a client in the first device, where the client is used to communicate with the cloud platform.
在一种可能的实现方式中,所述第一请求携带所述客户端的启动口令,所述启动口令用于对启动所述客户端的用户进行身份验证。In a possible implementation, the first request carries a startup password of the client, and the startup password is used to authenticate the user who starts the client.
在一种可能的实现方式中,所述第一设备还包括:第一处理单元,用于确定所述第一请求中携带的启动口令与预存的所述客户端的启动口令是否匹配;若所述第一请求中携带的启动口令与所述预存的启动口令匹配,所述第一处理单元,还用于启动所述客户端。In a possible implementation, the first device further includes: a first processing unit, configured to determine whether the startup password carried in the first request matches the prestored startup password of the client; if the The startup password carried in the first request matches the pre-stored startup password, and the first processing unit is also used to start the client.
在一种可能的实现方式中,所述第一请求携带所述云平台的指示信息。In a possible implementation, the first request carries indication information of the cloud platform.
在一种可能的实现方式中,所述第一设备还包括:第二处理单元,用于基于所述第一请求中携带的云平台信息选择所述客户端。In a possible implementation, the first device further includes: a second processing unit configured to select the client based on the cloud platform information carried in the first request.
在一种可能的实现方式中,所述第一设备中包括功能集群,所述功能集群用于指示所述客户端支持的命令;和/或,所述功能集群用于记录所述第一设备中对应长期用户的客户端。In a possible implementation, the first device includes a functional cluster, the functional cluster is used to indicate commands supported by the client; and/or the functional cluster is used to record the first device Client corresponding to long-term users.
在一种可能的实现方式中,若所述客户端的用户类型为长期用户,所述功能集群用于指示所述客户端的以下一种或多种信息:所述客户端的客户端标识;所述客户端的用户标识;以及所述云平台的指示信息。In a possible implementation, if the user type of the client is a long-term user, the function cluster is used to indicate one or more of the following information of the client: the client identifier of the client; The user identification of the terminal; and the instruction information of the cloud platform.
在一种可能的实现方式中,所述功能集群包括以下一种或多种命令:所述第一请求;用于指示所述客户端添加所述云平台的第二请求;针对所述第二请求的响应命令,其中,针对所述第二请求的响应命令用于指示所述云平台是否添加成功;用于请求所述客户端的CSR的第三请求;针对所述第三请求的响应命令,其中,针对所述第三请求的响应命令用于向所述云平台请求所述客户端进行身份验证的证书。In a possible implementation, the function cluster includes one or more of the following commands: the first request; a second request for instructing the client to add the cloud platform; for the second The response command for the request, wherein the response command for the second request is used to indicate whether the cloud platform is added successfully; the third request for requesting the CSR of the client; the response command for the third request, Wherein, the response command to the third request is used to request from the cloud platform a certificate for identity verification of the client.
在一种可能的实现方式中,若所述功能集群包括所述第二请求,所述第二请求包括以下信息中的一种或多种:所述客户端在所述云平台进行身份验证的证书信息,所述云平台的指示信息,以及所述云平台的接入令牌信息。In a possible implementation, if the functional cluster includes the second request, the second request includes one or more of the following information: the client authenticates itself on the cloud platform. Certificate information, indication information of the cloud platform, and access token information of the cloud platform.
在一种可能的实现方式中,若所述功能集群包括所述针对所述第二请求的响应命令,所述针对第二请求的响应命令包括:指示所述云平台是否添加成功的信息,和/或,所述客户端的启动口令。In a possible implementation, if the function cluster includes the response command to the second request, the response command to the second request includes: information indicating whether the cloud platform is added successfully, and /or, the startup password of the client.
在一种可能的实现方式中,所述接收单元,用于:接收所述云平台发送的第一信息,所述第一信息中包括第一令牌,所述第一令牌用于向所述云平台请求更新所述接入令牌。In a possible implementation, the receiving unit is configured to receive the first information sent by the cloud platform, where the first information includes a first token, and the first token is used to send the message to the cloud platform. The cloud platform requests to update the access token.
在一种可能的实现方式中,所述第一设备还包括:第一发送单元,用于向所述云平台发送第二信息,所述第二信息用于请求登录所述云平台,所述第二信息中包括所述客户端的用户标识。In a possible implementation, the first device further includes: a first sending unit, configured to send second information to the cloud platform, where the second information is used to request to log in to the cloud platform, the The second information includes the user identification of the client.
在一种可能的实现方式中,所述接收单元,用于:接收所述配置设备发送的第一指示信息,所述第一指示信息用于配置所述客户端的用户类型。In a possible implementation, the receiving unit is configured to: receive first indication information sent by the configuration device, where the first indication information is used to configure the user type of the client.
在一种可能的实现方式中,所述客户端的用户类型是由用户通过所述配置设备配置的。In a possible implementation, the user type of the client is configured by the user through the configuration device.
在一种可能的实现方式中,所述用户类型包括长期用户或临时用户。In a possible implementation, the user types include long-term users or temporary users.
在一种可能的实现方式中,所述客户端的用户类型为长期用户。In a possible implementation, the user type of the client is a long-term user.
在一种可能的实现方式中,所述第一设备还包括:第二发送单元,用于向所述云平台发送第三信息,所述第三信息中包括所述客户端的访问地址。In a possible implementation, the first device further includes: a second sending unit, configured to send third information to the cloud platform, where the third information includes the access address of the client.
在一种可能的实现方式中,所述第三信息承载于所述客户端请求在所述云平台进行注册的注册请 求,和/或,所述第三信息承载于所述客户端请求登录所述云平台的登录请求。In a possible implementation, the third information is carried in a registration request of the client requesting to register on the cloud platform, and/or the third information is carried in a login request of the client. Describe the login request of the cloud platform.
在一种可能的实现方式中,所述访问地址为基于AMTP协议的访问地址,所述第三信息用于指示所述客户端使用所述AMTP协议进行通信。In a possible implementation, the access address is an access address based on the AMTP protocol, and the third information is used to instruct the client to use the AMTP protocol to communicate.
在一种可能的实现方式中,所述接收单元,用于:响应于所述第三信息,接收所述云平台发送的第四信息,所述第四信息中包括所述客户端待访问的第二设备的访问地址。In a possible implementation, the receiving unit is configured to: in response to the third information, receive fourth information sent by the cloud platform, where the fourth information includes the information to be accessed by the client. The access address of the second device.
在一种可能的实现方式中,所述第四信息承载于针对所述客户端请求在所述云平台进行注册的注册请求的响应命令中,和/或,所述第四信息承载于针对所述客户端请求登录所述云平台的登录请求的响应命令中。In a possible implementation, the fourth information is carried in a response command to a registration request for the client to register on the cloud platform, and/or the fourth information is carried in a response command to the registration request of the client. In the response command of the login request of the client requesting to log in to the cloud platform.
图8是本申请实施例的云平台的示意图。图8所示的云平台例如可以是一个或多个云服务器。图8所示的云平台800包括:通信单元810。Figure 8 is a schematic diagram of the cloud platform according to the embodiment of the present application. The cloud platform shown in Figure 8 may be, for example, one or more cloud servers. The cloud platform 800 shown in FIG. 8 includes: a communication unit 810.
通信单元810,用于与第一设备中配置的客户端进行通信,所述第一设备的客户端是基于第一请求启动的,所述第一请求用于请求启动所述客户端。The communication unit 810 is used to communicate with the client configured in the first device. The client of the first device is started based on a first request, and the first request is used to request to start the client.
在一种可能的实现方式中,所述第一请求携带所述客户端的启动口令,所述启动口令用于对启动所述客户端的用户进行身份验证。In a possible implementation, the first request carries a startup password of the client, and the startup password is used to authenticate the user who starts the client.
在一种可能的实现方式中,所述第一请求携带所述客户端的云平台信息。In a possible implementation, the first request carries cloud platform information of the client.
在一种可能的实现方式中,所述第一设备中包括功能集群,所述功能集群用于记录所述客户端。In a possible implementation, the first device includes a functional cluster, and the functional cluster is used to record the client.
在一种可能的实现方式中,所述功能集群用于指示所述客户端的以下一种或多种信息:所述客户端的客户端标识;所述客户端的用户标识;以及所述云平台的指示信息。In a possible implementation, the function cluster is used to indicate one or more of the following information of the client: a client identification of the client; a user identification of the client; and an indication of the cloud platform information.
在一种可能的实现方式中,所述功能集群包括以下一种或多种命令:所述第一请求;用于指示所述客户端添加所述云平台的第二请求;针对所述第二请求的响应命令,其中,针对所述第二请求的响应命令用于指示所述云平台是否添加成功;用于请求所述客户端的CSR的第三请求;针对所述第三请求的响应命令,其中,针对所述第三请求的响应命令用于向所述云平台请求用于所述客户端进行身份验证的证书。In a possible implementation, the function cluster includes one or more of the following commands: the first request; a second request for instructing the client to add the cloud platform; for the second The response command for the request, wherein the response command for the second request is used to indicate whether the cloud platform is added successfully; the third request for requesting the CSR of the client; the response command for the third request, Wherein, the response command to the third request is used to request the cloud platform for a certificate used for identity authentication of the client.
在一种可能的实现方式中,若所述功能集群包括所述第二请求,所述第二请求包括以下信息中的一种或多种:用于所述客户端在所述云平台进行身份验证的证书信息,所述云平台的指示信息以及所述云平台的接入令牌信息。In a possible implementation, if the functional cluster includes the second request, the second request includes one or more of the following information: used for the client to identify itself on the cloud platform Verified certificate information, indication information of the cloud platform and access token information of the cloud platform.
在一种可能的实现方式中,若所述功能集群包括所述针对所述第二请求的响应命令,所述针对第二请求的响应命令包括:指示所述云平台是否添加成功的信息,和/或,所述客户端的启动口令。In a possible implementation, if the function cluster includes the response command to the second request, the response command to the second request includes: information indicating whether the cloud platform is added successfully, and /or, the startup password of the client.
在一种可能的实现方式中,所述通信单元,还用于:向所述第一设备发送第一信息,所述第一信息中包括第一令牌,所述第一令牌用于向所述云平台请求更新所述接入令牌。In a possible implementation, the communication unit is further configured to: send first information to the first device, where the first information includes a first token, and the first token is used to send The cloud platform requests to update the access token.
在一种可能的实现方式中,所述通信单元,还用于:接收所述第一设备发送的第二信息,所述第二信息用于请求登录所述云平台,所述第二信息中包括所述客户端的用户标识。In a possible implementation, the communication unit is further configured to: receive second information sent by the first device, where the second information is used to request to log in to the cloud platform. Contains the user ID of the client.
在一种可能的实现方式中,所述通信单元,还用于:接收所述配置设备发送的第二指示信息,所述第二指示信息用于配置所述客户端的用户类型。In a possible implementation, the communication unit is further configured to: receive second instruction information sent by the configuration device, where the second instruction information is used to configure the user type of the client.
在一种可能的实现方式中,所述客户端的用户类型是由用户通过所述配置设备配置的。In a possible implementation, the user type of the client is configured by the user through the configuration device.
在一种可能的实现方式中,所述用户类型包括长期用户或临时用户。In a possible implementation, the user types include long-term users or temporary users.
在一种可能的实现方式中,所述客户端的用户类型为长期用户。In a possible implementation, the user type of the client is a long-term user.
在一种可能的实现方式中,所述通信单元,还用于:接收所述第一设备发送的第三信息,所述第三信息中包括所述客户端的访问地址。In a possible implementation, the communication unit is further configured to receive third information sent by the first device, where the third information includes the access address of the client.
在一种可能的实现方式中,所述第三信息承载于所述客户端请求在所述云平台进行注册的注册请求,和/或,所述第三信息承载于所述客户端请求登录所述云平台的登录请求。In a possible implementation, the third information is carried in a registration request of the client requesting to register on the cloud platform, and/or the third information is carried in a login request of the client. Describe the login request of the cloud platform.
在一种可能的实现方式中,所述访问地址为基于AMTP协议的访问地址,所述第三信息用于指示所述客户端使用所述AMTP协议进行通信。In a possible implementation, the access address is an access address based on the AMTP protocol, and the third information is used to instruct the client to use the AMTP protocol to communicate.
在一种可能的实现方式中,所述通信单元,还用于:响应于所述第三信息,向所述第一设备发送第四信息,所述第四信息中包括所述客户端待访问的第二设备的访问地址。In a possible implementation, the communication unit is further configured to: in response to the third information, send fourth information to the first device, where the fourth information includes the client to be accessed The access address of the second device.
在一种可能的实现方式中,所述第四信息承载于针对所述客户端请求在所述云平台进行注册的注册请求的响应命令中,和/或,所述第四信息承载于针对所述客户端请求登录所述云平台的登录请求的响应命令中。In a possible implementation, the fourth information is carried in a response command to a registration request for the client to register on the cloud platform, and/or the fourth information is carried in a response command to the registration request of the client. In the response command of the login request of the client requesting to log in to the cloud platform.
图9是本申请实施例的配置设备的示意图。图9所示的配置设备900包括发送单元910。Figure 9 is a schematic diagram of a configuration device according to an embodiment of the present application. The configuration device 900 shown in FIG. 9 includes a sending unit 910.
发送单元910,用于向第一设备发送第一请求,所述第一请求用于请求启动所述第一设备中的客户端,所述客户端用于与所述云平台进行通信。The sending unit 910 is configured to send a first request to the first device, where the first request is used to request to start a client in the first device, where the client is used to communicate with the cloud platform.
在一种可能的实现方式中,所述第一请求携带所述客户端的启动口令,所述启动口令用于对启动所 述客户端的用户进行身份验证,和/或所述第一请求携带所述客户端的云平台信息。In a possible implementation, the first request carries a startup password of the client, the startup password is used to authenticate the user who starts the client, and/or the first request carries the The client’s cloud platform information.
在一种可能的实现方式中,所述第一设备中包括功能集群,所述功能集群用于指示所述客户端支持的命令;和/或所述功能集群用于记录所述第一设备中对应长期用户的客户端。In a possible implementation, the first device includes a function cluster, the function cluster is used to indicate the commands supported by the client; and/or the function cluster is used to record the commands in the first device. A client for long-term users.
在一种可能的实现方式中,所述功能集群用于指示所述客户端的以下一种或多种信息:所述客户端的客户端标识;所述客户端的用户标识;以及所述云平台的指示信息。In a possible implementation, the function cluster is used to indicate one or more of the following information of the client: a client identification of the client; a user identification of the client; and an indication of the cloud platform information.
在一种可能的实现方式中,所述功能集群包括以下一种或多种命令:所述第一请求;用于指示所述客户端添加所述云平台的第二请求;针对所述第二请求的响应命令,其中,针对所述第二请求的响应命令用于指示所述云平台是否添加成功;用于请求所述客户端的CSR的第三请求;针对所述第三请求的响应命令,其中,针对所述第三请求的响应命令用于向所述云平台请求所述客户端进行身份验证的证书。In a possible implementation, the function cluster includes one or more of the following commands: the first request; a second request for instructing the client to add the cloud platform; for the second The response command for the request, wherein the response command for the second request is used to indicate whether the cloud platform is added successfully; the third request for requesting the CSR of the client; the response command for the third request, Wherein, the response command to the third request is used to request from the cloud platform a certificate for identity verification of the client.
在一种可能的实现方式中,若所述功能集群包括所述第二请求,所述第二请求包括以下信息中的一种或多种:用于所述客户端在所述云平台进行身份验证的证书信息,所述云平台的地址信息以及所述云平台的接入令牌信息。In a possible implementation, if the functional cluster includes the second request, the second request includes one or more of the following information: used for the client to identify itself on the cloud platform The verified certificate information, the address information of the cloud platform and the access token information of the cloud platform.
在一种可能的实现方式中,若所述功能集群包括所述针对所述第二请求的响应命令,所述针对第二请求的响应命令包括:指示所述云平台是否添加成功的信息,和/或,所述客户端的启动口令。In a possible implementation, if the function cluster includes the response command to the second request, the response command to the second request includes: information indicating whether the cloud platform is added successfully, and /or, the startup password of the client.
在一种可能的实现方式中,若针对所述第二请求的响应命令包括所述客户端的启动口令,所述配置设备还包括:处理单元,用于若所述客户端的用户类型为长期用户,存储所述客户端的启动口令。In a possible implementation, if the response command to the second request includes the startup password of the client, the configuration device further includes: a processing unit, configured to: if the user type of the client is a long-term user, Stores the client's startup password.
在一种可能的实现方式中,所述发送单元,还用于:向所述第一设备发送第一指示信息,所述第一指示信息用于配置所述客户端的用户类型。In a possible implementation, the sending unit is further configured to: send first indication information to the first device, where the first indication information is used to configure the user type of the client.
在一种可能的实现方式中,所述客户端的用户类型是由用户通过所述配置设备配置的。In a possible implementation, the user type of the client is configured by the user through the configuration device.
在一种可能的实现方式中,所述用户类型包括长期用户或临时用户。In a possible implementation, the user types include long-term users or temporary users.
在一种可能的实现方式中,所述客户端的用户类型为长期用户。In a possible implementation, the user type of the client is a long-term user.
在可选的实施例中,所述接收单元710可以为收发机1040。第一设备700还可以包括处理器1010和存储器1020,具体如图10所示。In an optional embodiment, the receiving unit 710 may be a transceiver 1040. The first device 700 may also include a processor 1010 and a memory 1020, as specifically shown in FIG. 10 .
在可选的实施例中,所述通信单元810可以为收发机1040。云平台800还可以包括处理器1010和存储器1020,具体如图10所示。In an optional embodiment, the communication unit 810 may be a transceiver 1040. The cloud platform 800 may also include a processor 1010 and a memory 1020, as specifically shown in Figure 10.
在可选的实施例中,所述发送单元910可以为收发机1040。配置设备900还可以包括处理器1010和存储器1020,具体如图10所示。In an optional embodiment, the sending unit 910 may be a transceiver 1040. The configuration device 900 may also include a processor 1010 and a memory 1020, as specifically shown in Figure 10.
图10是本申请实施例的通信装置的示意性结构图。图10中的虚线表示该单元或模块为可选的。该装置1000可用于实现上述方法实施例中描述的方法。装置1000可以是芯片、终端设备或网络设备。Figure 10 is a schematic structural diagram of a communication device according to an embodiment of the present application. The dashed line in Figure 10 indicates that the unit or module is optional. The device 1000 can be used to implement the method described in the above method embodiment. The device 1000 may be a chip, a terminal device or a network device.
装置1000可以包括一个或多个处理器1010。该处理器1010可支持装置1000实现前文方法实施例所描述的方法。该处理器1010可以是通用处理器或者专用处理器。例如,该处理器可以为中央处理单元(central processing unit,CPU)。或者,该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。Apparatus 1000 may include one or more processors 1010. The processor 1010 can support the device 1000 to implement the method described in the foregoing method embodiments. The processor 1010 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 can also be another general-purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), or an off-the-shelf programmable gate array (FPGA) Or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or the processor may be any conventional processor, etc.
装置1000还可以包括一个或多个存储器1020。存储器1020上存储有程序,该程序可以被处理器1010执行,使得处理器1010执行前文方法实施例所描述的方法。存储器1020可以独立于处理器1010也可以集成在处理器1010中。Apparatus 1000 may also include one or more memories 1020. The memory 1020 stores a program, which can be executed by the processor 1010, so that the processor 1010 executes the method described in the foregoing method embodiment. The memory 1020 may be independent of the processor 1010 or integrated in the processor 1010.
装置1000还可以包括收发器1030。处理器1010可以通过收发器1030与其他设备或芯片进行通信。例如,处理器1010可以通过收发器1030与其他设备或芯片进行数据收发。Apparatus 1000 may also include a transceiver 1030. Processor 1010 may communicate with other devices or chips through transceiver 1030. For example, the processor 1010 can transmit and receive data with other devices or chips through the transceiver 1030.
本申请实施例还提供一种计算机可读存储介质,用于存储程序。该计算机可读存储介质可应用于本申请实施例提供的终端或网络设备中,并且该程序使得计算机执行本申请各个实施例中的由终端或网络设备执行的方法。An embodiment of the present application also provides a computer-readable storage medium for storing a program. The computer-readable storage medium can be applied in the terminal or network device provided by the embodiments of the present application, and the program causes the computer to execute the methods performed by the terminal or network device in various embodiments of the present application.
本申请实施例还提供一种计算机程序产品。该计算机程序产品包括程序。该计算机程序产品可应用于本申请实施例提供的终端或网络设备中,并且该程序使得计算机执行本申请各个实施例中的由终端或网络设备执行的方法。An embodiment of the present application also provides a computer program product. The computer program product includes a program. The computer program product can be applied in the terminal or network device provided by the embodiments of the present application, and the program causes the computer to execute the methods performed by the terminal or network device in various embodiments of the present application.
本申请实施例还提供一种计算机程序。该计算机程序可应用于本申请实施例提供的终端或网络设备中,并且该计算机程序使得计算机执行本申请各个实施例中的由终端或网络设备执行的方法。An embodiment of the present application also provides a computer program. The computer program can be applied to the terminal or network device provided by the embodiments of the present application, and the computer program causes the computer to execute the methods performed by the terminal or network device in various embodiments of the present application.
应理解,本申请中术语“系统”和“网络”可以被可互换使用。另外,本申请使用的术语仅用于对本申请的具体实施例进行解释,而非旨在限定本申请。本申请的说明书和权利要求书及所述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。另外,本申请实施例中“请 求”可以替换为“请求消息”、“请求命令”等。相应地,本申请实施例中“响应命令”可以替换为“响应消息”、“响应”等。It should be understood that the terms "system" and "network" may be used interchangeably in this application. In addition, the terms used in this application are only used to explain specific embodiments of the application and are not intended to limit the application. The terms “first”, “second”, “third” and “fourth” in the description, claims and drawings of this application are used to distinguish different objects, rather than to describe a specific sequence. . Furthermore, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusion. In addition, "request" in the embodiment of this application can be replaced by "request message", "request command", etc. Correspondingly, "response command" in the embodiment of this application may be replaced by "response message", "response", etc.
在本申请的实施例中,提到的“指示”可以是直接指示,也可以是间接指示,还可以是表示具有关联关系。举例说明,A指示B,可以表示A直接指示B,例如B可以通过A获取;也可以表示A间接指示B,例如A指示C,B可以通过C获取;还可以表示A和B之间具有关联关系。In the embodiments of this application, the "instruction" mentioned may be a direct instruction, an indirect instruction, or an association relationship. For example, A indicates B, which can mean that A directly indicates B, for example, B can be obtained through A; it can also mean that A indirectly indicates B, for example, A indicates C, and B can be obtained through C; it can also mean that there is an association between A and B. relation.
在本申请实施例中,“与A相应的B”表示B与A相关联,根据A可以确定B。但还应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其它信息确定B。In the embodiment of this application, "B corresponding to A" means that B is associated with A, and B can be determined based on A. However, it should also be understood that determining B based on A does not mean determining B only based on A. B can also be determined based on A and/or other information.
在本申请实施例中,术语“对应”可表示两者之间具有直接对应或间接的关系,也可以表示两者之间具有关联关系,也可以是指示与被指示、配置与被配置等关系。In the embodiments of this application, the term "correspondence" can mean that there is a direct correspondence or indirect relationship between the two, or it can also mean that there is an associated relationship between the two, or it can also be a relationship between indicating and being instructed, configuring and being configured, etc. .
本申请实施例中,“预定义”或“预配置”可以通过在设备(例如,包括终端设备和网络设备)中预先保存相应的代码、表格或其他可用于指示相关信息的方式来实现,本申请对于其具体的实现方式不做限定。比如预定义可以是指协议中定义的。In the embodiment of this application, "predefinition" or "preconfiguration" can be achieved by pre-saving corresponding codes, tables or other methods that can be used to indicate relevant information in devices (for example, including terminal devices and network devices). The application does not limit its specific implementation method. For example, predefined can refer to what is defined in the protocol.
本申请实施例中,所述“协议”可以指通信领域的标准协议,例如可以包括LTE协议、NR协议以及应用于未来的通信系统中的相关协议,本申请对此不做限定。In the embodiment of this application, the "protocol" may refer to a standard protocol in the communication field, which may include, for example, LTE protocol, NR protocol, and related protocols applied in future communication systems. This application does not limit this.
本申请实施例中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。The term "and/or" in the embodiment of this application is only an association relationship describing associated objects, indicating that there can be three relationships, for example, A and/or B, which can mean: A alone exists, and A and B exist simultaneously. , there are three situations of B alone. In addition, the character "/" in this article generally indicates that the related objects are an "or" relationship.
在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。In the various embodiments of the present application, the size of the sequence numbers of the above-mentioned processes does not mean the order of execution. The execution order of each process should be determined by its functions and internal logic, and should not be determined by the implementation process of the embodiments of the present application. constitute any limitation.
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。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 only illustrative. For example, the division of the units is only a logical function division. In actual implementation, there may be other division methods. For example, multiple units or components may be combined or can be integrated into another system, or some features can be ignored, or not implemented. On the other hand, the coupling or direct coupling or communication connection between each other shown or discussed may be through some interfaces, and the indirect coupling or communication connection of the devices or units may be in electrical, mechanical or other forms.
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place, or they may be distributed to multiple network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。In addition, each functional unit in various embodiments of the present application may be integrated into one processing unit, or each unit may exist physically alone, or two or more units may be integrated into one unit.
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够读取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,数字通用光盘(digital video disc,DVD))或者半导体介质(例如,固态硬盘(solid state disk,SSD))等。In the above embodiments, it may be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented using software, it may 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 processes or functions described in the embodiments of the present application are generated in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions may be stored in or transmitted from one computer-readable storage medium to another, e.g., the computer instructions may be transferred from a website, computer, server, or data center Transmission to another website, computer, server or data center through wired (such as coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (such as infrared, wireless, microwave, etc.) means. The computer-readable storage medium may be any available medium that can be read by a computer or a data storage device such as a server or data center integrated with one or more available media. The available media may be magnetic media (e.g., floppy disks, hard disks, magnetic tapes), optical media (e.g., digital video discs (DVD)) or semiconductor media (e.g., solid state disks (SSD) )wait.
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。The above are only specific embodiments of the present application, but the protection scope of the present application is not limited thereto. Any person familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed in the present application. should be covered by the protection scope of this application. Therefore, the protection scope of this application should be subject to the protection scope of the claims.

Claims (112)

  1. 一种用于启动客户端的方法,其特征在于,包括:A method for starting a client, characterized by including:
    第一设备接收配置设备发送的第一请求,所述第一请求用于请求启动所述第一设备中的客户端,所述客户端用于与所述云平台进行通信。The first device receives a first request sent by the configuration device. The first request is used to request to start a client in the first device. The client is used to communicate with the cloud platform.
  2. 如权利要求1所述的方法,其特征在于,所述第一请求携带所述客户端的启动口令,所述启动口令用于对启动所述客户端的用户进行身份验证。The method of claim 1, wherein the first request carries a startup password of the client, and the startup password is used to authenticate the user who starts the client.
  3. 如权利要求2所述的方法,其特征在于,所述方法还包括:The method of claim 2, further comprising:
    所述第一设备确定所述第一请求中携带的启动口令与预存的所述客户端的启动口令是否匹配;The first device determines whether the startup password carried in the first request matches the prestored startup password of the client;
    若所述第一请求中携带的启动口令与所述预存的启动口令匹配,所述第一设备启动所述客户端。If the startup password carried in the first request matches the prestored startup password, the first device starts the client.
  4. 如权利要求1所述的方法,其特征在于,所述第一请求携带所述云平台的指示信息。The method of claim 1, wherein the first request carries indication information of the cloud platform.
  5. 如权利要求4所述的方法,其特征在于,所述方法还包括:The method of claim 4, further comprising:
    所述第一设备基于所述第一请求中携带的云平台信息选择所述客户端。The first device selects the client based on the cloud platform information carried in the first request.
  6. 如权利要求1-5中任一项所述的方法,其特征在于,所述第一设备中包括功能集群,所述功能集群用于指示所述客户端支持的命令;和/或The method according to any one of claims 1 to 5, characterized in that the first device includes a functional cluster, and the functional cluster is used to indicate commands supported by the client; and/or
    所述功能集群用于记录所述第一设备中对应长期用户的客户端。The function cluster is used to record the client corresponding to the long-term user in the first device.
  7. 如权利要求6所述的方法,其特征在于,若所述客户端的用户类型为长期用户,所述功能集群用于指示所述客户端的以下一种或多种信息:The method of claim 6, wherein if the user type of the client is a long-term user, the function cluster is used to indicate one or more of the following information of the client:
    所述客户端的客户端标识;The client identifier of the client;
    所述客户端的用户标识;以及the user identification of the client; and
    所述云平台的指示信息。Instructions for the cloud platform.
  8. 如权利要求6或7所述的方法,其特征在于,所述功能集群包括以下一种或多种命令:The method of claim 6 or 7, wherein the functional cluster includes one or more of the following commands:
    所述第一请求;the first request;
    用于指示所述客户端添加所述云平台的第二请求;A second request used to instruct the client to add the cloud platform;
    针对所述第二请求的响应命令,其中,针对所述第二请求的响应命令用于指示所述云平台是否添加成功;A response command for the second request, wherein the response command for the second request is used to indicate whether the cloud platform is added successfully;
    用于请求所述客户端的CSR的第三请求;A third request for requesting the client's CSR;
    针对所述第三请求的响应命令,其中,针对所述第三请求的响应命令用于向所述云平台请求所述客户端进行身份验证的证书。A response command for the third request, wherein the response command for the third request is used to request the cloud platform for a certificate for authentication of the client.
  9. 如权利要求8所述的方法,其特征在于,若所述功能集群包括所述第二请求,所述第二请求包括以下信息中的一种或多种:所述客户端在所述云平台进行身份验证的证书信息,所述云平台的指示信息,以及所述云平台的接入令牌信息。The method of claim 8, wherein if the functional cluster includes the second request, the second request includes one or more of the following information: the client is on the cloud platform Certificate information for identity verification, instruction information of the cloud platform, and access token information of the cloud platform.
  10. 如权利要求8所述的方法,其特征在于,若所述功能集群包括所述针对所述第二请求的响应命令,所述针对第二请求的响应命令包括:指示所述云平台是否添加成功的信息,和/或,所述客户端的启动口令。The method of claim 8, wherein if the function cluster includes the response command to the second request, the response command to the second request includes: indicating whether the cloud platform is added successfully. information, and/or, the client's startup password.
  11. 如权利要求1-10中任一项所述的方法,其特征在于,所述方法还包括:The method according to any one of claims 1-10, characterized in that the method further includes:
    所述第一设备接收所述云平台发送的第一信息,所述第一信息中包括第一令牌,所述第一令牌用于向所述云平台请求更新所述接入令牌。The first device receives first information sent by the cloud platform, where the first information includes a first token, and the first token is used to request the cloud platform to update the access token.
  12. 如权利要求1-11中任一项所述的方法,其特征在于,所述方法还包括:The method according to any one of claims 1-11, characterized in that the method further includes:
    所述第一设备向所述云平台发送第二信息,所述第二信息用于请求登录所述云平台,所述第二信息中包括所述客户端的用户标识。The first device sends second information to the cloud platform, the second information is used to request to log in to the cloud platform, and the second information includes the user identification of the client.
  13. 如权利要求1-12中任一项所述的方法,其特征在于,所述方法还包括:The method according to any one of claims 1-12, characterized in that the method further includes:
    所述第一设备接收所述配置设备发送的第一指示信息,所述第一指示信息用于配置所述客户端的用户类型。The first device receives first indication information sent by the configuration device, where the first indication information is used to configure the user type of the client.
  14. 如权利要求13所述的方法,其特征在于,所述客户端的用户类型是由用户通过所述配置设备配置的。The method of claim 13, wherein the user type of the client is configured by the user through the configuration device.
  15. 如权利要求13或14所述的方法,其特征在于,所述用户类型包括长期用户或临时用户。The method of claim 13 or 14, wherein the user type includes a long-term user or a temporary user.
  16. 如权利要求1-15中任一项所述的方法,其特征在于,所述客户端的用户类型为长期用户。The method according to any one of claims 1 to 15, characterized in that the user type of the client is a long-term user.
  17. 如权利要求1-16中任一项所述的方法,其特征在于,所述方法还包括:The method according to any one of claims 1-16, characterized in that the method further includes:
    所述第一设备向所述云平台发送第三信息,所述第三信息中包括所述客户端的访问地址。The first device sends third information to the cloud platform, where the third information includes the access address of the client.
  18. 如权利要求17所述的方法,其特征在于,所述第三信息承载于所述客户端请求在所述云平台进行注册的注册请求,和/或,所述第三信息承载于所述客户端请求登录所述云平台的登录请求。The method of claim 17, wherein the third information is carried in a registration request of the client to register on the cloud platform, and/or the third information is carried in the client's registration request. The client requests a login request to log in to the cloud platform.
  19. 如权利要求17或18所述的方法,其特征在于,所述访问地址为基于AMTP协议的访问地址,所述第三信息用于指示所述客户端使用所述AMTP协议进行通信。The method of claim 17 or 18, wherein the access address is an access address based on the AMTP protocol, and the third information is used to instruct the client to use the AMTP protocol for communication.
  20. 如权利要求17-19中任一项所述的方法,其特征在于,所述方法还包括:The method according to any one of claims 17-19, characterized in that the method further includes:
    响应于所述第三信息,所述第一设备接收所述云平台发送的第四信息,所述第四信息中包括所述客户端待访问的第二设备的访问地址。In response to the third information, the first device receives fourth information sent by the cloud platform, where the fourth information includes the access address of the second device to be accessed by the client.
  21. 如权利要求20所述的方法,其特征在于,所述第四信息承载于针对所述客户端请求在所述云平台进行注册的注册请求的响应命令中,和/或,所述第四信息承载于针对所述客户端请求登录所述云平台的登录请求的响应命令中。The method of claim 20, wherein the fourth information is carried in a response command to a registration request for the client to register on the cloud platform, and/or the fourth information Carried in the response command to the login request of the client requesting to log in to the cloud platform.
  22. 一种用于启动客户端的方法,其特征在于,包括:A method for starting a client, characterized by including:
    云平台与第一设备中配置的客户端进行通信,所述第一设备的客户端是基于第一请求启动的,所述第一请求用于请求启动所述客户端。The cloud platform communicates with the client configured in the first device, and the client of the first device is started based on a first request, and the first request is used to request to start the client.
  23. 如权利要求22所述的方法,其特征在于,所述第一请求携带所述客户端的启动口令,所述启动口令用于对启动所述客户端的用户进行身份验证。The method of claim 22, wherein the first request carries a startup password of the client, and the startup password is used to authenticate the user who starts the client.
  24. 如权利要求22所述的方法,其特征在于,所述第一请求携带所述客户端的云平台信息。The method of claim 22, wherein the first request carries cloud platform information of the client.
  25. 如权利要求22-24中任一项所述的方法,其特征在于,所述第一设备中包括功能集群,所述功能集群用于记录所述客户端。The method according to any one of claims 22 to 24, characterized in that the first device includes a functional cluster, and the functional cluster is used to record the client.
  26. 如权利要求25所述的方法,其特征在于,所述功能集群用于指示所述客户端的以下一种或多种信息:The method of claim 25, wherein the functional cluster is used to indicate one or more of the following information of the client:
    所述客户端的客户端标识;The client identifier of the client;
    所述客户端的用户标识;以及the user identification of the client; and
    所述云平台的指示信息。Instructions for the cloud platform.
  27. 如权利要求25或26所述的方法,其特征在于,所述功能集群包括以下一种或多种命令:The method of claim 25 or 26, wherein the functional cluster includes one or more of the following commands:
    所述第一请求;the first request;
    用于指示所述客户端添加所述云平台的第二请求;A second request used to instruct the client to add the cloud platform;
    针对所述第二请求的响应命令,其中,针对所述第二请求的响应命令用于指示所述云平台是否添加成功;A response command for the second request, wherein the response command for the second request is used to indicate whether the cloud platform is added successfully;
    用于请求所述客户端的CSR的第三请求;A third request for requesting the client's CSR;
    针对所述第三请求的响应命令,其中,针对所述第三请求的响应命令用于向所述云平台请求用于所述客户端进行身份验证的证书。A response command to the third request, wherein the response command to the third request is used to request a certificate for authentication of the client from the cloud platform.
  28. 如权利要求27所述的方法,其特征在于,若所述功能集群包括所述第二请求,所述第二请求包括以下信息中的一种或多种:用于所述客户端在所述云平台进行身份验证的证书信息,所述云平台的指示信息以及所述云平台的接入令牌信息。The method of claim 27, wherein if the functional cluster includes the second request, the second request includes one or more of the following information: used by the client in the Certificate information for identity verification by the cloud platform, instruction information of the cloud platform, and access token information of the cloud platform.
  29. 如权利要求27所述的方法,其特征在于,若所述功能集群包括所述针对所述第二请求的响应命令,所述针对第二请求的响应命令包括:指示所述云平台是否添加成功的信息,和/或,所述客户端的启动口令。The method of claim 27, wherein if the function cluster includes the response command to the second request, the response command to the second request includes: indicating whether the cloud platform is added successfully. information, and/or, the client's startup password.
  30. 如权利要求22-29中任一项所述的方法,其特征在于,所述方法还包括:The method according to any one of claims 22-29, characterized in that the method further includes:
    所述云平台向所述第一设备发送第一信息,所述第一信息中包括第一令牌,所述第一令牌用于向所述云平台请求更新所述接入令牌。The cloud platform sends first information to the first device, where the first information includes a first token, and the first token is used to request the cloud platform to update the access token.
  31. 如权利要求22-30中任一项所述的方法,其特征在于,所述方法还包括:The method according to any one of claims 22-30, characterized in that the method further includes:
    所述云平台接收所述第一设备发送的第二信息,所述第二信息用于请求登录所述云平台,所述第二信息中包括所述客户端的用户标识。The cloud platform receives the second information sent by the first device, the second information is used to request to log in to the cloud platform, and the second information includes the user identification of the client.
  32. 如权利要求22-31中任一项所述的方法,其特征在于,所述方法还包括:The method according to any one of claims 22-31, characterized in that the method further includes:
    所述云平台接收所述配置设备发送的第二指示信息,所述第二指示信息用于配置所述客户端的用户类型。The cloud platform receives second indication information sent by the configuration device, and the second indication information is used to configure the user type of the client.
  33. 如权利要求32所述的方法,其特征在于,所述客户端的用户类型是由用户通过所述配置设备配置的。The method of claim 32, wherein the user type of the client is configured by the user through the configuration device.
  34. 如权利要求32或33所述的方法,其特征在于,所述用户类型包括长期用户或临时用户。The method of claim 32 or 33, wherein the user type includes a long-term user or a temporary user.
  35. 如权利要求22-34中任一项所述的方法,其特征在于,所述客户端的用户类型为长期用户。The method according to any one of claims 22 to 34, characterized in that the user type of the client is a long-term user.
  36. 如权利要求22-35中任一项所述的方法,其特征在于,所述方法还包括:The method according to any one of claims 22-35, characterized in that the method further includes:
    所述云平台接收所述第一设备发送的第三信息,所述第三信息中包括所述客户端的访问地址。The cloud platform receives third information sent by the first device, where the third information includes the access address of the client.
  37. 如权利要求36所述的方法,其特征在于,所述第三信息承载于所述客户端请求在所述云平台进行注册的注册请求,和/或,所述第三信息承载于所述客户端请求登录所述云平台的登录请求。The method of claim 36, wherein the third information is carried in a registration request of the client to register on the cloud platform, and/or the third information is carried in the client's registration request. The client requests a login request to log in to the cloud platform.
  38. 如权利要求36或37所述的方法,其特征在于,所述访问地址为基于AMTP协议的访问地址,所述第三信息用于指示所述客户端使用所述AMTP协议进行通信。The method of claim 36 or 37, wherein the access address is an access address based on the AMTP protocol, and the third information is used to instruct the client to use the AMTP protocol for communication.
  39. 如权利要求36-38中任一项所述的方法,其特征在于,所述方法还包括:The method according to any one of claims 36-38, characterized in that the method further includes:
    响应于所述第三信息,所述云平台向所述第一设备发送第四信息,所述第四信息中包括所述客户端待访问的第二设备的访问地址。In response to the third information, the cloud platform sends fourth information to the first device, where the fourth information includes the access address of the second device to be accessed by the client.
  40. 如权利要求39所述的方法,其特征在于,所述第四信息承载于针对所述客户端请求在所述云平台进行注册的注册请求的响应命令中,和/或,所述第四信息承载于针对所述客户端请求登录所述云平台的登录请求的响应命令中。The method of claim 39, wherein the fourth information is carried in a response command to a registration request for the client to register on the cloud platform, and/or the fourth information Carried in the response command to the login request of the client requesting to log in to the cloud platform.
  41. 一种用于启动客户端的方法,其特征在于,包括:A method for starting a client, characterized by including:
    配置设备向第一设备发送第一请求,所述第一请求用于请求启动所述第一设备中的客户端,所述客户端用于与所述云平台进行通信。The configuration device sends a first request to the first device, where the first request is used to request to start a client in the first device, where the client is used to communicate with the cloud platform.
  42. 如权利要求41所述的方法,其特征在于,所述第一请求携带所述客户端的启动口令,所述启动口令用于对启动所述客户端的用户进行身份验证,和/或The method of claim 41, wherein the first request carries a startup password of the client, and the startup password is used to authenticate the user who starts the client, and/or
    所述第一请求携带所述客户端的云平台信息。The first request carries the cloud platform information of the client.
  43. 如权利要求41或42所述的方法,其特征在于,所述第一设备中包括功能集群,所述功能集群用于指示所述客户端支持的命令;和/或The method of claim 41 or 42, wherein the first device includes a functional cluster, and the functional cluster is used to indicate commands supported by the client; and/or
    所述功能集群用于记录所述第一设备中对应长期用户的客户端。The function cluster is used to record the client corresponding to the long-term user in the first device.
  44. 如权利要求43所述的方法,其特征在于,所述功能集群用于指示所述客户端的以下一种或多种信息:The method of claim 43, wherein the functional cluster is used to indicate one or more of the following information of the client:
    所述客户端的客户端标识;The client identifier of the client;
    所述客户端的用户标识;以及the user identification of the client; and
    所述云平台的指示信息。Instructions for the cloud platform.
  45. 如权利要求43或44所述的方法,其特征在于,所述功能集群包括以下一种或多种命令:The method of claim 43 or 44, wherein the functional cluster includes one or more of the following commands:
    所述第一请求;the first request;
    用于指示所述客户端添加所述云平台的第二请求;A second request used to instruct the client to add the cloud platform;
    针对所述第二请求的响应命令,其中,针对所述第二请求的响应命令用于指示所述云平台是否添加成功;A response command for the second request, wherein the response command for the second request is used to indicate whether the cloud platform is added successfully;
    用于请求所述客户端的CSR的第三请求;A third request for requesting the client's CSR;
    针对所述第三请求的响应命令,其中,针对所述第三请求的响应命令用于向所述云平台请求所述客户端进行身份验证的证书。A response command for the third request, wherein the response command for the third request is used to request the cloud platform for a certificate for authentication of the client.
  46. 如权利要求45所述的方法,其特征在于,若所述功能集群包括所述第二请求,所述第二请求包括以下信息中的一种或多种:用于所述客户端在所述云平台进行身份验证的证书信息,所述云平台的地址信息以及所述云平台的接入令牌信息。The method of claim 45, wherein if the functional cluster includes the second request, the second request includes one or more of the following information: used by the client in the Certificate information for identity verification by the cloud platform, address information of the cloud platform and access token information of the cloud platform.
  47. 如权利要求45所述的方法,其特征在于,若所述功能集群包括所述针对所述第二请求的响应命令,所述针对第二请求的响应命令包括:指示所述云平台是否添加成功的信息,和/或,所述客户端的启动口令。The method of claim 45, wherein if the function cluster includes the response command to the second request, the response command to the second request includes: indicating whether the cloud platform is added successfully. information, and/or, the client's startup password.
  48. 如权利要求47所述的方法,其特征在于,若针对所述第二请求的响应命令包括所述客户端的启动口令,所述方法还包括:The method of claim 47, wherein if the response command to the second request includes a startup password of the client, the method further includes:
    若所述客户端的用户类型为长期用户,所述配置设备存储所述客户端的启动口令。If the user type of the client is a long-term user, the configuration device stores the startup password of the client.
  49. 如权利要求41-48中任一项所述的方法,其特征在于,所述方法还包括:The method according to any one of claims 41-48, characterized in that the method further includes:
    所述配置设备向所述第一设备发送第一指示信息,所述第一指示信息用于配置所述客户端的用户类型。The configuration device sends first indication information to the first device, where the first indication information is used to configure the user type of the client.
  50. 如权利要求49所述的方法,其特征在于,所述客户端的用户类型是由用户通过所述配置设备配置的。The method of claim 49, wherein the user type of the client is configured by the user through the configuration device.
  51. 如权利要求49或50所述的方法,其特征在于,所述用户类型包括长期用户或临时用户。The method of claim 49 or 50, wherein the user type includes a long-term user or a temporary user.
  52. 如权利要求41-51中任一项所述的方法,其特征在于,所述客户端的用户类型为长期用户。The method according to any one of claims 41-51, characterized in that the user type of the client is a long-term user.
  53. 一种第一设备,其特征在于,包括:A first device, characterized by including:
    接收单元,用于接收配置设备发送的第一请求,所述第一请求用于请求启动所述第一设备中的客户端,所述客户端用于与所述云平台进行通信。A receiving unit configured to receive a first request sent by a configuration device, where the first request is used to request to start a client in the first device, where the client is used to communicate with the cloud platform.
  54. 如权利要求53所述的第一设备,其特征在于,所述第一请求携带所述客户端的启动口令,所述启动口令用于对启动所述客户端的用户进行身份验证。The first device according to claim 53, wherein the first request carries a startup password of the client, and the startup password is used to authenticate the user who starts the client.
  55. 如权利要求54所述的第一设备,其特征在于,所述第一设备还包括:The first device according to claim 54, characterized in that the first device further includes:
    第一处理单元,用于确定所述第一请求中携带的启动口令与预存的所述客户端的启动口令是否匹配;A first processing unit configured to determine whether the startup password carried in the first request matches the prestored startup password of the client;
    若所述第一请求中携带的启动口令与所述预存的启动口令匹配,所述第一处理单元,还用于启动所述客户端。If the startup password carried in the first request matches the pre-stored startup password, the first processing unit is also configured to start the client.
  56. 如权利要求53所述的第一设备,其特征在于,所述第一请求携带所述云平台的指示信息。The first device according to claim 53, wherein the first request carries indication information of the cloud platform.
  57. 如权利要求56所述的第一设备,其特征在于,所述第一设备还包括:The first device according to claim 56, characterized in that the first device further includes:
    第二处理单元,用于基于所述第一请求中携带的云平台信息选择所述客户端。The second processing unit is configured to select the client based on the cloud platform information carried in the first request.
  58. 如权利要求53-57中任一项所述的第一设备,其特征在于,所述第一设备中包括功能集群,所述功能集群用于指示所述客户端支持的命令;和/或The first device according to any one of claims 53 to 57, characterized in that the first device includes a functional cluster, and the functional cluster is used to indicate commands supported by the client; and/or
    所述功能集群用于记录所述第一设备中对应长期用户的客户端。The function cluster is used to record the client corresponding to the long-term user in the first device.
  59. 如权利要求58所述的第一设备,其特征在于,若所述客户端的用户类型为长期用户,所述功能集群用于指示所述客户端的以下一种或多种信息:The first device of claim 58, wherein if the user type of the client is a long-term user, the function cluster is used to indicate one or more of the following information of the client:
    所述客户端的客户端标识;The client identifier of the client;
    所述客户端的用户标识;以及the user identification of the client; and
    所述云平台的指示信息。Instructions for the cloud platform.
  60. 如权利要求58或59所述的第一设备,其特征在于,所述功能集群包括以下一种或多种命令:The first device according to claim 58 or 59, characterized in that the functional cluster includes one or more of the following commands:
    所述第一请求;the first request;
    用于指示所述客户端添加所述云平台的第二请求;A second request used to instruct the client to add the cloud platform;
    针对所述第二请求的响应命令,其中,针对所述第二请求的响应命令用于指示所述云平台是否添加成功;A response command for the second request, wherein the response command for the second request is used to indicate whether the cloud platform is added successfully;
    用于请求所述客户端的CSR的第三请求;A third request for requesting the client's CSR;
    针对所述第三请求的响应命令,其中,针对所述第三请求的响应命令用于向所述云平台请求所述客户端进行身份验证的证书。A response command for the third request, wherein the response command for the third request is used to request the cloud platform for a certificate for authentication of the client.
  61. 如权利要求60所述的第一设备,其特征在于,若所述功能集群包括所述第二请求,所述第二请求包括以下信息中的一种或多种:所述客户端在所述云平台进行身份验证的证书信息,所述云平台的指示信息,以及所述云平台的接入令牌信息。The first device according to claim 60, characterized in that, if the functional cluster includes the second request, the second request includes one or more of the following information: the client is in the Certificate information for identity verification by the cloud platform, instruction information of the cloud platform, and access token information of the cloud platform.
  62. 如权利要求60所述的第一设备,其特征在于,若所述功能集群包括所述针对所述第二请求的响应命令,所述针对第二请求的响应命令包括:指示所述云平台是否添加成功的信息,和/或,所述客户端的启动口令。The first device of claim 60, wherein if the function cluster includes the response command to the second request, the response command to the second request includes: indicating whether the cloud platform Add success information, and/or, the client's startup password.
  63. 如权利要求53-62中任一项所述的第一设备,其特征在于,所述接收单元,用于:The first device according to any one of claims 53-62, characterized in that the receiving unit is used for:
    接收所述云平台发送的第一信息,所述第一信息中包括第一令牌,所述第一令牌用于向所述云平台请求更新所述接入令牌。Receive first information sent by the cloud platform, where the first information includes a first token, and the first token is used to request the cloud platform to update the access token.
  64. 如权利要求53-63中任一项所述的第一设备,其特征在于,所述第一设备还包括:The first device according to any one of claims 53-63, characterized in that the first device further includes:
    第一发送单元,用于向所述云平台发送第二信息,所述第二信息用于请求登录所述云平台,所述第二信息中包括所述客户端的用户标识。The first sending unit is configured to send second information to the cloud platform. The second information is used to request to log in to the cloud platform. The second information includes the user identification of the client.
  65. 如权利要求53-64中任一项所述的第一设备,其特征在于,所述接收单元,用于:The first device according to any one of claims 53-64, characterized in that the receiving unit is used for:
    接收所述配置设备发送的第一指示信息,所述第一指示信息用于配置所述客户端的用户类型。Receive first indication information sent by the configuration device, where the first indication information is used to configure the user type of the client.
  66. 如权利要求65所述的第一设备,其特征在于,所述客户端的用户类型是由用户通过所述配置设备配置的。The first device according to claim 65, characterized in that the user type of the client is configured by the user through the configuration device.
  67. 如权利要求65或66所述的第一设备,其特征在于,所述用户类型包括长期用户或临时用户。The first device according to claim 65 or 66, characterized in that the user type includes a long-term user or a temporary user.
  68. 如权利要求53-67中任一项所述的第一设备,其特征在于,所述客户端的用户类型为长期用户。The first device according to any one of claims 53 to 67, characterized in that the user type of the client is a long-term user.
  69. 如权利要求53-68中任一项所述的第一设备,其特征在于,所述第一设备还包括:The first device according to any one of claims 53-68, characterized in that the first device further includes:
    第二发送单元,用于向所述云平台发送第三信息,所述第三信息中包括所述客户端的访问地址。The second sending unit is configured to send third information to the cloud platform, where the third information includes the access address of the client.
  70. 如权利要求69所述的第一设备,其特征在于,所述第三信息承载于所述客户端请求在所述云平台进行注册的注册请求,和/或,所述第三信息承载于所述客户端请求登录所述云平台的登录请求。The first device according to claim 69, wherein the third information is carried in a registration request of the client to register on the cloud platform, and/or the third information is carried in the cloud platform. The client requests a login request to log in to the cloud platform.
  71. 如权利要求69或70所述的第一设备,其特征在于,所述访问地址为基于AMTP协议的访问地址,所述第三信息用于指示所述客户端使用所述AMTP协议进行通信。The first device according to claim 69 or 70, wherein the access address is an access address based on the AMTP protocol, and the third information is used to instruct the client to use the AMTP protocol for communication.
  72. 如权利要求69-71中任一项所述的第一设备,其特征在于,所述接收单元,用于:The first device according to any one of claims 69-71, characterized in that the receiving unit is used for:
    响应于所述第三信息,接收所述云平台发送的第四信息,所述第四信息中包括所述客户端待访问的第二设备的访问地址。In response to the third information, receive fourth information sent by the cloud platform, where the fourth information includes the access address of the second device to be accessed by the client.
  73. 如权利要求72所述的第一设备,其特征在于,所述第四信息承载于针对所述客户端请求在所述云平台进行注册的注册请求的响应命令中,和/或,所述第四信息承载于针对所述客户端请求登录所 述云平台的登录请求的响应命令中。The first device according to claim 72, wherein the fourth information is carried in a response command to a registration request of the client requesting to register on the cloud platform, and/or, the third The fourth information is carried in the response command to the login request of the client requesting to log in to the cloud platform.
  74. 一种云平台,其特征在于,包括:A cloud platform is characterized by including:
    通信单元,用于与第一设备中配置的客户端进行通信,所述第一设备的客户端是基于第一请求启动的,所述第一请求用于请求启动所述客户端。A communication unit configured to communicate with a client configured in the first device, where the client of the first device is started based on a first request, and the first request is used to request to start the client.
  75. 如权利要求74所述的云平台,其特征在于,所述第一请求携带所述客户端的启动口令,所述启动口令用于对启动所述客户端的用户进行身份验证。The cloud platform of claim 74, wherein the first request carries a startup password of the client, and the startup password is used to authenticate the user who starts the client.
  76. 如权利要求74所述的云平台,其特征在于,所述第一请求携带所述客户端的云平台信息。The cloud platform of claim 74, wherein the first request carries cloud platform information of the client.
  77. 如权利要求74-76中任一项所述的云平台,其特征在于,所述第一设备中包括功能集群,所述功能集群用于记录所述客户端。The cloud platform according to any one of claims 74 to 76, characterized in that the first device includes a functional cluster, and the functional cluster is used to record the client.
  78. 如权利要求77所述的云平台,其特征在于,所述功能集群用于指示所述客户端的以下一种或多种信息:The cloud platform of claim 77, wherein the functional cluster is used to indicate one or more of the following information of the client:
    所述客户端的客户端标识;The client identifier of the client;
    所述客户端的用户标识;以及the user identification of the client; and
    所述云平台的指示信息。Instructions for the cloud platform.
  79. 如权利要求77或78所述的云平台,其特征在于,所述功能集群包括以下一种或多种命令:The cloud platform of claim 77 or 78, wherein the functional cluster includes one or more of the following commands:
    所述第一请求;the first request;
    用于指示所述客户端添加所述云平台的第二请求;A second request used to instruct the client to add the cloud platform;
    针对所述第二请求的响应命令,其中,针对所述第二请求的响应命令用于指示所述云平台是否添加成功;A response command for the second request, wherein the response command for the second request is used to indicate whether the cloud platform is added successfully;
    用于请求所述客户端的CSR的第三请求;A third request for requesting the client's CSR;
    针对所述第三请求的响应命令,其中,针对所述第三请求的响应命令用于向所述云平台请求用于所述客户端进行身份验证的证书。A response command to the third request, wherein the response command to the third request is used to request a certificate for authentication of the client from the cloud platform.
  80. 如权利要求79所述的云平台,其特征在于,若所述功能集群包括所述第二请求,所述第二请求包括以下信息中的一种或多种:用于所述客户端在所述云平台进行身份验证的证书信息,所述云平台的指示信息以及所述云平台的接入令牌信息。The cloud platform of claim 79, wherein if the functional cluster includes the second request, the second request includes one or more of the following information: for the location of the client. The certificate information for identity verification of the cloud platform, the instruction information of the cloud platform and the access token information of the cloud platform.
  81. 如权利要求79所述的云平台,其特征在于,若所述功能集群包括所述针对所述第二请求的响应命令,所述针对第二请求的响应命令包括:指示所述云平台是否添加成功的信息,和/或,所述客户端的启动口令。The cloud platform of claim 79, wherein if the function cluster includes the response command to the second request, the response command to the second request includes: indicating whether the cloud platform adds success message, and/or, the client's startup password.
  82. 如权利要求74-81中任一项所述的云平台,其特征在于,所述通信单元,还用于:The cloud platform according to any one of claims 74-81, characterized in that the communication unit is also used for:
    向所述第一设备发送第一信息,所述第一信息中包括第一令牌,所述第一令牌用于向所述云平台请求更新所述接入令牌。Send first information to the first device, where the first information includes a first token, and the first token is used to request the cloud platform to update the access token.
  83. 如权利要求74-82中任一项所述的云平台,其特征在于,所述通信单元,还用于:The cloud platform according to any one of claims 74-82, characterized in that the communication unit is also used to:
    接收所述第一设备发送的第二信息,所述第二信息用于请求登录所述云平台,所述第二信息中包括所述客户端的用户标识。Receive second information sent by the first device, where the second information is used to request to log in to the cloud platform, where the second information includes a user identification of the client.
  84. 如权利要求74-83中任一项所述的云平台,其特征在于,所述通信单元,还用于:The cloud platform according to any one of claims 74-83, characterized in that the communication unit is also used to:
    接收所述配置设备发送的第二指示信息,所述第二指示信息用于配置所述客户端的用户类型。Receive second indication information sent by the configuration device, where the second indication information is used to configure the user type of the client.
  85. 如权利要求84所述的云平台,其特征在于,所述客户端的用户类型是由用户通过所述配置设备配置的。The cloud platform of claim 84, wherein the user type of the client is configured by the user through the configuration device.
  86. 如权利要求84或85所述的云平台,其特征在于,所述用户类型包括长期用户或临时用户。The cloud platform according to claim 84 or 85, characterized in that the user types include long-term users or temporary users.
  87. 如权利要求74-86中任一项所述的云平台,其特征在于,所述客户端的用户类型为长期用户。The cloud platform according to any one of claims 74 to 86, characterized in that the user type of the client is a long-term user.
  88. 如权利要求74-87中任一项所述的云平台,其特征在于,所述通信单元,还用于:The cloud platform according to any one of claims 74-87, characterized in that the communication unit is also used for:
    接收所述第一设备发送的第三信息,所述第三信息中包括所述客户端的访问地址。Receive third information sent by the first device, where the third information includes the access address of the client.
  89. 如权利要求88所述的云平台,其特征在于,所述第三信息承载于所述客户端请求在所述云平台进行注册的注册请求,和/或,所述第三信息承载于所述客户端请求登录所述云平台的登录请求。The cloud platform of claim 88, wherein the third information is carried in a registration request of the client requesting to register on the cloud platform, and/or the third information is carried in the The client requests a login request to log in to the cloud platform.
  90. 如权利要求88或89所述的云平台,其特征在于,所述访问地址为基于AMTP协议的访问地址,所述第三信息用于指示所述客户端使用所述AMTP协议进行通信。The cloud platform of claim 88 or 89, wherein the access address is an access address based on the AMTP protocol, and the third information is used to instruct the client to use the AMTP protocol for communication.
  91. 如权利要求88-90中任一项所述的云平台,其特征在于,所述通信单元,还用于:The cloud platform according to any one of claims 88-90, characterized in that the communication unit is also used for:
    响应于所述第三信息,向所述第一设备发送第四信息,所述第四信息中包括所述客户端待访问的第二设备的访问地址。In response to the third information, fourth information is sent to the first device, where the fourth information includes the access address of the second device to be accessed by the client.
  92. 如权利要求91所述的云平台,其特征在于,所述第四信息承载于针对所述客户端请求在所述云平台进行注册的注册请求的响应命令中,和/或,所述第四信息承载于针对所述客户端请求登录所述云平台的登录请求的响应命令中。The cloud platform of claim 91, wherein the fourth information is carried in a response command to a registration request of the client requesting to register on the cloud platform, and/or, the fourth information The information is carried in a response command to the login request of the client requesting to log in to the cloud platform.
  93. 一种配置设备,其特征在于,包括:A configuration device, characterized by including:
    发送单元,用于向第一设备发送第一请求,所述第一请求用于请求启动所述第一设备中的客户端,所述客户端用于与所述云平台进行通信。A sending unit, configured to send a first request to the first device, where the first request is used to request to start a client in the first device, where the client is used to communicate with the cloud platform.
  94. 如权利要求93所述的配置设备,其特征在于,所述第一请求携带所述客户端的启动口令,所述启动口令用于对启动所述客户端的用户进行身份验证,和/或The configuration device according to claim 93, wherein the first request carries a startup password of the client, and the startup password is used to authenticate the user who starts the client, and/or
    所述第一请求携带所述客户端的云平台信息。The first request carries the cloud platform information of the client.
  95. 如权利要求93或94所述的配置设备,其特征在于,所述第一设备中包括功能集群,所述功能集群用于指示所述客户端支持的命令;和/或The configuration device according to claim 93 or 94, wherein the first device includes a functional cluster, and the functional cluster is used to indicate commands supported by the client; and/or
    所述功能集群用于记录所述第一设备中对应长期用户的客户端。The function cluster is used to record the client corresponding to the long-term user in the first device.
  96. 如权利要求95所述的配置设备,其特征在于,所述功能集群用于指示所述客户端的以下一种或多种信息:The configuration device according to claim 95, wherein the functional cluster is used to indicate one or more of the following information of the client:
    所述客户端的客户端标识;The client identifier of the client;
    所述客户端的用户标识;以及the user identification of the client; and
    所述云平台的指示信息。Instructions for the cloud platform.
  97. 如权利要求95或96所述的配置设备,其特征在于,所述功能集群包括以下一种或多种命令:The configuration device according to claim 95 or 96, characterized in that the function cluster includes one or more of the following commands:
    所述第一请求;the first request;
    用于指示所述客户端添加所述云平台的第二请求;A second request used to instruct the client to add the cloud platform;
    针对所述第二请求的响应命令,其中,针对所述第二请求的响应命令用于指示所述云平台是否添加成功;A response command for the second request, wherein the response command for the second request is used to indicate whether the cloud platform is added successfully;
    用于请求所述客户端的CSR的第三请求;A third request for requesting the client's CSR;
    针对所述第三请求的响应命令,其中,针对所述第三请求的响应命令用于向所述云平台请求所述客户端进行身份验证的证书。A response command for the third request, wherein the response command for the third request is used to request the cloud platform for a certificate for authentication of the client.
  98. 如权利要求97所述的配置设备,其特征在于,若所述功能集群包括所述第二请求,所述第二请求包括以下信息中的一种或多种:用于所述客户端在所述云平台进行身份验证的证书信息,所述云平台的地址信息以及所述云平台的接入令牌信息。The configuration device according to claim 97, characterized in that, if the functional cluster includes the second request, the second request includes one or more of the following information: for the location of the client. The certificate information for identity verification of the cloud platform, the address information of the cloud platform and the access token information of the cloud platform.
  99. 如权利要求97所述的配置设备,其特征在于,若所述功能集群包括所述针对所述第二请求的响应命令,所述针对第二请求的响应命令包括:指示所述云平台是否添加成功的信息,和/或,所述客户端的启动口令。The configuration device of claim 97, wherein if the function cluster includes the response command to the second request, the response command to the second request includes: indicating whether the cloud platform adds success message, and/or, the client's startup password.
  100. 如权利要求99所述的配置设备,其特征在于,若针对所述第二请求的响应命令包括所述客户端的启动口令,所述配置设备还包括:The configuration device of claim 99, wherein if the response command to the second request includes the startup password of the client, the configuration device further includes:
    处理单元,用于若所述客户端的用户类型为长期用户,存储所述客户端的启动口令。A processing unit, configured to store the startup password of the client if the user type of the client is a long-term user.
  101. 如权利要求93-100中任一项所述的配置设备,其特征在于,所述发送单元,还用于:The configuration device according to any one of claims 93-100, characterized in that the sending unit is also used to:
    向所述第一设备发送第一指示信息,所述第一指示信息用于配置所述客户端的用户类型。Send first indication information to the first device, where the first indication information is used to configure the user type of the client.
  102. 如权利要求101所述的配置设备,其特征在于,所述客户端的用户类型是由用户通过所述配置设备配置的。The configuration device according to claim 101, characterized in that the user type of the client is configured by the user through the configuration device.
  103. 如权利要求101或102所述的配置设备,其特征在于,所述用户类型包括长期用户或临时用户。The configuration device according to claim 101 or 102, characterized in that the user type includes a long-term user or a temporary user.
  104. 如权利要求93-103中任一项所述的配置设备,其特征在于,所述客户端的用户类型为长期用户。The configuration device according to any one of claims 93-103, wherein the user type of the client is a long-term user.
  105. 一种第一设备,其特征在于,包括收发器、存储器和处理器,所述存储器用于存储程序,所述处理器用于调用所述存储器中的程序,并控制所述收发器接收或发送信号,以使所述第一设备执行如权利要求1-21中任一项所述的方法。A first device, characterized in that it includes a transceiver, a memory and a processor, the memory is used to store programs, the processor is used to call the program in the memory, and control the transceiver to receive or send signals , so that the first device performs the method according to any one of claims 1-21.
  106. 一种云平台,其特征在于,包括收发器、存储器和处理器,所述存储器用于存储程序,所述处理器用于调用所述存储器中的程序,并控制所述收发器接收或发送信号,以使所述云平台执行如权利要求22-40中任一项所述的方法。A cloud platform, characterized in that it includes a transceiver, a memory and a processor, the memory is used to store programs, the processor is used to call the program in the memory, and control the transceiver to receive or send signals, To enable the cloud platform to execute the method as described in any one of claims 22-40.
  107. 一种配置设备,其特征在于,包括收发器、存储器和处理器,所述存储器用于存储程序,所述处理器用于调用所述存储器中的程序,并控制所述收发器接收或发送信号,以使所述配置设备执行如权利要求41-52中任一项所述的方法。A configuration device, characterized in that it includes a transceiver, a memory and a processor, the memory is used to store programs, the processor is used to call the program in the memory, and control the transceiver to receive or send signals, To cause the configuration device to perform the method according to any one of claims 41-52.
  108. 一种装置,其特征在于,包括处理器,用于从存储器中调用程序,以使所述装置执行如权利要求1-52中任一项所述的方法。A device, characterized by comprising a processor for calling a program from a memory, so that the device executes the method according to any one of claims 1-52.
  109. 一种芯片,其特征在于,包括处理器,用于从存储器调用程序,使得安装有所述芯片的设备执行如权利要求1-52中任一项所述的方法。A chip, characterized in that it includes a processor for calling a program from a memory, so that a device equipped with the chip executes the method according to any one of claims 1-52.
  110. 一种计算机可读存储介质,其特征在于,其上存储有程序,所述程序使得计算机执行如权利要求1-52中任一项所述的方法。A computer-readable storage medium, characterized in that a program is stored thereon, and the program causes the computer to execute the method according to any one of claims 1-52.
  111. 一种计算机程序产品,其特征在于,包括程序,所述程序使得计算机执行如权利要求1-52中任一项所述的方法。A computer program product, characterized by comprising a program that causes a computer to execute the method according to any one of claims 1-52.
  112. 一种计算机程序,其特征在于,所述计算机程序使得计算机执行如权利要求1-52中任一项所述的方法。A computer program, characterized in that the computer program causes a computer to perform the method according to any one of claims 1-52.
PCT/CN2022/117782 2022-09-08 2022-09-08 Method for starting client, first device, configuration device, and cloud platform WO2024050754A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2022/117782 WO2024050754A1 (en) 2022-09-08 2022-09-08 Method for starting client, first device, configuration device, and cloud platform

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2022/117782 WO2024050754A1 (en) 2022-09-08 2022-09-08 Method for starting client, first device, configuration device, and cloud platform

Publications (1)

Publication Number Publication Date
WO2024050754A1 true WO2024050754A1 (en) 2024-03-14

Family

ID=90192705

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/117782 WO2024050754A1 (en) 2022-09-08 2022-09-08 Method for starting client, first device, configuration device, and cloud platform

Country Status (1)

Country Link
WO (1) WO2024050754A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200274934A1 (en) * 2017-09-22 2020-08-27 Intel Corporation Device management services based on restful messaging
WO2021072749A1 (en) * 2019-10-18 2021-04-22 Oppo广东移动通信有限公司 Device permission control method, device, and storage medium
CN113746857A (en) * 2021-09-09 2021-12-03 深圳市腾讯网域计算机网络有限公司 Login method, device, equipment and computer readable storage medium
CN113746633A (en) * 2021-08-05 2021-12-03 深圳Tcl新技术有限公司 Internet of things equipment binding method, device and system, cloud server and storage medium
WO2022016434A1 (en) * 2020-07-22 2022-01-27 Oppo广东移动通信有限公司 Device deregistration method, device registration method, communication device and cloud platform

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200274934A1 (en) * 2017-09-22 2020-08-27 Intel Corporation Device management services based on restful messaging
WO2021072749A1 (en) * 2019-10-18 2021-04-22 Oppo广东移动通信有限公司 Device permission control method, device, and storage medium
WO2022016434A1 (en) * 2020-07-22 2022-01-27 Oppo广东移动通信有限公司 Device deregistration method, device registration method, communication device and cloud platform
CN113746633A (en) * 2021-08-05 2021-12-03 深圳Tcl新技术有限公司 Internet of things equipment binding method, device and system, cloud server and storage medium
CN113746857A (en) * 2021-09-09 2021-12-03 深圳市腾讯网域计算机网络有限公司 Login method, device, equipment and computer readable storage medium

Similar Documents

Publication Publication Date Title
US11128612B1 (en) Zero-touch provisioning of IoT devices with multi factor authentication
JP7474302B2 (en) Automatic service registration in a communications network - Patents.com
US10630647B2 (en) Secure wireless communication between controllers and accessories
US10951592B2 (en) Secure wireless communication between controllers and accessories
US10177933B2 (en) Controller networks for an accessory management system
EP3149548B1 (en) Controller networks for an accessory management system
KR101741967B1 (en) Method for assigning an agent device from a first device registry to a second device registry
WO2014088340A1 (en) Method and apparatus for authenticating access authorization in wireless communication system
WO2014069898A1 (en) Method and apparatus for authenticating access authority for specific resource in wireless communication system
WO2015184382A2 (en) Controller networks for an accessory management system
US11394534B2 (en) Electronic device sharing key with external electronic device and operating method for electronic device
WO2024050754A1 (en) Method for starting client, first device, configuration device, and cloud platform
US20190349348A1 (en) Registry apparatus, agent device, application providing apparatus and corresponding methods
WO2024050753A1 (en) Communication method, first device, configuration device, and cloud platform
WO2024130508A1 (en) Device network configuration method, configurator, server, device, and user terminal
US20220141658A1 (en) One-time wireless authentication of an internet-of-things device
WO2023230983A1 (en) Method and apparatus for establishing interoperation channel, chip, and storage medium
KR20170058847A (en) Method and apparatus for communicating between heterogeneous platforms

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22957726

Country of ref document: EP

Kind code of ref document: A1