Patent Description:
Service-based broadcast and discovery technologies are applied more and more widely, such as in the field of consumer communications.

In related arts, service broadcast and discovery are implemented for specific service through specific broadcast and discovery technologies. The various broadcast and discovery technologies are often not compatible with low utilization of the resource.

<CIT> discloses a method for connecting electronic devices. A first electronic device broadcasts a message including at least one of related service information and connectivity information necessary for accessing a wireless access point accessed by the first electronic device, by using short-range communication. The first electronic device receives a connection request from at least one second electronic device via the wireless AP.

<CIT> discloses a method for implementing latched attributes within an IoT system. The method comprises: specifying an attribute for each item of data managed in IoT device; when an IoT device is unable to connect with the IoT device for a period of time maintaining an indication of any state changes occurring to the latched attribute over the period of time; upon establishing a successful connection between the IoT device and the IoT service after the period of time, transmitting the indication of state changes of the latched attribute from the IoT device to the IoT service; and analyzing the indication of state changes to determine whether to generate an alert condition on the IoT service.

<CIT> discloses a node is operable to communicate in an ad hoc peer-to-peer network using a predefined communication protocol. The node includes a local area wireless communication circuit and one or more processors. The one or more processors can cause the local area wireless communication circuit to broadcast a local name of an electronic device using a discovery protocol of the predefined communication protocol.

<CIT> discloses mechanisms for discovering ad hoc Service Layer Entities either deployed in ad hoc or switched from normal operation mode to ad hoc mode can support an IoT service in a distributive self-organized system.

<CIT> discloses a method for discovering services. The method may include providing service-feature information from a consumer app to a query service that is indicative of a service provided by a remotely located provider app and incorporating the service-feature information into resource records of an additional information section of a multicast domain name service message.

<CIT> discloses a method for establishing secure communication channels. The method may comprises an IoT device comprising secret/counter processing logic/circuitry to generate a master secret, the master secret to be transmitted to an IoT service; one or more IoT hubs to receive the master secret from the IoT service over a first secure communication channel, at least one of the IoT hubs to use the master secret to establish a second secure communication channel with the IoT device.

In order to solve the related problems, the present invention provides broadcasting and discovering methods according to independent claims <NUM> and <NUM>, broadcasting and discovering devices according to independent claims <NUM> and <NUM>, and a storage media according to independent claims <NUM> and <NUM>.

According to a first aspect of the embodiments of the present invention, there is provided a broadcasting method including: acquiring and analyzing a service application broadcast request; determining a broadcast message with preset content parameters according to the service application broadcast request, the preset content parameters comprising broadcast protocol version parameter, service application parameter, role parameter characterizing broadcast role or discovery role, broadcasting device name parameter, and broadcast configuration identification parameter, content and format contained in the broadcast message are uniformly defined in advance; and broadcasting the broadcast message.

Preferably, the service application parameter includes service application identification for identifying corresponding service applications.

Preferably, the preset content parameters further include broadcast data parameter; and when the service application broadcast request includes at least one broadcast request of the same service application, the broadcast parameter can characterize broadcast data corresponding to all the broadcast requests in the at least one broadcast request.

Preferably, the broadcast data parameter includes at least one broadcast data identification for identifying corresponding broadcast data.

Preferably, the broadcasting the broadcast message includes:.

broadcasting the same broadcast message by multiple broadcast techniques.

According to a second aspect of the embodiments of the present invention, there is provided a discovering method including:.

acquiring broadcast messages with preset content parameters, the preset content parameters comprising broadcast protocol version parameter, service application parameter, role parameter characterizing broadcast role or discovery role, broadcasting device name parameter, and broadcast configuration identification parameter, content and format contained in the broadcast message are uniformly defined in advance; and screening the broadcast messages in accordance with a target service application, to obtain the broadcast message matched with the target service application.

