Service determination method and apparatus
By implementing the service determination method between the first client and the first server, the technical problem of watching movies synchronously across terminals and regions is solved, ensuring that multiple users can access the same service, thereby achieving synchronous viewing and improving user experience.
Patent Information
- Application Number
- PCT/CN2024/115959
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-09-28
- Filing Date
- 2024-08-30
- Publication Date
- 2025-04-03
AI Technical Summary
The prior art is difficult to achieve synchronous viewing of multiple users across terminals and regions, mainly because multiple users cannot access the same service.
Through a service determination method, the first client sends a service request message to the first server, including the identification of itself and the second client, based on the identification, the first server determines a set of services that can be accessed by both parties and returns it to the first client, and finally the first client and the second client jointly access the determined service.
Ensure that multiple users can access the same service, thereby achieving synchronous viewing and improving user experience.
Smart Images

Figure CN2024115959_03042025_PF_FP_ABST
Abstract
Description
A method and device for determining service
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application claims priority to the Chinese patent application filed with the State Intellectual Property Office of China on September 28, 2023, with application number 202311290423.7 and application name “A method and device for determining a service”, the entire contents of which are incorporated by reference into this application. Technical Field
[0003] The present application relates to the field of communication technology, and in particular to a method and device for determining a service. Background Art
[0004] With the growth of bandwidth and advancements in hardware performance, the demand for synchronized viewing is becoming increasingly widespread to enhance user experience and engagement. This allows multiple users to simultaneously watch the same media file or program across multiple devices and locations, for example, allowing multiple users to watch a football game together. However, synchronized viewing requires that multiple users access the same service (i.e., media file or program). Therefore, a method for determining services is urgently needed to ensure that multiple users can access the same service.
[0005] Summary of the Invention
[0006] The present application provides a method and apparatus for determining a service, so as to ensure that multiple users can access the same service.
[0007] In a first aspect, the present application provides a method for determining a service, which can be applied to a first client, a processor, a chip, or a functional module in the first client, etc. Taking the method applied to the first client as an example, the method may include: the first client sends a first service request message to a first server, receives a first service set from the first server, and determines a first service in the first service set, where the first service is accessed by both the first client and the second client. The first service request message includes an identifier of the first client and an identifier of the second client; the first service set includes at least one service, where the at least one service is accessed by both the first client and the second client.
[0008] Through the above method, the first client can determine the services that the first client and the second client access together, thereby ensuring that multiple users access the same service, thereby successfully achieving synchronous viewing and improving user experience.
[0009] In one possible design, the first client sends a first message to the second client, where the first message includes information about the first service, so that the second client can subsequently determine the corresponding first service based on the information about the first service, thereby enabling the first client and the second client to access the same service together.
[0010] In one possible design, the information of the first service includes an identifier of the first service, so that the second client can accurately determine the first service in combination with the identifier of the first service.
[0011] In one possible design, the first message also includes the address of a second server, which is used to provide the client with a service for querying information about the first service. This allows the second client to query information about the first service through the second server.
[0012] In a second aspect, the present application provides a method for determining a service, which can be applied to a first server, a processor, a chip, or a functional module in the first server, etc. Taking the method applied to the first server as an example, the method may include: the first server receiving a first service request message from a first client, the first service request message including an identifier of the first client and an identifier of a second client; then, the first server determining a first service set based on the identifier of the first client and the identifier of the second client, and sending the first service set to the first client. The first service set includes at least one service, and the at least one service is accessed by the first client and the second client.
[0013] Through the above method, the first client can subsequently determine the services that the first client and the second client access together based on the first service set, thereby ensuring that multiple users access the same service, thereby successfully achieving synchronous viewing and improving user experience.
[0014] In one possible design, the first server determines the first service set based on the identifier of the first client and the identifier of the second client. This may be done by: the first server determines the client information of the first client based on the identifier of the first client, and determines the client information of the second client based on the identifier of the second client; then, the first server determines the first service set based on the client information of the first client and the client information of the second client. In this way, the first server can accurately determine the services that the first client and the second client can access together.
[0015] In one possible design, the first server determines the first service set based on the client information of the first client and the client information of the second client. The method may include: the first server sends a second service request message to the second server, and receives the first service set from the second server. The second service request message includes the client information of the first client and the client information of the second client; and the at least one service included in the first service set matches the client information of the first client and the client information of the second client. In this way, the first server can accurately determine, through the second server, the services that the first client and the second client can access together.
[0016] In one possible design, the first server determines the first service set based on the client information of the first client and the client information of the second client. The method may be: the first server sends a third service request message to the second server; the first server receives a second service set from the second server, where the second service set includes at least one service; finally, the first server determines the first service set in the second service set based on the client information of the first client and the client information of the second client, where the at least one service included in the first service set matches the client information of the first client and the client information of the second client. In this way, the first server can accurately determine the services that the first client and the second client can access together based on the client information of the first client and the client information of the second client.
[0017] In one possible design, the first server determines the first service set based on the client information of the first client and the client information of the second client. The method may be: the first server sends a fourth service request message to the second server, the fourth service request message including the client information of the first client; the first server receives a third service set from the second server, the third service set including at least one service; the first server sends a fifth service request message to the second server, the fifth service request message including the client information of the second client; the first server receives a fourth service set from the second server, the fourth service set including at least one service; finally, the first server determines the first service set based on the third service set and the fourth service set, wherein the third service set and the fourth service set include the first service set; the at least one service included in the first service set matches the client information of the first client and the client information of the second client. In this way, the first server can accurately determine the services that the first client and the second client can access together.
[0018] In one possible design, the first server determines the client information of the first client based on the identifier of the first client, and determines the client information of the second client based on the identifier of the second client. The method may be: the first server determines the client information of the first client in local configuration information based on the identifier of the first client, and determines the client information of the second client in the local configuration information based on the identifier of the second client; or the first server obtains the client information of the first client from a first device based on the identifier of the first client, and obtains the client information of the second client from the first device based on the identifier of the second client. In this way, the first service can flexibly and accurately determine the client information of the first client and the client information of the second client.
[0019] In one possible design, the client information of the first client may include at least one of the following information: area information where the first client is located and contract information of the first client; the client information of the second client includes at least one of the following information: area information where the second client is located and contract information of the second client.
[0020] In one possible design, the first server may send the address of a second server to the first client. The address of the second server is used to provide the client with a service for querying service information. In this way, the first client can subsequently query the corresponding service information, and the address of the second server may be sent to the second client to enable the second client to query the first service information.
[0021] In a third aspect, the present application provides a method for determining a service, which can be applied to a second client, a processor, a chip, or a functional module in the second client, etc. Taking the method applied to the second client as an example, the method may include: the second client receives a first message from the first client, where the first message includes information about a first service, and the first service is used for simultaneous access by the first and second clients. In this way, the second client can determine the services that the first and second clients access together based on the information about the first service, thereby ensuring that multiple users access the same service, successfully achieving simultaneous viewing, and improving the user experience.
[0022] In one possible design, the second client can send a sixth service request message to the second server, receive a fifth service set from the second server, and determine the first service based on the information about the first service and the fifth service set. The sixth service request message includes the second client's client information; the fifth service set includes at least one service, which is accessed by the second client. This allows the second client to accurately determine the first service, access the same service as the first client, and successfully achieve synchronized movie viewing.
[0023] In one possible design, the second client sends a seventh service request message to the second server. The second client receives a sixth service set from the second server and determines the first service based on the information about the first service and the sixth service set. The sixth service set includes at least one service, which is accessed by the second client. This allows the second client to accurately determine the first service, access the same service as the first client, and successfully achieve synchronized movie viewing.
[0024] In one possible design, the client information of the second client may include at least one of the following information: area information where the second client is located and contract information of the second client.
[0025] In one possible design, the second client can determine the first service based on the information of the first service. In this way, the second client can accurately determine the first service to access the same service as the first client, thereby successfully achieving synchronous viewing.
[0026] In one possible design, the information about the first service may include an identifier of the first service, so that the second client can accurately determine the first service in combination with the identifier of the first service.
[0027] In one possible design, the second client receives the address of a second server from the first client, and the address of the second server is used to provide the client with a service for querying information about the first service. In this way, the second client can query information about the first service through the second server.
[0028] In a fourth aspect, the present application further provides a device for determining a service, which can be applied to a first client and has the function of implementing the method of the first aspect or various possible design examples of the first aspect. The function can be implemented by hardware or by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the above functions.
[0029] In one possible design, the structure of the service-determined device may include a communication unit and a processing unit, which can perform the functions of the method in the above-mentioned first aspect or various possible design examples of the first aspect, which are not repeated here.
[0030] In one possible design, the structure of the service-determining device includes a processor, and optionally also includes a memory and / or a communication interface. The communication interface is used to send and receive data, messages, or information, and to communicate and interact with other devices in the system. The processor is configured to support the service-determining device in performing the corresponding functions of the first aspect or each possible design example of the first aspect. The memory is coupled to the processor and stores program instructions and data necessary for the service-determining device.
[0031] In a fifth aspect, the present application further provides a device for determining a service, which can be applied to a first server and has the function of implementing the method in the second aspect or various possible design examples of the second aspect. The function can be implemented by hardware or by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the above functions.
[0032] In one possible design, the structure of the service-determined device may include a communication unit and a processing unit, which can perform the functions of the method in the above-mentioned second aspect or various possible design examples of the second aspect, which are not repeated here.
[0033] In one possible design, the structure of the service-determining device includes a processor, and optionally also includes a memory and / or a communication interface. The communication interface is used to send and receive data, messages, or information, and to communicate and interact with other devices in the system. The processor is configured to support the service-determining device in performing the corresponding functions of the above-mentioned second aspect or each possible design example of the second aspect. The memory is coupled to the processor and stores program instructions and data necessary for the service-determining device.
[0034] In a sixth aspect, the present application further provides a device for determining a service, which can be applied to a second client and has the function of implementing the method of the third aspect or various possible design examples of the third aspect. The function can be implemented by hardware or by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the above functions.
[0035] In one possible design, the structure of the service-determined device may include a communication unit and a processing unit, which can perform the functions of the methods in the above-mentioned third aspect or various possible design examples of the third aspect, which are not repeated here.
[0036] In one possible design, the structure of the service-determining device includes a processor, and optionally also includes a memory and / or a communication interface. The communication interface is used to send and receive data, messages, or information, and to communicate and interact with other devices in the system. The processor is configured to support the service-determining device in performing the corresponding functions of the third aspect or each possible design example of the third aspect. The memory is coupled to the processor and stores program instructions and data necessary for the service-determining device.
[0037] In a seventh aspect, embodiments of the present application provide a system that may include a first client, a second client, and a first server. The first client is configured to implement the method described in the first aspect or various possible design examples of the first aspect. The first server is configured to implement the method described in the second aspect or various possible design examples of the second aspect. The second client is configured to implement the method described in the third aspect or various possible design examples of the third aspect.
[0038] In an eighth aspect, an embodiment of the present application provides a computer-readable storage medium, which stores program instructions. When the program instructions are run on a computer, the computer executes the method described in the first aspect of the embodiment of the present application and any possible design thereof, or the second aspect and any possible design thereof, or the third aspect and any possible design thereof. Exemplarily, the computer-readable storage medium can be any available medium that can be accessed by a computer. Taking this as an example but not limited to: the computer-readable medium can include non-transitory computer-readable media, random-access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), CD-ROM or other optical disk storage, magnetic disk storage medium or other magnetic storage device, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and can be accessed by a computer.
[0039] In a ninth aspect, an embodiment of the present application provides a computer program product comprising instructions, which, when executed on a computer, causes the method described in the first aspect or any possible design of the first aspect, or the second aspect or any possible design of the second aspect, or the third aspect and any possible design thereof to be executed.
[0040] In the tenth aspect, the present application also provides a chip, including a processor, which is coupled to a memory and is used to read and execute program instructions stored in the memory so that the chip implements the method described in the above-mentioned first aspect or any possible design of the first aspect, or the above-mentioned second aspect or any possible design of the second aspect, or the third aspect and any possible design thereof.
[0041] For each of the above-mentioned aspects 4 to 10 and the technical effects that may be achieved by each of the aspects, please refer to the above-mentioned description of the technical effects that can be achieved by the first aspect or the various possible solutions in the first aspect, or the above-mentioned second aspect or the various possible solutions in the second aspect, or the third aspect and the various possible solutions in the third aspect, and no further details will be given here. BRIEF DESCRIPTION OF THE DRAWINGS
[0042] FIG1 is a schematic diagram of the architecture of an IPTV system provided by this application;
[0043] FIG2 is a schematic diagram of a DVB-I architecture provided by this application;
[0044] FIG3 is a flow chart of a method for determining a service provided by the present application;
[0045] FIG4 is a flowchart of an example of a method for determining a service provided by the present application;
[0046] FIG5 is a schematic structural diagram of a device for determining a service provided by the present application;
[0047] FIG6 is a structural diagram of a service determination device provided in this application. DETAILED DESCRIPTION
[0048] The present application will be described in further detail below with reference to the accompanying drawings.
[0049] The embodiments of the present application provide a method and apparatus for determining a service to ensure that multiple users can access the same service. The method and apparatus described in this application are based on the same technical concept. Since the method and apparatus solve similar problems, the implementation of the apparatus and method can refer to each other, and any repetitions will not be repeated.
[0050] In the description of this application, words such as "first" and "second" are only used for the purpose of distinguishing the description and cannot be understood as indicating or implying relative importance or order.
[0051] In the description of this application, "at least one" means one or more, and "more" means two or more. "At least one of the following" or similar expressions refers to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c can mean: a, b, c, a and b, a and c, b and c, or a, b, and c, where a, b, and c can be single or plural.
[0052] In the description of this application, "and / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent: the existence of A alone, the existence of A and B at the same time, and the existence of B alone, where A and B can be singular or plural. " / " means "or", for example, a / b means a or b.
[0053] In order to more clearly describe the technical solution of the embodiment of the present application, the method and device for determining the service provided by the embodiment of the present application are described in detail below with reference to the accompanying drawings.
[0054] The embodiments of the present application can be applied to various business scenarios such as internet protocol television (IPTV), digital broadcast television, and OTT (over the top) video.
[0055] For example, FIG1 illustrates an IPTV system architecture applicable to the service determination method provided in an embodiment of the present application. The architecture may include a content provider, an IPTV management network, an IPTV platform, a real-time communication (RTC) network, a bearer network, and multiple clients. FIG1 illustrates an example in which multiple clients include Client 1, Client 2, and Client 3.
[0056] The content provider may provide the client with an IPTV media stream via the IPTV platform.
[0057] The IPTV management network's business operating support system (BOSS) manages user account opening and provides user onboarding data to the IPTV platform. Furthermore, the IPTV platform authenticates and authorizes user service access, while the content delivery network (CDN) transmits IPTV media streams to clients via the bearer network.
[0058] The IPTV management platform can provide account opening data to the RTC network. In turn, the RTC network can transmit RTC signaling to the client via the bearer network, and establish an RTC media or data channel with the client via the bearer network.
[0059] For example, the RTC network may include WebRTC and IP multimedia subsystem (IMS).
[0060] Multiple clients can include a master client, which can initiate synchronized viewing (also known as cloud viewing), meaning it can invite other clients to synchronize playback of the same media file. For example, in Figure 1, client 1 can be the master client, initiating synchronized viewing with clients 2 and 3.
[0061] The client can be a Digital Video Broadcasting Internet (DVB-I) client. For example, the client can include, but is not limited to, a terminal device such as a television, a mobile phone, a tablet computer, a laptop computer, or a PDA. Optionally, the client can include an IPTV application (app) and / or an IPTV software development kit (SDK), and the client can receive IPTV media streams or IPTV authentication information through the IPTV app or IPTV SDK. The client can also include an RTC app, and the client can receive RTC signals and maintain RTC media or data channels through the RTC app.
[0062] It should be understood that FIG1 is merely an illustrative illustration of a system applicable to an embodiment of the present application and is not intended to limit the present application.
[0063] Currently, DVB-I is a specification defined by Digital Video Broadcasting (DVB) for discovering services on the Internet. The architecture of DVB-I can be shown in Figure 2.
[0064] A content / service provider sends a list of available services to a service list server. The service list server registers the service list access entry address (e.g., a uniform resource locator (URL)) with the service list registry. When a DVB-I client wants to discover a service, it obtains the service list access entry address from the service list registry using the address of the service list registry. The DVB-I client then uses the access entry address to query the corresponding service list.
[0065] A service list may include a logical channel number (LCN) list (table) and a service list. The LCN table may include an LCN, a target region list, and a subscription package. The LCN includes a channel number and a service identity (service ID). The target region list included in the LCN indicates the area where the LCN is applicable, and the subscription package indicates the subscription package to which the LCN is applicable. The service includes a service ID, a target region list, and a service instance list. The service ID included in the service is used to associate the service with the LCN; the target region list is used to indicate the area where the service is applicable; the service instance list indicates an instance of the service provided (such as through digital terrestrial broadcasting (DVB-T), DVB-based dynamic adaptive streaming over HTTP (DASH), digital cable TV (DVB-C), and digital satellite TV (DVB-S), etc.). A service instance includes a priority and a subscription package. The subscription package included in the service instance is used to indicate the subscription package applicable to the service instance.
[0066] After receiving the service list, the DVB-I client will match the service list according to the target region and subscription package applicable to the service list, as well as its own region and subscription information, and display the matching services and LCN to the user based on the content guide data.
[0067] In a scenario where synchronized viewing is required, the user acting as the master client selects services (such as programs, media) based on the services and LCN displayed by the DVB-I client. Since the DVB-I client only displays services accessible to users of the master client, users may select services that are inaccessible to other users participating in different viewings. In this case, synchronized viewing cannot be carried out, affecting the user experience. Based on this, an embodiment of the present application provides a method for determining services, which can ensure that multiple users access the same service, thereby successfully achieving synchronized viewing and improving the user experience.
[0068] Based on the above description, an embodiment of the present application provides a method for determining a service. Referring to FIG3 , the method may include the following steps:
[0069] Step 301: A first client sends a first service request message to a first server. Correspondingly, the first server receives the first service request message from the first client. The first service request message may include an identifier of the first client and an identifier of a second client.
[0070] Among them, the first client is the main client, that is, the first client can determine to initiate synchronous viewing, which can also be understood as the user of the first client inviting users of one or more other clients to watch synchronously. In this application, the user of the first client invites the user of the second client to watch synchronously as an example.
[0071] In one example, after the first client decides to initiate synchronous viewing, it can send a request to establish a video call or video conference with the second client through the RTC network to establish a media interface and a data channel between the first client and the RTC network. Furthermore, the RTC network interacts with the second client to establish a media interface and a data channel to establish a video call or video conference between the first client and the second client. Among them, a video call can refer to a call involving two parties, and a video conference can refer to a call involving three or more parties. It should be understood that video calls and video conferences are only examples, and other communication methods that can achieve synchronous viewing are all possible, and this application does not limit this.
[0072] It should be understood that users of the first client can also realize synchronous viewing of movies by more than two users with users of other clients in addition to the second client. Here, only the second client is used as an example for explanation, and the same applies to other clients. This application does not limit this.
[0073] In some embodiments, the first client may pre-store the identifier of the second client.
[0074] Optionally, when the first client and the second client are mobile phones, the identifier of the first client and the identifier of the second client may be, but are not limited to, corresponding mobile phone numbers.
[0075] Optionally, the first client and the second client may be DVB-I clients.
[0076] Among them, the first server can be understood as a server that helps to achieve synchronous movie viewing. For example, the first server can include a synchronous movie viewing server, etc.
[0077] Step 302: The first server determines a first service set according to the identifier of the first client and the identifier of the second client. The first service set includes at least one service, and the at least one service is used for access by the first client and the second client.
[0078] In an optional embodiment, the first server may determine the client information of the first client based on the identifier of the first client, and determine the client information of the second client based on the identifier of the second client; further, the first server may determine the first service set based on the client information of the first client and the client information of the second client.
[0079] The first server determines the client information of the first client according to the identifier of the first client, and determines the client information of the second client according to the identifier of the second client, which may include the following method a1 and method a2:
[0080] Method a1: The first server may determine the client information of the first client in the local configuration information according to the identifier of the first client, and determine the client information of the second client in the local configuration information according to the identifier of the second client.
[0081] In method a1, the local configuration of the first server includes the client information of the first client and the client information of the second client. Therefore, the first server can directly obtain the client information of the first client and the client information of the second client from the local configuration based on the identifier of the first client and the identifier of the second client respectively.
[0082] Method a2: The first server may obtain the client information of the first client from the first device according to the identifier of the first client, and obtain the client information of the second client from the first device according to the identifier of the second client.
[0083] Illustratively, the client information of the first client may include at least one of the following information: information about the region where the first client is located (e.g., the region of the first client) and subscription information of the first client (e.g., the subscription package of the first client). The client information of the second client may include at least one of the following information: information about the region where the second client is located (e.g., the region of the second client) and subscription information of the second client (e.g., the subscription package of the second client).
[0084] In this application, the region information may include location information, such as geographic location information, for example, a city, district, or county. For example, the region information where a first client is located may be the location of the first client, such as the city or district or county where the first client is located. For example, the region information where a second client is located may be the location of the second client, such as the city or district or county where the second client is located.
[0085] The contract information may include a subscription package, such as a subscription package, subscription rate, subscribed services, or the level corresponding to the rate. For example, the contract information of a first client may include the rate subscribed by the first client, etc., which is not limited in this application. For example, the contract information of a second client may include the rate subscribed by the second client, etc., which is not limited in this application.
[0086] It should be understood that the client information of the first client and the client information of the second client may also have other descriptions, and this application does not limit this.
[0087] In a possible implementation b1, the first server determines a first service set based on the client information of the first client and the client information of the second client. The method may include: the first server sends a second service request message to the second server, and receives the first service set from the second server; wherein the second service request message may include the client information of the first client and the client information of the second client; at least one service included in the first service set matches the client information of the first client and the client information of the second client.
[0088] For example, if at least one service matches the client information of the first client and the client information of the second client, it can be considered that:
[0089] 1) If the service includes an LCN table and the LCN table includes a target region list and / or subscription package, the first and second clients are located in regions permitted by the target region and / or their subscriptions meet the subscription package requirements. (If the LCN table does not include a target region list and subscription package, all clients are assumed to meet the requirements.)
[0090] 2) If the service instance (there may be multiple service instances) includes a subscription package, the first and second clients' contracts meet the subscription package requirements. (If the service instance does not include a subscription package, all clients are considered to meet the requirements.) To provide the service, the first and second clients' contracts must meet the subscription package requirements of at least one service instance.
[0091] 3) If the service includes an LCN table and the LCN table includes a target region list and / or a subscription package, and the Service Instance includes a subscription package, then the first client and the second client must meet requirements 1) and 2) at the same time.
[0092] In this embodiment b1, after receiving the second service request message including the client information of the first client and the client information of the second client from the first server, the second server determines a first service set based on the client information of the first client and the client information of the second client, and sends the first service set to the first server. In this way, the services in the first service set determined by the second server based on the client information of the first client and the client information of the second client are services that can be accessed by both the first client and the second client.
[0093] In a possible implementation b2, a first server determines a first service set based on client information of a first client and client information of a second client. The method may include: the first server sends a third service request message to a second server, receives a second service set from the second server, and then, the first server determines a first service set from the second service set based on the client information of the first client and the client information of the second client. The second service set includes at least one service; and the at least one service included in the first service set matches the client information of the first client and the client information of the second client.
[0094] In this implementation b2, after the second server receives the third service request message from the first server, it returns the second service set that can be provided to the first server to the first server. The first server can determine the services that the first client and the second client can access together in the second service set based on the client information of the first client and the client information of the second client.
[0095] Optionally, the first server may determine at least one service in the second service set that the first client and the second client can access together, that is, determine the first service set.
[0096] In a possible implementation b3, the first server determines a first service set based on the client information of the first client and the client information of the second client. The method may include: the first server sends a fourth service request message to the second server, and the fourth service request message includes the client information of the first client; the first server receives a third service set from the second server, and the third service set includes at least one service; the first server sends a fifth service request message to the second server, and the fifth service request message includes the client information of the second client; the first server receives a fourth service set from the second server, and the fourth service set includes at least one service; finally, the first server determines a first service set based on the third service set and the fourth service set, wherein the third service set and the fourth service set include the first service set; at least one service included in the first service set matches the client information of the first client and the client information of the second client.
[0097] In this implementation b3, after receiving the fourth service request message from the first server, the second server can perform service matching based on the client information of the first client to obtain a third set of services accessible to the first client. After receiving the fifth service request message from the first server, the second server can perform service matching based on the client information of the second client to obtain a fourth set of services accessible to the second client. The first server can then determine, from the third and fourth service sets, services accessible to both the first and second clients, thereby obtaining the first set of services.
[0098] Optionally, the first server may determine at least one service accessible to both the first client and the second client in the third service set and the fourth service set, that is, the first service set includes at least one service accessible to both the first client and the second client.
[0099] Exemplarily, the second server may be a service list server.
[0100] Any of the above service sets can be a service list.
[0101] In one possible manner, before sending any of the above service request messages to the second server, the first server may query the service list registry for the address of the second server, or the first server may obtain the address of the second server according to local configuration.
[0102] Step 303: The first server sends the first service set to the first client. Correspondingly, the first client receives the first service set from the first server.
[0103] Optionally, the first server may further send the address of the second server to the first client, so that the first client can query service information.
[0104] Step 304: The first client determines a first service in the first service set. The first service can be accessed by both the first client and the second client.
[0105] Since the services included in the first service set are services that can be accessed by both the first client and the second client, the first service determined by the first client in the first service set is a service that can be accessed by both the first client and the second client.
[0106] In one example, a first client may determine a first service in a first service set by sending a request message to a content guide server for content guide data corresponding to the first service set, and receiving the content guide data corresponding to the first service set from the content guide server. Furthermore, the first client displays information about services included in the first service set to a user of the first client based on the content guide data corresponding to the first service set, and finally determines the first service in the first service set based on an instruction from the user of the first client.
[0107] Optionally, the user of the first client can use a remote control to select a service from the displayed service information, thereby triggering an instruction to the first client, and the first client determines the service selected by the user (ie, the first service) based on the instruction.
[0108] After the first client determines the first service, the first client may determine a first service instance of the first service. The first service instance includes at least one instance that provides the first service. For example, the first service instance is an instance that provides a service via DVB-DASH, and the instance parameters include the address URI of a media presentation description (MPD) file server. For another example, the first service instance is an instance that provides a service via the real-time streaming protocol (RTSP), and the instance parameters include the address URI for providing media.
[0109] In some embodiments, the first client may send a first message to the second client, and the first message may include information about the first service.
[0110] Exemplarily, the first client may send the first message to the second client via a data channel or RTC network control information.
[0111] Optionally, the information of the first service may include an identifier of the first service, or the information of the first service may include an identifier of the first service and other relevant information of the first service. For example, the identifier of the first service is the ID of the first service, and the identifier of the first service may be represented by a string, a number (such as a number), etc., which is not limited in this application. For example, other relevant information of the first service may include a service name, a service type, a service genre, a service instance, etc.
[0112] Optionally, the first message may further include the address of the second server, so that the second client can query the information of the first service.
[0113] Alternatively, the first client may send the address of the second server to the second client, so that the second client can query the information of the first service.
[0114] After the second client receives the first message, the second client may further determine the first service. For example, the second client may determine the first service through the following three methods:
[0115] In method c1, a second client may send a sixth service request message to a second server, the sixth service request message including client information of the second client. The second client then receives a fifth service set from the second server and determines the first service based on the information of the first service and the fifth service set. The fifth service set includes at least one service, and the at least one service is accessible to the second client.
[0116] In method c1, after receiving the sixth service request message, the second server can match services based on the client information of the second client to obtain a fifth service set. Furthermore, the second client can determine the first service in the fifth service set based on the information of the first service.
[0117] For example, the second client may determine the first service in the fifth service set according to the identifier of the first service.
[0118] Method c2: The second client sends a seventh service request message to the second server; the second client receives a sixth service set from the second server and determines the first service based on information about the first service and the sixth service set. The sixth service set includes at least one service, and the at least one service is accessible to the second client.
[0119] In method c2, after receiving the seventh service request message, the second server may take the services that can be provided to the second client as a sixth service set, and return the sixth service set to the second client.
[0120] In method c1 and method c2, before the second client requests service from the second server, the second client can obtain the address of the second server according to local configuration, or the second client can query the address of the second server from the service list registry, or the second client can obtain the address of the second server from the second client.
[0121] It should be understood that in the above methods c1 and c2, the second client requesting services from the second server is merely an example. Optionally, the second server may be replaced by a third server. In other words, the first client and the second client may request services from the same server or from different servers, and this application does not limit this.
[0122] Method c3: The second client determines the first service according to the information of the first service.
[0123] After the second client determines the first service, it can determine a second service instance of the first service. For example, the second service instance includes at least one instance that provides the first service. For example, the second service instance is an instance that provides a service via DVB-DASH, and the instance parameters include the address URI of the MPD file server. For another example, the second service instance is an instance that provides a service via RTSP, and the instance parameters include the address URI of the media server.
[0124] Optionally, the first service instance of the first service and the second service instance of the first service may be the same or different.
[0125] In some embodiments, a first client may send a first request message to a first playlist server. The first request message is used to request media resources corresponding to a first service. The first request message may include a first address of the first service. The first playlist server may determine the media resources corresponding to the first service based on the first address of the first service and send the media resources corresponding to the first service to the first client. The first client may then play the media resources corresponding to the first service.
[0126] In other embodiments, the first client may use the DASH protocol to obtain media resources. For example, the first client may send a first MPD request message to a first MPD server. The first MPD request message may include the first address of the first service. The first MPD server determines the first MPD file corresponding to the first service based on the first address of the first service and sends the first MPD file to the first client. Furthermore, the first client sends a first media request message to a first media stream server. The first media request message is used to request the media file corresponding to the first MPD file. The first media stream server sends the first media file to the first client. The first media file corresponds to the first service. The first client can then play the first media file corresponding to the first service.
[0127] In one possible approach, the second client may send a second request message to the second playlist server. The second request message is used to request the media resource corresponding to the first service. The second request message may include the second address of the first service. The second playlist server may determine the media resource corresponding to the first service based on the second address of the first service and send the media resource corresponding to the first service to the second client. The second client may then play the media resource corresponding to the first service.
[0128] In another possible approach, the second client can use the DASH protocol to obtain media resources. For example, the second client can send a second MPD request message to the second MPD server. The second MPD request message can include the second address of the first service. The second MPD server determines the second MPD file corresponding to the first service based on the second address of the first service and sends the second MPD file to the second client. Furthermore, the second client sends a second media request message to the second media streaming server. The second media request message is used to request the media file corresponding to the second MPD file. The second media streaming server sends the second media file to the second client. The second media file corresponds to the first service. The second client can then play the second media file corresponding to the first service.
[0129] Optionally, the first playlist server and the second playlist server may be the same or different, and this application does not limit this.
[0130] The first MPD server and the second MPD server may be the same or different, and this application does not limit this.
[0131] The first media stream server and the second media stream server may be the same or different, and this application does not limit this.
[0132] In an optional implementation, the first client may send playback synchronization information to the second client, so that the first client and the second client can play synchronously, thereby achieving synchronous viewing.
[0133] Based on the above service identification method, the first client can determine the services that are commonly accessed by the first and second clients, thereby ensuring that multiple users can access the same service, successfully achieving simultaneous viewing and improving the user experience. At the same time, the first client does not need to obtain the client information of the second client, which can protect the second client's information.
[0134] Based on the above embodiments, the method for determining the service provided by the embodiment of the present application is described in detail below through the example shown in Figure 4. It should be understood that the following examples are only exemplary and are not intended to limit the present application. In this example, the first client and the second client use the same server (such as the second server, playlist server, etc.). The first server is a synchronous movie viewing server.
[0135] For example, FIG4 illustrates an example of a method for determining a service. In this example, a first client sends the identifiers of the first client and the second client to a synchronous movie viewing server. The synchronous movie viewing server determines the client information of the first client and the client information of the second client based on the identifiers of the first client and the second client, respectively. After interacting with the second service, the synchronous movie viewing server returns to the first client a service that both the first client and the second client can access. For example, referring to FIG4 , the process of this example may include the following steps:
[0136] Step 401: The first client determines to initiate synchronous movie viewing.
[0137] The first client chooses to watch a movie synchronously with the second client.
[0138] Step 402: The first client establishes a media interface and a data channel with the second client via the RTC network.
[0139] Exemplarily, the first client may send a request to the RTC network to establish a video call or video conference with the second client, so that the first client and the second client can establish a media interface and a data channel.
[0140] Step 401 and step 402 may also be performed after step 409, which is not limited in this application.
[0141] Step 403: The first client sends a first service request message to the synchronous movie viewing server. The first service request message includes the identifier of the first client and the identifier of the second client.
[0142] Step 404: The synchronous movie viewing server determines the client information of the first client and the client information of the second client according to the identifier of the first client and the identifier of the second client respectively, and sends a second service request message to the second server, where the second service request message includes the client information of the first client and the client information of the second client.
[0143] For the client information of the first client and the client information of the second client, reference may be made to the relevant description involved in the embodiment shown in FIG3 , and will not be repeated here.
[0144] Step 405: The second server determines a first service set according to the client information of the first client and the client information of the second client, and sends the first service set to the synchronous movie viewing server.
[0145] For the first service set, reference may be made to the relevant description involved in the embodiment shown in FIG3 , which will not be repeated here.
[0146] Step 406: The synchronous movie viewing server sends a first service set to the first client.
[0147] Step 407: Optionally, the first client sends a request message to the content guide server to obtain content guide data corresponding to the first service set.
[0148] Optionally, the first service set also includes the address of the content guide server. The first client may send a request message to the content guide server based on the address of the content guide server to obtain content guide data corresponding to the first service set.
[0149] Step 408: The content guide server sends content guide data corresponding to the first service set to the first client.
[0150] Step 409: The first client displays service information that can be accessed by the first client and the second client to the user of the first client. If content guide data is requested, the displayed information also includes the content guide data. Based on the instructions of the user of the first client, the first service is determined in the first service set, and the first service instance of the first service is determined.
[0151] The description of how the first client determines the first service in the first service set based on the instruction of the user of the first client can be found in the description in the embodiment shown in FIG3 , which will not be repeated here.
[0152] Step 410: The first client sends a first message to the second client. The first message may include information about the first service.
[0153] The description of the information of the first service can be found in the description of the embodiment shown in FIG3 , which will not be repeated here.
[0154] Step 411: The second client sends a sixth service request message to the second server, where the sixth service request message includes client information of the second client.
[0155] Optionally, if the information of the first service includes an identifier of the first service, the second client executes step 411 .
[0156] Step 412: The second server determines a fifth service set according to the client information of the second client, and sends the fifth service set to the second client.
[0157] Step 413: The first client sends a first request message to the playlist server. The first request message is used to request the media resource corresponding to the first service. The first request message may include a first URI corresponding to the media resource of the first service.
[0158] Step 414: The playlist server determines the media resource corresponding to the first service according to the first URI of the first service, and sends the media resource corresponding to the first service to the first client.
[0159] Step 415: The first client plays the media resource corresponding to the first service.
[0160] Step 416: The second client determines the first service according to the information of the first service and the fifth service set, and determines a second service instance of the first service.
[0161] Step 417: The second client sends a second request message to the playlist server. The second request message is used to request the media resource corresponding to the first service. The second request message may include a second URI corresponding to the media resource of the first service.
[0162] Step 418: The playlist server determines the media resource corresponding to the first service according to the second URI of the first service, and sends the media resource corresponding to the first service to the second client.
[0163] Step 419: The second client plays the media resource corresponding to the first service.
[0164] Step 420: The first client sends playback synchronization information to the second client, so that the first client and the second client can play synchronously.
[0165] Through the above example, the first client can select a service that is accessible to both the first and second clients based on the services returned by the synchronous viewing server, thereby ensuring that multiple users can access the same service. At the same time, the first client does not need to obtain the client information of the second client, which can protect the second client's information.
[0166] Based on the above embodiments, embodiments of the present application further provide a device for determining a service. Referring to FIG5 , the device 500 for determining a service may include a communication unit 501 and a processing unit 502. The communication unit 501 is used for the device 500 for determining a service to communicate, such as receiving information (messages or data) or sending information (messages or data), and the processing unit 502 is used to control and manage the actions of the device 500 for determining a service. The processing unit 502 may also control the steps performed by the communication unit 501.
[0167] For example, the service-determined device 500 may specifically be the first client in the above-mentioned embodiment, the processor of the first client, or a chip, or a chip system, or a functional module, etc. Alternatively, the service-determined device 500 may specifically be the first server in the above-mentioned embodiment, the processor in the first server, or a chip, or a chip system, or a functional module, etc. Alternatively, the service-determined device 500 may specifically be the second client in the above-mentioned embodiment, the processor in the second client, or a chip, or a chip system, or a functional module, etc.
[0168] In one embodiment, when the service determination device 500 is used to implement the function of the first client in the above embodiment, the communication unit 501 can be used to send a first service request message to the first server, and the first service request message includes the identifier of the first client and the identifier of the second client; and, receive a first service set from the first server, the first service set includes at least one service, and the at least one service is used for access by the first client and the second client; the processing unit 502 can be used to determine a first service in the first service set, and the first service is used for common access by the first client and the second client.
[0169] In an optional implementation, the communication unit 502 may also be configured to send a first message to the second client, where the first message includes information about the first service.
[0170] Optionally, the information of the first service includes an identifier of the first service.
[0171] Exemplarily, the first message further includes an address of a second server, and the second server is used to provide a service for querying information of the first service to the client.
[0172] In one embodiment, when the service determination device 500 is used to implement the function of the first server in the above embodiment, the communication unit 501 can be used to receive a first service request message from a first client, and the first service request message includes the identifier of the first client and the identifier of the second client; the processing unit 502 can be used to determine a first service set based on the identifier of the first client and the identifier of the second client, and the first service set includes at least one service, and the at least one service is used for access by the first client and the second client; the communication unit 501 can also be used to send the first service set to the first client.
[0173] Optionally, when determining the first service set based on the identifier of the first client and the identifier of the second client, the processing unit 502 can be used to: determine the client information of the first client based on the identifier of the first client, and determine the client information of the second client based on the identifier of the second client; determine the first service set based on the client information of the first client and the client information of the second client.
[0174] In one example, when determining the first service set based on the client information of the first client and the client information of the second client, the processing unit 502 is used to: control the communication unit 501 to send a second service request message to the second server, wherein the second service request message includes the client information of the first client and the client information of the second client; and control the communication unit 501 to receive the first service set from the second server, wherein the at least one service included in the first service set matches the client information of the first client and the client information of the second client.
[0175] In another example, when determining the first service set based on the client information of the first client and the client information of the second client, the processing unit 502 is used to: control the communication unit 501 to send a third service request message to the second server; control the communication unit 501 to receive a second service set from the second server, the second service set including at least one service; determine the first service set in the second service set based on the client information of the first client and the client information of the second client, wherein the at least one service included in the first service set matches the client information of the first client and the client information of the second client.
[0176] In another example, when the first server determines the first service set based on the client information of the first client and the client information of the second client, the processing unit 502 is used to: control the communication unit 501 to send a fourth service request message to the second server, wherein the fourth service request message includes the client information of the first client; control the communication unit 501 to receive a third service set from the second server, wherein the third service set includes at least one service; control the communication unit 501 to send a fifth service request message to the second server, wherein the fifth service request message includes the client information of the second client; control the communication unit 501 to receive a fourth service set from the second server, wherein the fourth service set includes at least one service; determine the first service set based on the third service set and the fourth service set, wherein the third service set and the fourth service set include the first service set; and the at least one service included in the first service set matches the client information of the first client and the client information of the second client.
[0177] In an optional embodiment, when determining the client information of the first client based on the identifier of the first client and determining the client information of the second client based on the identifier of the second client, the processing unit 502 is used to: determine the client information of the first client in the local configuration information based on the identifier of the first client, and determine the client information of the second client in the local configuration information based on the identifier of the second client; or obtain the client information of the first client from the first device based on the identifier of the first client, and obtain the client information of the second client from the first device based on the identifier of the second client.
[0178] Exemplarily, the client information of the first client includes at least one of the following information: area information where the first client is located and contract information of the first client; the client information of the second client includes at least one of the following information: area information where the second client is located and contract information of the second client.
[0179] Optionally, the communication unit 501 may also be configured to send an address of a second server to the first client, where the address of the second server is used to provide the client with a service for querying service information.
[0180] In one embodiment, when the service determination device 500 is used to implement the functions of the second client in the above embodiment, the communication unit 501 can be used to receive a first message from the first client, the first message including information about a first service, the first service being used for simultaneous access by the first client and the second client. The processing unit 502 can be used to control the operation of the communication unit 501.
[0181] In an optional embodiment, the communication unit 501 can also be used to send a sixth service request message to the second server, wherein the sixth service request message includes client information of the second client; receive a fifth service set from the second server, wherein the fifth service set includes at least one service, and the at least one service is used for access by the second client; the processing unit 502 can also be used to determine the first service based on the information of the first service and the fifth service set.
[0182] In another optional embodiment, the communication unit 501 can also be used to send a seventh service request message to the second server; receive a sixth service set from the second server, the sixth service set including at least one service, and the at least one service is used for access by the second client; the processing unit 502 can also be used to determine the first service based on the information of the first service and the sixth service set.
[0183] For example, the client information of the second client includes at least one of the following information: area information where the second client is located and contract information of the second client.
[0184] In yet another optional implementation, the processing unit 502 may also be configured to determine the first service according to the information of the first service.
[0185] Optionally, the information of the first service includes an identifier of the first service.
[0186] In some embodiments, the communication unit 501 may also be configured to receive an address of a second server from the first client, where the address of the second server is used to provide the client with a service for querying information about the first service.
[0187] It should be noted that the division of units in the embodiments of the present application is schematic and is merely a logical functional division. In actual implementation, other division methods may be used. The functional units in the embodiments of the present application may be integrated into a single processing unit, or each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.
[0188] If 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. Based on this understanding, the technical solution 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 for enabling a computer device (which can be a personal computer, server, or network device, etc.) or a processor to execute 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 a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
[0189] Based on the above embodiments, the embodiments of the present application further provide a device for determining a service. Referring to FIG6 , the device for determining a service 600 may include a processor 602. Optionally, the device for determining a service 600 may further include a communication interface 601. Optionally, the device for determining a service 600 may further include a memory 603. The memory 603 may be disposed inside the device for determining a service 600 or outside the device for determining a service 600. The processor 602 may control the communication interface 601 to receive and send information, messages, or data.
[0190] Specifically, the processor 602 may be a central processing unit (CPU), a network processor (NP), or a combination of a CPU and an NP. The processor 602 may further include a hardware chip. The hardware chip may be an application-specific integrated circuit (ASIC), a programmable logic device (PLD), or a combination thereof. The PLD may be a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof.
[0191] The communication interface 601, the processor 602, and the memory 603 are interconnected. Optionally, the communication interface 601, the processor 602, and the memory 603 are interconnected via a bus 604; the bus 604 may be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus. Such buses can be classified as address buses, data buses, control buses, and the like. For ease of illustration, FIG6 shows only one thick line, but this does not imply that there is only one bus or only one type of bus.
[0192] In an optional embodiment, the memory 603 is used to store programs, etc. Specifically, the programs may include program code, which includes computer operating instructions. The memory 603 may include RAM, or may also include non-volatile memory (non-volatile memory), such as one or more disk storage devices. The processor 602 executes the application stored in the memory 603 to implement the above functions, thereby realizing the functions of the service determination device 600.
[0193] Exemplarily, the communication device 600 determined by the service may be the first client in the above embodiment; may also be the first server in the above embodiment; or may also be the second client in the above embodiment.
[0194] In one embodiment, when the service-determined communication device 600 implements the functions of the first client in the aforementioned method embodiment, the communication interface 601 can implement the sending and receiving operations performed by the first client in the aforementioned method embodiment; and the processor 602 can implement other operations performed by the first client in the aforementioned method embodiment in addition to the sending and receiving operations. For specific details, please refer to the relevant descriptions in the aforementioned method embodiment and will not be described in detail here.
[0195] In another embodiment, when the service-determined communication device 600 implements the functions of the first server in the aforementioned method embodiment, the communication interface 601 may implement the transceiver operations performed by the first server in the aforementioned method embodiment; and the processor 602 may implement other operations performed by the first server in the aforementioned method embodiment in addition to the transceiver operations. Specific details can be found in the relevant descriptions of the aforementioned method embodiment and will not be detailed here.
[0196] In another embodiment, when the service-determined communication device 600 implements the functions of the second client in the aforementioned method embodiment, the communication interface 601 may implement the transceiver operations performed by the second client in the aforementioned method embodiment; and the processor 602 may implement other operations performed by the second client in the aforementioned method embodiment in addition to the transceiver operations. Specific details can be found in the relevant descriptions of the aforementioned method embodiment and will not be detailed here.
[0197] Based on the above embodiments, an embodiment of the present application provides a system, which may include the first client, the first server, and the second client involved in the above embodiments.
[0198] An embodiment of the present application further provides a computer-readable storage medium, which is used to store a computer program. When the computer program is executed by a computer, the computer can implement the service determination method provided by the above method embodiment.
[0199] An embodiment of the present application further provides a computer program product, which is used to store a computer program. When the computer program is executed by a computer, the computer can implement the service determination method provided by the above method embodiment.
[0200] An embodiment of the present application also provides a chip, including a processor, which is coupled to a memory and is used to call a program in the memory so that the chip implements the service determination method provided by the above method embodiment.
[0201] An embodiment of the present application further provides a chip, which is coupled to a memory and is used to implement the service determination method provided in the above method embodiment.
[0202] Those skilled in the art will appreciate that the embodiments of the present application can be provided as methods, systems, or computer program products. Therefore, the present application can adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application can adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.
[0203] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the present application. It should be understood that each flow and / or box in the flow chart and / or block diagram, as well as the combination of the flow chart and / or box in the flow chart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device produce a device for implementing the functions specified in one or more flow charts and / or one or more boxes in the block diagram.
[0204] These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce a product including an instruction device that implements the functions specified in one or more processes in the flowchart and / or one or more boxes in the block diagram.
[0205] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, so that the instructions executed on the computer or other programmable device provide steps for implementing the functions specified in one or more processes in the flowchart and / or one or more boxes in the block diagram.
[0206] Obviously, those skilled in the art may make various changes and modifications to the present application without departing from the scope of the present application. Thus, if these modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is intended to include these modifications and variations.
Claims
1. A method for determining a service, characterized in that: include: The first client sends a first service request message to the first server, where the first service request message includes an identifier of the first client and an identifier of a second client; The first client receives a first service set from the first server, where the first service set includes at least one service, and the at least one service is used for access by the first client and the second client; The first client determines a first service in the first service set, where the first service is used for common access by the first client and the second client.
2. The method according to claim 1, characterized in that The method further comprises: The first client sends a first message to the second client, where the first message includes information about the first service.
3. The method according to claim 2, characterized in that The information of the first service includes an identifier of the first service.
4. The method according to claim 2 or 3, characterized in that The first message also includes an address of a second server, and the second server is used to provide a service for querying information of the first service to the client.
5. A method for determining a service, characterized in that: include: The first server receives a first service request message from a first client, where the first service request message includes an identifier of the first client and an identifier of a second client; The first server determines a first service set according to the identifier of the first client and the identifier of the second client, where the first service set includes at least one service, and the at least one service is used for access by the first client and the second client; The first server sends the first service set to the first client.
6. The method according to claim 5, characterized in that The first server determines a first service set according to the identifier of the first client and the identifier of the second client, including: The first server determines the client information of the first client according to the identifier of the first client, and determines the client information of the second client according to the identifier of the second client; The first server determines the first service set according to the client information of the first client and the client information of the second client.
7. The method according to claim 6, characterized in that The first server determines the first service set according to the client information of the first client and the client information of the second client, including: The first server sends a second service request message to the second server, where the second service request message includes client information of the first client and client information of the second client; The first server receives the first service set from the second server, and the at least one service included in the first service set matches the client information of the first client and the client information of the second client.
8. The method according to claim 6, characterized in that The first server determines the first service set according to the client information of the first client and the client information of the second client, including: The first server sends a third service request message to the second server; The first server receives a second service set from the second server, the second service set including at least one service; The first server determines the first service set in the second service set according to the client information of the first client and the client information of the second client, wherein the at least one service included in the first service set matches the client information of the first client and the client information of the second client.
9. The method according to claim 6, characterized in that The first server determines the first service set according to the client information of the first client and the client information of the second client, including: The first server sends a fourth service request message to the second server, where the fourth service request message includes client information of the first client; The first server receives a third service set from the second server, the third service set including at least one service; The first server sends a fifth service request message to the second server, where the fifth service request message includes client information of the second client; The first server receives a fourth service set from the second server, the fourth service set including at least one service; The first server determines the first service set based on the third service set and the fourth service set, wherein the third service set and the fourth service set include the first service set; and the at least one service included in the first service set matches the client information of the first client and the client information of the second client.
10. The method according to any one of claims 6 to 9, characterized in that: The first server determines the client information of the first client according to the identifier of the first client, and determines the client information of the second client according to the identifier of the second client, including: The first server determines the client information of the first client in local configuration information according to the identifier of the first client, and determines the client information of the second client in the local configuration information according to the identifier of the second client; or The first server obtains the client information of the first client from the first device according to the identifier of the first client, and obtains the client information of the second client from the first device according to the identifier of the second client.
11. The method according to any one of claims 6 to 10, characterized in that: The client information of the first client includes at least one of the following information: area information where the first client is located and contract information of the first client; the client information of the second client includes at least one of the following information: area information where the second client is located and contract information of the second client.
12. The method according to any one of claims 5 to 11, characterized in that: The method further comprises: The first server sends the address of the second server to the first client, and the address of the second server is used to provide a service of querying service information to the client.
13. A method for determining a service, characterized in that: include: The second client receives a first message from the first client, where the first message includes information about a first service, and the first service is used for synchronous access by the first client and the second client.
14. The method according to claim 13, characterized in that The method further comprises: The second client sends a sixth service request message to the second server, where the sixth service request message includes client information of the second client; The second client receives a fifth service set from the second server, the fifth service set including at least one service, and the at least one service is used for the second client to access; The second client determines the first service according to the information of the first service and the fifth service set.
15. The method according to claim 13, characterized in that The method further comprises: The second client sends a seventh service request message to the second server; The second client receives a sixth service set from the second server, where the sixth service set includes at least one service, and the at least one service is used for access by the second client; The second client determines the first service according to the information of the first service and the sixth service set.
16. The method according to claim 14, characterized in that The client information of the second client includes at least one of the following information: area information where the second client is located and contract information of the second client.
17. The method according to claim 13, characterized in that The method further comprises: The second client determines the first service according to the information of the first service.
18. The method according to any one of claims 13 to 17, characterized in that: The information of the first service includes an identifier of the first service.
19. The method according to any one of claims 13 to 18, characterized in that: The method further comprises: The second client receives the address of a second server from the first client, where the address of the second server is used to provide the client with a service for querying information of the first service.
20. A device for determining a service, characterized in that: The method comprises a module or unit for executing the method described in any one of claims 1 to 4, or comprises a module or unit for executing the method described in any one of claims 5 to 12, or comprises a module or unit for executing the method described in any one of claims 13 to 19.
21. A device for determining a service, characterized in that: The invention comprises a processor coupled to a memory, wherein: The processor is used to call the computer instructions in the memory so that the service determination device executes the method according to any one of claims 1-4, or executes the method according to any one of claims 5-12, or executes the method according to any one of claims 13-19.
22. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer-executable instructions, which, when called by the computer, execute the method according to any one of claims 1 to 4, or the method according to any one of claims 5 to 12, or the method according to any one of claims 13 to 19.
23. A computer program product, characterized in that Contains instructions, which, when executed on a computer, cause the method according to any one of claims 1 to 4, or the method according to any one of claims 5 to 12, or the method according to any one of claims 13 to 19 to be executed.
24. A chip, characterized in that: The chip is coupled to the memory and is used to read and execute program instructions stored in the memory to implement the method as described in any one of claims 1-4, or to implement the method as described in any one of claims 5-12, or to implement the method as described in any one of claims 13-19.
Citation Information
Patent Citations
System and method for organizing group content presentations and group communications during the same
CN101449582A
Digital television-based home theater implementation method, device, system and client
CN105049898A
Authorization method, authorization server, resource server, and client device
WO2023045663A1