Service determination method and device
Through collaboration between the client and the server, services that multiple users can access together are determined and provided, which solves the problem that multiple users have difficulty accessing the same service, and realizes synchronous viewing and improving user experience.
Patent Information
- Application Number
- CN202311290423.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-09-28
- Publication Date
- 2025-03-28
AI Technical Summary
In synchronous movie viewing scenarios, it is difficult for many users to access the same service, which affects the user experience.
Through collaboration between the client and the server, services that multiple users can access together are identified and provided. The specific steps include: the client sends a service request message to the server, the server determines the accessible service set based on the client identification, and returns the set to the client.
Ensure that multiple users can access the same service, thereby achieving synchronous viewing and improving user experience.
Smart Images

Figure CN119729077A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of communication technology, and in particular to a method and device for determining a service. Background Art
[0002] With the growth of bandwidth and the improvement of hardware performance, the demand for synchronous viewing is becoming more and more common in order to improve user experience and participation. Synchronous viewing allows multiple users to watch the same media file or program simultaneously across terminals and regions. For example, multiple users can watch a football game together. The prerequisite for synchronous viewing is that multiple users need to access the same service (i.e., media file or program, etc.) to achieve synchronous viewing. Therefore, a service determination method is urgently needed to ensure that multiple users can access the same service. Summary of the invention
[0003] The present application provides a method and device for determining a service, so as to ensure that multiple users can access the same service.
[0004] 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, and the first service is used for the first client and the second client to access together. 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, and the at least one service is used for the first client and the second client to access.
[0005] Through the above method, the first client can determine the services that are accessed by the first client and the second client together, thereby ensuring that multiple users access the same service, thereby successfully achieving synchronous viewing and improving user experience.
[0006] In one possible design, the first client sends a first message to the second client, and 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, so as to implement the same service that can be accessed by both the first client and the second client.
[0007] In a 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.
[0008] In a possible design, the first message also includes the address of a second server, and the second server is used to provide a service for querying information about the first service to the client, so that the second client can query information about the first service through the second server.
[0009] 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 receives a first service request message from a first client, the first service request message includes an identifier of the first client and an identifier of a second client; then, the first server determines a first service set according to the identifier of the first client and the identifier of the second client, and sends the first service set to the first 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.
[0010] 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.
[0011] In a possible design, the first server determines the first service set according to the identifier of the first client and the identifier of the second client, and the method may be: 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; then, 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. In this way, the first server can accurately determine the services that the first client and the second client can access together.
[0012] In a 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, and 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; 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 through the second server.
[0013] In a possible design, 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, and 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, and the second service set includes at least one service; finally, 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. In this way, the first server can accurately determine the services that the first client and the second client can access together according to the client information of the first client and the client information of the second client.
[0014] In a possible design, 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, and the method may be: 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 the first service set according to 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.
[0015] In a possible design, 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, and the method may be: the first server determines the client information of the first client in the 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. 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.
[0016] 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.
[0017] In a possible design, the first server may send the address of the second server to the first client, and 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 information of the corresponding service, and the address of the second server may be sent to the second client to enable the second client to query the information of the first service.
[0018] 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, 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. In this way, the second client can determine the service that the first client and the second client access together based on the information of the first service, thereby ensuring that multiple users access the same service, thereby successfully achieving synchronous viewing and improving user experience.
[0019] In a 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 of the first service and the fifth service set. The sixth service request message includes the client information of the second client; the fifth service set includes at least one service, and the at least one service is used for the second client to access. In this way, the second client can accurately determine the first service to access the same service as the first client, and successfully achieve synchronous viewing.
[0020] In a 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 of the first service and the sixth service set. The sixth service set includes at least one service, and the at least one service is accessed by the second client. In this way, the second client can accurately determine the first service to access the same service as the first client, and successfully achieve synchronous viewing.
[0021] 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.
[0022] In a possible design, the second client can determine the first service according to 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, and successfully achieve synchronous viewing.
[0023] In a possible design, the information of 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.
[0024] In a possible design, the second client receives the address of the 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.
[0025] In a fourth aspect, the present application further provides a device for determining a service, which can be applied to a first client, and the device for determining a service has the function of implementing the method in the first aspect or each possible design example 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.
[0026] 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 elaborated here.
[0027] In one possible design, the structure of the service determination 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, etc., and to communicate and interact with other devices in the system, and the processor is configured to support the service determination device to perform the corresponding functions in the above-mentioned first aspect or each possible design example of the first aspect. The memory is coupled to the processor, and stores the necessary program instructions and data of the service determination device.
[0028] In a fifth aspect, the present application further provides a device for determining a service, which can be applied to a first server, and the device for determining a service has the function of implementing the method in the second aspect or each possible design example 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.
[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 second aspect or various possible design examples of the second aspect, which are not elaborated here.
[0030] In one possible design, the structure of the service determination 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, etc., and to communicate and interact with other devices in the system, and the processor is configured to support the service determination device to perform the corresponding functions in the above-mentioned second aspect or each possible design example of the second aspect. The memory is coupled to the processor, and stores the necessary program instructions and data of the service determination device.
[0031] In a sixth aspect, the present application further provides a device for determining a service, which can be applied to a second client, and the device for determining a service has the function of implementing the method in the third aspect or each possible design example 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.
[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 methods in the above-mentioned third aspect or various possible design examples of the third aspect, which are not elaborated here.
[0033] In one possible design, the structure of the service determination 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, etc., and to communicate and interact with other devices in the system, and the processor is configured to support the service determination device to perform the corresponding functions in the third aspect or each possible design example of the third aspect. The memory is coupled to the processor, and stores the necessary program instructions and data for the service determination device.
[0034] In a seventh aspect, an embodiment of the present application provides a system, which may include a first client, a second client, and a first server. The first client is used to implement the method in the first aspect or each possible design example of the first aspect. The first server is used to implement the method in the second aspect or each possible design example of the second aspect. The second client is used to implement the method in the third aspect or each possible design example of the third aspect.
[0035] In the eighth aspect, a computer-readable storage medium provided by an embodiment of the present application stores program instructions, and 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 in the second aspect and any possible design thereof, or in 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 a non-transient computer-readable medium, a random-access memory (RAM), a read-only memory (ROM), an electrically erasable programmable read-only memory (EEPROM), a CD-ROM or other optical disk storage, a disk storage medium or other magnetic storage device, or any other medium that can be used to carry or store the desired program code in the form of an instruction or data structure and can be accessed by a computer.
[0036] 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.
[0037] 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 of it.
[0038] 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 schemes in the first aspect, or the above-mentioned second aspect or the various possible schemes in the second aspect, or the third aspect and the various possible schemes in the third aspect, and no repetition will be given here. BRIEF DESCRIPTION OF THE DRAWINGS
[0039] Figure 1 A schematic diagram of the architecture of an IPTV system provided for this application;
[0040] Figure 2 A schematic diagram of the DVB-I architecture provided in this application;
[0041] Figure 3 A flowchart of a method for determining a service provided by the present application;
[0042] Figure 4 A flowchart of an example of a method for determining a service provided by the present application;
[0043] Figure 5 A schematic diagram of the structure of a device determined for a service provided by the present application;
[0044] Figure 6 A structural diagram of an apparatus for determining a service provided by the present application. DETAILED DESCRIPTION
[0045] The present application will be described in further detail below in conjunction with the accompanying drawings.
[0046] The embodiments of the present application provide a method and device for determining a service, so as to ensure that multiple users can access the same service. The method and device described in the present application are based on the same technical concept. Since the method and device solve the problem in a similar way, the implementation of the device and the method can refer to each other, and the repeated parts will not be repeated.
[0047] 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.
[0048] 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, c can be single or plural.
[0049] 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: A exists alone, A and B exist at the same time, and B exists alone, where A and B can be singular or plural. " / " means "or", for example, a / b means a or b.
[0050] 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.
[0051] The embodiments of the present application can be applied to various business scenarios such as internet protocol television (IPTV), digital broadcasting, and OTT (over the top) video.
[0052] For example, Figure 1 The architecture of an IPTV system to which the service determination method provided in the embodiment of the present application is applicable is shown. 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. Figure 1 In the figure, a plurality of clients including client 1, client 2 and client 3 are taken as an example.
[0053] Among them, the content provider can provide IPTV media stream (IPTV media stream) to the client through the IPTV platform.
[0054] The business operating support system (BOSS) of the IPTV management network is used for user account opening management and provides user account opening data (user onboarding) to the IPTV platform. In turn, the IPTV platform can authenticate and authorize user service access, while the content delivery network (CDN) transmits IPTV media streams to the client through the bearer network.
[0055] The IPTV management platform can provide the account opening data to the RTC network. In turn, the RTC network can transmit RTC signaling to the client through the bearer network, and the RTC network can establish an RTC media or data channel with the client through the bearer network.
[0056] For example, the RTC network may include a website RTC (WebRTC) and an IP multimedia subsystem (IMS), etc.
[0057] The multiple clients may include a master client, which can initiate synchronous viewing (also known as cloud viewing), that is, the master client can invite other clients to achieve multi-client synchronous playback of the same media file. Figure 1 Client 1 can be the main client, and client 1 initiates synchronous viewing with client 2 and client 3.
[0058] The client may be a digital video broadcasting-internet (DVB-I) client. For example, the client may 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 may include an IPTV application (application, app) and / or an IPTV software development kit (software development kit, SDK), and the client may receive IPTV media streams or IPTV identity authentication information through the IPTV app or IPTV SDK. The client may also include an RTC app, and the client may receive RTC signals and maintain RTC media or data channels through the RTC app.
[0059] It should be understood that Figure 1 This is merely an illustrative description of a system to which the embodiments of the present application are applicable and is not intended to limit the present application.
[0060] Currently, DVB-I is a specification defined by digital video broadcasting (DVB) for discovering services on the Internet. The architecture diagram of DVB-I can be shown as follows: Figure 2 As shown. Among them:
[0061] The content / service provider sends the service list that can be provided to the service list server. The service list server registers the service list access entry address (such as the uniform resource locator (URL)) to the service list registry. When the DVB-I client wants to discover a service, the DVB-I client obtains the service list access entry address from the service list registry through the address of the service list registry. The DVB-I client then queries the corresponding service list through the access entry address.
[0062] In a service list, a logical channel number (LCN) list (table) and a service list may be included. The LCN table may include 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 contract package applicable to the LCN. 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 (Digital Video Broadcasting-Terrestrial, DVB-T), DVB-based on hypertext transfer protocol (hyper text transfer protocol, HTTP) dynamic adaptive streaming (dynamic adaptive streaming over HTTP, DASH), digital cable TV (Digital Video Broadcasting-Cable, DVB-C), and digital satellite TV (Digital Video Broadcasting-Satellite, DVB-S), etc.). The service instance includes priority and subscription package. The subscription package included in the service instance is used to indicate the subscription package applicable to the service instance.
[0063] 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 and its own region and subscription information, and display the matched services and LCN to the user according to the content guide data.
[0064] In a scenario where synchronized viewing is required, the user as the main 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 that can be accessed by users of the main client to the user, the user 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 a service, which can ensure that multiple users access the same service, thereby successfully achieving synchronized viewing and improving the user experience.
[0065] Based on the above description, this embodiment of the application provides a method for determining a service. Figure 3 As shown, the method may include the following steps:
[0066] 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.
[0067] 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.
[0068] 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.
[0069] 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 except the second client. Here, only the second client is used as an example for explanation, and the same is true for other clients. This application does not limit this.
[0070] In some embodiments, the first client may pre-store the identification of the second client.
[0071] 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 and the like.
[0072] Optionally, the first client and the second client may be DVB-I clients.
[0073] 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.
[0074] 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.
[0075] In an optional implementation, 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.
[0076] 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:
[0077] 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.
[0078] In method a1, the first server local configuration includes client information of the first client and 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.
[0079] 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.
[0080] Exemplarily, 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 (such as the region of the first client) and contract information of the first client (such as 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 (such as the region of the second client) and contract information of the second client (such as the subscription package of the second client).
[0081] In the present application, the region information may include location information, such as geographical location information, for example, a city, district, or county. For example, the region information where the first client is located may be the location where the first client is located, such as the city or district where the first client is located. For example, the region information where the second client is located may be the location where the second client is located, such as the city or district where the second client is located.
[0082] The contract information may include a subscription package, such as a subscribed package, a subscribed rate, a subscribed service or a level corresponding to the rate, etc. For example, the contract information of the 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 the second client may include the rate subscribed by the second client, etc., which is not limited in this application.
[0083] 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.
[0084] 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.
[0085] For example, at least one service matches the client information of the first client and the client information of the second client, which may be considered as follows:
[0086] 1) If the service includes an LCN table and the LCN table includes a target region list and / or a subscription package, the regions where the first client and the second client are located are within the regions allowed by the target region and / or the contracts of the first client and the second client meet the requirements of the subscription package. (If the LCN table does not include a target region list and a subscription package, it is assumed that all clients meet the requirements).
[0087] 2) If the Service Instance (there may be multiple Service Instances) of the service includes a subscription package, the contract between the first client and the second client meets the requirements of the subscription package (if the Service Instance does not include a subscription package, it is considered that all clients meet the requirements). In order to provide the service, the contract between the first client and the second client must meet the requirements of the subscription package of at least one Service Instance.
[0088] 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, the first client and the second client must meet requirements 1) and 2) at the same time.
[0089] In this implementation b1, after the second server receives 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, it determines the 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 first server. In this way, the services in the first service set determined by the second server according to 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.
[0090] In a possible implementation b2, 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, and the method may include: the first server sends a third service request message to the second server, receives the second service set from the second server, and then 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. 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.
[0091] 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.
[0092] Optionally, the first server may determine at least one service in the second service set that can be accessed by the first client and the second client together, that is, determine the first service set.
[0093] 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, 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, the third service set includes at least one service; the first server sends a fifth service request message to the second server, 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, 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.
[0094] In this implementation b3, after the second server receives the fourth service request message from the first server, it can match services according to the client information of the first client, and obtain the third service set that the first client can access; after the second server receives the fifth service request message from the first server, it can match services according to the client information of the second client, and obtain the fourth service set that the second client can access. Afterwards, the first server can determine the services that both the first client and the second client can access in the third service set and the fourth service set, that is, obtain the first service set.
[0095] 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.
[0096] Exemplarily, the second server may be a service list server.
[0097] Any of the above service sets can be a service list.
[0098] In a 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.
[0099] 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.
[0100] Optionally, the first server may also send the address of the second server to the first client, so that the first client can query service information.
[0101] Step 304: The first client determines a first service in the first service set. The first service can be used for common access by the first client and the second client.
[0102] 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.
[0103] In one example, the first client may determine the first service in the first service set by the following method: the first client sends a request message to the content guide server to obtain the content guide data corresponding to the first service set, and receives the content guide data corresponding to the first service set from the content guide server. Then, the first client displays the information of the services included in the first service set to the user of the first client according to the content guide data corresponding to the first service set, and finally determines the first service in the first service set based on the instruction of the user of the first client.
[0104] Optionally, the user of the first client may use a remote controller or the like to select a service from the displayed service information, thereby triggering an instruction to the first client, so that the first client determines the service selected by the user (ie, the first service) based on the instruction.
[0105] After the first client determines the first service, the first client can determine a first service instance of the first service, where 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 services through 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 services through a real-time streaming protocol (RTSP), and the instance parameters include the address URI for providing media.
[0106] In some embodiments, the first client may send a first message to the second client, and the first message may include information of the first service.
[0107] Exemplarily, the first client may send the first message to the second client via a data channel or RTC network control information.
[0108] 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.), 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.
[0109] Optionally, the first message may further include an address of the second server, so that the second client can query the information of the first service.
[0110] Alternatively, the first client may send the address of the second server to the second client, so that the second client queries the information of the first service.
[0111] 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 by the following three methods:
[0112] Method c1: The second client may send a sixth service request message to the second server, wherein the sixth service request message includes client information of the second client; the second client receives a fifth service set from the second server, and determines the first service according to 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 used for access by the second client.
[0113] In method c1, after receiving the sixth service request message, the second server can perform service matching according to 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 according to the information of the first service.
[0114] For example, the second client may determine the first service in the fifth service set according to the identifier of the first service.
[0115] 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 according to the information of the first service and the sixth service set. The sixth service set includes at least one service, and the at least one service is used for the second client to access.
[0116] In the 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.
[0117] 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.
[0118] It should be understood that in the above methods c1 and c2, the second client requesting services from the second server is only an example, and the second server can be replaced by a third server. That is, the first client and the second client can request services from the same server or from different servers, and this application does not limit this.
[0119] Method c3: The second client determines the first service according to the information of the first service.
[0120] After the second client determines the first service, the second client may 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 services through 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 services through RTSP, and the instance parameters include the address URI that provides media.
[0121] Optionally, the first service instance of the first service and the second service instance of the first service may be the same or different.
[0122] In some embodiments, the first client may send a first request message to the first playlist server, the first request message being used to request the media resource corresponding to the first service, and the first request message may include the first address of the first service. The first playlist server may determine the media resource corresponding to the first service according to the first address of the first service, and send the media resource corresponding to the first service to the first client. Then the first client may play the media resource corresponding to the first service.
[0123] In some 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 a first address of a first service, the first MPD server determines a first MPD file corresponding to the first service according to the first address of the first service, and sends the first MPD file to the first client; further, the first client sends a first media request message to a first media stream server, the first media request message is used to request a 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. Then, the first client can play the first media file corresponding to the first service.
[0124] In a possible manner, the second client may send a second request message to the second playlist server, the second request message being used to request the media resource corresponding to the first service, and 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 according to the second address of the first service, and send the media resource corresponding to the first service to the second client. Then the second client may play the media resource corresponding to the first service.
[0125] In another possible manner, the second client may use the DASH protocol to obtain media resources. For example, the second client may send a second MPD request message to the second MPD server, the second MPD request message may include the second address of the first service, the second MPD server determines the second MPD file corresponding to the first service according to the second address of the first service, and sends the second MPD file to the second client; further, 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. Then, the second client can play the second media file corresponding to the first service.
[0126] Optionally, the first playlist server and the second playlist server may be the same or different, and this application does not limit this.
[0127] The first MPD server and the second MPD server may be the same or different, and this application does not limit this.
[0128] The first media stream server and the second media stream server may be the same or different, and this application does not limit this.
[0129] 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.
[0130] Based on the above service determination 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. At the same time, the first client does not need to obtain the client information of the second client, and the information of the second client can be protected.
[0131] Based on the above embodiments, Figure 4 The example shown in the figure describes in detail the method for determining the service provided by the embodiment of the present application. 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, the playlist server, etc.). The first server is a synchronous movie viewing server.
[0132] For example, Figure 4An example of a method for determining a service is shown. 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 according to 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, see Figure 4 As shown, the process of this example may include the following steps:
[0133] Step 401: The first client determines to initiate synchronous movie viewing.
[0134] The first client chooses to watch the movie synchronously with the second client.
[0135] Step 402: The first client establishes a media interface and a data channel with the second client via the RTC network.
[0136] Exemplarily, the first client may send a request to establish a video call or a video conference with the second client to the RTC network, so that the first client and the second client establish a media interface and a data channel.
[0137] Step 401 and step 402 may also be performed after step 409, which is not limited in this application.
[0138] Step 403: The first client sends a first service request message to the synchronous movie viewing server, where the first service request message includes an identifier of the first client and an identifier of the second client.
[0139] 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, the second service request message including the client information of the first client and the client information of the second client.
[0140] The client information of the first client and the client information of the second client can be found in Figure 3 The relevant descriptions involved in the illustrated embodiments will not be repeated here.
[0141] 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.
[0142] The first service set can be found in Figure 3 The relevant descriptions involved in the illustrated embodiments will not be repeated here.
[0143] Step 406: The synchronous movie viewing server sends a first service set to the first client.
[0144] 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.
[0145] Optionally, the first service set also includes the address of a content guide server, and 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.
[0146] Step 408: The content guide server sends content guide data corresponding to the first service set to the first client.
[0147] 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.
[0148] The description of the first client determining the first service in the first service set based on the instruction of the user of the first client can be found in Figure 3 The description involved in the illustrated embodiments will not be repeated here.
[0149] Step 410: The first client sends a first message to the second client, where the first message may include information about the first service.
[0150] For a description of the information of the first service, please refer to the aforementioned Figure 3 The description involved in the illustrated embodiments will not be repeated here.
[0151] 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.
[0152] Optionally, if the information of the first service includes an identifier of the first service, the second client executes step 411 .
[0153] 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.
[0154] 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.
[0155] 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.
[0156] Step 415: The first client plays the media resource corresponding to the first service.
[0157] 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.
[0158] 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.
[0159] 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.
[0160] Step 419: The second client plays the media resource corresponding to the first service.
[0161] 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.
[0162] Through the above example, the first client can select a service that both the first client and the second client can access based on the service returned by the synchronous movie viewing server, thereby ensuring that multiple users access the same service. At the same time, the first client does not need to obtain the client information of the second client, and the information of the second client can be protected.
[0163] Based on the above embodiments, the present application also provides a device for determining a service. Figure 5 As shown, the service determination device 500 may include a communication unit 501 and a processing unit 502. The communication unit 501 is used for the service determination device 500 to communicate, such as receiving information (message or data) or sending information (message or data), and the processing unit 502 is used to control and manage the actions of the service determination device 500. The processing unit 502 may also control the steps performed by the communication unit 501.
[0164] Exemplarily, the device 500 determined by the service may specifically be the first client in the above embodiment, the processor of the first client, or a chip, or a chip system, or a functional module, etc. Alternatively, the device 500 determined by the service may specifically be the first server in the above embodiment, the processor in the first server, or a chip, or a chip system, or a functional module, etc. Alternatively, the device 500 determined by the service may specifically be the second client in the above embodiment, the processor in the second client, or a chip, or a chip system, or a functional module, etc.
[0165] 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, the first service request message including 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 including 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.
[0166] 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.
[0167] Optionally, the information of the first service includes an identifier of the first service.
[0168] Exemplarily, 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.
[0169] 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 an identifier of the first client and an 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.
[0170] 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.
[0171] 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 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.
[0172] 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, wherein the second service set includes 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.
[0173] 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.
[0174] In an optional implementation, when the processing unit 502 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, it is used to: 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; or, 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.
[0175] 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.
[0176] Optionally, the communication unit 501 may also be used to send the address of a second server to the first client, where the address of the second server is used to provide a service of querying service information to the client.
[0177] In one embodiment, when the service determination device 500 is used to implement the function 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 includes information of a first service, and the first service is used for the first client and the second client to access synchronously. The processing unit 502 can be used to control the operation of the communication unit 501.
[0178] In an optional embodiment, the communication unit 501 can also be used to send a sixth service request message to the second server, the sixth service request message including the client information of the second client; receive 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 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.
[0179] 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.
[0180] 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.
[0181] 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.
[0182] Optionally, the information of the first service includes an identifier of the first service.
[0183] In some embodiments, the communication unit 501 may also be used to receive an address of a second server from the first client, where the address of the second server is used to provide a service for querying information of the first service to the client.
[0184] It should be noted that the division of units in the embodiments of the present application is schematic and is only a logical function division. There may be other division methods in actual implementation. Each functional unit in the embodiments of the present application may be integrated into a processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.
[0185] 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 to enable a computer device (which can be a personal computer, server, or network device, etc.) or a processor (processor) to perform all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), disk or optical disk and other media that can store program code.
[0186] Based on the above embodiments, the present application also provides a device for determining a service. Figure 6 As shown, the service determination device 600 may include a processor 602. Optionally, the service determination device 600 may further include a communication interface 601. Optionally, the service determination device 600 may further include a memory 603. The memory 603 may be arranged inside the service determination device 600, or may be arranged outside the service determination device 600. The processor 602 may control the communication interface 601 to receive and send information, messages or data.
[0187] Specifically, the processor 602 may be a central processing unit (CPU), a network processor (NP) or a combination of a CPU and a 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.
[0188] 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. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 6 Only one thick line is used in the diagram, but this does not mean that there is only one bus or only one type of bus.
[0189] In an optional implementation, the memory 603 is used to store programs, etc. Specifically, the program may include a program code, and the program code includes a computer operation instruction. The memory 603 may include a RAM, and may also include a non-volatile memory (non-volatile memory), such as one or more disk memories. 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.
[0190] Exemplarily, the signaling 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.
[0191] In one embodiment, when the service-determined communication device 600 implements the function 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; the processor 602 can implement other operations except the sending and receiving operations performed by the first client in the aforementioned method embodiment. For specific related descriptions, please refer to the related descriptions in the aforementioned method embodiment, which will not be described in detail here.
[0192] In another embodiment, when the service-determined communication device 600 implements the function of the first server in the aforementioned method embodiment, the communication interface 601 can implement the transceiver operation performed by the first server in the aforementioned method embodiment; the processor 602 can implement other operations except the transceiver operation performed by the first server in the aforementioned method embodiment. For specific related descriptions, please refer to the related descriptions in the aforementioned method embodiment, which will not be described in detail here.
[0193] In another embodiment, when the service-determined communication device 600 implements the function of the second client in the aforementioned method embodiment, the communication interface 601 can implement the transceiver operation performed by the second client in the aforementioned method embodiment; the processor 602 can implement other operations except the transceiver operation performed by the second client in the aforementioned method embodiment. For specific related descriptions, please refer to the related descriptions in the aforementioned method embodiment, which will not be described in detail here.
[0194] 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.
[0195] An embodiment of the present application also 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.
[0196] An embodiment of the present application also 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.
[0197] 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.
[0198] An embodiment of the present application also provides a chip, which is coupled to a memory and is used to implement the service determination method provided by the above method embodiment.
[0199] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may 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 may adopt the form of a computer program product implemented in one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that include computer-usable program code.
[0200] 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 process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart 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 generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0201] These computer program instructions may also be stored in a computer-readable memory capable of directing 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 an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0202] 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, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.
[0203] Obviously, those skilled in the art can 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 also 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, where 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.