Preferably, the screening the broadcast messages in accordance with the target service application to obtain the broadcast message matched with the target service application includes:
screening out the broadcast message matched with the broadcast protocol version, the service application identification, the role, the broadcasting device name and the broadcast configuration identification according to one or more of the broadcast protocol version, the service application identification, the role, the broadcasting device name and the broadcast configuration identification supported by the target service application.

According to a third aspect of the embodiments of the present invention, there is provided a broadcasting device including:
an acquiring component configured to acquire and analyze a service application broadcast request; a determining component configured to determine a broadcast message with preset content parameters according to the service application broadcast request, the preset content parameters comprising broadcast protocol version parameter, service application parameter, role parameter that characterizes broadcast role or discovery role, broadcasting device name parameter and broadcast configuration identification parameter, content and format contained in the broadcast message are uniformly defined in advance; and a broadcasting component configured to broadcast the broadcast message.

Preferably, the preset content parameters further include broadcast data parameter.

Preferably, when the service application broadcast request includes at least one broadcast request of the same service application, the broadcast parameter can characterize broadcast data corresponding to all the broadcast requests in the at least one broadcast request.

Preferably, the broadcasting component is configured to broadcast the same broadcast message by multiple broadcast techniques.

According to a fourth aspect of the embodiment of the present invention, there is provided a discovering device including:
an acquiring component configured to acquire broadcast messages with preset content parameters, the preset content parameters comprising broadcast protocol version parameter, service application parameter, role parameter that characterizes broadcast role or discovery role, broadcast device name parameter, and broadcast configuration identification parameter, content and format contained in the broadcast message are uniformly defined in advance; and a screening component configured to screen the broadcast messages according to a target service application so as to obtain the broadcast message matched with the target service application.

Preferably, the screening component is configured to screen out the broadcast message matched with the broadcast protocol version, the service application identification, the role, the broadcasting device name and the broadcast configuration identification according to one or more of the broadcast protocol version, the service application identification, the role, the broadcasting device name and the broadcast configuration identification supported by the target service application.

According to a fifth aspect of the embodiments of the present invention, there is provided a non-transitory computer-readable storage medium, wherein the broadcasting method according to the first aspect or any embodiment of the first aspect can be executed by a processor when instructions in the storage medium are executed by the processor.

According to an sixth aspect of the embodiments of the present invention, there is provided a non-transitory computer-readable storage medium, wherein the discovering method according to the second aspect or any embodiment of the second aspect can be executed by a processor when instructions in the storage medium are executed by the processor.

It should be understood that the above general description and the following detailed description are exemplary and explanatory, and are not intended to limit the present invention.

The accompanying drawings, which are incorporated in and constitute a part of this invention, illustrate embodiments consistent with the invention and, together with the invention, serve to explain the principles of the invention.

The implementations set forth in the following description of exemplary embodiments do not represent all implementations consistent with the invention. Instead, they are merely examples of devices and methods consistent with aspects related to the invention as recited in the appended claims.

Service broadcast and discovery may be implemented for specific service through specific broadcast and discovery technologies. Many broadcast and discovery technologies are often not compatible with low utilization of the resource.

The broadcasting and discovering methods provided by various embodiments of the present invention may be applied in the field of consumer communications. Various reliable broadcasting and discovering methods are currently available in the field of consumer communication, for example, multicast domain name system (mDNS) commonly adopted in the local area network (LAN), and Bluetooth low energy (BLE), near field communication (NFC) and Wi-Fi Aware that do not depend on online conditions. However, various current broadcasting and discovering methods respectively support various broadcast protocols; specific service implements service broadcast and discovery through specific broadcast and discovery methods; and the broadcasting methods are not compatible with the discovering methods. Thus, a device that supports multiple services needs to provide a plurality of broadcast and discovery techniques that are not compatible with each other for the multiple services. The broadcast and discovery for one service will have different technical implementations by different devices. One broadcast and discovery implementation will be adopted by multiple services in different forms on one device. Specific broadcast and discovery techniques cannot meet the all scenes need from some services.

