WO2024093851A1 - 一种物联网设备心跳检测的方法、系统以及通信装置 - Google Patents
一种物联网设备心跳检测的方法、系统以及通信装置 Download PDFInfo
- Publication number
- WO2024093851A1 WO2024093851A1 PCT/CN2023/127338 CN2023127338W WO2024093851A1 WO 2024093851 A1 WO2024093851 A1 WO 2024093851A1 CN 2023127338 W CN2023127338 W CN 2023127338W WO 2024093851 A1 WO2024093851 A1 WO 2024093851A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- internet
- heartbeat
- iot
- things
- platform
- Prior art date
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 133
- 238000004891 communication Methods 0.000 title claims abstract description 57
- 238000000034 method Methods 0.000 claims abstract description 135
- 230000007246 mechanism Effects 0.000 claims description 81
- 238000004590 computer program Methods 0.000 claims description 14
- 238000012545 processing Methods 0.000 description 43
- 230000006870 function Effects 0.000 description 29
- 238000010586 diagram Methods 0.000 description 17
- 230000000875 corresponding effect Effects 0.000 description 11
- 230000008569 process Effects 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 5
- 230000001413 cellular effect Effects 0.000 description 5
- 239000003795 chemical substances by application Substances 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 4
- WHXSMMKQMYFTQS-UHFFFAOYSA-N Lithium Chemical compound [Li] WHXSMMKQMYFTQS-UHFFFAOYSA-N 0.000 description 3
- 238000002474 experimental method Methods 0.000 description 3
- 229910052744 lithium Inorganic materials 0.000 description 3
- 238000010408 sweeping Methods 0.000 description 3
- 239000002699 waste material Substances 0.000 description 3
- 101001121408 Homo sapiens L-amino-acid oxidase Proteins 0.000 description 2
- 102100026388 L-amino-acid oxidase Human genes 0.000 description 2
- 241000209094 Oryza Species 0.000 description 2
- 235000007164 Oryza sativa Nutrition 0.000 description 2
- 101100012902 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) FIG2 gene Proteins 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013480 data collection Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000010438 heat treatment Methods 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 235000009566 rice Nutrition 0.000 description 2
- 230000008054 signal transmission Effects 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000005406 washing Methods 0.000 description 2
- 241000251468 Actinopterygii Species 0.000 description 1
- 101000827703 Homo sapiens Polyphosphoinositide phosphatase Proteins 0.000 description 1
- 102100023591 Polyphosphoinositide phosphatase Human genes 0.000 description 1
- 101100233916 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) KAR5 gene Proteins 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 239000000077 insect repellent Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0811—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
Definitions
- the present application relates to the technical field of Internet of Things, and more specifically, to a method, system and communication device for heartbeat detection of Internet of Things devices.
- IoT devices such as smart desk lamps and smart sockets
- IoT devices have entered thousands of households.
- IoT platforms and IoT devices Through the interaction between terminal devices, IoT platforms and IoT devices, it is easy to realize the remote control, data reporting and device-related data distribution of IoT devices.
- IoT devices send heartbeat data to the IoT platform at a certain heartbeat cycle, thereby establishing a long connection with the IoT platform.
- the IoT platform updates the online or offline status of the IoT device based on the heartbeat data sent by the IoT device, and users can obtain information about the online or offline status of the IoT device through the terminal device.
- the online status or offline status updated by the IoT platform on the IoT device is not accurate enough.
- the present application provides a method, system and communication device for detecting the heartbeat of an IoT device.
- the IoT platform When an IoT platform is disconnected from an IoT device, the IoT platform initiates active detection, thereby solving the problem of not being able to accurately judge the status of an IoT device and improving the accuracy of online status detection of IoT devices.
- the present application provides a method for heartbeat detection of an Internet of Things device, which is applied to an Internet of Things platform, which is communicatively connected to a first Internet of Things device, and the method includes: when the Internet of Things platform does not receive first heartbeat data sent by the first Internet of Things device within a preset time length after the last time the heartbeat data was received, sending second heartbeat data to the first Internet of Things device; based on the result of sending the second heartbeat data, determining whether the first Internet of Things device is online or offline, when the second heartbeat data is sent successfully, the first Internet of Things device is online, and when the second heartbeat data fails to be sent, it indicates that the first Internet of Things is offline.
- the method provided in the first aspect when the Internet of Things device does not receive the first heartbeat cycle sent by the first Internet of Things device within the heartbeat cycle, it does not need to wait for a timeout period (three heartbeat cycles) to determine whether the first Internet of Things device is online or offline as in the prior art, but actively sends second heartbeat data to the first Internet of Things device.
- a timeout period three heartbeat cycles
- the second heartbeat data can be sent successfully, it indicates that the first Internet of Things device is online.
- the second heartbeat data fails to be sent, it indicates that the second Internet of Things device is offline. It can be seen that through this method, when the first Internet of Things device loses packets, the offline state of the first Internet of Things device can be determined at the first time, thereby improving the accuracy of online state detection of the Internet of Things device.
- the preset time length can be a heartbeat cycle, which can refer to the recommended value obtained by the IoT device from the operator or an experiment conducted on this basis, and then set according to the experimental value.
- the heartbeat cycle of IoT devices of the same model is the same.
- the heartbeat cycle can also be a target heartbeat cycle, which is determined according to the environment in which the IoT device is located. The embodiment of the present application does not limit the preset time length.
- the first Internet of Things device can be a device with sensor detection function or an access device with intelligent function in the Internet of Things, such as a smart switch, a smart socket, a smart meter, a smart water meter, a smart light, or as large as a smart TV, a smart water dispenser, a smart air conditioner, a smart floor heating, a smart projector, a smart washing machine or a smart rice cooker, etc.
- the method further includes: obtaining relevant information of the first IoT device, the relevant The relevant information includes one or more of the following: device information of the first Internet of Things device, geographical information of the first Internet of Things device, and network information of the first Internet of Things device.
- the target heartbeat cycle of the first Internet of Things device is determined based on the relevant information of the first Internet of Things device, and the target heartbeat cycle is sent to the first Internet of Things device.
- the above preset time period is the target heartbeat cycle.
- a heartbeat cycle suitable for the first Internet of Things device in this scenario can be determined based on the relevant information of the first Internet of Things device, and then the target heartbeat cycle is sent to the first Internet of Things device, so that the first Internet of Things device can send heartbeat data to the Internet of Things platform based on the target heartbeat cycle.
- the Internet of Things platform does not receive the first heartbeat data sent by the first Internet of Things device within the target heartbeat cycle, it sends the second heartbeat data to the first Internet of Things device, thereby avoiding the waste of air interface resources and reducing device power consumption.
- the method before sending the second heartbeat data to the first IoT device, the method further includes determining that the first IoT device starts an active heartbeat detection mechanism based on the relevant information of the first IoT device.
- the IoT platform can determine whether the first IoT device is in a weak network based on the relevant information of the first IoT device. When the first IoT device is in a weak network, it means that the device is more likely to lose packets, so it is necessary to start the active heartbeat detection mechanism. When the first IoT device is in a strong network, the device does not need to start the active heartbeat detection mechanism because the device is less likely to lose packets when in a strong network.
- the Internet of Things platform stores a device heartbeat database, and determines a target heartbeat period of the first Internet of Things device based on relevant information of the first Internet of Things device, including: querying the target heartbeat period of the first Internet of Things device in the device heartbeat database based on the relevant information of the first Internet of Things device.
- the device heartbeat database contains a large number of device portraits.
- the IoT platform receives relevant information of the first IoT device, it can find the target heartbeat period of the device in the current scenario in the device heartbeat database.
- determining, based on relevant information of the first Internet of Things device, that the first Internet of Things device enables an active heartbeat detection mechanism includes: based on the relevant information of the first Internet of Things device, querying a device heartbeat database for the first Internet of Things device to enable an active heartbeat detection mechanism.
- the massive amount of information stored in the device heartbeat database includes whether the device needs to enable the heartbeat active detection mechanism in the current scenario.
- the target heartbeat period in the device heartbeat database and whether the first IoT device turns on the heartbeat active detection mechanism can be set by the user.
- the first IoT device can communicate with the IoT platform based on the target heartbeat period set by the user, and the first IoT device can also determine whether to turn on the heartbeat active detection mechanism based on the user's personalized settings.
- the method further includes: obtaining user setting information, the user setting information including: the heartbeat period of the second IoT device set by the user, and/or whether the second IoT device set by the user has an active detection mechanism enabled; sending request information to the second IoT device, the request information is used to request relevant information of the second IoT device; receiving relevant information of the second IoT device, and adding the relevant information of the second IoT device and the user setting information to the device heartbeat database.
- the device heartbeat database can be expanded to collect more relevant information of devices in different scenarios, as well as the heartbeat period set by the user in the scenario and whether the heartbeat active detection mechanism is enabled.
- a user may input user setting information on a terminal device, and then the terminal device sends the user setting information to the IoT platform, and finally the IoT platform updates the device heartbeat database based on the user setting information.
- the present application provides a method for heartbeat detection of an Internet of Things device, which is applied to a first Internet of Things device, and the first Internet of Things device is communicatively connected to an Internet of Things platform.
- the method includes: sending relevant information of the first Internet of Things device to the Internet of Things platform, and the relevant information includes one or more of the following: device information of the first Internet of Things device, geographical information of the first Internet of Things device, and network information of the first Internet of Things device; receiving a target heartbeat cycle sent by the Internet of Things platform, and the target heartbeat cycle is determined based on the relevant information of the first Internet of Things device; sending first heartbeat data to the Internet of Things platform according to the target heartbeat cycle; and receiving second heartbeat data sent by the Internet of Things platform, and the second heartbeat data is sent when the Internet of Things platform does not receive the first heartbeat data within the target cycle.
- the method provided in the second aspect can determine a heartbeat cycle suitable for the first Internet of Things device in this scenario by sending relevant information of the first Internet of Things device to the Internet of Things platform.
- the first Internet of Things device sends heartbeat data to the Internet of Things platform based on the target heartbeat cycle.
- the Internet of Things platform does not receive the first heartbeat data sent by the first Internet of Things device within the target heartbeat cycle, it sends second heartbeat data to the first Internet of Things device, thereby avoiding waste of air interface resources and reducing device power consumption.
- receiving second heartbeat data actively sent by the Internet of Things platform includes: When the first IoT device turns on the active detection mechanism, it receives the second heartbeat data actively sent by the IoT platform.
- the first IoT device when the first IoT device turns on the active detection mechanism, it indicates that the first IoT device is in a weak network, which means that the device is more likely to lose packets, so it is necessary to turn on the heartbeat active detection mechanism. Only when the first IoT device turns on the active detection mechanism will it receive the second heartbeat data actively sent by the IoT platform.
- a request message sent by the IoT platform is received, the request message is used to request relevant information of the second IoT device, and the relevant information of the second IoT device includes one or more of the following: device information of the second IoT device, geographical information of the second IoT device, and network information of the second IoT device; based on the request message, the relevant information of the second IoT device is sent to the IoT platform.
- the device heartbeat database can be expanded to collect more relevant information of devices in different scenarios, as well as the heartbeat cycle set by the user in the scenario and whether to turn on the heartbeat active detection mechanism.
- the target heartbeat period is set by a user.
- a system based on heartbeat detection of an Internet of Things device comprising an Internet of Things platform and an Internet of Things device, the Internet of Things platform being used to execute the method in the above first aspect or any possible implementation of the first aspect, and the Internet of Things device being used to execute the above second aspect or any possible implementation of the second aspect.
- a communication device which includes a unit for executing each step in the above first aspect or any possible implementation of the first aspect, or a unit for executing each step in the above second aspect or any possible implementation of the second aspect.
- a communication device which includes at least one processor and a memory, the processor and the memory are coupled, the memory stores program instructions, and when the program instructions stored in the memory are executed by the processor, the method in the above first aspect or any possible implementation of the first aspect, or the above second aspect or any possible implementation of the second aspect is executed.
- a communication device which includes at least one processor and an interface circuit, and the at least one processor is used to execute the method in the above first aspect or any possible implementation of the first aspect, or the above second aspect or any possible implementation of the second aspect.
- an Internet of Things platform which includes the communication device provided in the fourth aspect, or the terminal device includes the communication device provided in the fifth aspect, or the terminal device includes the communication device provided in the sixth aspect.
- an Internet of Things device which includes the communication device provided in the fourth aspect, or the Internet of Things device includes the communication device provided in the fifth aspect, or the Internet of Things device includes the communication device provided in the sixth aspect.
- a computer program product which includes a computer program, which, when executed by a processor, is used to execute the method in the above first aspect or any possible implementation of the first aspect, or the above second aspect or any possible implementation of the second aspect.
- a computer-readable storage medium which stores a computer program.
- the computer program When the computer program is executed, it is used to execute the method in the above first aspect or any possible implementation of the first aspect, or the above second aspect or any possible implementation of the second aspect.
- a chip which includes: a processor, for calling and running a computer program from a memory, so that a communication device equipped with the chip executes a method for executing the above first aspect or any possible implementation of the first aspect, or the above second aspect or any possible implementation of the second aspect.
- a communication system which includes the above-mentioned Internet of Things platform and Internet of Things device.
- FIG1 is a schematic diagram showing the interaction between an IoT device, an IoT cloud platform and a terminal device in the related art
- FIG2 is a schematic diagram showing an architecture of a heartbeat detection system for an IoT device provided in an embodiment of the present application
- FIG3 is a schematic flow chart of an example of an IoT device heartbeat detection method 300 provided in an embodiment of the present application.
- FIG4 shows a schematic flow chart of another example of an IoT device heartbeat detection method 400 provided in an embodiment of the present application
- FIG5 shows another example of an interface schematic diagram of a heartbeat detection of an IoT device
- FIG6 shows a schematic diagram of the interface of the smart socket in an offline state on the APP
- FIG. 7 is a schematic flow chart showing a method 700 for updating a device heartbeat database according to an embodiment of the present application
- FIG8 is a schematic flow chart showing another method 800 for updating a device heartbeat database provided in an embodiment of the present application.
- FIG9 is a schematic diagram showing an interface for a user to personalize and set parameters of a smart socket
- FIG10 is a schematic diagram of an example of a heartbeat detection system for an Internet of Things device provided in an embodiment of the present application.
- FIG11 shows a schematic block diagram of a communication device 1100 provided in an embodiment of the present application.
- FIG12 shows a schematic block diagram of another communication device 1200 provided in an embodiment of the present application.
- FIG13 shows a schematic diagram of a chip system.
- references to "one embodiment” or “some embodiments” etc. described in this specification mean that a particular feature, structure or characteristic described in conjunction with the embodiment is included in one or more embodiments of the present application.
- the phrases “in one embodiment”, “in some embodiments”, “in some other embodiments”, “in some other embodiments”, etc. appearing in different places in this specification do not necessarily all refer to the same embodiment, but mean “one or more but not all embodiments", unless otherwise specifically emphasized in other ways.
- the terms “including”, “comprising”, “having” and their variations all mean “including but not limited to”, unless otherwise specifically emphasized in other ways.
- GSM global system for mobile communications
- CDMA code division multiple access
- WCDMA wideband code division multiple access
- GPRS general packet radio service
- LTE long term evolution
- FDD frequency division duplex
- TDD LTE time division duplex
- UMTS universal mobile telecommunication system
- WiMAX worldwide interoperability for microwave access
- 5G future fifth generation
- NR new radio
- the terminal device in the embodiments of the present application may refer to user equipment, access terminal, user unit, user station, mobile station, mobile station, remote station, remote terminal, mobile device, user terminal, terminal, wireless communication device, user agent or user device.
- the terminal device may also be a cellular phone, a cordless phone, a session initiation protocol (SIP) phone, a wireless local loop (WLL) station, a personal digital assistant (PDA), a handheld device with wireless communication function, a computing device or other processing device connected to a wireless modem, a vehicle-mounted device, a wearable device, a terminal device in a future 5G network or a terminal device in a future evolved public land mobile communication network (PLMN), etc., and the embodiments of the present application are not limited to this.
- SIP session initiation protocol
- WLL wireless local loop
- PDA personal digital assistant
- a terminal device or a network device includes a hardware layer, an operating system layer running on the hardware layer, and an application layer running on the operating system layer.
- the hardware layer includes hardware such as a central processing unit (CPU), a memory management unit (MMU), and memory (also called main memory).
- the operating system can be any one or more computer operating systems that implement business processing through processes, such as a Linux operating system, a Unix operating system, an Android operating system, an iOS operating system, or a Windows operating system.
- the application layer includes applications such as browsers, address books, word processing software, and instant messaging software. Furthermore, the embodiments of the present application do not provide any of the embodiments of the present application. The specific structure of the execution subject of the method is specifically limited.
- the execution subject of the method provided by the embodiment of the present application may be a terminal device or a network device, or a functional module in the terminal device or the network device that can call and execute the program.
- computer-readable media may include, but are not limited to: magnetic storage devices (e.g., hard disks, floppy disks or tapes, etc.), optical disks (e.g., compact discs (CDs), digital versatile discs (DVDs), etc.), smart cards and flash memory devices (e.g., erasable programmable read-only memory (EPROM), cards, sticks or key drives, etc.).
- the various storage media described herein may represent one or more devices and/or other machine-readable media for storing information.
- machine-readable medium may include, but is not limited to, wireless channels and various other media capable of storing, containing and/or carrying instructions and/or data.
- the Internet of Things combines various IoT devices with the Internet to form a huge network, which enables the interconnection of people, machines and things at any time and any place.
- smart home appliances have entered thousands of households.
- smart table lamps, smart sockets, etc. can easily realize the remote control, data reporting, and device-related data distribution of IoT devices through the interaction between the application (APP), IOT cloud platform, and IoT devices.
- APP application
- IOT cloud platform IoT devices
- IoT devices Due to the hardware limitations of IoT devices, they often use IoT protocols such as Costrained Application Protocol (CoAP)/Message Queuing Telemetry Transport (MQTT) when interacting with IoT cloud platforms.
- CoAP Costrained Application Protocol
- MQTT Message Queuing Telemetry Transport
- TCP Transmission Control Protocol
- IoT devices based on mobile cellular connections need to maintain a connection with the server.
- maintaining a connection between IoT devices and servers will occupy base station resources. Due to the limited resources of base stations and the rules of base stations, when mobile IoT devices communicate with servers, the base station will allocate an Internet Protocol (IP) address to the IoT device. If there is no data transmission within a certain period of time, the base station will cancel the IP address allocation to the IoT device and release resources for other needs. This requires IoT devices to establish communication with the server regularly to keep the communication channel unobstructed. This timing is named the heartbeat cycle.
- IP Internet Protocol
- a shorter heartbeat cycle can ensure that messages at the business layer are accessible at any time, but it will bring too much load to the server and increase power consumption; if the heartbeat cycle is too long, it will cause the connection between the IoT device and the server to fail. At this time, the IoT device must re-initiate the connection to obtain the IP address allocation from the base station, which will reduce communication efficiency and cause excessive power consumption of the server and IoT devices.
- the heartbeat cycle can also be understood as the IoT device sending a data packet to the IOT cloud platform at a fixed interval to notify the IOT cloud platform that it is still online.
- the IOT cloud platform and the IoT device interact at regular intervals to determine whether the link is valid and transmit some necessary data. Usually, after a TCP socket connection is established, it is impossible to guarantee whether the connection will continue to be valid. At this time, the applications on both sides will send heartbeat packets at regular intervals to ensure that the connection is valid. Because it is sent at a certain time interval, similar to a heartbeat, the data packet sent by the IoT device is called a heartbeat packet, and the time between sending two heartbeat packets is called a heartbeat cycle. The IoT device is judged to be offline by periodically sending heartbeat packets between the IoT device and the IOT cloud platform.
- an IoT device does not send a heartbeat packet to the IOT, it does not mean that the IoT device is offline.
- the IoT device also needs a timeout period, so the accuracy of the online status of the IoT device always has an error of 2% to 3%.
- the timeout period refers to three heartbeat cycles.
- the IoT device fails to send a heartbeat packet, it will continue to try to send a heartbeat packet three times. Then the IoT cloud platform also needs to wait for three heartbeat cycles. If it waits for more than three heartbeat cycles, it will eventually determine that the terminal device is offline. Therefore, there will always be errors in the accuracy of the terminal device's online status.
- FIG. 1 shows a schematic diagram of the interaction between IoT devices, IoT cloud platform and terminal devices in the related art.
- the IoT device can send a heartbeat packet to the IoT cloud platform within the heartbeat cycle to indicate whether it is online.
- the IOT cloud platform periodically receives heartbeat packets sent by IoT devices, and can determine whether the physical network device is offline based on the heartbeat timeout.
- the IOT cloud platform can reflect the offline status of the IoT device on the APP of the terminal device bound to the IoT device, and users can query the offline status of the IoT device through the APP.
- the CoAP/MQTT protocol defines the heartbeat signaling from IoT devices to the IoT cloud platform, and IoT devices can be kept alive regularly according to the heartbeat cycle.
- the existing heartbeat cycle is generally obtained from the operator's recommended value, or experiments are conducted on this basis, and then set according to the experimental value.
- the base station rules in the cellular network may change with time, location, operator equipment upgrades, business evolution and other factors. Therefore, under the existing heartbeat cycle, the IOT cloud platform needs to judge the offline status of the IoT device based on the timeout cycle. There will be a certain error when the IOT cloud platform feeds back to the APP that the IoT device is in an offline state, which will ultimately lead to inaccurate offline status of the IoT device obtained by the user from the APP.
- the current IOT cloud platform determines the offline status of the terminal device based on the online timeout period of the IoT device.
- the IoT device sends a heartbeat packet to the IOT cloud platform and packet loss occurs, the IOT cloud platform will continue to wait for three heartbeat cycles before refreshing the offline status of the IoT device, which ultimately leads to the current device online status accuracy is not accurate enough. Therefore, a detection solution that can quickly detect whether the IoT is online is needed.
- the present application provides a method for detecting the heartbeat of an IoT device, in which when the IoT platform does not receive the heartbeat data sent by the IoT device within a preset time length after the last time the heartbeat data was received, the IoT device is actively sent heartbeat data; according to the result of the heartbeat data transmission, the IoT device is determined to be online or offline, and when the heartbeat data is successfully transmitted, the IoT device is online, and when the second heartbeat data transmission fails, the IoT device is offline.
- the IoT platform when the IoT platform does not receive the heartbeat packet of the IoT device within the heartbeat cycle, the IoT platform starts the active detection mechanism to determine whether the IoT device is online, without waiting for the timeout period to determine whether the IoT device is offline.
- Figure 2 shows a schematic diagram of an IoT device heartbeat detection system architecture provided by an embodiment of the present application.
- the system includes an IoT platform, IoT devices, and terminal devices, wherein the IoT platform includes a device gateway, a device shadow, and heartbeat data big data.
- Terminal devices refer to devices with business applications installed, and can also be called devices with clients installed. Users can access the IoT platform through the client installed on the terminal device, or through the business server. Through the client, users can view the IoT devices that communicate with the IoT platform, view the business data reported by the IoT devices, and issue control commands to the IoT devices through the client.
- the terminal device involved in the embodiment of the present invention may be a device that provides voice and/or data connectivity to a user, a handheld device with a wireless connection function, or other processing equipment connected to a wireless modem.
- a wireless terminal may communicate with one or more core networks via a radio access network (RAN).
- the wireless terminal may be a mobile terminal, such as a mobile phone (or "cellular" phone) and a computer with a mobile terminal.
- RAN radio access network
- the wireless terminal may be a mobile terminal, such as a mobile phone (or "cellular" phone) and a computer with a mobile terminal.
- it may be a portable, pocket-sized, handheld, computer-built-in or vehicle-mounted mobile device that exchanges language and/or data with a radio access network.
- a wireless terminal may also be referred to as a system, a subscriber unit (Subscriber Unit), a subscriber station (Subscriber Station), a mobile station (Mobile Station), a mobile station (Mobile), a remote station (Remote Station), an access point (Access Point), a remote terminal (Remote Terminal), an access terminal (Access Terminal), a user terminal (User Terminal), a terminal device, a user agent (User Agent), a user device (User Device), or a user equipment (User Equipment), but is not limited to the specifics in this application.
- PCS Personal Communication Service
- SIP Session Initiation Protocol
- WLL Wireless Local Loop
- PDA Personal Digital Assistants
- a wireless terminal may also be referred to as a system, a subscriber unit (Subscriber Unit), a subscriber station (Subscriber Station), a mobile station (Mobile Station), a mobile station (Mobile), a remote station (Remote Station), an access point (Access Point), a remote terminal (Remot
- IoT devices refer to devices with sensor detection functions or access devices with intelligent functions in the IoT, such as devices that support temperature detection sensors or home IoT devices (which can be a smart home system composed of multiple devices). For example, they can be small smart switches, smart electricity meters, smart water meters, smart lights, or large smart TVs, smart water dispensers, smart air conditioners, smart floor heating, smart projectors, smart washing machines, or smart rice cookers used by users in their daily lives.
- the IoT platform is connected to IoT devices, supports IoT devices to report business data, and provides business data to users, or receives control commands issued by users to IoT devices.
- the IoT platform also communicates with network applications or business applications built into terminal devices. For example, in a smart home system scenario, device A in the smart home system wants to communicate with device 2 in the smart home system. For device B to interact, it needs to be forwarded through the IoT platform.
- the IoT device can send its own relevant information, such as: device information of the IoT device, geographical information of the IoT device, and network information of the IoT device to the IoT platform, and then the IoT platform determines the heartbeat cycle of the IoT device and determines whether to start the active heartbeat detection mechanism based on at least one of the above information.
- the device gateway on the IoT platform can receive IoT-related information sent by IoT devices, and then parse the relevant protocol and send it to the device shadow.
- the device shadow can query the heartbeat cycle in the current scenario and whether the IoT platform has enabled the heartbeat active detection mechanism from the device heartbeat database.
- the system provided in the present application can determine the heartbeat cycle of the IoT device and whether to start the heartbeat active detection mechanism and save it according to the relevant information of the IoT device through IOT.
- IOT does not receive the heartbeat packet of the terminal device within the heartbeat cycle
- IOT starts the active detection mechanism to determine whether the terminal device is online, without waiting for the timeout period to determine whether the terminal device is offline.
- Fig. 3 is a schematic flow chart showing a method 300 for detecting heartbeats of an IoT device provided by an embodiment of the present application from the perspective of device interaction.
- the method 300 shown in Fig. 3 may include steps S310 to S370. The steps in the method 300 are described in detail below in conjunction with Fig. 3.
- the method 300 is described by taking the IoT platform, IoT device and terminal device as the execution subject of the method 300.
- the execution subject of the method 300 may also be a chip applied to the IoT platform, IoT device and terminal device.
- the first Internet of Things device sends relevant information of the first Internet of Things device to the Internet of Things platform.
- the relevant information includes one or more of the following: device information of the first Internet of Things device, geographical information of the first Internet of Things device, or network information of the first Internet of Things device.
- the first IoT device refers to any one of the numerous IoT devices that are communicatively connected to the IoT platform.
- the existing heartbeat cycle is generally obtained from the recommended value of the operator, or experiments are conducted on this basis, and then set according to the experimental value.
- the base station rules in the cellular network may change with the influence of time, location, operator equipment upgrades, business evolution and other factors, so the IOT cloud platform can only judge the offline status of the terminal device based on the timeout period under the existing heartbeat cycle, which will eventually lead to errors in the accuracy of the online status of the terminal device.
- the first IoT device can obtain a target heartbeat cycle based on its own relevant information, and maintain a heartbeat based on the target heartbeat cycle and the IoT platform.
- the IoT platform can then quickly determine the offline status of the first IoT device based on the target heartbeat cycle.
- the factory setting for this batch of models of smart refrigerators is 30s.
- the heartbeat cycle does not always remain at 30s.
- the heartbeat cycle of the smart refrigerator is 40s due to the influence of the network environment.
- the IoT platform does not receive the heartbeat data sent by the smart refrigerator when the cycle is 30s, the IoT platform will actively send heartbeat data for detection.
- the smart refrigerator sends heartbeat data with a cycle of 40s, which will eventually lead to inaccurate judgment of the offline status of the smart refrigerator.
- the relevant information of the first IoT device can be sent to the IoT platform, and the target heartbeat period can be determined using the IoT platform.
- the relevant information of the first IoT device includes: device information of the first IoT device, for example: the device information may include device type and charging type, such as the charging type of a smart desk lamp, smart refrigerator, or smart socket.
- the IoT device may also be other devices with sensor detection functions or access devices with smart functions, such as the charging type of a smart speaker, etc., which is not limited in the present embodiment of the application.
- the charging type may be plugged in or equipped with a lithium battery.
- the geographical information of the first IoT device refers to the geographical location of the IoT device, such as a specific city, a specific street in the city, or a specific community in the street, etc.
- the embodiment of the present application does not specifically limit the scope of the geographical information of the physical network device.
- the network information of the first IoT device refers to: information of the operator to which the IoT device is connected, such as a mobile network, a Unicom network or a Telecom network, etc., or the network information may also be information of other operators besides the above three major operators.
- the first IoT device can send relevant information of the at least one IoT device to the IoT platform, using the IoT The target heartbeat period obtained by the platform.
- the Internet of Things platform determines a target heartbeat period of the first Internet of Things device based on relevant information of the first Internet of Things device.
- the target heartbeat period of the current Internet of Things device is determined using the relevant information of the first Internet of Things device.
- the IoT platform When the IoT platform obtains the target heartbeat period of the current IoT device, it can determine the time when the first IoT device sends heartbeat data based on the target heartbeat period. When the first IoT device loses packets, the IoT platform can quickly and accurately determine whether the first IoT device is online or offline.
- the IoT platform may search for the target heartbeat period in the device heartbeat database based on the relevant information of the first IoT device, and return the target heartbeat period to the first IoT device.
- the device heartbeat database has the ability to manage massive data.
- the device heartbeat database includes the target heartbeat detection cycle when the device information of the IoT device is different, the geographical information of the IoT device is different, or the network information of the IoT device is different.
- the device heartbeat database includes: when the device information of the physical network device is a plug-in smart desk lamp, the target heartbeat period is 10s; or, when the network information of the smart desk lamp is a telecommunications network, the target heartbeat period is 15s; or when the geographical information of the smart desk lamp is Nanjing, the target heartbeat period is 20s.
- the device heartbeat database includes: the device information of the physical network device is a plug-in smart desk lamp, the network connected to the IoT device is a telecommunications network, and the region where the IoT device is located is Xi'an, then the heartbeat period of the IoT device is 1 minute.
- the device heartbeat database may also include: when the device information of the physical network device is a lithium battery-powered smart desk lamp, the network connected to the Internet of Things device is a mobile network, and the region where the Internet of Things device is located is Nanjing, the heartbeat cycle of the Internet of Things device is 2 minutes.
- the IoT platform obtains the relevant information of the IoT device, it compares it with the device heartbeat database to find the target heartbeat cycle.
- the relevant information of the first IoT device acquired by the IoT platform is the second case, it means that the target heartbeat period of the IoT device is 2 minutes.
- the target heartbeat cycle is the result of searching the heartbeat database of the current device. Since the results in the heartbeat database are dynamically changing, the target heartbeat cycle is also dynamically changing. In other words, the results of the target heartbeat cycle are different when searching at different times.
- the device heartbeat database can determine the target heartbeat period of the IoT device based on the device information of the first IoT device, or the geographical information of the first IoT device, or the network information of the first IoT device.
- the target heartbeat period can also be determined based on the device information of the first IoT device, the geographical information of the first IoT device, and the network information of the first IoT device.
- the target heartbeat period determined by a single factor may not be accurate enough compared to the target heartbeat period determined by multiple factors, which ultimately leads to inaccurate determination of whether the first IoT device is online or offline.
- the device gateway on the IoT platform can receive the relevant information of the IoT device sent by the first IoT device.
- the relevant information of the first IoT device can be sent through the CoAP protocol.
- the device gateway receives the CoAP protocol and parses it to obtain the relevant information of the first IoT.
- the relevant information of the first IoT can also be sent through other protocols, which is not limited in the embodiments of the present application.
- the device shadow may be called, and then the device shadow queries the target heartbeat period in the current scenario from the device heartbeat database.
- S330 The Internet of Things platform sends a target heartbeat cycle to the first Internet of Things device.
- the first Internet of Things device sends first heartbeat data to the Internet of Things platform according to the target heartbeat period.
- the IoT device after the IoT platform determines the target heartbeat period based on the relevant information of the first IoT device, the IoT device also needs to return the target heartbeat period to the first IoT device so that the first IoT device can send heartbeat data based on the target heartbeat period.
- the first Internet of Things device After the first Internet of Things device receives the target heartbeat period sent by the Internet of Things platform, it sends the first heartbeat data to the physical network platform according to the target heartbeat period.
- the first IoT device will periodically send the first heartbeat data according to the target heartbeat period sent by the IoT platform to keep the TCP link active, and the IoT platform can receive the first heartbeat data within the target heartbeat period.
- the IoT platform fails to receive the heartbeat data within the target heartbeat period.
- the IoT platform can actively send a second heartbeat data to the first IoT device to detect the validity of the connection, thereby determining whether the first IoT device is in an offline state.
- the Internet of Things platform before the Internet of Things platform sends the second heartbeat data to the first Internet of Things device, the Internet of Things platform can determine whether the first Internet of Things device has enabled the heartbeat active detection mechanism based on the relevant information of the first Internet of Things device. When the first Internet of Things device has enabled the heartbeat active detection mechanism, the Internet of Things platform sends the second heartbeat data to the first Internet of Things device.
- the IoT platform searches the device heartbeat database based on the relevant information of the first IoT device to determine whether the IoT device has enabled an active heartbeat detection mechanism in different scenarios.
- the device heartbeat database has the ability to manage massive data.
- the device heartbeat database also includes whether the IoT device turns on the heartbeat active detection mechanism in different scenarios. After the IoT platform determines whether to turn on the heartbeat detection mechanism based on the relevant information of the IoT device, it can save whether the heartbeat detection mechanism is turned on. When the IoT platform does not receive the first heartbeat data sent by the IoT device within the target heartbeat period, it determines whether to turn on the heartbeat active detection mechanism. When the heartbeat active detection mechanism is turned on, the second heartbeat data is sent to the first IoT device to detect the validity of the connection, thereby determining whether the first IoT device is in an offline state.
- the device heartbeat database includes: the device information of the physical network device is a plug-in smart desk lamp, the network connected to the IoT device is a telecommunications network, and the region where the IoT device is located is Xi'an, then the heartbeat cycle of the IoT device is 1 minute, and the heartbeat active detection mechanism needs to be enabled.
- the IoT platform can determine whether the first IoT device is in a weak network based on the relevant information of the first IoT device.
- the first IoT device is in a weak network, it means that the device is more likely to experience packet loss, so it is necessary to enable the heartbeat active detection mechanism.
- the first IoT device is in a strong network, the device may not enable the heartbeat active detection mechanism, because the device is less likely to lose packets when in a strong network.
- the IoT platform does not need to send the second heartbeat data, because the IoT platform determines based on the relevant information of the first IoT device that the device is less likely to lose packets and may restore the connection automatically after a period of time.
- S360 Determine whether the first Internet of Things device is in an online state or an offline state according to the second heartbeat data sending result.
- the IoT platform successfully sends the second heartbeat data to the first IoT device, it means that the first IoT device continues to remain online.
- the IoT platform fails to send the second heartbeat data to the first IoT device, it means that the IoT device is offline.
- the IoT platform can select the IoT device that needs to send heartbeat data in the current state through an algorithm, thereby reducing resource consumption.
- the device gateway microservice on the IoT platform obtains the last heartbeat time of the first IoT device and the device ID of the IoT device and reports it to the device shadow microservice on the IoT platform.
- the Device ID is the ID given by the IoT platform to each IoT device connected to the IoT platform.
- the device shadow microservice queries the connection portrait of the first IoT device in the device heartbeat database according to the Device ID of the first IoT device. If the last heartbeat time is greater than the heartbeat timeout time, it queries whether the IoT device has enabled the active heartbeat detection mechanism. If it is found that the active heartbeat detection mechanism is enabled for the first IoT device, the device gateway microservice actively initiates a heartbeat detection signaling of the connection validity to the IoT device.
- the device gateway microservice When the device gateway microservice successfully sends the heartbeat data to the first IoT device, it indicates that the first IoT device continues to remain online. When the device gateway microservice fails to send the heartbeat data to the first IoT device, it indicates that the IoT device is offline.
- the device gateway microservice updates the offline status of the IoT device to the device shadow microservice based on the results of active detection. If the IoT device is disconnected, the connection resources are released; if the IoT device is online, the connection resources are maintained.
- S370 The Internet of Things platform updates the offline status of the first Internet of Things device to the terminal device.
- the IoT platform displays the true status of the IoT device to the application on the user's terminal device.
- the user can quickly and easily understand the offline status of the IoT device through the application on the terminal device.
- the IoT platform determines that the IoT device is online, the online status of the IoT device is updated to the terminal device.
- the IoT platform determines that the IoT device is offline, the offline status of the IoT device is updated to the terminal device, so that the user can understand the offline status of the IoT device.
- the present application provides a method for IoT heartbeat detection, in which an IoT platform can determine a target heartbeat period of a terminal device and whether to start an active detection mechanism and save the information based on relevant information of the IoT device, including one or more of the following: the type of the IoT device, the geographical information of the IoT device, or the network information of the IoT device.
- the IoT platform does not receive the heartbeat data of the terminal device within the target heartbeat period, the IoT platform starts the active detection mechanism to determine whether the IoT device is online, without having to wait for a timeout to determine whether the IoT device is in an offline state, thereby improving the detection rate of the IoT device in an offline state.
- the Internet of Things platform sends the second heartbeat data to the first Internet of Things device when the first heartbeat data sent by the first Internet of Things device is not received within the target heartbeat cycle.
- the Internet of Things platform can also send the second heartbeat data to the first Internet of Things device when the first heartbeat data sent by the first Internet of Things device is not received within a preset time length after the last heartbeat data is received; that is, the preset time length can be the target heartbeat cycle or other time lengths, such as the factory heartbeat cycle of the first Internet of Things device. This embodiment of the application does not limit this.
- the terminal device is a smart phone
- the first IoT device is a smart socket (model: Bolin Smart Socket mini-HL)
- the IoT platform is an IOT cloud platform as an example to illustrate the above IoT device heartbeat detection method.
- FIG. 4 shows a schematic flow chart of another IoT device heartbeat detection method 400 provided in an embodiment of the present application
- FIG. 5 shows another interface schematic diagram of IoT device heartbeat detection.
- the method 400 includes S410 to S491:
- Users can add IoT devices through the smart APP, for example, to find smart sockets through SoftAP.
- Soft wireless access point is a technology that uses dedicated software to implement AP functions on smartphones through a wireless network card. It can replace the AP in a wireless network and thus reduce the cost of wireless networking.
- the APP After the APP searches for the smart socket, it transmits the current WiFi service set identifier (SSID) name and password to the smart socket through the network to synchronize the network of the smartphone and the smart socket.
- SSID WiFi service set identifier
- Step S410 can refer to the interfaces shown in Figures (a) to (d) in Figure 5.
- the smart phone After the smart phone receives the user's click operation, it opens the Smart Life APP.
- the smart phone interface switches to the interface shown in Figure 5 (b).
- the Smart Life APP is scanning nearby IoT devices, and a reminder "Please make sure the IoT device is connected to a power source and is near the phone" is displayed on the interface.
- the Smart Life APP scans nearby IoT devices the IoT device can be found based on a wireless network, or it can be found by manually adding or scanning a code.
- the smartphone interface switches to the interface shown in Figure 5 (c).
- the interface displays the icon of the smart socket and the name of the smart socket is Bolin Smart Socket mini3-HL.
- the user can click Add Component on the interface to connect.
- the APP is connected to the smart socket to be networked, the smart socket needs to be connected to the network.
- the smartphone interface switches to the interface shown in Figure 5 (d).
- the interface displays options such as network settings, network selection, and password. The user can click Select Network to transmit the current WiFi service set identifier SSID name and password to the smart socket through the network.
- the smart socket reports relevant information of the smart socket to the device gateway.
- the relevant information includes one or more of the following: device information of the smart socket, regional information of the smart socket, and network information of the smart socket.
- the relevant information of the smart socket needs to be reported to the device gateway on the IOT cloud platform.
- the relevant information includes one or more of the following: device information of the smart socket, geographical information of the smart socket, and Network information of the smart socket.
- the relevant information of the smart socket may be device information of the smart socket and network information of the smart socket.
- Step S420 can refer to the interface shown in Figures (e) to (g) in Figure 5.
- the smart socket successfully checks the current network information
- the smart socket checks the current device information and reports the device information and network information to the device gateway microservice on the IOT cloud platform through the CoAP protocol, and maintains a long connection with the IOT cloud platform through the device gateway microservice.
- the smart socket is online and can be timed and counted down through the APP.
- the IoT device connected to the smart phone through the Smart Life APP is a smart desk lamp, and of course other IoT devices can also be bound in the Smart Life APP, such as mosquito repellent or fish lamp as shown in FIG5 (g).
- the device gateway reports the relevant information of the smart socket to the device shadow.
- the device gateway microservice on the IoT cloud platform parses the CoAP protocol, parses the device information and network information of the smart socket, and then calls the device shadow microservice.
- the device shadow calls the device heartbeat database to query the target heartbeat period of the smart socket and whether to enable the active detection mechanism.
- the device shadow microservice queries the device heartbeat database for the target heartbeat period suitable for the smart socket in the current scenario and whether to enable the heartbeat active detection mechanism.
- the current scenario specifically refers to the device information of the smart socket and the network information of the smart socket.
- the specific query method can refer to the description in step S320 and will not be repeated here.
- the device shadow sends the queried target heartbeat period of the smart socket and whether the active detection mechanism is enabled to the device gateway.
- S460 The device gateway sends the target heartbeat cycle to the smart socket.
- the queried target heartbeat cycle is returned to the IoT device, and the smart socket maintains a long connection with the IoT platform, and regularly communicates with the device gateway according to the heartbeat cycle returned by the IoT platform.
- the queried heartbeat cycle and whether the active detection mechanism is enabled are displayed on the Smart Life APP for users to query.
- the smart socket sends first heartbeat data to the device gateway based on the target heartbeat period.
- the device gateway actively sends the second heartbeat data to the smart socket.
- the smart socket is online.
- the smart socket is offline.
- the user can check whether the active detection on the smart platform side is turned on and the heartbeat cycle of the device through the APP.
- the interface shown in Figure 5 (h) switches to the interface shown in Figure 5 (i), and the interface shown in Figure 5 (i) shows that the IoT device has turned on the active detection mechanism on the IoT device side and the heartbeat cycle of the smart socket is 50s.
- Figure 6 shows an interface diagram of the smart socket in offline state on the APP.
- the IOT cloud platform actively sends a heartbeat data packet to the smart socket to actively detect the offline state of the smart socket.
- the IOT cloud platform fails to send the heartbeat data packet it indicates that the smart socket is in an offline state, as shown in Figure 6 (a), the switch icon of the smart socket shown by the dotted line is not lit.
- the switch icon of the smart socket shown by the dotted line is lit, and the user can quickly obtain the offline state of the smart socket on the APP.
- Figures 4-6 specifically introduce that after the smart socket reports the relevant information of the smart socket to the IOT cloud platform, the IOT cloud platform determines the target heartbeat cycle of the smart socket in the current scenario and whether it is necessary to enable the heartbeat active detection mechanism based on the relevant information of the smart socket, and sends the target heartbeat cycle to the smart socket.
- the smart socket maintains a heartbeat connection with the IOT cloud platform based on the target heartbeat cycle.
- the IOT cloud platform does not receive the first heartbeat data sent by the smart socket within the target heartbeat cycle, and the IOT cloud platform detects that the smart socket needs to enable the heartbeat active detection mechanism, it actively sends a second heartbeat to the smart socket.
- the IOT cloud platform actively sends heartbeat data after failing to receive heartbeat data, so that the online and offline status of the smart socket can be quickly obtained without waiting for the timeout (3 heartbeat cycles) to determine the online and offline status of the smart socket, thereby improving the accuracy of determining the offline status of the smart socket.
- the present application may also update the device heartbeat database mentioned above, for example, automatically setting the IoT device information according to the user, and realizing real-time updating of the IoT device information in the device heartbeat database.
- the user can independently set the heartbeat cycle of the IoT device and whether to enable the active heartbeat detection mechanism on the terminal device.
- the IoT platform sends a request to the IoT device based on the heartbeat cycle of the IoT device set in the terminal device and whether to enable the active heartbeat detection mechanism.
- the request is used to request relevant information of the IoT device.
- the relevant information includes one or more of the following: device information of the IoT device, geographical information of the IoT device, and network information of the IoT device.
- the IoT device sends relevant information of the IoT device to the IoT platform.
- the IoT platform updates the portrait of the IoT device in the IoT platform based on the relevant information of the IoT device, the heartbeat cycle of the IoT device, and whether to enable the active heartbeat detection mechanism.
- updating the device heartbeat database includes two meanings: the first one means that if the relevant information of a certain IoT device does not exist in the device heartbeat database, then the types of IoT devices in the device heartbeat database can be expanded based on the following method. The second one means that if the relevant information of a certain IoT device originally exists in the heartbeat database, then the relevant information of the IoT device can be updated based on the following method.
- Fig. 7 is a schematic flow chart showing a method 700 for updating a device heartbeat database provided by an embodiment of the present application from the perspective of device interaction. As shown in Fig. 7, the method 700 shown in Fig. 7 may include steps S710 to S750. The steps in the method 700 are described in detail below in conjunction with Fig. 7.
- the method 700 is described by taking the IoT platform, IoT device and terminal device as the execution subject of the method 700.
- the execution subject of the method 700 may also be a chip applied to the IoT platform, IoT device and terminal device.
- the terminal device obtains the heartbeat period of the second IoT device set by the user and whether the active detection mechanism is enabled.
- the second IoT device refers to any one of the numerous IoT devices that are connected to the IoT platform for communication.
- the second IoT device may be the same device as the first IoT device, or may be a different device from the first IoT device.
- the user can set the heartbeat period of the IoT device and whether to enable the active detection mechanism on the terminal device according to his or her own needs or the environment in which the second IoT device is located.
- the second IoT device is a smart sweeping robot
- the user wants to ensure that the smart sweeping robot is always in a cleaning state.
- a shorter heartbeat cycle can be set and an active detection mechanism can be enabled, thereby basically ensuring that the user knows whether the smart sweeping robot is offline at the first time.
- the second IoT device is a smart desk lamp equipped with a lithium battery
- the region where the smart desk lamp is located and the network it is connected to are in good condition
- the user can appropriately set a longer heartbeat cycle and there is no need to enable the active heartbeat detection mechanism.
- the terminal device can select the IoT device that needs to be set, and the terminal device can also obtain the status data of the IoT device stored on the IoT platform. Then, the terminal device stores the heartbeat cycle and active detection mechanism of the IoT device set by the user in a personalized manner in the current status data.
- the application installed on the terminal device can select the IoT device to be set, and obtain the status data of the IoT device stored in the device shadow on the IoT platform through the application on the terminal device. Then, the application on the terminal device can set the heartbeat cycle and active detection mechanism of the IoT device in a personalized manner according to the current status data.
- the IoT platform sends a request message to the second IoT device based on the information set by the user on the terminal device.
- the request message is used to request relevant information of the second IoT device.
- the relevant information includes one or more of the following: device information of the second IoT device, geographical information of the second IoT device, or network information of the second IoT device.
- the terminal device can upload the IoT heartbeat period set by the user and whether to enable the heartbeat active detection mechanism to the device shadow microservice on the IoT platform.
- the device shadow microservice can monitor the heartbeat cycle of the second IoT device and whether to enable the heartbeat active detection machine.
- the data is updated synchronously to the device heartbeat database.
- the IoT platform After the IoT platform obtains the heartbeat period of the IoT device set on the terminal device and whether the active detection mechanism is turned on, the IoT platform needs to obtain the type information of the second IoT device, the geographical information of the second IoT device, or the network information of the second IoT device, so as to complete the information of the second IoT device in the device heartbeat database. Therefore, the IoT platform can send a request message to the second IoT device, which is used to request the second IoT device to report relevant information of the IoT.
- the second Internet of Things device sends relevant information of the second Internet of Things device to the Internet of Things platform based on the request message of the Internet of Things platform.
- the second Internet of Things device After the second Internet of Things device receives the request message sent by the Internet of Things platform, the second Internet of Things device sends relevant information of the second Internet of Things device to the Internet of Things platform.
- the relevant information includes one or more of the following: device information of the second Internet of Things device, regional information of the second Internet of Things device, or network information of the second Internet of Things device.
- the Internet of Things platform updates the information of the Internet of Things device in the device heartbeat database according to the relevant information sent by the second Internet of Things device, the heartbeat cycle of the second Internet of Things device, and whether the active detection mechanism is enabled.
- the IoT platform updates the IoT information in the device heartbeat database based on the relevant information received from the IoT device, the heartbeat cycle of the IoT device stored on the IoT platform set by the user, and whether the active detection mechanism is enabled.
- the heartbeat period of the second IoT device in the IoT platform changes based on the user's setting information. Then the IoT platform can send the updated heartbeat period to the second IoT device, so that the second IoT device can communicate with the IoT platform based on the heartbeat period set by the user.
- the device shadow microservice in the IoT platform sends the latest heartbeat period of the IoT device to the device gateway microservice in the IoT platform.
- the device gateway microservice sends the latest heartbeat cycle of the IoT device to the IoT device through the CoAP protocol, and the IoT device can maintain connection with the IoT platform based on the latest heartbeat cycle.
- the method for updating the device heartbeat database provided in the above method 700 can expand the relevant information of the Internet of Things device in the device heartbeat database based on the user's autonomous settings, or can update the heartbeat cycle of the Internet of Things device and whether to turn on the active detection mechanism based on the user's autonomous settings, thereby realizing personalized settings of the Internet of Things device. In this way, more heartbeat cycles of Internet of Things devices in different scenarios and whether to turn on the active detection mechanism can be collected. Then, when the Internet of Things platform returns the target heartbeat cycle to the Internet of Things device from the device heartbeat database, the data is more accurate, thereby further improving the accuracy of offline state detection of the Internet of Things device.
- the method for updating the device heartbeat database is illustrated by taking the terminal device as a smart phone, the IoT device as a smart socket (model: Bolin Smart Socket mini-HL), and the IoT platform as an IOT cloud platform as an example.
- Figure 8 shows a schematic flow chart of another method 800 for updating the device heartbeat database
- Figure 9 shows a schematic diagram of the interface for users to personalize the parameters of the smart socket.
- the method 800 includes S810 - S891:
- the smart phone sends query information to the device shadow, where the query information is used to query the current status of the smart socket.
- the smartphone After the user selects a smart socket device that has been online through the Smart Life APP, the smartphone sends query information to the device shadow on the device's IOT cloud platform. The query information is used to query the current status of the smart socket device.
- the device shadow returns the status data of the smart socket device to the smartphone based on the query information sent by the smartphone.
- the smart phone obtains the heartbeat cycle set by the user and whether the heartbeat active detection mechanism is enabled.
- the smartphone interface switches from the interface shown in Figure 9 (a) to the interface shown in Figure 9 (b).
- the interface shown in Figure 9 (b) is the device details page.
- the smartphone interface switches from the interface shown in Figure 9 (b) to the interface shown in Figure 9 (c).
- the interface shown in the figure, the interface shown in Figure 9 (c) is the setting interface.
- the smartphone interface switches from the interface shown in Figure 9 (c) to the interface shown in Figure 9 (d).
- the interface shown in Figure 9 (d) is the setting interface for cloud-side active detection. On this interface, the user can set the cloud-side active detection status and the heartbeat cycle of the device.
- the user sets the cloud-side active detection state to on, and sets the device heartbeat period to 120s.
- the smart phone sends the heartbeat cycle set by the user and whether the heartbeat active detection mechanism is enabled to the device shadow.
- the smartphone After the smartphone obtains the heartbeat cycle set by the user and whether the cloud side has enabled the active heartbeat detection mechanism, it sends the information to the device shadow microservice of the IOT cloud platform.
- S840 The device gateway sends a request message to the smart socket, where the request message is used to request relevant information of the smart socket.
- the IOT cloud platform When the IOT cloud platform receives the heartbeat cycle set by the user and whether the cloud side has turned on the heartbeat active detection mechanism, it needs to obtain relevant information of the smart socket. Therefore, the device gateway on the IOT cloud platform sends a request message to the smart socket, which is used to request relevant information of the smart socket.
- the smart socket sends relevant information of the smart socket to the device gateway based on the request information.
- the smart socket After receiving the request information sent by the device gateway, the smart socket sends at least one of the device information of the smart socket, the region information where the smart socket is located, or the network information of the smart socket to the device gateway.
- the device gateway sends relevant information of the smart socket to the device shadow.
- the device shadow updates the heartbeat cycle of the user device, whether to enable the active heartbeat detection mechanism, and related information of the smart socket to the device heartbeat database.
- the IoT cloud platform updates the information of the smart socket in the device heartbeat database based on the relevant information sent by the smart socket, the heartbeat cycle of the smart socket set by the user, and whether the active detection mechanism is enabled.
- the device shadow sends the heartbeat period set by the user to the device gateway.
- the device gateway sends the heartbeat period set by the user to the smart socket.
- the smart socket maintains a heartbeat connection with the device gateway based on the heartbeat period set by the user.
- the IOT cloud platform sends the heartbeat cycle set by the user to the IoT device, so that the IoT device can maintain a heartbeat connection with the IOT cloud platform based on the heartbeat cycle set by the user.
- Figures 8 and 9 specifically introduce that the smart socket can expand the relevant information of the smart socket in the device heartbeat database based on the user's autonomous settings, or can update the heartbeat cycle of the smart socket and whether to turn on the active detection mechanism based on the user's autonomous settings, thereby realizing the personalized settings of the smart socket.
- the smart socket can expand the relevant information of the smart socket in the device heartbeat database based on the user's autonomous settings, or can update the heartbeat cycle of the smart socket and whether to turn on the active detection mechanism based on the user's autonomous settings, thereby realizing the personalized settings of the smart socket.
- more heartbeat cycles of smart sockets in different scenarios and whether to turn on the active detection mechanism can be collected.
- the data when the smart socket returns the target heartbeat cycle from the device heartbeat database to the IoT device is more accurate, thereby further improving the accuracy of offline state detection of the IoT device.
- Figure 10 shows a schematic diagram of an Internet of Things device heartbeat detection system provided in the embodiment of the present application.
- the Internet of Things device heartbeat detection system shown in the figure includes: a terminal device, an Internet of Things cloud platform, and a smart device (Internet of Things device).
- Terminal devices include: application APP (Application), which communicates with the IoT platform through the interface provided by the IoT platform Interact, send control instructions or receive device data forwarded by the platform.
- application APP Application
- the application APP can be a smart life APP running on the user's terminal device, receiving user instructions through the user interface (UI) and presenting the IoT device to the user in an offline state.
- the Internet of Things platform includes: IOT Core Service (IOT core service) and IOT Analytics Service (IOT data service).
- IOT core services include: device shadow, rule engine, device registry, device authentication, device gateway, message agent, etc.
- Each device has only one device shadow.
- the device can obtain and set the device shadow through MQTT to synchronize the status. It is used to store the device's reported status and the configuration that the application expects to send, and is decoupled and applied to the terminal device. It is generally used in scenarios such as unstable network, inability of devices to communicate in real time, and repeated requests for a device at the same time.
- the device shadow is responsible for mirroring the local status data of the IoT device on the IoT platform, including the switch status of the IoT device, offline status, etc.
- Rule engine It means that users can configure certain rules on the IoT platform. After judging that the conditions meet the rules, the platform will execute corresponding actions to meet user needs and flexibly build customized business scenarios such as scene linkage and alarm.
- Device Gateway supports multi-protocol access such as MQTT, CoAP, HTTP (HyperText Transfer Protocol), HTTP2, etc. In the embodiment of the present application, it is responsible for maintaining a long connection channel with the IoT device, carrying out the heartbeat processing of the IoT device, maintaining the device connection, etc.
- MQTT is a client-server based message publishing/subscription transmission protocol that can maintain long connections and realize many-to-many asynchronous communication
- CoAP is a client-server one-to-one protocol with the characteristics of lightweight and low power consumption.
- the message broker includes: publisher (Publish), broker (Broker) (server), and subscriber (Subscribe) in the MQTT protocol.
- publisher and subscriber of the message are both clients
- the message broker is the server
- the message publisher can be a subscriber at the same time.
- the MQTT client can publish information, subscribe to information, unsubscribe or delete information, and disconnect from the server;
- the MQTT server can receive the client's network connection, the information published by the client, the client's subscription and unsubscription requests, and forward the messages subscribed by the client.
- IOT data services include: AIOps data collection for IoT devices (device reporting specifications), WiseData data collection for IoT devices (device reporting specifications), device behavior portraits, device connection portraits, and device Profile specifications.
- Device connection portrait used to describe a device, also called device heartbeat database in the embodiment provided in this application, the device connection portrait is mainly used to describe the relevant information of the connected device.
- the device connection portrait of a smart socket may include the device information of the smart socket, the region information where the smart socket is located, and the network information of the smart socket, as well as the heartbeat cycle of the IoT device, whether the heartbeat active detection mechanism is turned on, etc.
- Device Profile Specification Developed (written) by the user to describe the capabilities and features of the access device. By defining the Profile, the user builds an abstract model corresponding to the device on the IoT platform, which enables the platform to understand the services, attributes, commands, and other information supported by the device (i.e., device capabilities).
- IoT devices include: edge computing, HiLink module-level device access specifications, device software development kit (SDK), and Xiangyun capability client SDK.
- Edge computing Devices used to obtain and analyze information cannot always rely on the network or application. If one of them has a problem, the entire system will fail. For this reason, people provide such devices with a different capability, namely edge computing, which is the ability to analyze and process at the edge of the solution (that is, the device itself). Edge computing allows devices to perform some operations and calculations offline without being connected to the network.
- HiLink module-level device access specifications include: wireless short-range LAN communications such as BT/BLE, Wifi, ZigBee, eMTC, wireless long-range WAN communications: NB-IOT, as well as 2G/3G/4G, LTE-V, etc. IoT devices interact with the IoT platform through these networks.
- Device SDKs include: C SDK, JS SDK, and Mobile SDK.
- Client SDK It is generally a collection of development tools used by software engineers to build application software for specific software packages, software frameworks, hardware platforms, operating systems, etc., such as: C/C++, JAVA, DNKeeper, GRS, etc.
- the terminal device, the IoT platform, and the IoT device can be divided into functional modules according to the above method.
- each function can be divided into functional modules, or two or more functions can be integrated into one processing module.
- the above integrated modules can be implemented in the form of hardware. It should be noted that the module in this embodiment is not divided into functional modules. The division of blocks is schematic and is only a division of logical functions. There may be other divisions in actual implementation.
- the IoT platform and IoT device provided in the embodiments of the present application are used to perform the method for heartbeat detection of any IoT device provided in the above method embodiments, so the same effect as the above implementation method can be achieved.
- the IoT platform or IoT device may include a processing module, a storage module and a communication module.
- the processing module can be used to control and manage the actions of the IoT platform or IoT device.
- the storage module can be used to support the storage of program codes and data, etc.
- the communication module can be used to support the communication between the IoT platform or IoT device and other devices.
- the processing module can be a processor or a controller. It can implement or execute various exemplary logic boxes, modules and circuits described in conjunction with the disclosure of this application.
- the processor can also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of digital signal processing (DSP) and a microprocessor, etc.
- the storage module can be a memory.
- the communication module can specifically be a radio frequency circuit, a Bluetooth chip, a Wi-Fi chip, or other devices that interact with other electronic devices.
- Figure 11 shows a schematic block diagram of a communication device 1100 provided in an embodiment of the present application.
- the communication device 1100 may correspond to the Internet of Things platform and Internet of Things device described in each embodiment of the above-mentioned method 300 to method 800, or may be a chip or component applied to the Internet of Things platform and Internet of Things device, and each module or unit in the communication device 1100 is respectively used to execute each action or processing process performed by the Internet of Things platform and Internet of Things device described in each embodiment of the above-mentioned method 300 to method 800.
- the communication device 1100 includes a transceiver unit 1110 and a processing unit 1120.
- the transceiver unit 1110 is used to perform specific signal transmission and reception under the drive of the processing unit 1120.
- the transceiver unit 1110 is used to send second heartbeat data to the first Internet of Things device when the Internet of Things platform does not receive the first heartbeat data sent by the first Internet of Things device within a preset time length after the last heartbeat data is received.
- Processing unit 1120 used to determine whether the first Internet of Things device is in an online state or an offline state according to the second heartbeat data sending result. When the second heartbeat data is sent successfully, the first Internet of Things device is in an online state; when the second heartbeat data fails to be sent, the first Internet of Things device is in an offline state.
- the communication device provided by the present application does not need to wait for a timeout period (three heartbeat periods) to determine whether the first Internet of Things device is online or offline as in the prior art when the Internet of Things device fails to receive the first heartbeat period sent by the first Internet of Things device within the heartbeat period. Instead, the communication device actively sends second heartbeat data to the first Internet of Things device. When the second heartbeat data can be sent successfully, it indicates that the first Internet of Things device is online. When the second heartbeat data fails to be sent, it indicates that the second Internet of Things device is offline. It can be seen that through this method, when the first Internet of Things device loses packets, the offline state of the first Internet of Things device can be determined at the first time, thereby improving the accuracy of online state detection of the Internet of Things device.
- the transceiver unit 1110 is further configured to obtain relevant information of the first IoT device, where the relevant information includes one or more of the following: device information of the first IoT device, region information of the first IoT device, and network information of the first IoT device;
- the processing unit 1120 is further configured to determine a target heartbeat cycle of the first Internet of Things device according to relevant information of the first Internet of Things device, and send the target heartbeat cycle to the first Internet of Things device, where the preset time period is the target heartbeat cycle.
- the processing unit 1120 is further configured to determine, based on relevant information of the first Internet of Things device, whether the first Internet of Things device enables an active heartbeat detection mechanism.
- the processing unit 1120 is further configured to query a target heartbeat period of the first Internet of Things device in a device heartbeat database according to relevant information of the first Internet of Things device.
- the processing unit 1120 is further configured to query the device heartbeat database for the first Internet of Things device to enable an active heartbeat detection mechanism based on the relevant information of the first Internet of Things device.
- the transceiver unit 1110 is further configured to obtain user setting information, the user setting information including: a heartbeat period of the second IoT device set by the user, and/or whether the second IoT device set by the user turns on an active detection mechanism;
- processing unit 1120 is further configured to send a request message to the second IoT device, where the request message is used to request the second IoT device to Information about connected devices;
- relevant information of a second IoT device is received, and relevant information of the second IoT device and user setting information are added to a device heartbeat database.
- the transceiver unit 1110 is used to send relevant information of the first IoT device to the IoT platform, where the relevant information includes one or more of the following: device information of the first IoT device, region information of the first IoT device, and network information of the first IoT device;
- the communication device provided in the present application can determine a heartbeat cycle suitable for the first Internet of Things device in this scenario by sending relevant information of the first Internet of Things device to the Internet of Things platform.
- the first Internet of Things device sends heartbeat data to the Internet of Things platform based on the target heartbeat cycle.
- the Internet of Things platform does not receive the first heartbeat data sent by the first Internet of Things device within the target heartbeat cycle, it sends second heartbeat data to the first Internet of Things device, thereby avoiding waste of air interface resources and reducing device power consumption.
- the transceiver unit 1110 is also used to receive the second heartbeat data sent by the Internet of Things platform when the first Internet of Things device starts the active detection mechanism.
- the transceiver unit 1110 is further configured to receive request information sent by the IoT platform, where the request information is used to request relevant information of the second IoT device, where the relevant information of the second IoT device includes one or more of the following: device information of the second IoT device, regional information of the second IoT device, and network information of the second IoT device;
- the transceiver unit 1110 is also used to send relevant information of the second Internet of Things device to the Internet of Things platform based on the request information.
- the communication device 1100 may also include a storage unit, and the transceiver unit 1110 may be a transceiver, an input/output interface, or an interface circuit.
- the storage unit is used to store instructions executed by the transceiver unit 1110 and the processing unit 1120.
- the transceiver unit 1110, the processing unit 1120, and the storage unit are coupled to each other, the storage unit stores instructions, the processing unit 1120 is used to execute the instructions stored in the storage unit, and the transceiver unit 1110 is used to perform specific signal transmission and reception under the drive of the processing unit 1120.
- the transceiver unit 1110 may be a transceiver, an input/output interface or an interface circuit.
- the storage unit may be a memory.
- the processing unit 1120 may be implemented by a processor.
- FIG. 12 shows a schematic block diagram of another example of a communication device 1200 provided in an embodiment of the present application.
- the communication device 1200 may include a processor 1210, a memory 1220, a transceiver 1230 and a bus system 1240.
- the various components of the communication device 1200 are coupled together via a bus system 1240, wherein the bus system 1240 may include a power bus, a control bus and a status signal bus in addition to a data bus.
- various buses are labeled as bus systems 1240 in FIG. 12 .
- FIG. 12 is only schematically drawn.
- the communication device 1100 shown in FIG. 11 or the communication device 1200 shown in FIG. 12 can implement the steps performed by the IoT device and the IoT platform in each embodiment of the aforementioned method 300 to method 800. Similar descriptions can refer to the descriptions in the aforementioned corresponding methods. To avoid repetition, they will not be repeated here.
- the communication device 1100 shown in FIG. 11 or the communication device 1200 shown in FIG. 12 may be an IoT device or an IoT platform.
- the chip system includes at least one processor 1301 and at least one interface circuit 1302.
- the processor 1301 and the interface circuit 1302 can be interconnected via lines.
- the interface circuit 1302 can be used to receive signals from other devices.
- the interface circuit 1302 can be used to send signals to other devices (such as processor 1301).
- the interface circuit 1302 can read instructions stored in the memory and send the instructions to the processor 1301.
- the Internet of Things device or Internet of Things platform can execute the various steps executed by any Internet of Things device or Internet of Things platform in the above embodiments.
- the chip system can also include other discrete devices, and the present application This embodiment does not specifically limit this.
- each unit in the above device can be fully or partially integrated into one physical entity, or they can be physically separated.
- the units in the device can all be implemented in the form of software calling through processing elements; they can also be all implemented in the form of hardware; some units can also be implemented in the form of software calling through processing elements, and some units can be implemented in the form of hardware.
- each unit can be a separately established processing element, or it can be integrated in a certain chip of the device.
- it can also be stored in the memory in the form of a program, and called and executed by a certain processing element of the device.
- the processing element here can also be called a processor, which can be an integrated circuit with signal processing capabilities.
- each step of the above method or each unit above can be implemented by an integrated logic circuit of hardware in the processor element or in the form of software calling through a processing element.
- the unit in any of the above devices may be one or more integrated circuits configured to implement the above method, such as one or more application specific integrated circuits (ASIC), or one or more digital signal processors (DSP), or one or more field programmable gate arrays (FPGA), or a combination of at least two of these integrated circuit forms.
- ASIC application specific integrated circuits
- DSP digital signal processors
- FPGA field programmable gate arrays
- the processing element can be a general-purpose processor, such as a central processing unit (CPU) or other processor that can call a program.
- CPU central processing unit
- these units can be integrated together and implemented in the form of a system-on-a-chip (SOC).
- the present application also provides a device, which is included in an IoT device or an IoT platform, and has the function of implementing the behavior of the IoT device or IoT platform in any of the above embodiments.
- the function can be implemented by hardware, or by hardware executing corresponding software.
- the hardware or software includes at least one module or unit corresponding to the above function.
- the present application also provides an Internet of Things device or an Internet of Things platform, which includes the apparatus provided in the above-mentioned embodiment of the present application.
- the embodiment of the present application also provides a computer-readable storage medium for storing computer program code, the computer program including instructions for executing the steps of the IoT device or IoT platform executing the display interface in any of the embodiments provided in the above embodiments of the present application.
- the readable medium can be a read-only memory (ROM) or a random access memory (RAM), which is not limited in the embodiment of the present application.
- the present application also provides a computer program product, which includes instructions.
- an Internet of Things device or an Internet of Things platform executes the steps of Internet of Things device heartbeat detection in any of the above embodiments.
- the embodiment of the present application further provides a chip, which includes: a processing unit and a communication unit, the processing unit, for example, may be a processor, and the communication unit, for example, may be an input/output interface, a pin or a circuit, etc.
- the processing unit may execute computer instructions to enable an IoT device or an IoT platform to execute any IoT device heartbeat detection method provided in the embodiment of the present application.
- the computer instructions are stored in a storage unit.
- the storage unit is a storage unit within the chip, such as a register, a cache, etc.
- the storage unit may also be a storage unit within the terminal that is located outside the chip, such as a ROM or other types of static storage devices that can store static information and instructions, random RAM, etc.
- the processor mentioned in any of the above may be a CPU, a microprocessor, an ASIC, or one or more integrated circuits for controlling the execution of the program of the above-mentioned electronic device projection screen display method.
- the processing unit and the storage unit may be decoupled and respectively arranged on different physical devices, and connected by wired or wireless means to implement the respective functions of the processing unit and the storage unit, so as to support the system chip to implement the various functions in the above-mentioned embodiments.
- the processing unit and the memory may also be coupled on the same device.
- the Internet of Things device or Internet of Things platform, apparatus, computer-readable storage medium, computer program product or chip provided in this embodiment is used to execute the corresponding method provided above. Therefore, the beneficial effects that can be achieved can refer to the beneficial effects in the corresponding method provided above, and will not be repeated here.
- An embodiment of the present application also provides a graphical user interface on an electronic device, the electronic device having a display screen, a camera, a memory, and one or more processors, the one or more processors being used to execute one or more computer programs stored in the memory, the graphical user interface including a graphical user interface displayed when the electronic device executes steps executed by an IoT device or IoT platform in any of the above embodiments.
- the electronic devices mentioned above include hardware structures for performing the functions described above in order to achieve the functions described above. And/or software modules.
- the embodiments of the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of the embodiments of the present application.
- the embodiment of the present application can divide the functional modules of the above-mentioned electronic device etc. according to the above-mentioned method example.
- each functional module can be divided corresponding to each function, or two or more functions can be integrated into one processing module.
- the above-mentioned integrated module can be implemented in the form of hardware or in the form of software functional modules. It should be noted that the division of modules in the embodiment of the present application is schematic and is only a logical function division. There may be other division methods in actual implementation.
- Each functional unit in each embodiment of the present application can be integrated into a processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
- the above integrated unit can be implemented in the form of hardware or in the form of software functional units.
- the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium.
- the technical solution of the embodiment of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) or a processor to perform all or part of the steps of the method described in each embodiment of the present application.
- the aforementioned storage medium includes: various media that can store program codes, such as flash memory, mobile hard disk, read-only memory, random access memory, disk or optical disk.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Environmental & Geological Engineering (AREA)
- Telephonic Communication Services (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请提供了一种物联网设备心跳检测的方法、系统以及通信装置,该方法应用于物联网平台,该物联网平台与物联网设备通信连接,该方法包括:当物联网平台在最后一次接收到心跳数据后的预设时间长度内未接收到第一物联网设备发送的第一心跳数据时,向第一物联网设备发送第二心跳数据;根据第二心跳数据发送结果,确定第一物联网设备为在线状态或者离线状态,第二心跳数据发送成功时,第一物联网设备为在线状态,第二心跳数据发送失败时,第一物联网设备为离线状态。本申请提供的方法可以在第一物联网设备丢包的情况下,第一时间确定第一物联网设备的在离线状态,从而提高了物联网设备在线状态检测的准确率。
Description
本申请要求于2022年11月04日提交国家知识产权局、申请号为202211378432.7、申请名称为“一种物联网设备心跳检测的方法、系统以及通信装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请涉及物联网技术领域,更为具体的,涉及一种物联网设备心跳检测的方法、系统以及通信装置。
近几年,随着物联网技术的不断普及,物联网设备,例如智能台灯,智能插座等,已经走进了千家万户。通过终端设备、物联网平台以及物联网设备三者之间的交互可以方便的实现物联网设备的远程控制、数据上报、设备相关数据下发等功能。
通常情况下,物联网设备在一定的心跳周期下向物联网平台发送心跳数据,从而和物联网平台建立长连接。物联网平台根据物联网设备发送的心跳数据,更新物联网设备的在线状态或者离线状态,用户可以通过终端设备获取物联网设备在线状态或者离线状态的信息。
但是,当物联网平台与物联网设备断开连接时,物联网平台更新物联网设备的在线状态或者离线状态并不够准确。
发明内容
本申请提供了一种物联网设备心跳检测的方法、系统以及通信装置,当物联网平台与物联网设备断开连接时,物联网平台发起主动检测,从而解决了不能准确判断物联网设备状态的问题,提高了物联网设备在线状态检测的准确率。
第一方面,本申请提供了一种物联网设备心跳检测的方法,该方法应用于物联网平台,该物联网平台与第一物联网设备通信连接,该方法包括:当物联网平台在最后一次接收到心跳数据后的预设时间长度内未接收到第一物联网设发送的第一心跳数据时,向第一物联网设备发送第二心跳数据;根据第二心跳数据发送结果,确定第一物联网设备为在线状态还是离线状态,当第二心跳数据发送成功时,第一物联网设备为在线状态,当第二心跳数据发送失败时,表示第一物联网为离线状态。
第一方面提供的方法,当物联网设备在心跳周期内未接收到第一物联网设备发送的第一心跳周期时,不用像现有技术中需要等待超时周期(三个心跳周期)后才能确定第一物联网设备是在线状态还是离线状态,而是主动给第一物联网设备主动发送第二心跳数据,当该第二心跳数据可以发送成功时,表示第一物联网设备在线,当该第二心跳数据发送失败时,表示第二物联网设备处于离线状态,可见,通过该种方式可以在第一物联网设备丢包的情况下,第一时间确定第一物联网设备的在离线状态,从而提高了物联网设备在线状态检测的准确率。
应理解,预设时间长度可以为一个心跳周期,该心跳周期可以是指物联网设备从运营商获取的建议值或者在此基础上进行实验,然后依据实验值设定的,在该种情况下,同种型号的物联网设备的心跳周期相同。当然,该心跳周期也可以是目标心跳周期,该目标心跳周期是根据物联网设备所处的环境确定,本申请实施例对预设时间长度不做限定。
还应理解,该第一物联网设备可以为物联网中具有传感器检测功能的设备或智能功能的接入设备,例如可以是智能开关、智能插座、智能电表、智能水表、智能电灯,大到智能电视机、智能饮水机、智能空调、智能地暖、智能投影机、智能洗衣机或智能电饭煲等。
在第一方面一种可能的实现方式中,该方法还包括:获取第一物联网设备的相关信息,该相
关信息包括以下一项或者多项:第一物联网设备的设备信息、第一物联网设备所处的地域信息和第一物联网设备网络信息。根据第一物联网设备的相关信息确定第一物联网设备的目标心跳周期,并向第一物联网设备发送目标心跳周期,上述预设时间段为目标心跳周期。该种实现方式中,根据第一物联网设备的相关信息可以确定适合第一物联网设备在该种场景下的心跳周期,然后将该的目标心跳周期发送至第一物联网设备可以使得第一物联网设备基于该的目标心跳周期向物联网平台发送心跳数据,当物联网平台在目标心跳周期内未接收到第一物联网设备发的第一心跳数据时,向第一物联网设备发送第二心跳数据,避免了空口资源的浪费,降低了设备功耗。
在一种方面一种可能的实现方式中,在向第一物联网设备发送第二心跳数据之前,该方法还包括根据第一物联网设备的相关信息确定第一物联网设备开启心跳主动检测机制。该种实现方式中,物联网平台可以基于第一物联网设备的相关信息确定第一物联网设备是否处于弱网络,当第一物联网设备处于弱网络时则表示该设备出现丢包的可能性较大,因此需要开启心跳主动检测机制,当第一物联网设备处于强网络时,则该设备可以不需要开启心跳主动检测机制,因为处于强网络时设备丢包的可能性较小。
在一种方面一种可能的实现方式中,物联网平台存储有设备心跳数据库,根据第一物联网设备的相关信息确定第一物联网设备的目标心跳周期,包括:根据第一物联网设备的相关信息,在设备心跳数据库中查询第一物联网设备的目标心跳周期。
应理解的,该设备心跳数据库中包含有海量的设备画像,当物联网平台接收到第一物联网设备的相关信息后,可以在设备心跳数据库中查找出该设备在目前场景下的目标心跳周期。
在一种方面一种可能的实现方式中,根据第一物联网设备的相关信息确定第一物联网设备开启心跳主动检测机制,包括:根据第一物联网设备的相关信息,在设备心跳数据库中查询第一物联网设备开启心跳主动检测机制。
同理,设备心跳数据库中存储的海量信息中包括该设备在目前场景下是否需要开启心跳主动检测机制。
需要说明的是,设备心跳数据库中的目标心跳周期和第一物联网设备是否开启心跳主动检测机制是用户可以自主设置的。换句话说,第一物联网可以基于用户个性化设置的目标心跳周期与物联网平台通信连接,第一物联网设备也可以基于用户个性化设置确定是否需要开启心跳主动检测机制。
在一种方面一种可能的实现方式中,该方法还包括:获取用户设置信息,用户设置信息包括:用户设置的第二物联网设备心跳周期,和/或,用户设置的第二物联网设备是否开启主动检测机制;向第二物联网设备发送请求信息,请求信息用于请求第二物联网设备的相关信息;接收第二物联网设备的相关信息,并将第二物联网设备的相关信息和用户设置信息添加至设备心跳数据库。通过该种实现方式,可以扩大设备心跳数据库,收集更多不同场景下设备的相关信息,以及在该场景下用户设置的心跳周期和是否开启心跳主动检测机制。
示例性的,用户可以在终端设备上输入用户设置信息,然后终端设备将用户设置信息发送给物联网平台,最终物联网平台基于用户设置信息更新设备心跳数据库。
第二方面,本申请提供了一种物联网设备心跳检测的方法,该方法应用于第一物联网设备,第一物联网设备与物联网平台通信连接,该方法包括:向物联网平台发送第一物联网设备的相关信息,相关信息包括以下一项或者多项:第一物联网设备的设备信息、第一物联网设备所处的地域信息、第一物联网设备的网络信息;接收物联网平台发送的目标心跳周期,目标心跳周期是根据第一物联网设备的相关信息确定的;根据目标心跳周期向物联网平台发送第一心跳数据;接收物联网平台发送的第二心跳数据,第二心跳数据是物联网平台在目标周期内未接收到第一心跳数据时发送的。
第二方面提供的方法,通过向物联网平台发送第一物联网设备的相关信息可以确定适合第一物联网设备在该种场景下的心跳周期,第一物联网设备基于的目标心跳周期向物联网平台发送心跳数据,当物联网平台在目标心跳周期内未接收到第一物联网设备发的第一心跳数据时,向第一物联网设备发送第二心跳数据,避免了空口资源的浪费,降低了设备功耗。
在第二方面一种可能的实现方法中,接收物联网平台发送主动发送的第二心跳数据,包括:
当第一物联网设备开启主动检测机制时,接收物联网平台发送主动发送的第二心跳数据。该种实现方式中,当第一物联网设备开启主动检测机制时表示该第一物联网设备处于弱网络,则表示该设备出现丢包的可能性较大,因此需要开启心跳主动检测机制。当第一物联网设备开启主动检测机制时,才会接收物联网平台发送主动发送的第二心跳数据。
在第二方面一种可能的实现方法中,接收物联网平台发送的请求信息,请求信息用于请求第二物联网设备的相关信息,第二物联网设备的相关信息包括以下一项或者多项:第二物联网设备的设备信息、第二物联网设备所处的地域信息、第二物联网设备网络信息;基于请求信息,向物联网平台发送第二物联网设备的相关信息。通过该种实现方式,可以扩大设备心跳数据库,收集更多不同场景下设备的相关信息,以及在该场景下用户设置的心跳周期和是否开启心跳主动检测机制。
在第二方面一种可能的实现方法中,所述目标心跳周期是用户设置的。
第三方面,提供了一种基于物联网设备心跳检测的系统,该系统包括物联网平台和物联网设备,该物联网平台用于执行以上第一方面或者第一方面的任意一方面可能的实现方式中的方法,该物联网设备用于执行以上第二方面或者第二方面的任意一方面可能的实现方式中的方法。
第四方面,提供了一种通信装置,该通信装置包括用于执行以上第一方面或者第一方面的任意一方面可能的实现方式中的各个步骤的单元,或者以上第二方面或者第二方面的任意一方面可能的实现方式中的各个步骤的单元。
第五方面,提供了一种通信装置,该通信装置包括至少一个处理器和存储器,该处理器和存储器耦合,该存储器存储有程序指令,当该存储器存储的程序指令被该处理器执行时执行以上第一方面或者第一方面的任意一方面可能的实现方式中的方法,或者以上第二方面或者第二方面的任意一方面可能的实现方式中的方法。
第六方面,提供了一种通信装置,该通信装置包括至少一个处理器和接口电路,该至少一个处理器用于执行以上第一方面或者第一方面的任意一方面可能的实现方式中的方法,或者以上第二方面或者第二方面的任意一方面可能的实现方式中的方法。
第七方面,提供了一种物联网平台,该物联网平台包括上述第四方面提供的通信装置,或者,该终端设备包括上述第五方面提供的通信装置,或者,该终端设备包括上述第六方面提供的通信装置。
第八方面,提供了一种物联网设备,该物联网设备包括上述第四方面提供的通信装置,或者,该物联网设备包括上述第五方面提供的通信装置,或者,该物联网设备包括上述第六方面提供的通信装置。
第九方面,提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序在被处理器执行时,用于执行以上第一方面或者第一方面的任意一方面可能的实现方式中的方法,或者以上第二方面或者第二方面的任意一方面可能的实现方式中的方法。
第十方面,提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当该计算机程序被执行时,用于执行以上第一方面或者第一方面的任意一方面可能的实现方式中的方法,或者以上第二方面或者第二方面的任意一方面可能的实现方式中的方法。
第十一方面,提供了一种芯片,该芯片包括:处理器,用于从存储器中调用并运行计算机程序,使得安装有该芯片的通信设备执行用于执行以上第一方面或者第一方面的任意一方面可能的实现方式中的方法,或者以上第二方面或者第二方面的任意一方面可能的实现方式中的方法。
第十二方面,提供了一种通信系统,该通信系统包括上述的物联网平台和物联网设备。
图1示出了相关技术中物联网设备、IOT云平台以及终端设备之间的交互示意图;
图2示出了本申请实施例提供的一种物联网设备心跳检测系统架构的示意图;
图3示出了本申请实施例提供的一例物联网设备心跳检测方法300的示意性流程图;
图4示出了本申请实施例提供的另一例物联网设备心跳检测方法400的示意性流程图;
图5示出了另一例物联网设备心跳检测的界面示意图;
图6示出了APP上智能插座在离线状态的界面示意图;
图7示出了本申请实施例提供的一例更新设备心跳数据库的方法700的示意性流程图;
图8示出了本申请实施例提供的另一例更新设备心跳数据库的方法800的示意性流程图;
图9示出了用户个性化设置智能插座参数的界面示意图;
图10示出了本申请实施例提供的一例物联网设备心跳检测系统的示意图;
图11示出了本申请实施例的提供的通信装置1100的示意性框图;
图12示出了本申请实施例的提供的另一例通信装置1200的示意性框图;
图13示出了芯片系统示意图。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本申请的限制。如在本申请的说明书和所附权利要求书中所使用的那样,单数表达形式“一个”、“一种”、“所述”、“上述”、“该”和“这一”旨在也包括例如“一个或多个”这种表达形式,除非其上下文中明确地有相反指示。还应当理解,在本申请实施例中,“一个或多个”是指一个或两个以上(包含两个);“和/或”,描述关联对象的关联关系,表示可以存在三种关系;例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A、B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。
在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
本申请实施例涉及的多个,是指大于或等于两个。需要说明的是,在本申请实施例的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
本申请实施例的技术方案可以应用于各种通信系统,例如:全球移动通信(global system for mobile communications,GSM)系统、码分多址(code division multiple access,CDMA)系统、宽带码分多址(wideband code division multiple access,WCDMA)系统、通用分组无线业务(general packet radio service,GPRS)、长期演进(long term evolution,LTE)系统、LTE频分双工(frequency division duplex,FDD)系统、LTE时分双工(time division duplex,TDD)、通用移动通信系统(universal mobile telecommunication system,UMTS)、全球互联微波接入(worldwide interoperability for microwave access,WiMAX)通信系统、未来的第五代(5th generation,5G)系统或新无线(new radio,NR)等。
本申请实施例中的终端设备可以指用户设备、接入终端、用户单元、用户站、移动站、移动台、远方站、远程终端、移动设备、用户终端、终端、无线通信设备、用户代理或用户装置。终端设备还可以是蜂窝电话、无绳电话、会话启动协议(session initiation protocol,SIP)电话、无线本地环路(wireless local loop,WLL)站、个人数字助理(personal digital assistant,PDA)、具有无线通信功能的手持设备、计算设备或连接到无线调制解调器的其它处理设备、车载设备、可穿戴设备,未来5G网络中的终端设备或者未来演进的公用陆地移动通信网络(public land mobile network,PLMN)中的终端设备等,本申请实施例对此并不限定。
在本申请实施例中,终端设备或网络设备包括硬件层、运行在硬件层之上的操作系统层,以及运行在操作系统层上的应用层。该硬件层包括中央处理器(central processing unit,CPU)、内存管理单元(memory management unit,MMU)和内存(也称为主存)等硬件。该操作系统可以是任意一种或多种通过进程(process)实现业务处理的计算机操作系统,例如,Linux操作系统、Unix操作系统、Android操作系统、iOS操作系统或windows操作系统等。该应用层包含浏览器、通讯录、文字处理软件、即时通信软件等应用。并且,本申请实施例并未对本申请实施例提供的
方法的执行主体的具体结构特别限定,只要能够通过运行记录有本申请实施例的提供的方法的代码的程序,以根据本申请实施例提供的方法进行通信即可,例如,本申请实施例提供的方法的执行主体可以是终端设备或网络设备,或者,是终端设备或网络设备中能够调用程序并执行程序的功能模块。
另外,本申请的各个方面或特征可以实现成方法、装置或使用标准编程和/或工程技术的制品。本申请中使用的术语“制品”涵盖可从任何计算机可读器件、载体或介质访问的计算机程序。例如,计算机可读介质可以包括,但不限于:磁存储器件(例如,硬盘、软盘或磁带等),光盘(例如,压缩盘(compact disc,CD)、数字通用盘(digital versatile disc,DVD)等),智能卡和闪存器件(例如,可擦写可编程只读存储器(erasable programmable read-only memory,EPROM)、卡、棒或钥匙驱动器等)。另外,本文描述的各种存储介质可代表用于存储信息的一个或多个设备和/或其它机器可读介质。术语“机器可读介质”可包括但不限于,无线信道和能够存储、包含和/或承载指令和/或数据的各种其它介质。
随着物联网(Internet of things,IOT)的兴起,大批智能终端设备投入使用。物联网将各种物联网设备与互联网结合起来而形成的一个巨大网络,实现在任何时间、任何地点,人、机、物的互联互通。
尤其,智能家电已经走进了千家万户。例如,智能台灯、智能插座等,通过应用程序(application,APP)、IOT云平台以及物联网设备三者之间的交互可以方便的实现物联网设备的远程控制、数据上报、设备相关数据下发等功能。
物联网设备由于自身硬件限制,与IOT云平台交互过程中常使用受限制的应用协议(Costrained Application Protocal,CoAP)/消息队列遥测传输(Message Queuing Telemetry Transport,MQTT)等物联网协议。通过建立传输控制协议(Transmission Control Protocol,TCP)长连接与IOT云平台建立通信的通路,并通过定时的心跳机制保证通信通路的活跃,支持IOT云平台与物联网设备的远程控制能力。
需要说明的是,基于移动蜂窝连接的物联网设备,需要保持与服务器之间的连接。但物联网设备与服务器保持连接会占用基站资源。由于基站资源的有限性且基站有规则,当移动物联网设备与服务器通信时,基站会分配给物联网设备网际互联协议(Internet Protocol,IP)地址,如果一定时间内没有数据传输,基站会取消对该物联网设备的IP地址分配,将资源释放给其它需求,这就需要物联网设备定时和服务器建立通信以保持通信通道畅通,这种定时命名为心跳周期。较短心跳周期能够保证业务层的消息随时可达,但会给服务器带来过大的负荷,增加功耗;如果心跳周期过长,会导致物联网设备与服务器之间连接失败,此时物联网设备必须重新发起连接,以从基站获取IP地址分配,因而会降低通信效率,也会导致服务器和物联网设备功耗过高。
心跳周期也可理解为物联网设备每隔一段固定时间向IOT云平台发送一个数据包,通知IOT云平台自己仍然在线,IOT云平台与物联网设备每隔一段时间进行一次交互,来判断这个链接是否有效,并传输一些可能有必要的数据。通常是在建立了一个TCP的socket连接后无法保证这个连接是否持续有效,这时候两边应用会通过定时发送心跳包来保证连接是有效的。因按照一定的时间间隔发送,类似于心跳,所以物联网设备发送的数据包叫做心跳包,发送两个心跳包之间的时间称为心跳周期。通过物联网设备和IOT云平台中间周期性的发送心跳包来判断物联网设备是否处于离线状态。
但是,当物联网设备未给IOT发送心跳包时,并不能说明该物联网设备处于离线状态,该物联网设备还需要有个超时周期,所以导致物联网设备在线状态的准确率始终都存在2%~3%的误差。
一般情况下,超时周期是指三个心跳周期的时间。换句话说,物联网设备在发送心跳包失败后,还会继续尝试发送三次心跳包,那么在IOT云平台端也需要等到三个心跳周期的时间,如果等待超过三个心跳周期的时间,那么最终才会判断该终端设备处于离线状态。因此,会导致终端设备在线状态的准确率始终存在误差。
下面结合图1对相关技术中对物联网设备心跳的检测方法进行具体说明。
图1示出了相关技术中物联网设备、IOT云平台以及终端设备之间的交互示意图。如图1所示的,物联网设备向IOT云平台在心跳周期内可以发送心跳包,以表示自身是否处于在线状态,
IOT云平台定时接受物联网设备发送的心跳包,并且可以根据心跳超时时间判断物理网设备是否处于离线状态,IOT云平台可以将物联网设备的在离线状态体现在和物联网设备绑定的终端设备的APP上,用户可以通过APP查询物联网设备的在离线状态。
需要说明的是,CoAP/MQTT协议中定义了物联网设备到IOT云平台的心跳信令,物联网设备可以根据心跳周期定时保活。
还需要说明的是,在IOT云平台判断物联网设备是否处于在线状态时,现有的心跳周期一般是从运营商获取建议值,或者在此基础上进行实验,然后依据实验值设定。但是蜂窝网络中的基站规则会随着时间、位置、运营商设备升级改造、业务进化等因素影响心跳周期有可能有变化。因此IOT云平台在现有的心跳周期下,需要基于超时周期才能判断物联网设备的在离线状态,IOT云平台向APP反馈物联网设备在离线状态时会存在一定的误差,那么最终导致用户从APP上获取到的物联网设备的在离线状态不准确。
综上所述,当前IOT云平台基于物联网设备的在线的超时时间判断终端设备的在离线状态,当物联网设备向IOT云平台发送心跳包,产生丢包时,IOT云平台会继续等待三个心跳周期后刷新物联网设备的在离线状态,最终导致当前设备在线状态的准确率不够精确。因而需要一种能够快速检测出物联网是否在线的检测方案。
有鉴于此,本申请提供了一种物联网设备心跳检测方法,该方法中当物联网平台在最后一次接收到心跳数据后的预设时间长度内未接收到物联网设备发送的心跳数据时,向物联网设备主动发送心跳数据;根据心跳数据发送结果,确定物联网设备为在线状态或者离线状态,心跳数据发送成功时,物联网设备为在线状态,第二心跳数据发送失败时,物联网设备为离线状态。该方法中当物联网平台在该心跳周期内未接受到物联网设备心跳包时,物联网平台开启主动探测机制判断物联网设备是否在线,而不需要再等待超时时间后才能判断物联网设备的在离线状态。
下面在介绍本申请提供的物联网设备心跳检测方法之前,首先对该方法适用的系统架构以及应用场景进行说明。图2示出了本申请实施例提供的一种物联网设备心跳检测系统架构的示意图。
如图2所示的,该系统包括物联网平台、物联网设备以及终端设备,其中物联网平台包括设备网关、设备影子以及心跳数据大数据。
终端设备是指安装了业务应用的设备,也可称之为安装了客户端的设备。用户能够通过终端设备上安装的客户端访问物联网平台,或者通过业务服务器访问物联网平台,用户通过客户端可以查看与物联网平台通信连接的物联网设备,以及查看物联网设备上报的业务数据,还可以通过客户端给物联网设备下发控制命令等。
本发明实施例涉及的终端设备,可以是指向用户提供语音和/或数据连通性的设备,具有无线连接功能的手持式设备、或连接到无线调制解调器的其他处理设备。无线终端可以经无线接入网(Radio Access Network,RAN)与一个或多个核心网进行通信,无线终端可以是移动终端,如移动电话(或称为“蜂窝”电话)和具有移动终端的计算机,例如,可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,它们与无线接入网交换语言和/或数据。例如,个人通信业务(Personal Communication Service,PCS)电话、无绳电话、会话发起协议(SIP)话机、无线本地环路(Wireless Local Loop,WLL)站、个人数字助理(Personal Digital Assistant,PDA)等设备。无线终端也可以称为系统、订户单元(Subscriber Unit)、订户站(Subscriber Station),移动站(Mobile Station)、移动台(Mobile)、远程站(Remote Station)、接入点(Access Point)、远程终端(Remote Terminal)、接入终端(Access Terminal)、用户终端(User Terminal)、终端设备、用户代理(User Agent)、用户设备(User Device)、或用户装备(User Equipment),具体本申请不作限定。
物联网设备是指物联网中具有传感器检测功能的设备或智能功能的接入设备,比如支持温度检测传感器的设备或家庭物联网设备(可以是多个设备组成的智能家居系统),例如可以是用户生活中用到的小到智能开关、智能电表、智能水表、智能电灯,大到智能电视机、智能饮水机、智能空调、智能地暖、智能投影机、智能洗衣机或智能电饭煲等。
物联网平台是指连接物联网设备,支持物联网设备上报业务数据,并向用户提供业务数据,或者接收用户下发给物联网设备的控制命令。物联网平台还与网络应用或者终端设备内置的业务应用通信连接。例如智能家居系统场景中,智能家居系统中的设备A想要与智能家居系统中的设
备B交互,则需要通过物联网平台转发实现。
可选的,如图2所示的,本申请提供的物联网心跳检测系统中,该物联网设备和物联网平台建立连接后,物联网设备可以将自身相关信息,例如:物联网设备的设备信息、物联网设备所处的地域信息以及物联网设备的网络信息发送至物联网平台,然后物联网平台根据上述信息中的至少一个确定物联网设备的心跳周期以及确定是否开启心跳主动检测机制。
物联网平台上的设备网关可以接收物联网设备发送的物联网的相关信息,然后将该相关协议解析出来发送给设备影子,设备影子可以从设备心跳数据库中查询在当前场景下的心跳周期以及物联网平台是否开启心跳主动检测机制。
因此本申请提供的系统可以通过IOT根据物联网设备的相关信息确定物联网设备的心跳周期以及是否开启心跳主动探测机制并保存,当IOT在该心跳周期内未接受到终端设备心跳包时,IOT开启主动探测机制判断终端设备是否在线,而不需要再等待超时时间后才能判断终端设备的在离线状态。
下面将结合附图详细说明本申请实施例提供的物联网心跳检测方法。
图3是从设备交互的角度示出本申请实施例提供的物联网设备心跳检测方法300的示意性流程图。如图3所示,图3中示出的方法300可以包括步骤S310至步骤S370。下面结合图3详细说明方法300中的各个步骤。
应理解,在本申请实施例中,以物联网平台、物联网设备以及终端设备作为执行方法300的执行主体为例,对方法300进行说明。作为示例而非限定,执行方法300的执行主体也可以是应用于物联网平台、物联网设备以及终端设备中的芯片。
S310、第一物联网设备向物联网平台发送第一物联网设备的相关信息,该相关信息包括以下一项或者多项:第一物联网设备的设备信息、第一物联网设备所处的地域信息或者第一物联网设备的网络信息。
需要说明的是,第一物联网设备是指与物联网平台通信连接的众多物联网设备中的任意一个。
由于现有的心跳周期一般是从运营商获取建议值,或者在此基础上进行实验,然后依据实验值设定。但是蜂窝网络中的基站规则会随着时间、位置、运营商设备升级改造、业务进化等因素影响有可能使得心跳周期有所变化,因此IOT云平台只能在现有的心跳周期下,基于超时周期才能判断终端设备的在离线状态,则最终会导致终端设备在线状态的准确率存在误差。
因此,在本申请实施例中,第一物联网设备可以根据自身的相关信息获取目标心跳周期,基于该目标心跳周期和物联网平台保持心跳,物联网平台则可以基于该目标心跳周期快速确定第一物联网设备的在离线状态。
例如,当第一物联网设备为智能冰箱时,出厂设定的这一批型号的智能冰箱的心跳周期为30s,但是,当这一批智能冰箱使用的场景不同时,心跳周期并不都保持在30S。假设,在某地,该智能冰箱由于网络环境的影响,心跳周期为40s。那么物联网平台在周期为30s时未接收到智能冰箱发送的心跳数据时,物联网平台会主动发送心跳数据进行检测。但是,当前情况下,智能冰箱是以40s为周期发送的心跳数据,因此最终也会导致智能冰箱的在离线状态判断不准确。
那么,为了获取第一物理网设备的目标心跳周期,在物联网设备连接物联网平台时,可以将该第一物联网设备的相关信息发送至物联网平台,利用物联网平台确定目标心跳周期。
该第一物联网设备的相关信息包括:第一物联网设备的设备信息,比如:设备信息可以包括设备类型以及充电类型等,例如智能台灯、智能冰箱或者智能插座的充电类型等。当然该物联网设备还可以是其他具有传感器检测功能的设备或智能功能的接入设备,例如,智能音响的充电类型等,本申请实施例对此不做限定。该充电类型可以为插电的、或者安装锂电池的。
第一物联网设备所处的地域信息是指:该物联网设备使用的地理位置,例如具体的某座城市、该城市中具体的某个街道或者该街道中某个具体的小区等。本申请实施例对物理网设备所处的地域信息的范围不做具体限制。
第一物联网设备的网络信息是指:该物联网设备连接的运营商的信息,例如移动网络、联通网络或者电信网络等,或者该网络信息还可以是除上述三大营运商之外的其他运营商的信息。
第一物联网设备可以将上述至少一个物联网设备的相关信息发送至物联网平台,利用物联网
平台获取的目标心跳周期。
S320、物联网平台基于第一物联网设备的相关信息确定第一物联网设备的目标心跳周期。
在本申请实施中,在物联网平台获取到第一物联网设备的相关信息之后,利用第一物联网设备的相关信息确定当前物联网设备的目标心跳周期。
当物联网平台获取到当前物联网设备的目标心跳周期后,可以基于目标心跳周期确定第一物联网设备发送心跳数据的时间。当第一物联网设备发生丢包现象时,物联网平台可以快速精准确定第一物联网设备为在线状态或者离线状态。
在一些实施例中,物联网平台可以基于第一物联网设备的相关信息在设备心跳数据库中查找目标心跳周期,并将目标心跳周期返回给第一物联网设备侧。
需要说明的是,该设备心跳数据库具有海量数据管理能力,设备心跳数据库包括了物联网设备的设备信息不同的情况下、物联网设备所处的地域信息不同的情况下或者物联网设备的网络信息不同的情况下的目标心跳检测周期。
例如:设备心跳数据库中包括:物理网设备的设备信息为插电型的智能台灯时的目标心跳周期为10s;或者,智能台灯的网络信息为电信网络时的目标心跳周期为15s;或者智能台灯所处的地域信息为南京时的目标心跳周期为20s。
又例如:设备心跳数据库中包括:物理网设备的设备信息为插电型的智能台灯、物联网设备所连的网络为电信网络、物联网设备所处的地域为西安时,该物联网设备的心跳周期为1min。
该设备心跳数据库中还可以包括:物理网设备的设备信息为锂电型的智能台灯、物联网设备所连的网络为移动网络、物联网设备所处的地域为南京时,该物联网设备的心跳周期为2min。
那么,当物联网平台获取到物联网设备的相关信息之后在设备心跳数据库中进行比对,从而查找出目标心跳周期。
示例性的,当物联网平台获取到的第一物联网设备的相关信息是第二种情况时,则表示该物联网设备的目标心跳周期为2min。
应理解,该目标心跳周期是当前设备心跳数据库中查找出的结果,由于该心跳数据库中的结果为动态变化的,所以该目标心跳周期也是动态变化的,换句话说,在不同时刻查找时,目标心跳周期的结果是不一样的。
可见,在上述示例性中,设备心跳数据库可以基于第一物联网设备的设备信息、或者第一物联网设备所处的地域信息、又或者第一物联网设备的网络信息确定该物联网设备的目标心跳周期。也可以基于第一物联网设备的设备信息、第一物联网设备所处的地域信息、第一物联网设备的网络信息共同确定目标心跳周期。但是利用单一因素确定的目标心跳周期相比于多个因素共同确定的目标心跳周期来说可能不够精确,最终导致确定第一物联网设备为在线状态或者离线状态不够精确。
在一种可能的实现方式中,物联网平台上设备网关可以接受第一物联网设备发送的物联网设备的相关信息,示例性的,该第一物联网设备的相关信息可以通过CoAP协议发送。然后设备网关接受到CoAP协议后进行解析,从而获取到第一物联网的相关信息,当然第一物联网的相关信息还可以通过其他协议发送,本申请实施例对此不做限定。
当设备网关获取到第一物联网设备的相关信息后,可以调用设备影子,然后设备影子从设备心跳数据库中查询在当前场景下的目标心跳周期。
S330、物联网平台向第一物联网设备发送目标心跳周期。
S340、第一物联网设备根据目标心跳周期向物联网平台发送第一心跳数据。
在本申请实施例中,当物联网平台基于第一物联网设备的相关信息确定目标心跳周期后,物联网设备还需要将目标心跳周期返回给第一物联网设备,使得第一物联网设备可以基于该目标心跳周期发送心跳数据。
当第一物联网设备接收到物联网平台发送的目标心跳周期后,根据该目标心跳周期向物理网平台发送第一心跳数据。
S350、当物联网平台在目标心跳周期内未接收到第一心跳数据时,向第一物联网设备发送第二心跳数据。
应理解,在正常情况下,第一物联网设备会根据物联网平台发送的目标心跳周期定时的发送第一心跳数据保持TCP链路的活跃,则物联网平台可以在目标心跳周期内接受到该第一心跳数据。
但是,当数据链路中存在异常时导致目标周期内的心跳数据未准时到达物联网平台时,则物联网平台在目标心跳周期内未接收到心跳数据,物联网平台可以主动向第一物联网设备主发送第二心跳数据,探测连接的有效性,从而判断第一物联网设备的在离线状态。
可选的,作为一种可能的实现方式,在物联网平台向第一物联网设备发送第二心跳数据之前,物联网平台可以基于第一物联网设备的相关信息确定第一物联网设备是否开启了心跳主动检测机制,在第一物联网设备开启心跳主动检测机制的情况下,物联网平台再向第一物联网设备发送第二心跳数据。
具体的,当第一物联网设备将第一物联网设备的相关信息发送至物联网平台后,物联网平台基于第一物联网设备的相关信息在设备心跳数据库中查找物联网设备在不同的场景下是否开启心跳主动检测机制。
应理解,设备心跳数据库具有海量数据管理能力,设备心跳数据库除了包括了物联网设备的设备信息不同的情况下、物联网设备所处的地域信息不同的情况下或者物联网设备的网络信息不同的情况下的目标心跳检测周期外,还包括物联网设备在不同的场景下是否开启心跳主动检测机制。当物联网平台基于物联网设备的相关信息确定是否开启心跳检测机制后,可以将是否开启心跳检测机制进行保存,当物联网平台未在目标心跳周期内接收到物联网设备发送的第一心跳数据时,则确定是否开启心跳主动检测机制,在开启心跳主动检测机制的情况下,向第一物联网设备发送第二心跳数据,探测连接的有效性,从而判断第一物联网设备的在离线状态。
例如:设备心跳数据库中包括:物理网设备的设备信息为插电型的智能台灯、物联网设备所连的网络为电信网络、物联网设备所处的地域为西安时,该物联网设备的心跳周期为1min,并且需要开启心跳主动检测机制。
需要说明的是,物联网平台可以基于第一物联网设备的相关信息确定第一物联网设备是否处于弱网络,当第一物联网设备处于弱网络时则表示该设备出现丢包的可能性较大,因此需要开启心跳主动检测机制。当第一物联网设备处于强网络时,则该设备可以不开启心跳主动检测机制,因为处于强网络时设备丢包的可能性较小。因此,即使当物联网平台在目标心跳周期内未接收到第一物联网设备发送的第一心跳数据时,物联网平台也不需要发送第二心跳数据,因为物联网平台基于第一物联网设备的相关信息确定该设备丢包的可能性较小,在一段时间后可能会自行恢复连接。
S360、根据第二心跳数据发送结果,判断第一物联网设备为在线状态或者离线状态。
应理解,当物联网平台向第一物联网设备发送第二心跳数据发送成功时,则表示第一物联网设备继续保持在线,当物联网平台向第一物联网设备发送第二心跳数据发送失败时,则表示物联网设备离线。
需要说明的是,当物联网平台上连接多个物联网设备,并且多个物联网设备均需要开启心跳主动检测机制时,物联网平台可以通过算法的方式选取当前状态下需要发送心跳数据的物联网设备,从而降低了资源消耗。
在一种可能的实现方式中,当第一物联网设备和物理网平台之间由于网络的原因,第一物联网设备发送给物联网平台的心跳数据丢失,物联网平台上的设备网关微服务获取到第一物联网设备最后的心跳时间以及物联网设备的设备标识(Device ID)上报给物联网平台上的设备影子微服务。应理解,该Device ID是物联网平台给连接在物联网平台上的每个物联网设备的标识。
进一步的,设备影子微服务根据第一物联网设备的Device ID在设备心跳数据库中查询该物联网设备的连接画像,如果最后的心跳时间大于心跳超时时间,则查询该物联网设备是否开启心跳主动检测机制,如果查询到第一物联网设备开启心跳主动检测机制时,则设备网关微服务主动发起连接有效性的心跳检测信令给物联网设备。
当设备网关微服务向第一物联网设备发送心跳数据发送成功时,则表示第一物联网设备继续保持在线,当设备网关微服务向第一物联网设备发送心跳数据发送失败时,则表示物联网设备离线。
最后,设备网关微服务根据主动检测的结果更新物联网设备的在离线状态至设备影子微服务,如果物联网设备断连则释放连接资源,如果物联网设备在线则保持连接资源。
S370、物联网平台将第一物联网设备的在离线状态更新至终端设备。
最终物联网平台将物联网设备的真实状态展示给用户持有的终端设备的应用程序上,用户可以通过终端设备上的应用程序方便快捷的了解到物联网设备的在离线状态。
具体的,当物联网平台判断物联网设备为在线时,则将物联网设备的在线状态更新至终端设备。当物联网平台判断物联网设备为离线时,则将物联网设备的离线状态更新至终端设备,从而方便用户了解到物联网设备的在离线状态。
本申请提供的物联网心跳检测的方法,该方法中物联网平台可以基于物联网设备的相关信息,该相关信息包括以下一项或者多项:物联网设备的类型、物联网设备所处的地域信息或者物联网设备的网络信息,确定终端设备的目标心跳周期以及是否开启主动探测机制并保存,当物联网平台在该目标心跳周期内未接受到终端设备心跳数据时,物联网平台开启主动探测机制判断物联网设备是否在线,而不需要再等待超时时间后才能判断物联网设备的在离线状态,从而提高了物联网设备在离线状态的检测率。
需要说明的是,在方法300中,物联网平台是在目标心跳周期内未接收到第一物联网设备下发送第一心跳数据时,向第一物联网设备发送第二心跳数据,当然,物联网平台还可以在最后一次接收到心跳数据后的预设时间长度内未接收到第一物联网设备发送的第一心跳数据时,向第一物联网设备发送第二心跳数据;即,该预设时间长度可以是目标心跳周期也可以是其他的时间长度,例如该第一物联网设备的出厂心跳周期。对此,本申请实施例不做限定。
下面结合图4和图5以终端设备为智能手机、第一物联网设备为智能插座(型号为:博联智能插座mini-HL)、物联网平台为IOT云平台为例,对上述物联网设备心跳检测的方法进行举例说明。其中,图4示出了本申请实施例提供的另一例物联网设备心跳检测方法400的示意性流程图,图5示出了另一例物联网设备心跳检测的界面示意图。
如图4所示的,方法400包括S410-S491:
S410、智能手机和智能插座的网络同步。
用户可以通过智慧APP添加物联网设备,例如,通过SoftAP来查找智能插座。
Soft无线接入点(Access Point,AP)是一种通过无线网卡,使用专用软件在智能手机上实现AP功能的技术,它可以取代无线网络中的AP从而回降低无线组网的成本。
APP搜索到智能插座后,将当前的WiFi的服务集标识(Service Set Identifier,SSID)名称与密码通过网络传输给智能插座,以使得智能手机和智能插座的网络同步。
步骤S410可以参考图5中的(a)图-图5中的(d)图所示的界面,如图5中的(a)图所示的,用户在智能手机界面上点击智慧生活APP,智能手机接收到用户的点击操作后,打开智慧生活APP,用户点击智慧生活APP界面上的添加设备组件,响应于用户添加设备的点击操作,智能手机界面切换至如图5中的(b)图的界面,如图5中的(b)图所示的,智慧生活APP正在扫描附近的物联网设备,并且显示界面上提醒“请确保物联网设备已连接电源,并位于手机附近”,在智慧生活APP扫描附近的物联网设备时,可以基于无线网络的方式寻找物联网设备,也可以通过手动添加或者扫码添加的方式寻找物联网设备。
当APP搜索到待配网的智能插座后,智能手机界面切换至如图5中的(c)图的界面,如图5中的(c)图所示的,界面上显示智能插座图标以及智能插座名称为博联智能插座mini3-HL,用户可以点击界面上的添加组件,进行连接。当APP连接到待配网的智能插座后,需要给智能插座连接网络,智能手机界面切换至如图5中的(d)图的界面,如图5中的(d)图所示的,界面上显示网络设置、选择网络以及密码等选项,用户可以通过点击选择网络,将当前的WiFi的服务集标识SSID名称与密码通过网络传输给智能插座。
S420、智能插座向设备网关上报智能插座的相关信息,该相关信息包括以下一项或者多项:智能插座的设备信息、智能插座所处的地域信息以及智能插座的网络信息。
当智能插座联网成功后,首先需要将智能插座的相关信息上报至IOT云平台上的设备网关。
该相关信息包括以下一项或者多项:智能插座的设备信息、智能插座所处的地域信息以及智
能插座的网络信息。示例性的,在步骤S420中智能插座的相关信息可以为智能插座的设备信息和智能插座的网络信息。
步骤S420可以参考图5中的(e)图-图5中的(g)图所示的界面,如图5中的(e)图所示的,智能插座配网成功检查当前的网络信息,以及如图5中的(f)图所示的,智能插座检查当前的设备信息,并将设备信息和网络信息通过CoAP协议上报至IOT云平台上的设备网关微服务,通过设备网关微服务与IOT云平台保持长连接。如图5中的(g)图所示的,在智能手机界面上可以看到智能插座处于在线状态、并且可以通过APP定时以及倒计时。
应理解,在图5的示例中,智能手机通过智慧生活APP上连接的物联网设备为智能台灯,当然还可以在智慧生活APP中绑定其他的物联网设备。例如:如图5中的(g)图所示的,灭蚊器或者鱼灯等设备。
S430、设备网关将智能插座的相关信息上报至设备影子。
IOT云平台上的设备网关微服务解析CoAP协议,将智能插座的设备信息以及网络信息解析出来后,调用设备影子微服务。
S440、设备影子调用设备心跳数据库查询智能插座的目标心跳周期以及是否开启主动检测机制。
设备影子微服务在设备心跳数据库中查询适合该智能插座在当前场景下的目标心跳周期与是否开启心跳主动检测机制。
应理解,当前场景具体的指智能插座的设备信息和智能插座的网络信息,具体的查询方式可以参考步骤S320中的描述,在此不再赘述。
S450、设备影子将查询到的智能插座的目标心跳周期以及是否开启主动检测机制发送至设备网关。
S460、设备网关将目标心跳周期发送至智能插座。
将查询到的目标心跳周期返回至物联网设备上,智能插座与物联网平台保持长连接,并根据物联网平台返回的心跳周期定时的与设备网关保持消息通信。并且将查询到的心跳周期以及是否开启主动检测机制显示在智慧生活APP上供用户查询。
S470、智能插座基于目标心跳周期向设备网关发送第一心跳数据。
S480、当设备网关未在目标心跳周期内接收到心跳数据包时,设备网关查询智能插座最后一次发送心跳包的时间。
S490、心跳超时,设备影子在设备心跳数据库中查询是否开启心跳主动检测机制。
S491、当智能插座开启心跳主动检测机制时,设备网关主动向智能插座发送第二心跳数据,第二心跳数据包发送成功时,智能插座为在线状态,第二心跳数据发送不成功时,智能插座为离线状态。
用户可以通过APP查看智能平台侧主动检测是否开启以及设备心跳周期为多少。如图5中的(h)图所示的,用户在APP上点击智能平台侧主动检测组件后,图5中的(h)图所示的界面切换为图5中的(i)图所示的界面,在图5中的(i)图所示的界面上显示物联网设备已开启物联网设备侧主动检测机制以及智能插座的心跳周期为50s。
图6示出了APP上智能插座在离线状态的界面示意图,当智能插座向IOT云平台发送心跳数据包超时,则IOT云平台主动向智能插座发送心跳数据包对智能插座的在离线状态进行主动检测,当IOT云平台发送心跳数据包失败时,表示智能插座处于离线状态,如图6中的(a)图所示的,虚线所示的智能插座的开关图标未点亮,当IOT云平台发送心跳数据包成功时,表示智能插座处于在线状态,如图6中的(b)图所示的,虚线所示的智能插座的开关图标点亮,用户可以在APP上快速获取都智能插座的在离线状态。
综上所述,图4-图6具体介绍了智能插座将智能插座的相关信息上报至IOT云平台后,IOT云平台基于智能插座的相关信息确定当前场景下智能插座的目标心跳周期以及是否需要开启心跳主动检测机制,并且将目标心跳周期发送至智能插座,智能插座基于该目标心跳周期和IOT云平台保持心跳连接,当IOT云平台未在目标心跳周期内接收到智能插座发送的第一心跳数据,并且IOT云平台检测到智能插座需要开启心跳主动检测机制的情况下,主动向智能插座发送第二心跳
数据,当第二心跳数据发送成功时则表示智能插座处于在线状态,当第二心跳数据发送失败时则表示智能插座处于离线状态。该方法中,IOT云平台在未接收到心跳数据后主动发送心跳数据,从而可以快速获取智能插座的在离线状态,而不需要等待超时时间(3个心跳周期)后才判断智能插座的在离线状态,从而提高了智能插座在离线状态的判断的准确率。
在上述物联网设备心跳检测的方法中,本申请还可以对上述提及的设备心跳数据库进行更新,例如,根据用户自动设置物联网设备信息,实现设备心跳数据库中物联网设备信息的实时更新。
具体的,用户可以在终端设备上自主设置物联网设备的心跳周期以及是否开启心跳主动检测机制,物联网平台根据终端设备中设置的物联网设备的心跳周期以及是否开启心跳主动机制向物联网设备发送请求,该请求用于请求物联网设备的相关信息,该相关信息包括以下一项或者多项:物联网设备的设备信息、物联网设备所处的地域信息以及物联网设备网络信息,物联网设备基于物联网平台的请求,向物联网平台发送物联网设备的相关信息,然后物联网平台基于物联网设备的相关信息、物联网设备的心跳周期以及是否开启心跳主动检测机制更新物联网平台中物联网设备的画像。
下面将结合附图详细说明本申请实施例提供的更新设备心跳数据库的方法。
应理解,更新设备心跳数据库包括两种含义:第一种是指设备心跳数据库中不存在某个物联网设备的相关信息,那么基于以下方法可以扩充设备心跳数据库中的物联网设备的种类。第二种是指设置心跳数据库中本来存在某个物联网设备的相关信息,那么基于以下方法可以更新该物联网设备的相关信息。
图7是从设备交互的角度示出本申请实施例提供的更新设备心跳数据库的方法700的示意性流程图。如图7所示,图7中示出的方法700可以包括步骤S710至步骤S750。下面结合图7详细说明方法700中的各个步骤。
应理解,在本申请实施例中,以物联网平台、物联网设备以及终端设备作为执行方法700的执行主体为例,对方法700进行说明。作为示例而非限定,执行方法700的执行主体也可以是应用于物联网平台、物联网设备以及终端设备中的芯片。
S710、终端设备获取用户设置的第二物联网设备的心跳周期以及是否开启主动检测机制。
需要说明的是,第二物联网设备是指与物联网平台通信连接的众多物联网设备中的任意一个。第二物联网设备可以和第一物联网设备为相同的设备,也可以和第一物联网设备为不同的设备。
在本申请实施例中,用户可以在终端设备上根据自身需求或者第二物联网设备所处的环境设置物联网设备的心跳周期,以及是否开启主动检测机制。
例如,当第二物联网设备为智能扫地机器人时,用户想要确保智能扫地机器人是否一直处于清扫状态,用于可以设置更短的心跳周期,并且开启主动检测机制,从而可以基本保证用户在第一时间知道该智能扫地机器人的在离线状态。
例如,当第二物联网设备为安装锂电池的智能台灯,并且该智能台灯所处的地域以及所连接的网络状态良好时,用户为了降低智能台灯的功耗,可以适当的设置更长的心跳周期以及不需要开启心跳主动检测机制。
在一些实施例中,终端设备可以选择需要设置的物联网设备,并且终端设备还可以获取物联网平台上存储的物联网设备的状态数据。然后,终端设备在当前的状态数据中个性化的存储用户设置的物联网设备的心跳周期以及主动检测机制。
可选的,终端设备上安装的应用程序可以选择需要设置的物联网设备,并且通过终端设备上的应用程序,获取物联网平台上的设备影子中存储的物联网设备的状态数据。然后,终端设备上的应用程序根据在当前的状态数据中个性化的设置物联网设备的心跳周期以及主动检测机制。
S720、物联网平台基于终端设备上用户设置的信息,向第二物联网设备发送请求消息,该请求消息用于请求第二物联网设备的相关信息,该相关信息包括以下一项或者多项:第二物联网设备的设备信息、第二物联网设备所处的地域信息或者第二物联网设备的网络信息。
在一种可能的实现方式中,终端设备可以将用户设置的物联网的心跳周期以及是否开启心跳主动检测机制上传至物联网平台上的设备影子微服务中。
进一步的,设备影子微服务可以将第二物联网设备的心跳周期以及是否开启心跳主动检测机
制同步更新至设备心跳数据库中。
当物联网平台获取到终端设备上设置的物联网设备的心跳周期以及是否开启主动检测机制后,物联网平台需要获取第二该物联网设备的类型信息、第二物联网设备所处的地域信息或者第二物联网设备的网络信息,从而完善设备心跳数据库中该第二物联网设备的信息,因此物联网平台可以向第二物联网设备发送请求消息,该消息用于请求第二物联网设备将物联网的相关信息上报。
S730、第二物联网设备基于物联网平台的请求消息向物联网平台发送第二物联网设备的相关信息。
在第二物联网设备接收到物联网平台发送的请求消息之后,第二物联网设备将第二物联网设备的相关信息发送至物联网平台。
该相关信息包括以下一项或者多项:第二物联网设备的设备信息、第二物联网设备所处的地域信息或者第二物联网设备的网络信息。
S740、物联网平台根据第二物联网设备发送的相关信息以及第二物联网设备的心跳周期以及是否开启主动检测机制更新该物联网设备在设备心跳数据库中的信息。
最后,物联网平台基于接收的物第二联网设备发送的相关信息以及用户设置的存储在物联网平台上的物联网设备的心跳周期以及是否开启主动检测机制,更新设备心跳数据库中物联网的信息。
S750、当物联网平台中第二物联网设备的心跳周期发生改变时,物联网平台将更新后的心跳周期发送给第二物联网设备。
需要说明的是,第二物联网设备和第一物联网设备为相同的设备时,基于用户的设置信息,物联网平台中第二物联网设备的心跳周期发生改变,那么物联网平台可以将更新后的心跳周期发送给第二物联网设备,使得第二物联网设备基于用户设置的心跳周期和物联网平台通信连接。
在一些实施例中,当设备心跳数据库中的第二物联网设备的原始存储的心跳周期发生改变时,物联网平台中的设备影子微服务将物联网设备最新的心跳周期下发至物联网平台中的设备网关微服务中。
进一步的,设备网关微服务将该物联网设备最新的心跳周期通过CoAP协议发送至物联网设备中,物联网设备可以根据最新的心跳周期与物联网平台保持连接。
上述方法700中提供的更新设备心跳数据库的方法,可以基于用户的自主设置扩充设备心跳数据库中的物联网设备的相关信息,或者可以基于用户的自主设置更新物联网设备的心跳周期以及是否开启主动检测机制,从而可以实现物联网设备的个性化设置,并且通过该种方式可以收集更多物联网设备在不同场景下的心跳周期以及是否开启主动检测机制,那么当物联网平台从该设备心跳数据库中向物联网设备返回目标心跳周期时的数据更加准确,从而更进一步提升了物联网设备在离线状态检测的准确度。
下面结合图8和图9,以终端设备为智能手机、物联网设备为智能插座(型号为:博联智能插座mini-HL)、物联网平台为IOT云平台为例,对上述更新设备心跳数据库的方法进行举例说明。其中,图8示出了另一例更新设备心跳数据库的方法800的示意性流程图,图9示出了用户个性化设置智能插座参数的界面示意图。
如图8所示的,方法800包括S810-S891:
S810、智能手机向设备影子发送查询信息,该查询信息用于查询智能插座当前的状态。
用户通过智慧生活APP选择已经配网在线的智能插座设备后,智能手机向设备IOT云平台上的设备影子发送查询信息,该查询信息用于查询智能插座设备当前的状态。
设备影子基于智能手机发送的查询信息,向智能手机返回智能插座设备的状态数据。
S820、智能手机获取用户设置的心跳周期以及是否开启心跳主动检测机制。
用户在设备详情页个性化的设置智能插座设备的心跳周期以及主动检测机制。
如图9中的(a)图所示的,用户通过智慧生活APP选择已经配网在线的智能插座设备之后,智能手机界面从图9所示的(a)图所示的界面切换至图9所示的(b)图所示的界面,如图9所示的(b)图所示的界面为设备详情页,在设备详情页的右上角有个性化设置的设置按钮,用户通过点击个性化设置按钮后,智能手机界面从图9所示的(b)图所示的界面切换至图9所示的(c)
图所示的界面,如图9所示的(c)图所示的界面为设置界面,用户点击云侧主动检测按钮之后,智能手机界面从图9所示的(c)图所示的界面切换至图9所示的(d)图所示的界面,如图9所示的(d)图所示的界面为云侧主动检测的设置界面,在该界面上用户可以设置云侧主动检测状态以及设备的心跳周期。
示例性的,用户设置的云侧主动检测状态为开启,设置的设备心跳周期为120s。
S830、智能手机向设备影子发送用户设置的心跳周期以及是否开启心跳主动检测机制。
智能手机获取到用户设置的心跳周期以及是云侧是否开启心跳主动检测机制后,将该信息发送至IOT云平台的设备影子微服务上。
S840、设备网关向智能插座发送请求信息,该请求信息用于请求智能插座的相关信息。
当IOT云平台接收到用户设置的心跳周期以及云侧是否开启心跳主动检测机制后,需要获取智能插座的相关信息,因此IOT云平台上的设备网关向智能插座发送请求信息,该请求信息用于请求智能插座的相关信息。
S850、智能插座基于请求信息向设备网关发送智能插座的相关信息。
智能插座接收到设备网关发送的请求信息之后,将智能插座的设备信息、智能插座所处的地域信息或者智能插座的网络信息中的至少一种发送给设备网关。
S860、设备网关向设备影子发送智能插座的相关信息。
S870、设备影子将用户设备的心跳周期、是否开启心跳主动检测机制、智能插座的相关信息更新至设备心跳数据库。
IOT云平台基于接收的智能插座发送的相关信息以及用户设置的智能插座的心跳周期以及是否开启主动检测机制,更新设备心跳数据库中智能插座的信息。
S880、设备影子将用户设置的心跳周期发送至设备网关。
S890、设备网关将用户设置的心跳周期发送至智能插座。
S891、智能插座基于用户设置的心跳周期与设备网关保持心跳连接。
IOT云平台将用户设置的心跳周期发送给物联网设备,使得物联网设备可以基于用户设置的心跳周期与IOT云平台保持心跳连接。
综上所述,图8-图9具体介绍了智能插座可以基于用户的自主设置扩充设备心跳数据库中的智能插座的相关信息,或者可以基于用户的自主设置更新智能插座的心跳周期以及是否开启主动检测机制,从而可以实现智能插座的个性化设置,并且通过该种方式可以收集更多智能插座在不同场景下的心跳周期以及是否开启主动检测机制,那么智能插座从该设备心跳数据库中向物联网设备返回目标心跳周期时的数据更加准确,从而更进一步提升了物联网设备在离线状态检测的准确度。
应理解,上述只是为了帮助本领域技术人员更好地理解本申请实施例,而非要限制本申请实施例的范围。本领域技术人员根据所给出的上述示例,显然可以进行各种等价的修改或变化,例如,上述方法中某些步骤可以不是必须的,或者可以新加入某些步骤等。或者上述任意两种或者任意多种实施例的组合。这样的修改、变化或者组合后的方案也落入本申请实施例的范围内。
还应理解,本申请实施例中的方式、情况、类别以及实施例的划分仅是为了描述的方便,不应构成特别的限定,各种方式、类别、情况以及实施例中的特征在不矛盾的情况下可以相结合。
还应理解,在本申请的实施例中涉及的各种数字编号仅为描述方便进行的区分,并不用来限制本申请的实施例的范围。上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
还应理解,上文对本申请实施例的描述着重于强调各个实施例之间的不同之处,未提到的相同或相似之处可以互相参考,为了简洁,这里不再赘述。
上述结合图3-图9描述了本申请实施例提供的物联网设备心跳检测方法的实施例,下面描述本申请实施例提供的物联网设备心跳检测系统,图10示出了本申请实施例提供的一例物联网设备心跳检测系统的示意图,如图所示的物联网设备心跳检测系统包括:终端设备、物联网云平台、和智能设备(物联网设备)。
终端设备包括:应用程序APP(Application),通过物联网平台提供的接口与物联网平台进行交
互,下发控制指令或者接收平台转发的设备数据。示例性的,该应用程序APP(Application)可以是智慧生活APP运行在用户的终端设备上,通过用户界面(User Interface,UI)接收用户指令以及向用户呈现物联网设备在离线状态。
物联网平台包括:IOT Core Service(IOT核心服务)和IOT Analytics Service(IOT数据服务)。
其中,IOT核心服务包括:设备影子、规则引擎、设备注册表、设备认证、设备网关、消息代理等。
设备影子:每个设备有且只有一个设备影子,设备可以通过MQTT获取和设置设备影子来同步状态,用于存储设备上报状态、应用程序期望下发的配置,解耦应用于终端设备。一般用于网络不稳定、设备无法实时通信、一个设备在同一时间被反复请求等场景。在本申请实施例中,设备影子负责物联网设备本地状态数据在物联网平台的镜像,其中包括物联网设备的开关状态,在离线状态等。
规则引擎:是指用户可以在物联网平台上可以配置某些规则,在判断条件满足规则后,平台会执行相应的动作来满足用户需求,灵活构建场景联动、报警等定制化业务场景。
设备网关:支持MQTT、CoAP、HTTP(HyperText Transfer Protocol)、HTTP2等多协议接入。在本申请实施例中,负责与物联网设备保持长连接通道,承载物联网设备的心跳处理、设备连接的维护的工作等。
MQTT是一个基于客户端-服务器的消息发布/订阅传输协议,可保持长连接,实现多对多异步通信;CoAP:是一种客户端-服务器单对单的协议,具备轻量低功耗的特点。
消息代理包括:MQTT协议中的发布者(Publish)、代理(Broker)(服务器)、订阅者(Subscribe)。其中,消息的发布者和订阅者都是客户端,消息代理是服务器,消息发布者可以同时是订阅者。MQTT客户端可以发布信息、订阅信息、退订或删除信息、断开与服务器的连接;MQTT服务器可以接收客户端的网络连接、客户端发布的信息、客户端的订阅和退订请求、转发客户端订阅的消息。
IOT数据服务包括:物联网设备AIOps数据采集(设备上报规范)、物联网设备WiseData数据采集(设备上报规范)、设备行为画像、设备连接画像以及设备Profile规范。
设备连接画像:用于描述一个设备,在本申请提供的实施例中也叫设备心跳数据库,设备连接画像主要用于描述连接的设备的相关信息。例如智能插座的设备连接画像可以包括智能插座的设备信息、智能插座所处的地域信息以及智能插座的网络信息,以及存储物联网设备的心跳周期,是否开启心跳主动检测机制等。
设备Profile规范:由用户开发(编写),用于描述接入设备具备的能力和特性。用户通过定义Profile,在物联网平台上构建一款对应于设备的抽象模型,可以使平台理解该款设备支持的服务、属性、命令等信息(即设备能力)。
物联网设备包括:边缘计算、HiLink模组级设备接入规范、设备软件开发工具包(Software Development Kit,SDK)、祥云能力客户端SDK。
边缘计算:用于获取和分析信息的设备不能总是依赖于网络或应用程序,如果其中一个出现问题,整个系统就会失灵。为此人们为此类设备提供了一种不同的能力,即边缘计算功能,即在解决方案的边缘(也就是设备自身)分析处理的能力,边缘计算允许设备在脱机状态下执行一些操作和计算,而无需与网络连接。
HiLink模组级设备接入规范包括:无线短距局域网通讯如:BT/BLE、Wifi、ZigBee、eMTC、无线长距广域网通讯:NB-IOT、以及2G/3G/4G、LTE-V等,物联网设备通这些网络与物联网平台进行交互。
设备SDK包括:C SDK、JS SDK、和Mobile SDK。
客户端SDK:一般都是一些软件工程师为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件时的开发工具的集合,例如:C/C++、JAVA、DNKeeper、GRS等。
本实施例可以根据上述方法,对上述的终端设备、物联网平台以及物联网设备进行功能模块的划分。例如,可以对应各个功能,划分为各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块可以采用硬件的形式实现。需要说明的是,本实施例中对模
块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
需要说明的是,上述方法实施例涉及的各步骤的相关内容,均可以援引到对应功能模块的功能描述,此处不再赘述。
本申请实施例提供的物联网平台、物联网设备,用于执行上述方法实施例提供任一种物联网设备心跳检测的方法,因此可以达到与上述实现方法相同的效果。在采用集成的单元的情况下,物联网平台或者物联网设备可以包括处理模块、存储模块和通信模块。其中,处理模块可以用于对物联网平台或者物联网设备的动作进行控制管理。例如,可以用于支持物联网平台或者物联网设备执行处理单元执行的步骤。存储模块可以用于支持存储程序代码和数据等。通信模块,可以用于支持物联网平台或者物联网设备与其他设备的通信。
其中,处理模块可以是处理器或控制器。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,数字信号处理(digital signal processing,DSP)和微处理器的组合等等。存储模块可以是存储器。通信模块具体可以为射频电路、蓝牙芯片、Wi-Fi芯片等与其他电子设备交互的设备。
示例性地,图11示出了本申请实施例的提供的通信装置1100的示意性框图,该通信装置1100可以对应上述方法300至方法800中的各个实施例中描述的物联网平台、物联网设备,也可以是应用于物联网平台以及物联网设备的芯片或组件中,并且,该通信装置1100中的各模块或单元分别用于执行上述方法300至方法800中的各个实施例中描述的物联网平台以及物联网设备所执行的各动作或处理过程。
如图11所示,该通信装置1100包括收发单元1110和处理单元1120。收发单元1110用于在处理单元1120的驱动下执行具体的信号收发。
在一些实施例中:
收发单元1110:用于当物联网平台在最后一次接收到心跳数据后的预设时间长度内未接收到第一物联网设备发送的第一心跳数据时,向第一物联网设备发送第二心跳数据。
处理单元1120:用于根据第二心跳数据发送结果,确定第一物联网设备为在线状态或者离线状态,第二心跳数据发送成功时,第一物联网设备为在线状态,第二心跳数据发送失败时,第一物联网设备为离线状态。
本申请提供的通信装置,当物联网设备在心跳周期内未接收到第一物联网设备发送的第一心跳周期时,不用像现有技术中需要等待超时周期(三个心跳周期)后才能确定第一物联网设备是在线状态还是离线状态,而是主动给第一物联网设备主动发送第二心跳数据,当该第二心跳数据可以发送成功时,表示第一物联网设备在线,当该第二心跳数据发送失败时,表示第二物联网设备处于离线状态,可见,通过该种方式可以在第一物联网设备丢包的情况下,第一时间确定第一物联网设备的在离线状态,从而提高了物联网设备在线状态检测的准确率。
可选的,收发单元1110:还用于获取第一物联网设备的相关信息,相关信息包括以下一项或者多项:第一物联网设备的设备信息、第一物联网设备所处的地域信息、第一物联网设备网络信息;
可选的,处理单元1120:还用于根据第一物联网设备的相关信息确定第一物联网设备的目标心跳周期,并向第一物联网设备发送目标心跳周期,预设时间段为目标心跳周期。
可选的,处理单元1120:还用于根据第一物联网设备的相关信息确定第一物联网设备开启心跳主动检测机制。
可选的,处理单元1120:还用于根据第一物联网设备的相关信息,在设备心跳数据库中查询第一物联网设备的目标心跳周期。
可选的,处理单元1120:还用于根据第一物联网设备的相关信息,在设备心跳数据库中查询第一物联网设备开启心跳主动检测机制。
可选的,收发单元1110:还用于获取用户设置信息,用户设置信息包括:用户设置的第二物联网设备心跳周期,和/或,用户设置的第二物联网设备是否开启主动检测机制;
可选的,处理单元1120:还用于向第二物联网设备发送请求信息,请求信息用于请求第二物
联网设备的相关信息;
可选的,接收第二物联网设备的相关信息,并将第二物联网设备的相关信息和用户设置信息添加至设备心跳数据库。
在一些实施例中:
收发单元1110:用于向物联网平台发送第一物联网设备的相关信息,相关信息包括以下一项或者多项:第一物联网设备的设备信息、第一物联网设备所处的地域信息、第一物联网设备的网络信息;
接收第一物联网平台发送的目标心跳周期,目标心跳周期是根据第一物联网设备的相关信息确定的;
用于根据目标心跳周期向第一物联网平台发送第一心跳数据;
接收第一物联网平台发送的第二心跳数据,第二心跳数据是物联网平台在目标周期内未接收到第一心跳数据时发送的。
本申请提供的通信装置,通过向物联网平台发送第一物联网设备的相关信息可以确定适合第一物联网设备在该种场景下的心跳周期,第一物联网设备基于的目标心跳周期向物联网平台发送心跳数据,当物联网平台在目标心跳周期内未接收到第一物联网设备发的第一心跳数据时,向第一物联网设备发送第二心跳数据,避免了空口资源的浪费,降低了设备功耗。
可选的,收发单元1110:还用于当第一物联网设备开启主动检测机制时,接收物联网平台发送的第二心跳数据。
可选的,收发单元1110:还用于接收物联网平台发送的请求信息,请求信息用于请求第二物联网设备的相关信息,第二物联网设备的相关信息包括以下一项或者多项:第二物联网设备的设备信息、第二物联网设备所处的地域信息、第二物联网设备的网络信息;
可选的,收发单元1110:还用于基于请求信息,向物联网平台发送第二物联网设备的相关信息。
进一步的,该通信装置1100还可以包括存储单元,收发单元1110可以是收发器、输入/输出接口或接口电路。存储单元用于存储收发单元1110和处理单元1120执行的指令。收发单元1110、处理单元1120和存储单元相互耦合,存储单元存储指令,处理单元1120用于执行存储单元存储的指令,收发单元1110用于在处理单元1120的驱动下执行具体的信号收发。
应理解,通信装置1100中各单元执行上述相应步骤的具体过程请参照前文中结合方法300至方法800以及图3-图8中相关实施例的物联网设备以及物联网平台相关的描述,为了简洁,这里不加赘述。
应理解,收发单元1110可以是收发器、输入/输出接口或接口电路。存储单元可以是存储器。处理单元1120可由处理器实现。图12示出了本申请实施例的提供的另一例通信装置1200的示意性框图。如图12所示,通信装置1200可以包括处理器1210、存储器1220、收发器1230和总线系统1240。通信装置1200的各个组件通过总线系统1240耦合在一起,其中总线系统1240除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图12中将各种总线都标为总线系统1240。为便于表示,图12中仅是示意性画出。
图11所示的通信装置1100或图12所示的通信装置1200能够实现前述方法300至方法800的各个实施例中物联网设备以及物联网平台执行的步骤。类似的描述可以参考前述对应的方法中的描述。为避免重复,这里不再赘述。
还应理解,图11所示的通信装置1100或图12所示的通信装置1200可以为物联网设备也可以为物联网平台。
本申请实施例还提供一种芯片系统,如图13所示,该芯片系统包括至少一个处理器1301和至少一个接口电路1302。处理器1301和接口电路1302可通过线路互联。例如,接口电路1302可用于从其它装置接收信号。又例如,接口电路1302可用于向其它装置(例如处理器1301)发送信号。示例性的,接口电路1302可读取存储器中存储的指令,并将该指令发送给处理器1301。当所述指令被处理器1301执行时,可使得物联网设备或者物联网平台执行上述实施例中的任一物联网设备或者物联网平台执行的各个步骤。当然,该芯片系统还可以包含其他分立器件,本申请
实施例对此不作具体限定。
还应理解,以上装置中单元的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且装置中的单元可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分单元以软件通过处理元件调用的形式实现,部分单元以硬件的形式实现。例如,各个单元可以为单独设立的处理元件,也可以集成在装置的某一个芯片中实现,此外,也可以以程序的形式存储于存储器中,由装置的某一个处理元件调用并执行该单元的功能。这里该处理元件又可以称为处理器,可以是一种具有信号处理能力的集成电路。在实现过程中,上述方法的各步骤或以上各个单元可以通过处理器元件中的硬件的集成逻辑电路实现或者以软件通过处理元件调用的形式实现。在一个例子中,以上任一装置中的单元可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个专用集成电路(application specific integrated circuit,ASIC),或,一个或多个数字信号处理器(digital signal processor,DSP),或,一个或者多个现场可编程门阵列(field programmable gate array,FPGA),或这些集成电路形式中至少两种的组合。再如,当装置中的单元可以通过处理元件调度程序的形式实现时,该处理元件可以是通用处理器,例如中央处理器(central processing unit,CPU)或其它可以调用程序的处理器。再如,这些单元可以集成在一起,以片上系统(system-on-a-chip,SOC)的形式实现。
本申请实施例还提供一种装置,该装置包含在物联网设备或者物联网平台中,该装置具有实现上述任一实施例中物联网设备或者物联网平台行为的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括至少一个与上述功能相对应的模块或单元。
本申请还提供了一种物联网设备或者物联网平台,该物联网设备或者物联网平台包括上述本申请实施例提供的装置。
本申请实施例还提供了一种计算机可读存储介质,用于存储计算机程序代码,该计算机程序包括用于执行上述本申请实施例提供的任一实施例中物联网设备或者物联网平台执行显示界面的步骤的指令。该可读介质可以是只读存储器(read-only memory,ROM)或随机存取存储器(random access memory,RAM),本申请实施例对此不做限制。
本申请还提供了一种计算机程序产品,该计算机程序产品包括指令,当该指令被执行时,使得物联网设备或者物联网平台执行上述任一实施例中物联网设备心跳检测的步骤。
本申请实施例还提供了一种的芯片,该芯片包括:处理单元和通信单元,该处理单元,例如可以是处理器,该通信单元例如可以是输入/输出接口、管脚或电路等。该处理单元可执行计算机指令,以使物联网设备或者物联网平台行执行上述本申请实施例提供的任一种物联网设备心跳检测的方法。
可选地,该计算机指令被存储在存储单元中。
可选地,该存储单元为该芯片内的存储单元,如寄存器、缓存等,该存储单元还可以是该终端内的位于该芯片外部的存储单元,如ROM或可存储静态信息和指令的其他类型的静态存储设备,随机RAM等。其中,上述任一处提到的处理器,可以是一个CPU,微处理器,ASIC,或一个或多个用于控制上述的电子设投屏显示方法的程序执行的集成电路。该处理单元和该存储单元可以解耦,分别设置在不同的物理设备上,通过有线或者无线的方式连接来实现该处理单元和该存储单元的各自的功能,以支持该系统芯片实现上述实施例中的各种功能。或者,该处理单元和该存储器也可以耦合在同一个设备上。
其中,本实施例提供的物联网设备或者物联网平台、装置、计算机可读存储介质、计算机程序产品或芯片均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
本申请实施例还提供一种电子设备上的图形用户界面,电子设备具有显示屏、摄像头、存储器、以及一个或多个处理器,所述一个或多个处理器用于执行存储在所述存储器中的一个或多个计算机程序,所述图形用户界面包括所述电子设备执行如上述任一实施例中物联网设备或者物联网平台执行的步骤时显示的图形用户界面。
可以理解的是,上述电子设备等为了实现上述功能,其包含了执行各个功能相应的硬件结构
和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请实施例能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请实施例的范围。
本申请实施例可以根据上述方法示例对上述电子设备等进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请实施例各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:快闪存储器、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (16)
- 一种物联网设备心跳检测的方法,其特征在于,所述方法应用于物联网平台,所述物联网平台与物联网设备通信连接,所述方法包括:当所述物联网平台在最后一次接收到心跳数据后的预设时间长度内未接收到第一物联网设备发送的第一心跳数据时,向所述第一物联网设备发送第二心跳数据;根据所述第二心跳数据发送结果,确定所述第一物联网设备为在线状态或者离线状态,所述第二心跳数据发送成功时,所述第一物联网设备为在线状态,所述第二心跳数据发送失败时,所述第一物联网设备为离线状态。
- 根据权利要求1所述的方法,其特征在于,所述方法还包括:获取第一物联网设备的相关信息,所述相关信息包括以下一项或者多项:所述第一物联网设备的设备信息、所述第一物联网设备所处的地域信息、所述第一物联网设备网络信息;根据所述第一物联网设备的相关信息确定所述第一物联网设备的目标心跳周期,并向所述第一物联网设备发送所述目标心跳周期,所述预设时间段为所述目标心跳周期。
- 根据权利要求2所述的方法,其特征在于,在向所述第一物联网设备发送第二心跳数据之前,所述方法还包括:根据所述第一物联网设备的相关信息,确定所述第一物联网设备开启心跳主动检测机制。
- 根据权利要求2所述的方法,其特征在于,所述物联网平台存储有设备心跳数据库,所述根据所述第一物联网设备的相关信息确定所述第一物联网设备的目标心跳周期,包括:根据所述第一物联网设备的相关信息,在所述设备心跳数据库中查询所述第一物联网设备的目标心跳周期。
- 根据权利要求3所述的方法,其特征在于,所述物联网平台包括设备心跳数据库,所述根据所述第一物联网设备的相关信息确定所述第一物联网设备开启心跳主动检测机制,包括:根据所述第一物联网设备的相关信息,在所述设备心跳数据库中查询所述第一物联网设备开启心跳主动检测机制。
- 根据权利要求2-5中任一项所述的方法,其特征在于,所述设备心跳数据库中的所述目标心跳周期和所述第一物联网设备是否开启心跳主动检测机制是用户设置的。
- 根据权利要求6所述的方法,其特征在于,所述方法还包括:获取用户设置信息,所述用户设置信息包括:用户设置的第二物联网设备心跳周期,和/或,用户设置的所述第二物联网设备是否开启主动检测机制;向所述第二物联网设备发送请求信息,所述请求信息用于请求所述第二物联网设备的相关信息;接收所述第二物联网设备的相关信息,并将所述第二物联网设备的相关信息和所述用户设置信息添加至所述设备心跳数据库。
- 一种物联网设备心跳检测的方法,其特征在于,所述方法应用于第一物联网设备,所述第一物联网设备与物联网平台通信连接,所述方法包括:向所述物联网平台发送所述第一物联网设备的相关信息,所述相关信息包括以下一项或者多项:所述第一物联网设备的设备信息、所述第一物联网设备所处的地域信息、所述第一物联网设备的网络信息;接收所述第一物联网平台发送的目标心跳周期,所述目标心跳周期是根据所述第一物联网设备的相关信息确定的;根据所述目标心跳周期向所述第一物联网平台发送第一心跳数据;接收所述第一物联网平台发送的第二心跳数据,所述第二心跳数据是所述物联网平台在所述目标周期内未接收到所述第一心跳数据时发送的。
- 根据权利要求8所述的方法,其特征在于,所述接收所述物联网平台发送主动发送的第二心跳数据,包括:当所述第一物联网设备开启主动检测机制时,接收所述物联网平台发送的第二心跳数据。
- 根据权利要求8或9所述的方法,其特征在于,所述方法还包括:接收所述物联网平台发送的请求信息,所述请求信息用于请求第二物联网设备的相关信息,所述第二物联网设备的相关信息包括以下一项或者多项:所述第二物联网设备的设备信息、所述第二物联网设备所处的地域信息、所述第二物联网设备网络信息;基于所述请求信息,向所述物联网平台发送所述第二物联网设备的相关信息。
- 根据权利要求8-10中任一项所述的方法,其特征在于,所述目标心跳周期是用户设置的。
- 一种物联网设备心跳检测系统,其特征在于,所述系统包括物联网平台和物联网设备:所述物联网平台用于执行如权利要求1-7中任一项所述的方法,所述物联网设备用于执行如权利要求8-11中任一项所述的方法。
- 一种通信装置,其特征在于,包括用于执行如权利要求1-7中任一项所述方法的各个步骤的单元,或者,用于执行如权利要8-11中任一项所述方法的各个步骤的单元。
- 一种通信装置,其特征在于,所述装置包括至少一个处理器,所述至少一个处理器与至少一个存储器耦合:所述至少一个处理器,用于执行所述至少一个存储器中的计算机程序或指令,以使得所述通信装置执行如权利要求1-7中任一项所述的方法,或者执行如权利要求8-11中任一项所述的方法。
- 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序或指令,当计算机读取并执行所述计算机程序或指令时,使得计算机执行如权利要求1-7中任一项所述的方法,或者执行如权利要求8-11中任一项所述的方法。
- 一种芯片,其特征在于,包括:处理器,用于执行如权利要求1-7中任一项所述的方法,或者执行如权利要求8-11中任一项所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211378432.7 | 2022-11-04 | ||
CN202211378432.7A CN117997807A (zh) | 2022-11-04 | 2022-11-04 | 一种物联网设备心跳检测的方法、系统以及通信装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024093851A1 true WO2024093851A1 (zh) | 2024-05-10 |
Family
ID=90901706
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2023/127338 WO2024093851A1 (zh) | 2022-11-04 | 2023-10-27 | 一种物联网设备心跳检测的方法、系统以及通信装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN117997807A (zh) |
WO (1) | WO2024093851A1 (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111031565A (zh) * | 2019-11-25 | 2020-04-17 | 青岛海信智慧家居系统股份有限公司 | 一种识别ZigBee设备离在线状态的方法及装置 |
CN111181804A (zh) * | 2019-12-20 | 2020-05-19 | 中移(杭州)信息技术有限公司 | 智能设备离线状态自动检测方法、装置、电子设备及介质 |
CN111884875A (zh) * | 2020-07-17 | 2020-11-03 | 青岛易来智能科技股份有限公司 | 一种离线设备确定方法及装置 |
CN113596884A (zh) * | 2021-08-19 | 2021-11-02 | 深圳创维数字技术有限公司 | 设备状态监测方法、设备状态监测装置以及可读存储介质 |
-
2022
- 2022-11-04 CN CN202211378432.7A patent/CN117997807A/zh active Pending
-
2023
- 2023-10-27 WO PCT/CN2023/127338 patent/WO2024093851A1/zh unknown
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111031565A (zh) * | 2019-11-25 | 2020-04-17 | 青岛海信智慧家居系统股份有限公司 | 一种识别ZigBee设备离在线状态的方法及装置 |
CN111181804A (zh) * | 2019-12-20 | 2020-05-19 | 中移(杭州)信息技术有限公司 | 智能设备离线状态自动检测方法、装置、电子设备及介质 |
CN111884875A (zh) * | 2020-07-17 | 2020-11-03 | 青岛易来智能科技股份有限公司 | 一种离线设备确定方法及装置 |
CN113596884A (zh) * | 2021-08-19 | 2021-11-02 | 深圳创维数字技术有限公司 | 设备状态监测方法、设备状态监测装置以及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN117997807A (zh) | 2024-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11102844B2 (en) | Policy control method, device, and system | |
EP3266188B1 (en) | Network and application management using service layer capabilities | |
US10250457B2 (en) | Network node availability prediction based on past history data | |
CN111263409B (zh) | 提供网络功能服务的元数据信息的方法、系统以及相关设备 | |
CN104283743A (zh) | 一种家庭网络设备及代理服务发现的方法 | |
CN105612805A (zh) | 可穿戴式设备的通信方法、通信系统及相关设备 | |
CN112511393B (zh) | 设备联动控制方法、装置及存储介质 | |
WO2018024121A1 (zh) | 一种网络功能nf管理方法及nf管理设备 | |
US11984974B2 (en) | Method and device for transmitting data, system, and storage medium | |
WO2015000379A1 (zh) | 空调器的远程控制方法和空调器的远程控制系统 | |
WO2020011026A1 (zh) | 终端应用的控制方法、装置及系统 | |
CN111585815B (zh) | 一种端口数据采集方法及装置 | |
Oliveira et al. | Ubiquitous monitoring solution for Wireless Sensor Networks with push notifications and end-to-end connectivity | |
US20180359322A1 (en) | Service element host selection | |
CN112671572B (zh) | 智能设备配网的方法、装置、存储介质及电子装置 | |
WO2024093851A1 (zh) | 一种物联网设备心跳检测的方法、系统以及通信装置 | |
CN111164951B (zh) | 基于服务能力要求和偏好的服务注册 | |
CN114189400B (zh) | 家电设备的控制方法、装置、系统、存储介质和程序产品 | |
CN113630298A (zh) | 智能控制系统、方法和装置 | |
CN112261706A (zh) | 无线网络连接方法、装置、设备、及存储介质 | |
CN114846901B (zh) | 通信方法、装置、设备及存储介质 | |
WO2023213134A1 (zh) | 一种数据报告的方法、装置及系统 | |
WO2023213288A1 (zh) | 模型获取方法及通信设备 | |
WO2023216960A1 (zh) | 数据处理方法、装置、核心网节点、电子设备和存储介质 | |
WO2024104360A1 (zh) | 网络接入方法、装置、设备及存储介质和程序 |
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: 23884783 Country of ref document: EP Kind code of ref document: A1 |