In view of this, various embodiments of the present invention provide a broadcasting and discovering methods, which can broadcast messages with preset content parameters to realize the component of content and format of the broadcast message broadcasted by various broadcast and discovery techniques. In the process of service discovery, the broadcast messages with the preset content parameters are screened according to a target service application to obtain a broadcast message matched with the target service application. By adopting the embodiments of the present invention, the broadcast and discovery of the services among the devices have better compatibility, thereby covering all the scenes of broadcast and discovery.

The broadcasting method and the discovering method as described herein may be implemented as a mobile phone, a computer, a digital broadcasting terminal, a messaging device, a game console, a tablet, a medical device, a fitness apparatus, a personal digital assistant, and the like, which support different broadcast protocols.

<FIG> is a flowchart illustrating a broadcasting method according to some embodiments. Referring to <FIG>, the broadcasting method comprises:
S11: acquiring and analyzing a service application broadcast request.

In the present invention, the service application broadcast request may be a broadcast request sent by a broadcast technique that supports different broadcast protocols. For example, it may be a service application broadcast request supporting one or more of the broadcast protocols among mDNS, BLE, NFC, universal plug and play (UPNP) and Wi-Fi Aware.

S12: determining broadcast messages with preset content parameters according to the service application broadcast request.

In some embodiments of the present invention, the content and the format contained in the broadcast message are uniformly defined in advance. For instance, preset content includes broadcast protocol version information, service application information, role information that characterizes broadcast role or discovery role, broadcast device name information, and broadcast configuration identification information. The broadcast message contains preset content parameters which are adopted to characterize the preset content. For instance, the preset content parameters include broadcast protocol version parameter, service application parameter, role parameter that characterizes broadcast role or discovery role, broadcast device name parameter, and broadcast configuration identification parameter.

Moreover, in some embodiments of the present invention, the format of the content contained in the broadcast message may be preset, so as to identify different contents in different formats. For instance, the service application parameter includes service application format identification, and different service application format identifications are used for identifying different service applications.

Furthermore, in some embodiments of the present invention, the broadcast message may also include broadcast data parameter which is adopted to characterize broadcast data corresponding to the broadcast request. Herein, the broadcast data parameter includes at least one broadcast data identification, and different broadcast data identifications are used for identifying different broadcast data.

In some embodiments of the present invention, different identification digits may be adopted to identify different service applications and identify different broadcast data.

S13: broadcasting the broadcast message with the preset content parameters.

In some embodiments of the present invention, after obtaining the broadcast message with the preset content parameters, various broadcast techniques may be adopted to broadcast the broadcast message. For instance, in some embodiments of the present invention, after obtaining the broadcast message, one or more broadcast techniques among mDNS, BLE, NFC, UPNP and Wi-Fi Aware may be adopted for broadcast.

In some embodiments of the present invention, the broadcast message with the preset content parameters is broadcasted to realize the broadcast of broadcast data that support various different broadcast protocols through unified broadcast message, and then the broadcast and discovery of various services and among devices can have better compatibility, so that the broadcast and discovery technique can cover all the scenes of broadcast and discovery.

In some embodiments of the present invention, when the service application broadcast request is one or more (at least one) broadcast requests of the same service application, the broadcast parameter can characterize broadcast data corresponding to all the broadcast requests in the at least one broadcast request. In other words, in some embodiments of the present invention, a plurality of broadcast data of the same service application may be carried in the same broadcast message for broadcast.

In some other embodiments of the present invention, the same broadcast message that supports multiple broadcast techniques may be broadcasted by multiple broadcast techniques.

In some embodiments of the present invention, after broadcast data of multiple broadcast protocols supported by a broadcast device are broadcasted through the broadcast message with the preset content parameters, one or more discovering devices may acquire the broadcast message with the present content parameters.

<FIG> is a flowchart illustrating a broadcasting method according to some embodiments. Referring to <FIG>, the discovering method comprises:.

In some embodiments of the present invention, the target service application may be determined according to service consumers' operation on a terminal. After the service consumer triggers the target service application, the terminal as the discovering device may determine screening conditions for screening the broadcast messages according to the target service application, and the screening conditions are used for screening out the broadcast message matched with the target service application. For instance, if the service consumer needs to utilize BLE technology to realize a Screen-Display Application, the screening condition is set to screen out a broadcast message matched with BLE.

Moreover, in some embodiments of the present invention, a broadcast message matched with the broadcast protocol version, the service application identification, the role, the broadcast device name and the broadcast configuration identification may be screened out according to one or more of the broadcast protocol version, the service application identification, the role, the broadcast device name and the broadcast configuration identification supported by the target service application.

In some embodiments of the present invention, after the discovering device screens out the broadcast message matched with the target service application, service information of the target service application may be obtained, and then be utilized for further service consumption.

In some embodiments of the present invention, the above methods that adopt the unified broadcast message for broadcast and discovery can support all scenes and be shared by multiple services.

In some embodiments of the present invention, the broadcast and discovery techniques that support different broadcast protocols may be combined, for example, one or more of currently proven reliable mDNS, BLE, NFC, UPNP and Wi-Fi Aware are combined, so that the broadcast and discovery of services can cover all the scenes.

Moreover, in some embodiments of the present invention, for setting the broadcast message with the preset content parameters, reasonable combination of broadcast and discovery methods may be selected by taking energy consumption factor into consideration according to broadcasting device capability, online conditions and service requirements. For example, a device that provides a target service may be rapidly discovered in the LAN environment by utilization of mDNS technical method according to online conditions of a broadcasting device. Meanwhile, the BLE technical method and the Wi-Fi Aware technical method with low power consumption may be utilized to broadcast the service provided by the device within certain range through broadcast wireless signals. The discovering device within the range may discover the device that provides the target service through corresponding broadcast wireless signal receiving device. Meanwhile, the discovering device may utilize the NFC technical method to trigger the exchange of broadcast information by approaching the broadcasting device.

Furthermore, in some embodiments of the present invention, the broadcasting device broadcasts the broadcast message with the preset content parameters, and the discovering device screens the received broadcast messages with the preset content parameters by utilization of the target service application to obtain the service information matched with the target service application, so that one device that supports multiple services can adopt the same broadcast and discovery behavior for broadcast and discovery, and same broadcast and discovery behavior may be adopted for the broadcast and discovery of the same service application on different devices. By adopting some embodiments of the present invention, a plurality of service applications may also be broadcasted and discovered on the same device for the same broadcast and discovery behavior.

As such, various embodiments of the present invention can realize the mutual compatibility between multiple different broadcast and discovery techniques, realize service discovery in all scenes, and improve resource utilization.

Based on the similar concept, some embodiments of the present invention further provides broadcasting and discovering devices.

It will be appreciated that the broadcasting and discovering devices according to some embodiments of the present invention includes corresponding hardware structures and/or software modules for executing various functions in order to realize the above functions. In combination with component and algorithm steps in various disclosed examples in some embodiments of the present invention, the embodiments of the present invention can be implemented in the form of hardware or in combination of hardware and computer software. Whether a specific function is executed by hardware or by adoption of computer software to drive hardware depends on the specific application and design constraints of the technical solution. Those skilled in the art may use different methods to implement the described functions for each specific application, but such implementation should not be construed as beyond the scope of the technical solutions of the embodiments of the present invention.

<FIG> is a block diagram illustrating a broadcasting device according to some embodiments. Referring to <FIG>, the broadcasting device <NUM> comprises an acquiring component <NUM>, a determining component <NUM> and a broadcasting component <NUM>.

The acquiring component <NUM> is configured to acquire and analyze a service application broadcast request. The determining component <NUM> is configured to determine a broadcast message with preset content parameters according to the service application broadcast request. The broadcasting component <NUM> is configured to broadcast the broadcast message.

In some embodiments, the preset content parameters include: broadcast protocol version parameter, service application parameter, role parameter that characterizes broadcast role or discovery role, broadcasting device name parameter, and broadcast configuration identification parameter.

In some other embodiments, the service application parameter includes service application identification, and different service application identifications are used for identifying different service applications.

In still some other embodiments, the preset content parameters also include broadcast data parameter.

When the service application broadcast request is at least one broadcast request of the same service application, the broadcast parameter can characterize broadcast data corresponding to all the broadcast requests among the at least one broadcast request.

In still some other embodiments, the broadcast data parameter includes at least one broadcast data identification, and different broadcast data identifications are used for identifying different broadcast data.

In still some other embodiments, the broadcasting component <NUM> adopts multiple broadcast techniques to broadcast the same broadcast message.

<FIG> is a block diagram illustrating a discovering device according to some embodiments. Referring to <FIG>, the discovering device <NUM> comprises an acquiring component <NUM> and a screening component <NUM>.

The acquiring component <NUM> is configured to acquire broadcast messages with preset content parameters. The screening component <NUM> is configured to screen the broadcast messages according to a target service application and obtain the broadcast message matched with the target service application.

In some embodiments, the screen component <NUM> screens the broadcast messages according to the target service application and obtain the broadcast message matched with the target service application by the following means:
screening out a broadcast message matched with the broadcast protocol version, the service application identification, the role, the broadcast device name and the broadcast configuration identification according to one or more of the broadcast protocol version, the service application identification, the role, the broadcast device name and the broadcast configuration identification supported by the target service application.

Regarding the device in the above embodiment, the specific manner in which each module operates has been described in detail in the embodiments of the methods, and will not be explained here in detail.

<FIG> is a block diagram illustrating a device <NUM> for broadcast or discovery according to some embodiments. For example, the device <NUM> may be a mobile phone, a computer, a digital broadcasting terminal, a messaging device, a game console, a tablet, a medical device, a fitness apparatus, a personal digital assistant, and the like.

Referring to <FIG>, the device <NUM> may comprise one or more of a processing assembly <NUM>, a memory <NUM>, a power assembly <NUM>, a multi-media assembly <NUM>, an audio assembly <NUM>, an input/output (I/O) interface <NUM>, a sensor assembly <NUM> and a communication assembly <NUM>.

The processing assembly <NUM> typically controls overall operations of the device <NUM>, such as the operations associated with display, telephone calls, data communications, camera operations, and recording operations. The processing assembly <NUM> may include one or more processors <NUM> to execute instructions to perform all or part of the steps in the above described methods. Moreover, the processing assembly <NUM> may include one or more modules which facilitate the interaction between the processing assembly <NUM> and other assemblies. For instance, the processing assembly <NUM> may include a multimedia module to facilitate the interaction between the multimedia assembly <NUM> and the processing assembly <NUM>.

The power assembly <NUM> provides power to various assemblies of the device <NUM>. The power assembly <NUM> may include a power management system, one or more power sources, and any other assemblies associated with the generation, management, and distribution of power in the device <NUM>.

The multimedia assembly <NUM> includes a screen providing an output interface between the device <NUM> and the user. In some embodiments, the screen may include an organic light-emitting diode (OLED) display or other types of displays. In some embodiments, the multimedia assembly <NUM> includes a front camera and/or a rear camera.

The audio assembly <NUM> is configured to output and/or input audio signals. For example, the audio assembly <NUM> includes a microphone ("MIC") configured to receive an external audio signal when the device <NUM> is in an operation mode, such as a call mode, a recording mode, and a voice recognition mode. The received audio signal may be further stored in the memory <NUM> or transmitted via the communication assembly <NUM>. In some embodiments, the audio assembly <NUM> further includes a speaker to output audio signals.

The I/O interface <NUM> provides an interface between the processing assembly <NUM> and peripheral interface modules, such as a keyboard, a click wheel, buttons, and the like.

The sensor assembly <NUM> includes one or more sensors to provide status assessments of various aspects of the device <NUM>. For instance, the sensor assembly <NUM> may detect an open/closed status of the device <NUM>, relative positioning of assemblies, e.g., the display and the keypad, of the device <NUM>, a change in position of the device <NUM> or an assembly of the device <NUM>, a presence or absence of user contact with the device <NUM>, an orientation or an acceleration/deceleration of the device <NUM>, and a change in temperature of the device <NUM>. The sensor assembly <NUM> may include a proximity sensor configured to detect the presence of nearby objects without any physical contact. The sensor assembly <NUM> may also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor assembly <NUM> may also include an accelerometer sensor, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.

The communication assembly <NUM> is configured to facilitate communication, wired or wirelessly, between the device <NUM> and other devices. The device <NUM> can access a wireless network based on a communication standard, such as Wi-Fi, <NUM>, <NUM>, <NUM> or <NUM>, or a combination thereof. In one exemplary embodiment, the communication assembly <NUM> receives a broadcast signal or broadcast associated information from an external broadcast management system via a broadcast channel. In one exemplary embodiment, the communication assembly <NUM> further includes a near field communication (NFC) module to facilitate short-range communications. For example, the NFC module may be implemented based on a radio frequency identification (RFID) technology, an infrared data association (IrDA) technology, an ultra-wideband (UWB) technology, a Bluetooth (BT) technology, and other technologies.

In exemplary embodiments, the device <NUM> may be implemented with one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, micro-controllers, microprocessors, or other electronic assemblies, for performing the above described methods.

In exemplary embodiments, there is also provided a non-transitory computer-readable storage medium including instructions, such as included in the memory <NUM>, executable by the processor <NUM> in the device <NUM>, for performing the above-described methods. For example, the non-transitory computer-readable storage medium may be a ROM, a random-access memory (RAM), a CD-ROM, a magnetic tape, a floppy disc, an optical data storage device, and the like.

Various embodiments of the present invention can have one or more the following advantages. As the broadcast message with the preset content parameters is broadcasted in the process of broadcasting the broadcast message, and the target service application is utilized to screen the received broadcast messages with the preset content parameters and obtain service information matched with the target service application in the process of discovering the broadcast message, the mutual compatibility between multiple different broadcast and discovery techniques, and service discovery in all scenes can be realized, and resource utilization can be improved.

It will be appreciated that the singular forms "a," "the," and "the above-mentioned" in the present invention are intended to include the plural forms as well, unless the context clearly indicates otherwise.

It will be further appreciated that although operations are described in a specific order in the drawings in the embodiments of the present invention, it should not be construed as requiring that the operations be performed in the specific order or serial order shown, or that all operations shown be performed to get desired results. In certain environments, multitasking and parallel processing may be advantageous.

Other embodiments of the invention will be apparent to those skilled in the art from consideration of the specification and practice of the various embodiments disclosed here. This application is intended to cover any variations, uses, or adaptations of the invention following the general principles thereof and including such departures from the present invention as come within known or customary practice in the art. It is intended that the specification and examples be considered as exemplary only, with a true scope of the invention being indicated by the following claims.

Claim 1:
A broadcasting method performed by a broadcasting device, being characterized in that the method comprises:
acquiring (S11) and analyzing a service application broadcast request;
determining (S12) a broadcast message with preset content parameters according to the service application broadcast request, the preset content parameters comprising broadcast protocol version parameter, service application parameter, role parameter characterizing broadcast role or discovery role, broadcasting device name parameter, and broadcast configuration identification parameter, content and format contained in the broadcast message are uniformly defined in advance; and
broadcasting (S13) the broadcast message.