WO2022116992A1 - 通话方法及电子设备 - Google Patents
通话方法及电子设备 Download PDFInfo
- Publication number
- WO2022116992A1 WO2022116992A1 PCT/CN2021/134764 CN2021134764W WO2022116992A1 WO 2022116992 A1 WO2022116992 A1 WO 2022116992A1 CN 2021134764 W CN2021134764 W CN 2021134764W WO 2022116992 A1 WO2022116992 A1 WO 2022116992A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- call
- service request
- call service
- target
- electronic device
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 172
- 238000004891 communication Methods 0.000 claims abstract description 119
- 230000006854 communication Effects 0.000 claims abstract description 119
- 238000012545 processing Methods 0.000 claims abstract description 85
- 230000006870 function Effects 0.000 claims description 57
- 230000015654 memory Effects 0.000 claims description 43
- 238000011156 evaluation Methods 0.000 claims description 26
- 238000004590 computer program Methods 0.000 claims description 13
- 230000008569 process Effects 0.000 abstract description 88
- 230000003993 interaction Effects 0.000 description 79
- 230000000875 corresponding effect Effects 0.000 description 57
- 238000012546 transfer Methods 0.000 description 48
- 238000010586 diagram Methods 0.000 description 23
- 230000005540 biological transmission Effects 0.000 description 20
- 238000005516 engineering process Methods 0.000 description 17
- 238000010295 mobile communication Methods 0.000 description 14
- 238000004458 analytical method Methods 0.000 description 13
- 230000004044 response Effects 0.000 description 12
- 230000000007 visual effect Effects 0.000 description 12
- 238000012790 confirmation Methods 0.000 description 11
- 238000007726 management method Methods 0.000 description 11
- 230000000694 effects Effects 0.000 description 9
- 230000002452 interceptive effect Effects 0.000 description 8
- 230000011664 signaling Effects 0.000 description 6
- 230000005236 sound signal Effects 0.000 description 6
- 238000013473 artificial intelligence Methods 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000001413 cellular effect Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 229920001621 AMOLED Polymers 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 239000002096 quantum dot Substances 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 241000282326 Felis catus Species 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000003416 augmentation Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000007175 bidirectional communication Effects 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 210000004027 cell Anatomy 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000019771 cognition Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000010348 incorporation Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1069—Session establishment or de-establishment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/141—Systems for two-way working between two video terminals, e.g. videophone
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72403—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
- H04M1/72409—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1813—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
- H04L12/1818—Conference organisation arrangements, e.g. handling schedules, setting up parameters needed by nodes to attend a conference, booking network resources, notifying involved parties
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1073—Registration or de-registration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1096—Supplementary features, e.g. call forwarding or call holding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
- H04L65/403—Arrangements for multi-party communication, e.g. for conferences
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72403—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72403—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
- H04M1/72409—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories
- H04M1/72412—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories using two-way short-range wireless interfaces
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/422—Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
- H04N21/42203—Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS] sound input device, e.g. microphone
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/422—Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
- H04N21/4223—Cameras
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/4788—Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/141—Systems for two-way working between two video terminals, e.g. videophone
- H04N7/142—Constructional details of the terminal equipment, e.g. arrangements of the camera and the display
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/141—Systems for two-way working between two video terminals, e.g. videophone
- H04N7/147—Communication arrangements, e.g. identifying the communication as a video-communication, intermediate storage of the signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/60—Substation equipment, e.g. for use by subscribers including speech amplifiers
- H04M1/6033—Substation equipment, e.g. for use by subscribers including speech amplifiers for providing handsfree use or a loudspeaker mode in telephone sets
- H04M1/6041—Portable telephones adapted for handsfree use
- H04M1/6058—Portable telephones adapted for handsfree use involving the use of a headset accessory device connected to the portable telephone
- H04M1/6066—Portable telephones adapted for handsfree use involving the use of a headset accessory device connected to the portable telephone including a wireless connection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72469—User interfaces specially adapted for cordless or mobile telephones for operating the device by selecting functions from two or more displayed items, e.g. menus or icons
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/4104—Peripherals receiving signals from specially adapted client devices
- H04N21/4122—Peripherals receiving signals from specially adapted client devices additional display device, e.g. video projector
Definitions
- the embodiments of the present application relate to the field of terminal technologies, and in particular, to a calling method and an electronic device.
- multiple electronic devices can work together.
- electronic devices such as mobile phones, tablets, etc.
- wireless communication technology can use wearable devices such as Bluetooth headsets to realize the collection and playback of audio data, which is convenient for users to operate.
- the electronic device uses the screen projection technology to send the content displayed on the local display screen to the large-screen device for display through the wireless communication technology, which is convenient for the user to watch.
- the distributed devices participating in the calling process divide and register their respective capabilities.
- the device corresponding to the most applicable capability can be selected according to the registered capability to process the call service, thereby improving the user experience.
- an embodiment of the present application provides a calling method, which is applied to a first electronic device, and the method may include: establishing a communication connection with at least one second device. Registration information of the capabilities of the at least one second device is received. A first call service request is received. According to the capability information of the first device and the registration information of the capability of the at least one second device, the first target device for processing the first call service request is selected; the first target device is the first device or the at least one second device. a device. Send the first call service request to the first target device. Receive first feedback information from the first target device for processing the first call service request.
- the first device can receive registration information of the capabilities of the second device, and the registration information includes, for example, functions that the second device can implement during a call.
- the second device is a mobile phone
- the mobile communication module in the mobile phone can realize the network function of making calls
- the audio module in the mobile phone can realize the voice playback function of playing audio
- the mobile phone can realize the mobile communication module of the network function
- the audio module implementing the voice playback function registers with the first device.
- the first device receives the call service, it can invoke the device corresponding to the corresponding module to execute the call service. For example, the first device selects the audio module of the mobile phone to play audio.
- each device can register its own capabilities, and set a first device for receiving registration information. Furthermore, when the call service needs to be processed, the first device can select the most suitable device for processing the current call service according to the registered capability. Thus, flexible processing of call services is realized, and user experience is improved.
- selecting the first target device for processing the first call service request according to the capability information of the first device and the capability registration information of at least one second device includes: according to the first device's capability information The capability information and the registration information of the capability of at least one second device, group the capability of the first device and the capability of the second device according to functional categories, and set the evaluation index corresponding to each group and the weight corresponding to each evaluation index. Select the first group for processing the first call service request, use the evaluation index and the weight corresponding to the evaluation index to score the capabilities of the first device and/or the capabilities of the second device in the first group, and select the first group. For a target device, the first target device's ability score in the first group is the highest score.
- the device capability is realized by the functional modules in the device, and according to different capabilities, the device can be divided into devices composed of different components.
- the capabilities are grouped, that is, the components are grouped.
- the corresponding indicators and indicator weights are pre-configured for different types of components, which are used to evaluate each component in the same type of components and obtain the optimal one. components.
- the call controller scores each component in the same category of components according to the indicators and corresponding weights, and sorts the obtained scores, and the component with the highest score is regarded as the optimal component.
- the call controller determines the optimal components in each category of components in turn according to the execution sequence of the call process, and then obtains a set of optimal components, which can obtain better call service processing results.
- the method further includes: determining a second call service request according to the first feedback information; The service request is different from the first call service request. According to the capability information of the first device and the registration information of the capability of the at least one second device, a second target device for processing the second call service request is selected; the second target device is the first device or the at least one second device. a device. Send a second call service request to the second target device. Receive second feedback information from the second target device for processing the second call service request.
- the first call service request is a number resolution request
- the first target device includes a number resolution component.
- the first target device uses the number resolution component to process the number resolution request, it will send the resolution result to the first device, that is, the first feedback information is the number resolution result.
- the first device determines that the second call service request is a number dialing request according to the number analysis result, and then sends the number dialing request to the selected second target device including the number dialing capability, that is, the second target device contains the target device.
- a network component that enables number dialing.
- the first target device and the second target device are different second devices, and the first target device is configured to directly receive call data sent by the second target device.
- the first target device includes a target network component
- the second target device includes a target user interaction component
- the conditions for direct communication between the target user interaction component and the target network component are met, then the target user interaction component and A direct communication channel is established between the target network components.
- call data can be directly transmitted between the target user interaction component and the target network component, and it is no longer necessary to use the first device for call data transfer, which reduces the cross-device transmission of call data and improves call efficiency.
- the call data includes, for example, audio data, video data, control commands, and the like.
- the method further includes: selecting a first target device associated with the first call service request according to the first call service request.
- a subscription relationship may be established between components (ie capabilities) of different categories to form a component combination.
- establishing a subscription relationship between components is establishing a static association relationship between components. After the call controller selects one component in the component combination, according to the subscription relationship, the call controller directly determines to select other components in the component combination, and does not need to perform the component scoring process of the corresponding component category. Or, after scoring each component based on the above indicators, based on the subscription relationship, increase the weight of the component with the subscription relationship to be selected, and score again, that is, after scoring twice based on the indicator and the subscription relationship, the final selected component is determined.
- the components with the subscription relationship may be located in the same electronic device, or may be located in different electronic devices. For example, if the electronic device receives the number information input by the user, the electronic device is also used to play the voice data of the call for the user, which can provide the user with a better experience. Therefore, the input component in the electronic device and the user interaction component can be established. Subscription relationship. Further, in the following, when the input component has been selected, when the user interaction component is selected, the user interaction component can be determined to be selected directly according to the subscription relationship.
- the device form of the first device and the at least one second device in the at least one second device are different.
- devices of different device forms form a distributed call system, which implements calling corresponding devices based on capabilities to execute a call process.
- the quantity of the capability information of the first device is one or more
- the quantity of the registration information of the capability of the same second device is one or more
- the number of capabilities included in the device may be one or more, and based on the call service request, a device corresponding to the required capability is selected to implement flexible scheduling of devices.
- a device corresponding to the required capability is selected to implement flexible scheduling of devices.
- the capability scheduling device it is possible to enable devices that were not aware of each other to establish a direct connection channel, thereby improving call efficiency.
- the first call service request is any one of a number resolution request, a number dialing request, a video playback and/or collection request, and an audio playback and/or collection request.
- the call scenario includes, for example, a voice call scenario, a video call scenario, an operator number dialing scenario, and a virtual number dialing scenario. Therefore, based on different call scenarios, different call services need to be processed.
- the first target device is the first device, sends the first call service request to the first target device, and receives the first feedback information from the first target device for processing the first call service request, including: The first module in the first target device sends the first call service request to the second module in the first target device. The first module receives the first feedback information of the second module for processing the first call service request.
- the first target device is a target second device in at least one second device, sends a first call service request to the first target device, and receives a request from the first target device to process the first call service
- the first feedback information includes: the first device sends a first call service request to the target second device. The first device receives the first feedback information of the target second device for processing the first call service request.
- the target component determined by the first device according to the call service request, its own capability information and the capability registration information of the second device may be located in itself (ie, the first device) or in the second device. Then, if the target component is located in the first device, the process of processing the call service is the interaction between components in the first device. If the target component is located in a certain target second device, the first device sends the call service request to the target second device for processing.
- an embodiment of the present application provides an electronic device, including: a processor and a memory, the memory is coupled to the processor, the memory is used for storing computer program codes, and the computer program codes include computer instructions, when the processor reads from the memory
- the computer instructions cause the electronic device to perform the following operations: establish a communication connection with the at least one second device. Registration information of the capabilities of the at least one second device is received. A first call service request is received. According to the capability information of the electronic device and the registration information of the capability of the at least one second device, a first target device for processing the first call service request is selected; the first target device is one of the electronic device or the at least one second device . Send the first call service request to the first target device. Receive first feedback information from the first target device for processing the first call service request.
- selecting the first target device for processing the first call service request according to the capability information of the electronic device and the registration information of the capability of the at least one second device includes: according to the capability information of the electronic device and the registration information of the capability of at least one second device, the capabilities of the electronic device and the capabilities of the second device are grouped according to functional categories, and an evaluation index corresponding to each group and a weight corresponding to each evaluation index are set. Select the first group for processing the first call service request, use the evaluation index and the weight corresponding to the evaluation index to score the capabilities of the electronic equipment and/or the second device in the first group, and select the first group. The target device, the first target device's ability score in the first group is the highest score.
- the processor when the processor reads the computer instructions from the memory, it also causes the electronic device to perform the following operations: determine the second call service request according to the first feedback information; the second call service request is different from the first call service request. Call service request. According to the capability information of the electronic device and the registration information of the capability of the at least one second device, a second target device for processing the second call service request is selected; the second target device is one of the electronic device or the at least one second device . Send a second call service request to the second target device. Receive second feedback information from the second target device for processing the second call service request.
- the first target device and the second target device are different second devices, and the first target device is configured to directly receive call data sent by the second target device.
- the electronic device when the processor reads the computer instructions from the memory, the electronic device further causes the electronic device to perform the following operations: according to the first call service request, select the first target device associated with the first call service request.
- the device form of the electronic device and the at least one second device in the at least one second device are different.
- the quantity of the capability information of the electronic device is one or more, and the quantity of the registration information of the capability of the same second device is one or more.
- the first call service request is any one of a number resolution request, a number dialing request, a video playback and/or collection request, and an audio playback and/or collection request.
- the first target device is an electronic device, sends a first call service request to the first target device, and receives first feedback information from the first target device for processing the first call service request, including: A first module in a target device sends a first call service request to a second module in the first target device. The first module receives the first feedback information of the second module for processing the first call service request.
- the first target device is a target second device in at least one second device, sends a first call service request to the first target device, and receives a request from the first target device to process the first call service
- the first feedback information includes: sending the first call service request to the target second device. Receive first feedback information from the target second device for processing the first call service request.
- an embodiment of the present application provides an electronic device, including: a processing module, a receiving module, and a sending module.
- the processing module is configured to establish a communication connection with at least one second device.
- a receiving module configured to receive registration information of the capability of at least one second device.
- the receiving module is further configured to receive the first call service request.
- the processing module is further configured to select a first target device for processing the first call service request according to the capability information of the electronic device and the registration information of the capability of at least one second device; the first target device is an electronic device or at least one first target device.
- the sending module is configured to send the first call service request to the first target device.
- the receiving module is further configured to receive first feedback information from the first target device for processing the first call service request.
- the processing module is specifically configured to group the capabilities of the electronic device and the capabilities of the second device according to function categories according to the capability information of the electronic device and the registration information of the capability of at least one second device, Set the evaluation index corresponding to each group and the weight corresponding to each evaluation index. Select the first group for processing the first call service request, use the evaluation index and the weight corresponding to the evaluation index to score the capabilities of the electronic equipment and/or the second device in the first group, and select the first group.
- the target device, the first target device's ability score in the first group is the highest score.
- the processing module is further configured to determine the second call service request according to the first feedback information; the second call service request is different from the first call service request. According to the capability information of the electronic device and the registration information of the capability of the at least one second device, a second target device for processing the second call service request is selected; the second target device is one of the electronic device or the at least one second device .
- the sending module is further configured to send the second call service request to the second target device.
- the receiving module is further configured to receive second feedback information from the second target device for processing the second call service request.
- the first target device and the second target device are different second devices, and the first target device is configured to directly receive call data sent by the second target device.
- the processing module is further configured to select the first target device associated with the first call service request according to the first call service request.
- the device form of the electronic device and the at least one second device in the at least one second device are different.
- the quantity of the capability information of the electronic device is one or more, and the quantity of the registration information of the capability of the same second device is one or more.
- the first call service request is any one of a number resolution request, a number dialing request, a video playback and/or collection request, and an audio playback and/or collection request.
- the first target device is a target second device in the at least one second device.
- the sending module is specifically configured to send the first call service request to the target second device.
- the receiving module is specifically configured to receive the first feedback information of the target second device for processing the first call service request.
- the receiving module and the sending module may be collectively referred to as a transceiver module, which may be implemented by a transceiver or a transceiver-related circuit component, and may be a transceiver or a transceiver unit.
- an embodiment of the present application provides an electronic device, the electronic device having the function of implementing the calling method described in the first aspect and any one of the possible implementation manners.
- This function can be implemented by hardware or by executing corresponding software by hardware.
- the hardware or software includes one or more modules corresponding to the above functions.
- embodiments of the present application provide a computer-readable storage medium, including computer instructions, when the computer instructions are executed on an electronic device, the electronic device is made to perform any of the first aspect and any of the possible implementations.
- an embodiment of the present application provides a computer program product, which, when the computer program product runs on an electronic device, causes the electronic device to perform any one of the first aspect and any of the possible implementation manners. call method.
- a circuit system in a seventh aspect, includes a processing circuit, and the processing circuit is configured to execute the calling method as described in the above-mentioned first aspect and any one of the possible implementation manners.
- an embodiment of the present application provides a chip system, including at least one processor and at least one interface circuit, where the at least one interface circuit is configured to perform a transceiving function, and send instructions to the at least one processor.
- the at least one processor executes the calling method described in the first aspect and any one of the possible implementation manners.
- FIG. 1 is a schematic diagram of a communication system provided by an embodiment of the present application.
- FIG. 2 is a schematic structural diagram of an electronic device provided by an embodiment of the present application.
- FIG. 3 is a schematic diagram 1 of an interface provided by an embodiment of the present application.
- FIG. 4 is a schematic diagram 2 of an interface provided by an embodiment of the present application.
- FIG. 5 is a schematic diagram three of an interface provided by an embodiment of the present application.
- FIG. 6 is a schematic diagram 1 of a call scenario provided by an embodiment of the present application.
- FIG. 7 is a schematic diagram of a software structural block diagram of an electronic device according to an embodiment of the application.
- FIG. 8 is a schematic structural diagram of a call controller provided by an embodiment of the present application.
- FIG. 9 is a flowchart 1 of a calling method provided by an embodiment of the present application.
- FIG. 10 is a second flowchart of a calling method provided by an embodiment of the present application.
- FIG. 11 is a fourth schematic diagram of an interface provided by an embodiment of the present application.
- FIG. 12 is a third flowchart of a calling method provided by an embodiment of the present application.
- FIG. 13 is a schematic diagram five of an interface provided by an embodiment of the present application.
- FIG. 14 is a second schematic diagram of a call scenario provided by an embodiment of the present application.
- FIG. 15 is a third schematic diagram of a call scenario provided by an embodiment of the present application.
- FIG. 16 is a fourth schematic diagram of a call scenario provided by an embodiment of the present application.
- FIG. 17 is a fourth flowchart of a calling method provided by an embodiment of the present application.
- FIG. 18 is a fifth schematic diagram of a call scenario provided by an embodiment of the present application.
- FIG. 19 is a schematic diagram 6 of an interface provided by an embodiment of the present application.
- FIG. 20 is a schematic structural diagram of a communication device provided by an embodiment of the present application.
- the call process refers to the process of exchanging two-way voice streams and video streams between users on both sides of the call by means of electronic devices.
- the call process may be a point-to-point call process, for example, users on both sides of the call use a walkie-talkie to perform the call process.
- other devices can also be used to transfer to complete the call.
- SIM subscriber identification module
- an instant messaging application (such as WeChat, Skype, etc.) is installed in the electronic device, and the instant messaging application is used to perform a call process.
- a baseband processor can also be described as a baseband chip that synthesizes the baseband signal to be transmitted, or decodes the baseband signal received.
- the baseband chip needs the support of the operator's network.
- a 5G baseband chip is installed in a mobile phone, which can support 5G communication. During the communication process, the mobile phone needs to be supported by the operator's 5G network to reach the 5G bandwidth.
- the baseband processor undertakes the transmission and reception of bidirectional data.
- the data may include data such as audio, video, text, pictures, streaming media, etc., and may also include control signaling for controlling the call process.
- a network module (such as a baseband processor, etc.) in an electronic device for communicating with other electronic devices can be described as a network component.
- the network component can be directly connected to the opposite end electronic device, for example, the opposite end electronic device is a small walkie-talkie.
- the network component can also communicate with the peer electronic device after transiting through a transit device, for example, the transit device is an operator's base station, an instant messaging application server, and the like.
- a distributed system refers to a whole composed of multiple electronic devices.
- a task can be assigned to various electronic devices in it to cooperate and complete.
- the distributed communication system after at least two electronic devices are connected through a wireless connection or a wired connection, they jointly perform a communication task.
- the devices in the distributed communication system may be referred to as distributed communication devices.
- the distributed communication system is in a distributed environment, and the distributed environment may be a local area network or a wide area network, which is not limited in this embodiment of the present application.
- a component is a simple encapsulation of data and methods.
- Components have specific properties and methods. Properties are simple accessors to the component's data, and methods are the functionality of the component.
- the electronic device may be divided according to the component dimension.
- a mobile phone has the capability of processing audio data, for example, including audio components for processing audio data, such as a microphone, a speaker, and the like.
- a TV has the ability to display video images, for example, including video components for displaying video images, such as a display screen, a camera, and the like.
- FIG. 1 is a schematic diagram of a communication system to which a calling method according to an embodiment of the present application is applied.
- the communication system includes a first electronic device 100 and at least one second electronic device 200 (eg, a second electronic device 1 , a second electronic device 2 and a second electronic device 3 ).
- the communication system can also be described as a distributed system, a distributed communication system, a distributed communication system, etc.
- the first electronic device 100 and the second electronic device 200 cooperate to complete common tasks, such as communication tasks.
- the first electronic device 100 and the second electronic device 200 may be connected through a wired network or a wireless network.
- the first electronic device 100 may establish a short-range wireless communication connection with the above-mentioned one or more second electronic devices 200 respectively, so as to realize the communication function between the first electronic device 100 and the second electronic device 200 .
- the first electronic device 100 may establish a Bluetooth connection, a wireless fidelity (Wi-Fi) connection, a ZigBee (ZigBee) connection, or a near field communication (NFC) connection with the second electronic device 200 Wait for the communication connection.
- Wi-Fi wireless fidelity
- ZigBee ZigBee
- NFC near field communication
- the first electronic device 100 may also establish a communication connection with the second electronic device 200 through a cellular network interconnection or a switching device (eg, a USB data cable or a Dock device).
- a cellular network interconnection or a switching device eg, a USB data cable or a Dock device.
- This embodiment of the present application does not specifically limit the connection manner between devices.
- the above-mentioned first electronic device 100 is a master device in a communication system, and is provided with a central controller, such as a call controller.
- the first electronic device 100 is configured to receive the registration of each component used for calling in the distributed calling system, and control the components to participate in the calling process.
- the components used for the call include, for example, a sound playing component, a sound collecting component, a display component, a network component, and the like.
- the first electronic device 100 includes, for example, a large-screen display device (such as a smart screen, etc.), a mobile phone, a tablet computer (Pad), a personal computer (PC), a notebook computer, a desktop computer, a vehicle-mounted device, a wearable Equipment, ultra-mobile personal computer (UMPC), netbook, personal digital assistant (PDA), wireless terminal in industrial control (industrial control), wireless in self driving Terminal, wireless terminal in remote medical, wireless terminal in smart grid, wireless terminal in transportation safety, wireless terminal in smart city, smart home terminal devices such as wireless terminals and artificial intelligence (artificial intelligence) devices in the home), the embodiment of the present application does not impose any restrictions on the specific type of the first electronic device 100.
- a large-screen display device such as a smart screen, etc.
- a mobile phone such as a smart screen, etc.
- a tablet computer such as a smart screen, etc.
- PC personal computer
- UMPC ultra-mobile personal computer
- netbook personal digital assistant
- PDA personal digital assistant
- the above-mentioned second electronic device 200 is a slave device in a communication system, and includes components for calling. Further, the components used for calling in the second electronic device 200 can directly perform data transmission with the components in the first electronic device 100 and/or other components in the second electronic device 200 to complete the calling task.
- the second electronic device 200 includes, for example, a mobile phone, a large-screen display device (such as a smart screen, etc.), a tablet computer (Pad), a personal computer (PC), a notebook computer, a desktop computer, a vehicle-mounted device, a wearable Equipment (such as Bluetooth headset, smart watch, etc.), audio, virtual reality (VR) terminal equipment, augmented reality (AR) terminal equipment, ultra-mobile personal computer (UMPC), netbook , personal digital assistant (PDA), wireless terminal in industrial control (industrial control), wireless terminal in self-driving (self driving), wireless terminal in remote medical (remote medical), smart grid (smart grid) wireless terminal in grid), wireless terminal in transportation safety, wireless terminal in smart city, wireless terminal in smart home, artificial intelligence (artificial intelligence) equipment and other terminal equipment , the embodiment of the present application does not impose any limitation on the specific type of the second electronic device 200 .
- a mobile phone such as a smart screen, etc.
- PC personal computer
- notebook computer
- the above-mentioned first electronic device 100 and second electronic device 200 may also be referred to as distributed call devices, which are used to participate in the call process and provide the user with a call experience.
- the above communication system may further include a server 300 .
- the server 300 is used to provide an operator network (such as a mobile network, a telecommunication network, a China Unicom network, etc.), and the first electronic device 100 or the second electronic device 200 can use the operator network to make calls through the server 300 .
- the electronic device makes a call using the operator network, which can also be described as the electronic device making a call to the operator, the electronic device making a call using a phone application, etc., which will not be described in detail below.
- the server 300 may be a device or server with computing functions, such as a cloud server or a network server.
- the server 300 may be a server, a server cluster composed of multiple servers, or a cloud computing service center.
- FIG. 2 shows a schematic structural diagram of an electronic device, and the electronic device may be the first electronic device 100 and/or the second electronic device 200 described above.
- the electronic device may include a processor 110 , an external memory interface 120 , an internal memory 121 , a power management module 130 , an antenna 1 , and a wireless communication module 140 .
- the structures illustrated in the embodiments of the present application do not constitute a specific limitation on the electronic device.
- the electronic device may include more or less components than shown, or combine some components, or separate some components, or arrange different components.
- the illustrated components may be implemented in hardware, software, or a combination of software and hardware.
- the processor 110 may include one or more processing units, for example, the processor 110 may include an application processor (application processor, AP), a modem processor, a graphics processor (graphics processing unit, GPU), an image signal processor (image signal processor, ISP), controller, video codec, digital signal processor (digital signal processor, DSP), baseband processor, and/or neural-network processing unit (neural-network processing unit, NPU), etc. Wherein, different processing units may be independent devices, or may be integrated in one or more processors.
- application processor application processor, AP
- modem processor graphics processor
- ISP image signal processor
- controller video codec
- digital signal processor digital signal processor
- baseband processor baseband processor
- neural-network processing unit neural-network processing unit
- the controller can generate an operation control signal according to the instruction operation code and timing signal, and complete the control of fetching and executing instructions.
- a memory may also be provided in the processor 110 for storing instructions and data.
- the memory in processor 110 is cache memory. This memory may hold instructions or data that have just been used or recycled by the processor 110. If the processor 110 needs to use the instruction or data again, it can be called directly from the memory. Repeated accesses are avoided and the latency of the processor 110 is reduced, thereby increasing the efficiency of the system.
- the external memory interface 120 can be used to connect an external memory card, such as a Micro SD card, to expand the storage capacity of the electronic device.
- the external memory card communicates with the processor 110 through the external memory interface 120 to realize the data storage function. For example to save files like music, video etc in external memory card.
- Internal memory 121 may be used to store computer executable program code, which includes instructions.
- the internal memory 121 may include a storage program area and a storage data area.
- the storage program area can store an operating system, an application program required for at least one function (such as a sound playback function, an image playback function, etc.), and the like.
- the storage data area can store data (such as audio data, phone book, etc.) created during the use of the electronic device.
- the internal memory 121 may include high-speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, universal flash storage (UFS), and the like.
- the processor 110 executes various functional applications and data processing of the electronic device by executing the instructions stored in the internal memory 121 and/or the instructions stored in the memory provided in the processor.
- the power management module 130 is used for connecting the battery, the charging management module and the processor 110 .
- the power management module 130 receives input from the battery and/or charging management module, and supplies power to the processor 110, the internal memory 121, the wireless communication module 140, and the like.
- the charging management module is used for receiving charging input from the charger.
- the charger may be a wireless charger or a wired charger. While the charging management module charges the battery, the power management module 130 can also supply power to the electronic device. In other embodiments, the power management module 130 and the charging management module may also be provided in the same device.
- the wireless communication module 140 can provide applications on electronic devices including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), bluetooth (BT), global navigation satellite systems (global navigation satellite system, GNSS), frequency modulation (frequency modulation, FM), near field communication technology (near field communication, NFC), infrared technology (infrared, IR) and other wireless communication solutions.
- WLAN wireless local area networks
- BT wireless fidelity
- GNSS global navigation satellite systems
- frequency modulation frequency modulation
- FM near field communication technology
- NFC near field communication
- IR infrared technology
- the wireless communication module 140 may be one or more devices integrating at least one communication processing module.
- the wireless communication module 140 receives electromagnetic waves via the antenna 1 , frequency modulates and filters the electromagnetic wave signals, and sends the processed signals to the processor 110 .
- the wireless communication module 140 can also receive the signal to be sent from the processor 110 , perform frequency modulation on the signal, amplify the signal, and then convert it into electromagnetic waves
- the electronic device may further include the antenna 2 and the mobile communication module 150 .
- the mobile communication module 150 can provide a wireless communication solution including 2G/3G/4G/5G etc. applied on the electronic device.
- the mobile communication module 150 may include at least one filter, switch, power amplifier, low noise amplifier (LNA) and the like.
- the mobile communication module 150 can receive electromagnetic waves from the antenna 2, filter, amplify, etc. the received electromagnetic waves, and transmit them to the modulation and demodulation processor for demodulation.
- the mobile communication module 150 can also amplify the signal modulated by the modulation and demodulation processor, and then convert it into electromagnetic waves and radiate it out through the antenna 2 .
- At least part of the functional modules of the mobile communication module 150 may be provided in the processor 110 . In some embodiments, at least part of the functional modules of the mobile communication module 150 may be provided in the same device as at least part of the modules of the processor 110 .
- the antenna 1 and the antenna 2 are used for transmitting and receiving electromagnetic wave signals.
- Each antenna in an electronic device can be used to cover a single or multiple communication frequency bands. Different antennas can also be reused to improve antenna utilization.
- the antenna 2 can be multiplexed into a diversity antenna of the wireless local area network.
- the antenna may be used in conjunction with a tuning switch.
- the antenna 1 of the electronic device is coupled with the wireless communication module 140, and the antenna 2 is coupled with the mobile communication module 150, so that the electronic device can communicate with the network and other devices through wireless communication technology.
- the wireless communication technology may include global system for mobile communications (GSM), general packet radio service (GPRS), code division multiple access (CDMA), broadband Code Division Multiple Access (WCDMA), Time Division Code Division Multiple Access (TD-SCDMA), Long Term Evolution (LTE), BT, GNSS, WLAN, NFC , FM, and/or IR technology, etc.
- the GNSS may include global positioning system (global positioning system, GPS), global navigation satellite system (global navigation satellite system, GLONASS), Beidou navigation satellite system (beidou navigation satellite system, BDS), quasi-zenith satellite system (quasi -zenith satellite system, QZSS) and/or satellite based augmentation systems (SBAS).
- global positioning system global positioning system, GPS
- global navigation satellite system global navigation satellite system, GLONASS
- Beidou navigation satellite system beidou navigation satellite system, BDS
- quasi-zenith satellite system quadsi -zenith satellite system, QZSS
- SBAS satellite based augmentation systems
- the electronic device may further include a subscriber identification module (subscriber identification module, SIM) card interface 151 for connecting the SIM card.
- SIM subscriber identification module
- the SIM card can be inserted into the SIM card interface 151 or pulled out from the SIM card interface 151 to achieve contact and separation with the electronic device.
- the electronic device can support 1 or N SIM card interfaces, where N is a positive integer greater than 1.
- the wireless communication module 140 and the mobile communication module 150 may function as network components in the electronic device.
- the wireless communication function of the electronic device can be implemented by the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 140, the modulation and demodulation processor, the baseband processor, and the like.
- an instant messaging application is installed in the electronic device, and the wireless communication module 140 is used to provide the user with the function of making an Internet phone call, such as a smooth call.
- the mobile communication module 150 is used to make a call through the operator's cloud service.
- the electronic device may also include an audio module 160 .
- the audio module 160 includes speakers, receivers, microphones, headphone jacks, and the like. Used to convert digital audio information to analog audio signal output, and also used to convert analog audio input to digital audio signal. Audio module 160 may also be used to encode and decode audio signals. In some embodiments, the audio module 160 may be provided in the processor 110 , or some functional modules of the audio module 160 may be provided in the processor 110 . Electronic devices can implement audio functions through audio modules, speakers, receivers, microphones, headphone jacks, and application processors. Such as answering or making calls, playing music, recording, etc.
- the electronic device uses the audio module 160 to play audio and/or collect audio data, thereby realizing the call.
- the audio module 160 may serve as an audio component in the electronic device.
- the electronic device may also include a display screen 170 .
- the electronic device may implement a display function through a GPU, a display screen 170, an application processor, and the like.
- the GPU is a microprocessor for image processing, and is connected to the display screen 170 and the application processor.
- the GPU is used to perform mathematical and geometric calculations for graphics rendering.
- Processor 110 may include one or more GPUs that execute program instructions to generate or alter display information.
- the display screen 170 is used to display images, videos, and the like.
- the display screen 170 includes a display panel.
- the display panel can be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode or an active-matrix organic light-emitting diode (active-matrix organic light).
- LED organic light-emitting diode
- AMOLED organic light-emitting diode
- FLED flexible light-emitting diode
- Miniled MicroLed, Micro-oLed
- quantum dot light-emitting diode quantum dot light emitting diodes, QLED
- the electronic device may include 1 or N display screens 170 , where N is a positive integer greater than 1.
- the electronic device may also include a camera 180 .
- the electronic device can also realize the shooting function through the ISP, the camera 180, the video codec, the GPU, the display screen 170 and the application processor.
- the ISP is used to process the data fed back by the camera 180 .
- the shutter is opened, the light is transmitted to the camera photosensitive element through the lens, the light signal is converted into an electrical signal, and the camera photosensitive element transmits the electrical signal to the ISP for processing, and converts it into an image visible to the naked eye.
- ISP can also perform algorithm optimization on image noise, brightness, and skin tone. ISP can also optimize the exposure, color temperature and other parameters of the shooting scene.
- the ISP may be provided in the camera 180 .
- the camera 180 is used to capture still images or video.
- the object is projected through the lens to generate an optical image onto the photosensitive element.
- the photosensitive element may be a charge coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor.
- CMOS complementary metal-oxide-semiconductor
- the photosensitive element converts the optical signal into an electrical signal, and then transmits the electrical signal to the ISP to convert it into a digital image signal.
- the ISP outputs the digital image signal to the DSP for processing.
- DSP converts digital image signals into standard RGB, YUV and other formats of image signals.
- the electronic device may include 1 or N cameras 180 , where N is a positive integer greater than 1.
- Video codecs are used to compress or decompress digital video.
- An electronic device may support one or more video codecs.
- the electronic device can play or record videos in various encoding formats, such as: moving picture experts group (moving picture experts group, MPEG) 1, MPEG2, MPEG3, MPEG4 and so on.
- MPEG moving picture experts group
- MPEG2 moving picture experts group
- MPEG3 MPEG4
- MPEG4 moving picture experts group
- the NPU is a neural-network (NN) computing processor.
- NN neural-network
- applications such as intelligent cognition of electronic devices can be realized, such as image recognition, face recognition, speech recognition, text understanding, etc.
- the electronic device utilizes the display screen 170 to display a video image. And/or capturing user video images through the camera 180, so as to implement real-time video calls.
- the display screen 170 and the camera 180 can be used as visual components in the electronic device.
- the electronic device may also include a sensor module 190 .
- the sensor module 190 may include a pressure sensor, a gyro sensor, an air pressure sensor, a magnetic sensor, an acceleration sensor, a distance sensor, a proximity light sensor, a fingerprint sensor, a temperature sensor, a touch sensor, an ambient light sensor, a bone conduction sensor, and the like.
- the touch sensor is also called “touch device”.
- the touch sensor may be disposed on the display screen 170, and the touch sensor and the display screen 170 form a touch screen, also called a "touch screen”.
- a touch sensor is used to detect touches on or near it.
- the touch sensor can pass the detected touch operation to the application processor to determine the type of touch event.
- Visual output related to touch operations may be provided through display screen 170 .
- the touch sensor may also be disposed on the surface of the electronic device, which is different from the location where the display screen 170 is located.
- the sensor module 190 or touch screen can be used as a user interaction component in an electronic device.
- the processor 110 may include one or more interfaces.
- the interface may include an integrated circuit (inter-integrated circuit, I2C) interface, an integrated circuit built-in audio (inter-integrated circuit sound, I2S) interface, a pulse code modulation (pulse code modulation, PCM) interface, a universal asynchronous transceiver (universal asynchronous transmitter) receiver/transmitter, UART) interface, mobile industry processor interface (MIPI), general-purpose input/output (GPIO) interface, subscriber identity module (SIM) interface, and / or universal serial bus (universal serial bus, USB) interface, etc.
- I2C integrated circuit
- I2S integrated circuit built-in audio
- PCM pulse code modulation
- PCM pulse code modulation
- UART universal asynchronous transceiver
- MIPI mobile industry processor interface
- GPIO general-purpose input/output
- SIM subscriber identity module
- USB universal serial bus
- the I2C interface is a bidirectional synchronous serial bus that includes a serial data line (SDA) and a serial clock line (SCL).
- the processor 110 may contain multiple sets of I2C buses.
- the processor 110 can be respectively coupled to a touch sensor, a charger, a flash, a camera 180 and the like through different I2C bus interfaces.
- the processor 110 can couple the touch sensor through the I2C interface, so that the processor 110 communicates with the touch sensor through the I2C bus interface, so as to realize the touch function of the electronic device.
- the I2S interface can be used for audio communication.
- the processor 110 may contain multiple sets of I2S buses.
- the processor 110 may be coupled with the audio module 160 through an I2S bus to implement communication between the processor 110 and the audio module 160 .
- the audio module 160 can transmit audio signals to the wireless communication module 140 through the I2S interface, so as to realize the function of answering calls through a Bluetooth headset.
- the PCM interface can also be used for audio communications, sampling, quantizing and encoding analog signals.
- the audio module 160 and the wireless communication module 140 may be coupled through a PCM bus interface.
- the audio module 160 can also transmit audio signals to the wireless communication module 140 through the PCM interface, so as to realize the function of answering calls through the Bluetooth headset. Both the I2S interface and the PCM interface can be used for audio communication.
- the UART interface is a universal serial data bus used for asynchronous communication.
- the bus may be a bidirectional communication bus. It converts the data to be transmitted between serial communication and parallel communication.
- a UART interface is typically used to connect the processor 110 with the wireless communication module 140 .
- the processor 110 communicates with the Bluetooth module in the wireless communication module 140 through the UART interface to implement the Bluetooth function.
- the audio module 160 can transmit audio signals to the wireless communication module 140 through the UART interface, so as to realize the function of playing music through the Bluetooth headset.
- the MIPI interface can be used to connect the processor 110 with the display screen 170, the camera 180 and other peripheral devices.
- MIPI interfaces include camera serial interface (CSI), display serial interface (DSI), etc.
- the processor 110 communicates with the camera 180 through a CSI interface to implement the photographing function of the electronic device.
- the processor 110 communicates with the display screen 170 through the DSI interface to realize the display function of the electronic device.
- the GPIO interface can be configured by software.
- the GPIO interface can be configured as a control signal or as a data signal.
- the GPIO interface may be used to connect the processor 110 with the camera 180, the display screen 170, the wireless communication module 140, the audio module 160, the sensor module 190, and the like.
- the GPIO interface can also be configured as I2C interface, I2S interface, UART interface, MIPI interface, etc.
- the USB interface is an interface that conforms to the USB standard specification, which can be a Mini USB interface, a Micro USB interface, a USB Type C interface, etc.
- the USB interface can be used to connect the charger to charge the electronic device, and can also be used to transfer data between the electronic device and the peripheral device. It can also be used to connect headphones to play audio through the headphones.
- the interface can also be used to connect other electronic devices, such as AR devices.
- the interface connection relationship between the modules illustrated in the embodiments of the present application is only a schematic illustration, and does not constitute a structural limitation of the electronic device.
- the electronic device may also adopt different interface connection manners in the foregoing embodiments, or a combination of multiple interface connection manners.
- the electronic device after the electronic device is connected to an audio device such as a Bluetooth headset through a wireless communication technology such as Bluetooth and Wi-Fi, it can extend the local voice capability to the audio device, send audio data to the audio device, and use the audio device for playback. And receive the audio data collected by the audio device.
- an audio device such as a Bluetooth headset through a wireless communication technology such as Bluetooth and Wi-Fi
- the mobile phone detects an incoming call and displays an incoming call prompt interface 301 .
- the audio device list is read, the audio device for the call is selected according to preset rules, and the call interface 302 shown in FIG. 3(b) is displayed.
- the audio device list includes a local audio module, a device that can be used to process audio data when connected to the mobile phone.
- the preset rule includes the priority order of audio device selection, and generally, the priority order is preconfigured in the mobile phone. When the mobile phone needs to select an audio device, based on the priority order, the mobile phone selects an audio device with a higher priority to process the audio data.
- the priority order from large to small is Bluetooth headset or speaker > wired headset > local audio module.
- a Bluetooth connection has been established between the mobile phone and the Bluetooth headset 32 .
- the mobile phone determines to use the Bluetooth headset to answer the call.
- the mobile phone will collect the user's voice through the Bluetooth headset 32, and play the incoming call audio to the user.
- the electronic device in the process of selecting an audio device, the electronic device will only select it according to the fixed preset rules, and will not select it according to the actual situation of the current scene. Therefore, determining the selected audio device may not be guaranteed.
- the stability of the call process For example, in the scenario shown in Figure 3, if the stability of the Bluetooth connection is poor at this time, the mobile phone will still select the Bluetooth headset to answer the call according to the preset rules, resulting in poor call quality and affecting the user experience.
- the electronic device can be applied to various call scenarios, for example, the above-mentioned call scenarios using a call application and based on the operator cloud. It can also be applied to call scenarios using other instant messaging applications, such as voice call scenarios, video call scenarios, and so on.
- the mobile phone in response to the user clicking the answer control 41 , the mobile phone connects to the video call and displays the video call interface 402 shown in FIG. 4( b ).
- the mobile phone will send audio data to the Bluetooth headset first. Therefore, in the current scenario, the audio device is selected according to the fixed preset rules, which will affect the call quality. Further, limited by the display area of the display screen of the mobile phone, the display effect of the video call interface 402 is affected. Therefore, the wireless screen projection technology can be used to project the display content of the video call interface 402 to a large-screen device for display. As shown in (a) of FIG.
- the mobile phone in response to the user's operation of clicking the control 51, displays the interface 502 shown in (b) of FIG. 5 to provide the user with more operation options.
- the mobile phone projects the display content of the interface 502 to the TV for display, and the mobile phone and the TV constitute a distributed system.
- the content of the video call interface is enlarged and displayed on the TV display interface 503 to provide a better display effect for the user.
- the wireless screen projection technology can only display the display content on the screen, but the audio data cannot be sent at the same time.
- the mobile phone projects the video call interface to the TV for display, it is also necessary to use the audio module currently being used by the mobile phone to make a call.
- the bluetooth headset 53 needs to be used to process the audio data, and the TV should be used to display the video image.
- the entire display screen of the TV can only be used to display projection images, and cannot perform other operations.
- the electronic device may also use other electronic devices to perform the call process based on the device virtualization technology.
- a TV that does not support inserting a SIM card can make calls to operators by using the SIM card of a mobile phone to make calls.
- a voice over IP (voice over internet protocol, VoIP) application is installed in the mobile phone, the VoIP calling capability of the home light cat can be used to make VoIP calls.
- the TV 61 does not support inserting a SIM card, and the device virtualization technology is applied to make calls through the operator cloud 63 by using the function of the mobile phone 62 to make calls to the operator.
- the audio data is sent to the mobile phone 62 by the electronic device of the opposite end of the call, and then forwarded by the mobile phone 62 to the TV 61 for playback.
- the TV 61 can use the speaker 64 to play audio data.
- the TV 61 establishes a connection with the mobile phone 62 and establishes a connection with the stereo 64, but the mobile phone 62 and the stereo 64 do not establish a direct connection relationship and cannot perceive each other. Therefore, after receiving the audio data, the mobile phone 62 cannot directly send the audio data to the stereo 64, but can only send the audio data to the TV 61, and then the TV 61 sends the audio data to the stereo 64 for playback, resulting in unnecessary data forwarding and affecting transmission. efficiency.
- the distributed call devices participating in the call process are scheduled according to the device granularity, which may cause non-optimal device combinations to affect call quality. problems, as well as issues affecting transfer efficiency caused by transferring data across devices.
- an embodiment of the present application proposes a call method, which can divide distributed call devices participating in the call process according to component granularity during the call process. During the call, the corresponding components are called to ensure the quality of the call and reduce data transmission across devices to provide users with a better experience.
- the distributed call device is divided into components according to the functions implemented in the call process, the divided components are grouped, and the components of the same category are divided into a group of components.
- the electronic device needs to follow the following principles: First, a functional module that performs a single service and has clear inputs and outputs is divided into a component.
- the number parsing component can process the input voice command and output the number information.
- the components in the distributed communication device can not only perform data interaction with other components in the distributed communication device, but also can perform data interaction with components in other distributed communication devices through an external interface.
- the interaction data includes, for example, call data and/or control signaling.
- the software system of the electronic device may adopt a layered architecture, an event-driven architecture, a microkernel architecture, a microservice architecture, or a cloud architecture.
- the embodiments of the present application take an Android system with a layered architecture as an example to exemplarily describe the software structure of an electronic device.
- FIG. 7 is a block diagram of a software structure of an electronic device according to an embodiment of the present application.
- the layered architecture divides the software into several layers, and each layer has a clear role and division of labor. Layers communicate with each other through software interfaces.
- the Android system is divided into four layers, which are an application layer, an application framework layer, a service layer, and a kernel layer from top to bottom.
- the application layer includes applications such as voice assistants, dial pads, and call interfaces.
- the application framework layer provides an application programming interface (application programming interface, API) and a programming framework for applications in the application layer.
- the application framework layer includes some predefined functions. As shown in Figure 7, the application framework layer may include local phone management, call controller, number resolution, contact/call record storage, etc.
- the service layer includes cellular calling service, VoIP calling protocol stack, etc.
- the kernel layer is the layer between hardware and software.
- the kernel layer includes display driver, audio driver, transmission control protocol (TCP) protocol stack or IP protocol stack, cellular protocol stack, codec, Bluetooth/WIFI protocol stack, etc.
- TCP transmission control protocol
- modules in the above-mentioned layers can be divided into different components according to the functions implemented during the call.
- the division of components is described below with reference to the block diagram of the software structure of the electronic device shown in FIG. 7 .
- components can be classified into, for example, input components, number resolution components, user interaction components, and network components.
- the input component is used to receive the user's input before the call starts. Also, input data to other components during the call.
- the input component can receive voice commands from the user, or text commands.
- the input component may only include an output interface but not an input interface.
- the input component sends the voice command to the number resolution component for processing, and does not need to receive data sent by other components.
- the input component includes, for example, a voice assistant and a dial pad located at the application layer, for sending the received call information input by the user to the next component.
- the dial pad sends the received user dial information to the next component.
- the number parsing component is used to process the data input by the input component and output the number information.
- the input data received by the number parsing component is number information. If it is a specific number to be dialed, the number parsing component directly outputs the received number information without further processing.
- the number parsing component receives that the input data is voice data, it needs to parse the voice data, convert the voice data into text information, and then perform semantic analysis on the text information to output the number information. Or obtain the user name after semantic analysis, and then use the user name to search for corresponding number information in the phone book, and output the determined number information.
- the number resolution component includes, for example, the number resolution at the application framework layer.
- the network component is used to receive the number information output by the number resolution component, and based on the number information according to the protocol specification, generate outgoing call signaling and dial.
- the number information is an operator's number (ie, a common mobile phone number)
- the network component is a baseband processor
- the operator's network is used to send outgoing signaling to other electronic devices according to the call protocol.
- the number information is the number information in the instant messaging application
- the network component is the call module in the instant messaging application, and the wireless communication network is directly used to send outgoing signaling to other electronic devices.
- the network component may also receive and process the received incoming call signaling.
- the network component may also be used to transmit audio data and/or video data with the opposite end electronic device.
- the network components include, for example, a cellular calling service at the service layer, a VoIP calling protocol stack.
- the user interaction component is used to receive the user's input data and/or output data to the user during the call.
- the user component may be divided into an auditory component, a visual component and an interactive component according to the interaction between the component and the user.
- an auditory component can also be described as an audio component or a voice component, including audio modules such as speakers, earpieces, and microphones.
- Visual components can also be described as video components or image components, including displays, cameras, etc.
- Interactive components include physical or soft keyboards, controls in applications, electronic device keys, touch sensors, and more.
- the auditory component can interact with the user's sound, the input is audio data, and the output is the sound that the user can perceive.
- the visual component can interact with the user image data, the input is video data, and the output is the user-perceivable image.
- the interaction component can also be directly described as a control component or a haptic component, which is used to receive a control command input by the user, for example, the user inputs a hang-up command by clicking a control displayed on the display screen.
- the user interaction component includes, for example, a call interface located in the application layer. For example, during a call, the call interface detects a user's touch operation and executes a corresponding action.
- the components included in the distributed communication device may be either the above-mentioned software components or hardware components.
- a physical keyboard is connected to an electronic device through a cable or wireless connection, and a software agent is configured in the electronic device to convert the user's input on the physical keyboard into commands, the physical keyboard cannot be separately divided into components.
- the physical keyboard can directly convert the user's input into explicit commands and send them to other components through a cable or wireless connection, the physical keyboard can be divided into components separately. That is to say, after the components are divided, it must be able to ensure that there are clear inputs and outputs in the process of interacting with other components.
- the data receiving capability of the above-mentioned input component is optional, but must have the data sending capability.
- the number resolution component, the network component and the user interaction component must have both data receiving capability and data sending capability.
- the distributed call device before the distributed call device participates in the call process, it needs to divide and group the components it contains, and report the grouping of the components to the call controller, so that the call controller can call the optimal call controller during the call process.
- Component combination to execute the call process Exemplarily, as shown in FIG. 14 , the mobile phone and the TV divide the functional modules that can be used to perform the calling process into components. As shown in Figure 15, the mobile phone and the TV register the divided components with the call controller located in the TV. The relevant content of the scenarios shown in FIG. 14 and FIG. 15 is described in the following description, and will not be described in detail here.
- the call controller can also be described as a controller, a call control module, a central controller, etc., for managing the distributed call process.
- the process of reporting the grouping of components to the call controller can also be described as a registration process.
- Each distributed call device registers its own components with the call controller to complete the registration process.
- the registration process is an automatic registration process, and the electronic device can automatically complete the registration process after detecting the electronic device including the call controller.
- the call controller may be located at the application framework layer.
- the first electronic device and the second electronic device need to perform component division, and the result of the component division is reported to the call controller of the first electronic device.
- Table 1 a kind of audio component registration information is shown.
- the input format of the audio component is used to describe the encoding method, sampling rate, code rate and number of channels corresponding to the audio component.
- the encoding method is MP4 encoding method, the corresponding bit rate is 1411.2Kbps, and the sound channel is dual-channel.
- the encoding format is pulse code modulation (PCM) encoding method, the corresponding code rate is 380Kbps, and the channel is single channel.
- PCM pulse code modulation
- an anti-registration process needs to be performed. For example, all components in an offline electronic device or an offline component sends an offline notification to the call controller, and the call controller deletes the registration information of the offline component or marks it as offline, so as to avoid scheduling the offline component during the call. component, there is a problem of abnormal call.
- the scenarios in which the electronic device is offline include, for example, the shutdown of the electronic device, the inability of all components in the electronic device, and the like.
- Scenarios in which a component is offline include, for example, logging out of the instant messaging application, and the SIM card being disconnected from the network.
- a call controller may be configured within one or more electronic devices in the distributed call system. However, if there are multiple call controllers in the distributed call system, the multiple call controllers will not work at the same time, so as to avoid execution errors of the call process. That is, in a distributed call scenario, the call controller is deployed in only one of the distributed call devices.
- the deployment principles of the call controller include one or more of the following principles:
- an electronic device with a larger number of components is determined as the first electronic device, and a call controller is deployed, thereby reducing data transmission across devices.
- a call controller For example, an electronic device configured with a call controller broadcasts a notification of the number of components it owns. Through information exchange, the call controller inside the electronic device with the largest number of components starts to work and receives the registration of each component.
- the call controller is deployed in the mobile phone.
- the Bluetooth headset only has audio components, and the number of components is small, so there is no need to deploy a call controller.
- the call controller after receiving the registration of components in each distributed call device, the call controller selects a set of optimal component combinations according to the functions of the components, the components that need to be applied during the call and the execution order, and cooperatively processes the call Task.
- the call controller includes, for example, a registration module, a decision-making module, and a data transfer module.
- the registration module is used to receive the registration of each component.
- the decision-making module is used for determining the optimal combination of components for executing the call task among the registered components according to the data input by the input component.
- the data transfer module is used to connect the input interface or output interface of each component to complete the data transfer.
- the data transfer includes interface address transfer and/or call data transfer. If in the optimal combination of components, the two logically connected components can directly complete the call data transmission depending on the capabilities of the electronic devices where they are located, the data transfer module only needs to transfer the interface addresses of the two components to assist the two components to establish a direct connection. aisle. That is, a device-to-device (D2D) communication channel is established between two components.
- D2D device-to-device
- the data transfer module needs to receive the data output by the previous component Send to the next component to complete the data transfer.
- the network component and the user interaction component are two components that are logically connected back and forth, the network component supports establishing a connection through a Wi-Fi network, and the user interaction component only supports establishing a connection through Bluetooth, then the current network component and the user interaction component cannot be established.
- the direct connection channel data transfer must be performed through the data transfer module to execute the call process.
- each component has completed the registration process, and the call process of making a call by the call controller includes the following steps.
- the input component sends call information to the data transfer module.
- the data transfer module sends call information to the decision module.
- the input component receives the call information input by the user before the call process starts. Afterwards, the call information is sent to the data transfer module, and the data transfer module forwards the call information to the decision module.
- the call information includes, for example, a dialed number, a call record clicked in the phone book, a user name clicked in the phone book, and the like.
- the decision-making module determines the target number parsing component.
- the decision-making module sends the target number resolution component address to the data transfer module.
- the decision-making module determines the optimal target number resolution component among the registered number resolution components according to the call information.
- the determined address of the target number resolution component is sent to the data transfer module, so that the data transfer module can send call information to the target number resolution module.
- the data transfer module sends call information to the target number analysis module.
- the target number analysis module determines number information.
- the target number analysis module sends number information to the data transfer module.
- the target number analysis module parses the call information to obtain number information. Convert call information into numbers that can be dialed. And, the number information is sent to the data transfer module.
- the data transfer module sends number information to the decision module.
- the decision module determines the target network component.
- the decision module sends the address of the target network component to the data transfer module.
- the decision module determines the optimal target network component among the registered network components according to the number information. And, the address of the target network component is sent to the data transfer module, so that the data transfer module can forward the number information to the target network component.
- the data transfer module sends number information to the target network component.
- the target network component initiates a call and waits for a response.
- the target network component sends a number information reception response to the data transfer module.
- the target network component in steps S911-S913, after receiving the number information forwarded by the data transfer module, the target network component initiates a call to the opposite end electronic device using the number information, and waits for the opposite end electronic device to answer.
- a number information reception response signal is sent to the data transfer module, which is used to notify the data transfer module that the D2D communication confirmation process can be started.
- the data transfer module sends a D2D confirmation request to the decision module.
- the decision module determines the target user interaction component, and determines whether D2D communication can be performed between the target user interaction component and the target network component.
- the decision-making module sends a D2D confirmation response to the data transfer module.
- step S914-step S916 after receiving the number information reception response signal, the data transfer module determines that the target network component has initiated a call, and can start to perform the D2D communication confirmation process, and send a D2D confirmation request to the decision module .
- the decision module first determines the optimal target user interaction component among the registered user interaction components, and then determines whether D2D communication can be performed between the target user interaction component and the target network component.
- steps S917a to S919a shown in FIG. 9 are executed. If D2D communication cannot be performed between the target user interaction component and the target network component, steps S917b to S919b shown in FIG. 10 are executed.
- the data transfer module sends the interface address to the target network component.
- the target network component establishes a D2D communication channel with the target user interaction component.
- the target network component exchanges call data with the target user interaction component.
- a D2D communication channel is established between the target user interaction component and the target network component.
- call data can be directly transmitted between the target user interaction component and the target network component, thereby reducing the cross-device transmission of call data.
- the call data includes, for example, audio data, video data, control commands, and the like.
- the data transfer module sends the D2D confirmation result to the target network component.
- the target network component exchanges call data with the data transfer module.
- the target user interaction component exchanges call data with the data transfer module.
- the data transfer module needs to pass between the target user interaction component and the target network component. Call data is transferred, and direct communication is not possible.
- the audio data includes uplink audio data and downlink audio data.
- the uplink audio data is audio data collected by the target user interaction component and sent to the target network component.
- the downlink audio data is the audio data received by the target network component and sent by the call peer electronic device, and the target network component sends the downlink audio data to the target user interaction component.
- Video data includes upstream video data and downstream video data.
- the uplink video data is the video data collected by the target user interaction component and sent to the target network component.
- the downlink video data is the video data received by the target network component and sent by the call peer electronic device, and the target network component sends the downlink video data to the target user interaction component.
- the decision module needs to determine the optimal number resolution component, network component, and user interaction component.
- the following describes how the decision module determines the optimal component in each category of components among the registered components.
- corresponding indicators and indicator weights are pre-configured for different types of components according to the functions implemented by different types of components during a call and the factors that affect their work, so as to evaluate each component in the same type of components , to obtain the optimal component among them.
- the call controller scores each component in the same category of components according to the indicators and corresponding weights, and sorts the obtained scores, and the component with the highest score is regarded as the optimal component.
- the call controller determines the optimal components in each category of components in turn according to the execution sequence of the call process, and obtains a set of optimal components.
- the evaluation indicators and corresponding weights of each category component are introduced as follows.
- the call controller can determine the specific conditions of each component under each indicator according to the registration information of each component, so as to score.
- Table 2 below shows the indicators used to evaluate the number parsing component and the corresponding weights. Among them, as a number parsing component, it should have number parsing capability and be able to obtain the number finally used for dialing.
- the weight corresponding to the data matching index is 60%, that is, the call controller preferentially selects the number parsing component that includes the number or name specified by the user.
- the weight corresponding to the data set size indicator is 20%, that is, if multiple number resolution components are number resolution components that include user-specified numbers or names, the number resolution components are determined according to the data set size.
- the data set includes, for example, an address book.
- the number parsing component corresponding to the largest data set is selected, the number parsing component has better number parsing capability. However, if the current dialing scenario is the scenario of dialing an unfamiliar number, that is, none of the number parsing components contain the number or name specified by the user, the call controller selects the number parsing component that contains the address book or call record, and determines the number Whether it is a valid number, and then determine whether to execute the subsequent call process.
- index describe Weights data match Whether the data set contains the specified number or name 60% dataset size The total dataset size of contacts and call logs 20% address book Whether to support address book 10% call records Whether to support call records 10%
- the number resolution component can register information such as the size of the data set, whether it supports the address book, whether it supports call records, etc. However, the dataset does not have to be registered, i.e. it does not have to be sent to the number resolution component.
- the call controller can process the received call information and send it to each number parsing component.
- the number parsing component performs simple operations to determine whether the data matches, and sends the data matching result to the call controller.
- the call controller can score each number resolution component based on the data matching result. For example, the number parsing component uses a Hash algorithm to determine the data matching result.
- the number parsing component may obtain a number or a set of numbers after parsing the input data. For example, if it is a number, the decision-making module directly determines the target network component according to the indicators corresponding to the following network components. For another example, if it is a group of numbers, the decision-making module determines an optimal number according to a preset condition, and then determines the corresponding target network component.
- the preset conditions are the number recently dialed, the number of times dialed, and the like. For example, the number parsing component outputs number 1 and number 2, and the decision-making module determines that the user dialed number 1 one hour ago, and determines number 1 as the optimal number this time.
- Table 3 below shows the indicators used to evaluate the network components and the corresponding weights.
- the server refers to an electronic device that carries network components.
- the selection of the network component needs to be based on the output result of the number resolution component.
- the number output by the number resolution component may be an operator number or a network number corresponding to an instant messaging application, and different number types may correspond to different network components.
- the decision module determines the optimal network component of this type.
- the decision module does not need to work and directly determines the corresponding network component. For example, if a user inputs a number of an instant messaging application, the network component in the instant messaging application is used for dialing directly. That is, where there are multiple numbers and/or network components, a decision needs to be made by the decision module.
- An information acquisition module may be included for acquiring network status information in real time, or for acquiring network status information when network components need to be selected.
- the decision module obtains the network state information output by the information collection module, and then determines the optimal network component.
- Tables 4 to 6 below are indicators for evaluating user interaction components and corresponding weights.
- the user interaction component includes an auditory component, a visual component and an interaction component.
- Table 4 shows the indicators used to evaluate auditory components and the corresponding weights.
- Table 5 shows the metrics used to evaluate the visual components and the corresponding weights.
- Table 6 shows the indicators used to evaluate the interaction components and the corresponding weights.
- the evaluation index of the interactive component is related to its hardware capability or software specification, and is generally a fixed parameter, so the registration information of the interactive component can be used for evaluation. Further, the interactive component generally only transmits a small amount of control data and text information, and does not require high connection quality and network bandwidth. Therefore, in the process of selecting the interaction component, the call controller should select the interaction component that can provide the user with more functions based on the interaction function required by the user in the current call scenario.
- a subscription relationship can be established between components of different categories to form a component combination.
- establishing a subscription relationship between components is establishing a static association relationship between components. After the call controller selects a component in the component combination, according to the subscription relationship, the call controller directly determines to select other components in the component combination, and does not need to perform the component scoring process of the corresponding component category. Or, after scoring each component based on the above indicators, based on the subscription relationship, increase the weight of the component with the subscription relationship to be selected, and score again, that is, after scoring twice based on the indicator and the subscription relationship, the final selected component is determined.
- the components with the subscription relationship may be located in the same electronic device, or may be located in different electronic devices. The establishment of the component subscription relationship is described in the following description.
- the call controller includes a subscription module, and in the process of component selection by the decision module, not only needs to receive the component registration information sent by the registration module, but also needs to receive the subscription module.
- Sent component subscription relationship The decision-making module scores each component based on the component registration information and component subscription relationship, and determines the optimal component combination.
- a subscription relationship is shown.
- a subscription relationship is established between the audio component and three components, including the video component, the network component 1 and the network component 2.
- the network component 1 is a component located in the same electronic device as the audio component.
- the network component 2 is a component located in a different electronic device than the audio component.
- the priority order is determined according to the sorting order, and the priority of the components sorted first is higher.
- the priority of network component 1 is higher than that of network component 2.
- the conflicting component is selected by the user through interface display or voice prompt, and the component selected by the user is used as the component selected by the user. Component of the final call process application.
- the call controller determines that the optimal component is component A.
- the component determined according to the subscription relationship is component B.
- the call controller schedules component A to participate in the call process during the call.
- the electronic device may choose to register the subscription relationship at the same time. For example, in the following cases, the electronic device may establish a subscription relationship between components.
- the user interaction component if multiple components in the user interaction component are located in the same electronic device, a subscription relationship is established for these components, which reduces the number of electronic devices that the user needs to interact with during a call and facilitates user operations.
- the user interaction components in the TV include audio components and video components
- the TV can establish a subscription relationship between its own audio components and video components, and register the subscription relationship when registering the subscription relationship with the call controller.
- the same device can be used to play audio and display video, providing users with a better experience.
- a subscription relationship is established between the input component and the user interaction component in the same electronic device. It is assumed that the input component A and the user interaction component B are in the same electronic device and have a subscription relationship. Then, for the call initiated by input component A, user interaction component B is preferentially selected.
- the smart speaker receives a piece of voice, initiates a call, and after the call is established, the smart speaker itself is selected as the auditory component to improve the effect of call execution and provide users with a better experience.
- Scenario 2 After a subscription relationship is established between components, cross-device data transmission can be reduced and data transmission efficiency improved.
- a subscription relationship is established with the network component in the mobile phone 62 by using the speaker 64 as an audio component. Then, during the call, the network component in the mobile phone 62 can directly transmit audio data with the audio component between the speaker 64, without the need for data transfer by the TV 61, thereby improving the data transmission efficiency.
- a D2D communication channel needs to be established between the mobile phone and the speaker for transmitting audio data.
- the following steps can be used to implement a subscription scenario between components of different devices. Among them, it is assumed that the call controller is located in the TV.
- Step 1 The mobile phone scans the Bluetooth to discover nearby speakers, and confirms that the Bluetooth transmission channel is normal.
- Step 2 The mobile phone sends the subscription relationship between its own network components and the speaker to the call controller.
- the speaker is an audio component.
- the subscription message includes D2D communication channel information, such as a Bluetooth socket (socket) name.
- Step 3 The call controller records the subscription relationship and stores the socket name.
- Step 4 The call controller selects the network component in the mobile phone, and selects the audio (ie, the audio component) that has a subscription relationship with it, and establishes a call.
- Step 5 Before the distributed communication system needs to transmit audio data, the call controller determines whether the current D2D communication channel can transmit audio data according to the subscription relationship. If possible, notify the network component to replace the transmission channel of the audio data from the transmission channel directed to the call controller to the Bluetooth socket of the speaker, thereby establishing a D2D communication channel to transmit the audio data. That is, steps S914 to S919a shown in FIG. 9 are executed.
- the two components utilize the communication capability (eg, Bluetooth connection capability) of the electronic device itself to implement a communication handshake to establish a D2D communication channel, thereby reducing data transmission across devices.
- the communication capability eg, Bluetooth connection capability
- the component needs to perform the above anti-registration process, it also needs to unsubscribe the associated subscription relationship. For example, all components in the offline electronic device or an offline component sends an offline notification to the call controller, and the call controller deletes the registration information of the offline component or identifies that it is offline. Also, the subscription relationship associated with the offline component is deleted or identified as invalid.
- the call method provided by the embodiment of the present application can divide, group and register distributed call devices according to components. And through the call controller, the registered components are scheduled based on the registration information and subscription relationship, and the most suitable combination of components in the current call scenario is selected to execute the call task. Compared with the scenario of performing call tasks at the granularity of electronic devices, it can effectively reduce data transmission across devices and improve call efficiency. Also, the user experience can be improved.
- Scenario 1 Multi-person conference call scenario.
- the multi-person conference scenario refers to that there is at least one user who may speak in the conference room, and a conference terminal is configured in the conference room to connect to the remote electronic device, for example, to the remote electronic device through the application program configured in the conference terminal.
- the device requests a call.
- the conference terminal can receive and play audio data sent by the remote electronic device, and can collect the voices of users in the conference room to generate audio data and send it to the remote electronic device.
- the remote electronic device refers to the electronic device located outside the conference room.
- a call controller is deployed in the conference terminal, and components in the conference terminal register with the call controller.
- the auditory component in the conference terminal is registered with the call controller.
- the components in the mobile phone are automatically registered with the call controller.
- the input components, number parsing components, network components, hearing components, and interaction components in the mobile phone are registered with the call controller.
- the calling method includes the following steps.
- the input component sends call information to the call controller.
- the application program corresponding to the application program used for calling in the conference terminal may not be installed in the remote electronic device. Moreover, limited by the performance of the conference terminal, the conference terminal cannot make outbound calls, or the communication system in the conference terminal is not compatible with the communication system in the remote electronic device. Then, the user cannot directly use the conference terminal to make a call to the remote electronic device.
- the conference terminal cannot directly establish a communication connection with the remote electronic device 1 and the remote electronic device 2 to provide online conference services for multiple people.
- the call controller in the conference terminal can determine the network components that support corresponding functions based on the network components in each registered mobile phone, make a call, and provide the network components of the multi-communication system. Multi-person online meeting service.
- a mobile phone is taken as an example for description.
- the input component is an input component in a mobile phone that supports initiating a call request to a corresponding remote electronic device. Specifically, when the user determines that the number to be dialed currently cannot be dialed by the conference terminal, the user determines a mobile phone with the dialing capability, and uses the mobile phone to dial. After receiving the call information, the input component in the mobile phone sends the call information to the call controller.
- the call controller determines a target number parsing component.
- the call controller in the conference terminal determines the target number resolution component based on the evaluation index and corresponding weight of the number resolution component described above. For example, the target number parsing component resides in the same phone as the input component.
- S1203 The call controller sends call information to the target number analysis component.
- the target number analysis component determines number information.
- the target number analysis component sends number information to the call controller.
- the call controller determines the target network component.
- S1207 The call controller sends number information to the target network component.
- the target network component initiates a call and waits for a response.
- the target network component sends audio data to the call controller.
- the call controller determines that there are multiple auditory components and there is a subscription relationship.
- the call controller detects that the registered components include multiple auditory components, such as the auditory components of the conference terminal and the auditory components of at least one mobile phone.
- the audio data should be processed by the auditory component in the conference terminal, so that it can collect sound data in all directions and ensure that all users can hear the sound clearly.
- the input component that initiates the call in step S1201 also has a subscription relationship with the hearing component in the mobile phone where it is located. Therefore, there is a conflict between the auditory component in the conference terminal selected by the call controller according to the index and the auditory component corresponding to the subscription relationship, and the call controller cannot determine the optimal auditory component.
- the call controller sends an auditory component confirmation request to the interactive component.
- the interaction component sends the auditory component confirmation result to the call controller.
- the call controller determines the target auditory component.
- S1214 Transmit audio data between the call controller and the target auditory component.
- the call controller since the call controller cannot determine the optimal auditory component, it needs to be selected by the user.
- the call controller sends an audible component confirmation request to the interactive component to receive the user selection.
- the interaction component and the input component in step S1201 are located in the same mobile phone, so as to facilitate the user's operation.
- the interactive component is, for example, a visual component.
- the mobile phone After receiving the confirmation request, the mobile phone displays an interface 1301 as shown in FIG. 13 , detects the operation of the user clicking on the control 131, and determines that the user chooses to use the conference terminal audio module to process audio data, That is, the auditory component selected by the user is the audio module in the conference terminal.
- the interaction component sends the auditory component confirmation result to the call controller, and the call controller determines that the target auditory component is the auditory component in the conference terminal selected according to the index. After that, each component of the determined application starts to perform the call task in coordination.
- this embodiment of the present application does not specifically limit whether a D2D communication channel is established between the target network component and the target auditory component.
- the conference terminal can utilize the network component capabilities of one or more mobile phones to communicate with remote electronic devices supporting different communication systems, thereby improving the user's office experience in a multi-person conference scenario.
- Scenario 2 A scenario in which a call is made using an electronic device that does not have a call capability.
- the electronic devices involved include cell phones and TVs. After the mobile phone and the TV are connected to a local area network, such as a Wi-Fi network, they can detect the existence of each other.
- the call controller can be deployed in a mobile phone or a TV. Since it is necessary to ensure that only one call controller is in a working state during a call, in the current scenario, the call controller is deployed in the TV as the As an example, the method of calling will be described.
- the mobile phone includes an input component, a number resolution component, a user interaction component and a network component.
- the user interaction components include auditory components, visual components and interaction components.
- the mobile phone supports various network communications, and the network components include network component 1, network component 2 and network component 3.
- network component 1 supports making calls by an instant messaging application
- network component 2 supports making calls using a mobile network
- network component 3 supports making calls using a telecommunication network.
- the TV contains input components, user interaction components, and call controllers.
- the user interaction components also include auditory components, visual components and interaction components.
- the above components are registered with the registration module in the call controller. Moreover, there is a subscription relationship between the input component in the mobile phone and each user interaction component in the mobile phone. There is a subscription relationship between input components in the TV and various user interaction components in the TV. As shown in FIG. 16 , the component with the subscription relationship also needs to send the subscription relationship to the subscription module in the call controller, and the subscription module stores the subscription relationship.
- the calling method includes the following steps.
- the input component sends call information to the call controller.
- the input component in the TV receives the user's voice command "call dad", and after receiving the voice command, the input component parses the voice command, determines that the call information is "daddy", and sends the call information to the call controller.
- the input components in the TV participate in the current call flow.
- the call controller determines a target number resolution component.
- the call controller sends call information to the target number resolution component.
- the call controller determines the number resolution component in the mobile phone as the target number resolution component, and sends the call information to the target number resolution component.
- the call controller determines that the number resolution component in the mobile phone participates in the current call process.
- the target number analysis component determines number information.
- the target number analysis component sends number information to the call controller.
- the target number parsing component in the mobile phone converts the voice data in the call information into text information, and then performs semantic analysis on the text information to determine that "Dad" corresponds to two numbers.
- One is the number corresponding to the instant messaging application, and the other is the carrier number.
- the target number resolution component sends the determined two numbers to the call controller.
- the call controller determines the target network component.
- the call controller receives two numbers, and the decision module located therein determines that the number to be dialed is the number corresponding to the instant messaging application. Then, the decision module determines that the target network component is the network component 1 in the mobile phone that supports the instant messaging application to make calls.
- the call controller determines that the network component 1 in the mobile phone participates in the current call process.
- S1707 The call controller sends number information to the target network component.
- the data relay module in the call controller sends the determined number information to the target network component.
- the target network component initiates a call and waits for a response.
- the target network component in the mobile phone after receiving the number information sent by the call controller, performs dialing based on the number information.
- the target network component sends the interface address of audio data and/or video data to the call controller.
- the address of the audio input interface is 192.168.1.20:8000; the address of the audio output interface is 192.168.1.20:8001; the address of the video input interface is 192.168.1.20:8000; and the address of the video output interface is 192.168.1.20:8001.
- the call controller determines the target user interaction component.
- the call controller sends the interface address of audio data and/or video data to the target user interaction component.
- Audio data and/or video data are transmitted between the target user interaction component and the target network component based on the interface address.
- the call controller determines that there is a subscription relationship between the input component and the user interaction component in the TV, and therefore determines the user interaction component in the TV as the target user interaction component.
- the call controller determines that the format of the audio data and/or video data transmitted between the target user interaction component and the target network component in the mobile phone matches, and can establish a D2D communication channel based on the interface address. Therefore, a D2D communication channel is established, and audio data and/or video data are directly transmitted between the target user interaction component and the target network component during a subsequent call.
- the call controller determines that the user interaction component in the TV participates in the current call flow. Wherein, sound is played and collected by the auditory component in the TV, and video images are displayed and collected by the visual component in the TV.
- the user can not only use the TV that does not have the ability to make calls.
- the video image displayed by the TV during the call will not occupy the entire display screen of the TV.
- the remaining unoccupied display area can be used to provide other functions to the user.
- the TV display screen includes a display area 191 and a display area 192 .
- the display area 191 is used for displaying video images.
- the display area 192 is used for displaying other screens, and/or receiving other operations of the user.
- the display area 191 displays the video image of the current call
- the display area 192 displays the game image.
- the above-mentioned electronic device includes corresponding hardware structures and/or software modules for executing each function.
- the embodiments of the present application can be implemented in hardware or a combination of hardware and computer software. Whether a function is performed by hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Experts may use different methods for each specific application to implement the described functions, but such implementation should not be considered beyond the scope of the embodiments of the present application.
- the electronic device may be divided into functional modules according to the foregoing method examples.
- each functional module may be divided corresponding to each function, or two or more functions may be integrated into one processing module.
- the above-mentioned integrated modules can be implemented in the form of hardware, and can also be implemented in the form of software function modules. It should be noted that, the division of modules in the embodiments of the present application is schematic, and is only a logical function division, and there may be other division manners in actual implementation.
- FIG. 20 is a schematic structural diagram of a communication device provided by an embodiment of the present application.
- the communication device 2000 includes: a processing module 2001 , a receiving module 2002 and a sending module 2003 .
- the communication device 2000 can be used to implement the functions of the devices involved in the above method embodiments.
- the communication device 2000 may be the device itself, or may be a functional unit or chip in the device, or a device matched with the communication device.
- the processing module 2001 is configured to support the calling device 2000 to perform one or more of steps S903, S909 and S915 in the above embodiments; and/or, the processing module 2001 is further configured to support the calling device 2000 Execute other processing steps executed by the call controller in the embodiment of the present application.
- the receiving module 2002 is configured to support the calling device 2000 to perform one or more steps in step S901, step S907, step S913, step S918b and step S919b in the above embodiment; and/or, the receiving module 2002 further It is used to support the call device 2000 to perform other receiving steps performed by the call controller in the embodiment of the present application.
- the sending module 2003 is configured to support the communication device 2000 to perform one or more steps in step S905, step S911, step S917b, step S918b and step S919b in the above-mentioned embodiment; and/or, the sending module 2003 further It is used to support the call device 2000 to perform other sending steps performed by the call controller in the embodiment of the present application.
- the communication device 2000 shown in FIG. 20 may further include a storage module (not shown in FIG. 20 ), and the storage module stores programs or instructions.
- the processing module 2001 , the receiving module 2002 and the sending module 2003 execute the program or instruction
- the communication device 2000 shown in FIG. 20 can execute the communication method provided by the embodiment of the present application.
- the receiving module and the sending module may be collectively referred to as a transceiver module, which may be implemented by a transceiver or a circuit component related to the transceiver, and may be a transceiver or a transceiver unit.
- the processing module 2001 may be a processor or a controller. It may implement or execute various exemplary logical blocks, modules and circuits described in connection with the disclosure of the embodiments of this application.
- a processor may also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of a DSP and a microprocessor, and the like.
- each unit in the communication device 2000 shown in FIG. 20 are respectively to implement the corresponding flow of the communication method provided by the above method-side embodiment, and are not repeated here for brevity.
- the technical effect of the calling device 2000 shown in FIG. 20 reference may be made to the technical effect of the calling method provided by the above method side embodiment, which is not repeated here.
- An embodiment of the present application further provides a chip system, including: a processor, where the processor is coupled with a memory, the memory is used to store a program or an instruction, and when the program or instruction is executed by the processor, the The chip system implements the method in any of the foregoing method embodiments.
- the number of processors in the chip system may be one or more.
- the processor can be implemented by hardware or by software.
- the processor may be a logic circuit, an integrated circuit, or the like.
- the processor may be a general-purpose processor implemented by reading software codes stored in memory.
- the memory may be integrated with the processor, or may be provided separately from the processor, which is not limited in this embodiment of the present application.
- the memory may be a non-transitory processor, such as a read-only memory ROM, which may be integrated with the processor on the same chip, or may be provided on different chips.
- the arrangement of the memory and the processor is not particularly limited.
- the system-on-chip may be a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), or a system on chip (SoC), It can also be a central processing unit (CPU), a network processor (NP), a digital signal processing circuit (DSP), or a microcontroller (microcontroller).
- controller unit, MCU it can also be a programmable logic device (PLD) or other integrated chips.
- each step in the foregoing method embodiment may be implemented by a hardware integrated logic circuit in a processor or an instruction in the form of software.
- the method steps disclosed in combination with the embodiments of the present application may be directly embodied as being executed by a hardware processor, or executed by a combination of hardware and software modules in the processor.
- Embodiments of the present application also provide a storage medium for storing instructions used by the above-mentioned communication apparatus.
- Embodiments of the present application further provide a computer-readable storage medium, where computer instructions are stored in the computer-readable storage medium, and when the computer instructions are executed on the server, the server executes the above-mentioned related method steps to realize the call in the above-mentioned embodiment. method.
- Embodiments of the present application further provide a computer program product, which, when the computer program product runs on a computer, causes the computer to execute the above-mentioned relevant steps, so as to implement the calling method in the above-mentioned embodiment.
- the embodiments of the present application also provide an apparatus, the apparatus may specifically be a component or a module, and the apparatus may include one or more processors and a memory connected to each other; wherein, the memory is used to store a computer program, one or more A computer program includes instructions. When the instruction is executed by one or more processors, it causes the apparatus to execute the calling method in the above method embodiments.
- the devices, computer-readable storage media, computer program products or chips provided in the embodiments of the present application are all used to execute the corresponding methods provided above. Therefore, for the beneficial effects that can be achieved, reference may be made to the above-provided methods. The beneficial effects in the corresponding method will not be repeated here.
- the steps of the method or algorithm described in conjunction with the disclosure of the embodiments of this application may be implemented in a hardware manner, or may be implemented in a manner in which a processor executes software instructions.
- Software instructions can be composed of corresponding software modules, and software modules can be stored in random access memory (RAM), flash memory, read only memory (ROM), erasable programmable read only memory (erasable programmable ROM, EPROM), electrically erasable programmable read-only memory (electrically EPROM, EEPROM), registers, hard disk, removable hard disk, compact disk read only (CD-ROM) or any other form of storage medium well known in the art.
- An exemplary storage medium is coupled to the processor, such that the processor can read information from, and write information to, the storage medium.
- the storage medium can also be an integral part of the processor.
- the processor and storage medium may reside in an application specific integrated circuit (ASIC).
- ASIC application specific integrated circuit
- the disclosed method may be implemented in other manners.
- the device embodiments described above are only illustrative.
- the division of the modules or units is only a logical function division. In actual implementation, there may be other division methods.
- multiple units or components may be Incorporation may either be integrated into another system, or some features may be omitted, or not implemented.
- the shown or discussed mutual coupling or direct coupling or communication connection may be through some interfaces, indirect coupling or communication connection of modules or units, and may be in electrical, mechanical or other forms.
- the units described as separate components may or may not be physically separated, and components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution in this embodiment.
- each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically alone, or two or more units may be integrated into one unit.
- the above-mentioned integrated units may be implemented in the form of hardware, or may be implemented in the form of software functional units.
- the integrated unit if implemented in the form of a software functional unit and sold or used as an independent product, may be stored in a computer-readable storage medium.
- the technical solutions of the present application can be embodied in the form of software products in essence, or the parts that contribute to the prior art, or all or part of the technical solutions, and the computer software products are stored in a storage medium , including several instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) or a processor (processor) to execute all or part of the steps of the methods described in the various embodiments of the present application.
- the aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), magnetic disk or optical disk and other media that can store program codes .
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Human Computer Interaction (AREA)
- General Engineering & Computer Science (AREA)
- Telephonic Communication Services (AREA)
- Telephone Function (AREA)
Abstract
本申请实施例公开了一种通话方法及电子设备;涉及终端技术领域,参与通话过程的分布式设备将各自具有的能力进行划分并进行注册。在通话过程中,能够根据已注册的能力选择最适用的能力对应的设备处理通话业务,提高用户使用体验。该方法包括:第一设备建立与至少一个第二设备的通信连接,并接收各个第二设备的能力的注册信息。在接收到通话业务时,能够根据自身的能力信息以及第二设备的能力的注册信息,选择包含处理该通话业务能力的目标设备,处理通话业务并接收反馈信息。
Description
本申请要求于2020年12月01日提交国家知识产权局、申请号为202011400206.5、发明名称为“通话方法及电子设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请实施例涉及终端技术领域,尤其涉及一种通话方法及电子设备。
在分布式***中,多个电子设备之间能够实现协同工作。比如,电子设备(如手机,平板等),通过无线通信技术,能够利用蓝牙耳机等可穿戴设备实现音频数据的采集和播放,方便用户操作。又比如,电子设备利用投屏技术,将本地显示屏显示内容通过无线通信技术发送至大屏设备进行显示,方便用户观看。
但是,在上述两个场景中,电子设备之间只能进行单一的音频数据或者视频数据传输实现协同工作,无法适用于目前视频通话过程中,音频数据和视频数据同步实时传输的场景。并且,只能按照固定规则选择协同工作的电子设备,忽略无线连接的稳定性,影响用户使用体验。
发明内容
本申请实施例提供的通话方法及电子设备,参与通话过程的分布式设备将各自具有的能力进行划分并进行注册。在通话过程中,能够根据已注册的能力选择最适用的能力对应的设备处理通话业务,提高用户使用体验。
为达到上述目的,本申请实施例采用如下技术方案:
第一方面,本申请实施例提供一种通话方法,应用于第一电子设备,该方法可以包括:建立与至少一个第二设备的通信连接。接收至少一个第二设备的能力的注册信息。接收第一通话业务请求。根据第一设备的能力信息以及至少一个第二设备的能力的注册信息,选择用于处理第一通话业务请求的第一目标设备;第一目标设备为第一设备或至少一个第二设备中的一个设备。发送第一通话业务请求至第一目标设备。接收第一目标设备对处理第一通话业务请求的第一反馈信息。
其中,第一设备能够接收到第二设备的能力的注册信息,注册信息例如包括第二设备能够在通话过程中实现的功能。示例性的,第二设备为手机,手机中的移动通信模块能够实现拨打电话的网络功能,手机中的音频模块能够实现播放音频的语音播放功能,则手机可以将实现网络功能的移动通信模块以及实现语音播放功能的音频模块向第一设备进行注册。那么后续,第一设备在接收到通话业务时,能够调用相应模块对应的设备执行通话业务。如第一设备选择手机的音频模块播放音频。
如此,在分布式通话***中,各个设备可以将自身所具备的能力进行注册,设置用于接收注册信息的第一设备。进而在需要处理通话业务时,第一设备能够根据已注册的能力,选择最适合处理当前通话业务的设备。进而实现灵活处理通话业务,提高用户使用体验。
在一种可能的实现方式中,根据第一设备的能力信息以及至少一个第二设备的能力的注册信息,选择用于处理第一通话业务请求的第一目标设备,包括:根据第一设备的能力信息以及至少一个第二设备的能力的注册信息,将第一设备的能力和第二设备的能力按照功能类别进行分组,设置每一组别对应的评价指标以及每一评价指标对应的权重。选择用于处理第一通话业务请求的第一组别,利用评价指标和评价指标对应的权重,对第一组别中的第一设备的能力和/或第二设备的能力进行评分,选择第一目标设备,第一目标设备在第一组别中的能力的评分为最高评分。
示例性的,设备能力依靠设备中的功能模块实现,按照不同能力,可以将设备划分为不同的组件构成的设备。根据不同能力能够实现的功能,将能力进行分组,即进行组件的分组。根据不同类别的组件在通话过程中实现的功能,以及影响其工作的因素,为不同类别的组件预配置对应的指标以及指标权重,用于评价同类别组件中的各个组件,获得其中的最优组件。比如,通话控制器根据指标以及对应的权重,对同类别组件中的各个组件进行评分,将获得的分数进行排序,分数最高的组件作为最优组件。通话控制器按照通话过程执行顺序,依次确定各类别组件中的最优组件,则获得一组最优组件,能够获得更好的通话业务处理结果。
在一种可能的实现方式中,在接收第一目标设备对处理第一通话业务请求的第一反馈信息之后,该方法还包括:根据第一反馈信息,确定第二通话业务请求;第二通话业务请求不同于第一通话业务请求。根据第一设备的能力信息以及至少一个第二设备的能力的注册信息,选择用于处理第二通话业务请求的第二目标设备;第二目标设备为第一设备或至少一个第二设备中的一个设备。发送第二通话业务请求至第二目标设备。接收第二目标设备对处理第二通话业务请求的第二反馈信息。
示例性的,假设第一通话业务请求为号码解析请求,第一目标设备中包含号码解析组件。在第一目标设备利用号码解析组件处理号码解析请求后,会将解析结果发送至第一设备,即第一反馈信息为号码解析结果。之后,第一设备根据号码解析结果,确定第二通话业务请求为号码拨打请求,则将该号码拨打请求发送至选定的包含号码拨打能力的第二目标设备,即第二目标设备中包含目标网络组件,能够进行号码拨打。
在一种可能的实现方式中,第一目标设备与第二目标设备为不同的第二设备,第一目标设备用于直接接收第二目标设备发送的通话数据。
示例性的,假设第一目标设备中包含目标网络组件,第二目标设备中包含目标用户交互组件,如果目标用户交互组件与目标网络组件间具备进行直接通信的条件,那么在目标用户交互组件与目标网络组件之间建立直接通信通道。在后续通话过程中,目标用户交互组件与目标网络组件之间能够直接传输通话数据,不必再利用第一设备进行通话数据中转,减少通话数据的跨设备传输,提高通话效率。其中,通话数据例如包括音频数据,视频数据,控制命令等。
在一种可能的实现方式中,接收第一通话业务请求之后,方法还包括:根据第一通话业务请求,选择与第一通话业务请求关联的第一目标设备。
在一些实施例中,不同类别的组件(即能力)间可以建立订阅关系,组成组件组合。其中,组件间建立订阅关系即为组件间建立静态的关联关系。在通话控 制器选择组件组合中的一个组件后,根据订阅关系,通话控制器直接确定选择组件组合中的其他组件,不必再执行相应组件类别的组件评分过程。或者,基于上述指标对各组件评分后,再基于订阅关系,提高具有订阅关系的组件被选中的权重,再次进行评分,即基于指标和订阅关系进行两次评分后,确定最终选择的组件。
其中,具有订阅关系的组件可以位于同一个电子设备中,也可以位于不同的电子设备中。例如,电子设备接收用户输入的号码信息,则同样利用该电子设备为用户播放通话语音数据,能够为用户提供更好的使用体验,因此,可以将电子设备中的输入组件和用户交互组件间建立订阅关系。进而后续,在已选择该输入组件的情况下,选择用户交互组件时,能够直接根据订阅关系,确定选择该用户交互组件。
在一种可能的实现方式中,第一设备与至少一个第二设备中的至少一个第二设备之间的设备形态不同。
示例性的,不同设备形态的设备组成分布式通话***,实现基于能力调用对应的设备执行通话过程。
在一种可能的实现方式中,第一设备的能力信息的数量为一个或多个,同一个第二设备的能力的注册信息的数量为一个或多个。
示例性的,设备中包含的能力的数量可以为一个或多个,基于通话业务请求,选择所需能力对应的设备,实现灵活调度设备。并且,根据能力调度设备,可以使得原互不感知的设备能够建立直连通道,提高通话效率。
在一种可能的实现方式中,第一通话业务请求为号码解析请求、号码拨打请求、视频播放和/或采集请求、音频播放和/或采集请求中的任一项。
示例性的,通话场景例如包括语音通话场景,视频通话场景,运营商号码拨打场景,虚拟号码拨打场景。因此,基于不同的通话场景,需要处理不同的通话业务。
在一种可能的实现方式中,第一目标设备为第一设备,发送第一通话业务请求至第一目标设备,接收第一目标设备对处理第一通话业务请求的第一反馈信息,包括:第一目标设备中的第一模块发送第一通话业务请求至第一目标设备中的第二模块。第一模块接收第二模块对处理第一通话业务请求的第一反馈信息。
在一种可能的实现方式中,第一目标设备为至少一个第二设备中的目标第二设备,发送第一通话业务请求至第一目标设备,接收第一目标设备对处理第一通话业务请求的第一反馈信息,包括:第一设备发送第一通话业务请求至目标第二设备。第一设备接收目标第二设备对处理第一通话业务请求的第一反馈信息。
示例性的,第一设备根据通话业务请求,自身的能力信息以及第二设备的能力的注册信息,确定的目标组件可以位于自身(即第一设备)中,也可以位于第二设备中。那么,若目标组件位于第一设备中,则处理通话业务的过程为第一设备内组件间的交互。若目标组件位于某一个目标第二设备中,则第一设备将该通话业务请求发送至目标第二设备中进行处理。
第二方面,本申请实施例提供一种电子设备,包括:处理器和存储器,存储器与处理器耦合,存储器用于存储计算机程序代码,计算机程序代码包括计算机指令, 当处理器从存储器中读取计算机指令,使得电子设备执行如下操作:建立与至少一个第二设备的通信连接。接收至少一个第二设备的能力的注册信息。接收第一通话业务请求。根据电子设备的能力信息以及至少一个第二设备的能力的注册信息,选择用于处理第一通话业务请求的第一目标设备;第一目标设备为电子设备或至少一个第二设备中的一个设备。发送第一通话业务请求至第一目标设备。接收第一目标设备对处理第一通话业务请求的第一反馈信息。
在一种可能的实现方式中,根据电子设备的能力信息以及至少一个第二设备的能力的注册信息,选择用于处理第一通话业务请求的第一目标设备,包括:根据电子设备的能力信息以及至少一个第二设备的能力的注册信息,将电子设备的能力和第二设备的能力按照功能类别进行分组,设置每一组别对应的评价指标以及每一评价指标对应的权重。选择用于处理第一通话业务请求的第一组别,利用评价指标和评价指标对应的权重,对第一组别中的电子设备的能力和/或第二设备的能力进行评分,选择第一目标设备,第一目标设备在第一组别中的能力的评分为最高评分。
在一种可能的实现方式中,当处理器从存储器中读取计算机指令,还使得电子设备执行如下操作:根据第一反馈信息,确定第二通话业务请求;第二通话业务请求不同于第一通话业务请求。根据电子设备的能力信息以及至少一个第二设备的能力的注册信息,选择用于处理第二通话业务请求的第二目标设备;第二目标设备为电子设备或至少一个第二设备中的一个设备。发送第二通话业务请求至第二目标设备。接收第二目标设备对处理第二通话业务请求的第二反馈信息。
在一种可能的实现方式中,第一目标设备与第二目标设备为不同的第二设备,第一目标设备用于直接接收第二目标设备发送的通话数据。
在一种可能的实现方式中,当处理器从存储器中读取计算机指令,还使得电子设备执行如下操作:根据第一通话业务请求,选择与第一通话业务请求关联的第一目标设备。
在一种可能的实现方式中,电子设备与至少一个第二设备中的至少一个第二设备之间的设备形态不同。
在一种可能的实现方式中,电子设备的能力信息的数量为一个或多个,同一个第二设备的能力的注册信息的数量为一个或多个。
在一种可能的实现方式中,第一通话业务请求为号码解析请求、号码拨打请求、视频播放和/或采集请求、音频播放和/或采集请求中的任一项。
在一种可能的实现方式中,第一目标设备为电子设备,发送第一通话业务请求至第一目标设备,接收第一目标设备对处理第一通话业务请求的第一反馈信息,包括:第一目标设备中的第一模块发送第一通话业务请求至第一目标设备中的第二模块。第一模块接收第二模块对处理第一通话业务请求的第一反馈信息。
在一种可能的实现方式中,第一目标设备为至少一个第二设备中的目标第二设备,发送第一通话业务请求至第一目标设备,接收第一目标设备对处理第一通话业务请求的第一反馈信息,包括:发送第一通话业务请求至目标第二设备。接收目标第二设备对处理第一通话业务请求的第一反馈信息。
此外,第二方面的电子设备的技术效果可以参考第一方面的通话方法的技术 效果,此处不再赘述。
第三方面,本申请实施例提供一种电子设备,包括:处理模块,接收模块和发送模块。其中,处理模块,用于建立与至少一个第二设备的通信连接。接收模块,用于接收至少一个第二设备的能力的注册信息。接收模块,还用于接收第一通话业务请求。处理模块,还用于根据电子设备的能力信息以及至少一个第二设备的能力的注册信息,选择用于处理第一通话业务请求的第一目标设备;第一目标设备为电子设备或至少一个第二设备中的一个设备。发送模块,用于发送第一通话业务请求至第一目标设备。接收模块,还用于接收第一目标设备对处理第一通话业务请求的第一反馈信息。
在一种可能的实现方式中,处理模块,具体用于根据电子设备的能力信息以及至少一个第二设备的能力的注册信息,将电子设备的能力和第二设备的能力按照功能类别进行分组,设置每一组别对应的评价指标以及每一评价指标对应的权重。选择用于处理第一通话业务请求的第一组别,利用评价指标和评价指标对应的权重,对第一组别中的电子设备的能力和/或第二设备的能力进行评分,选择第一目标设备,第一目标设备在第一组别中的能力的评分为最高评分。
在一种可能的实现方式中,处理模块,还用于根据第一反馈信息,确定第二通话业务请求;第二通话业务请求不同于第一通话业务请求。根据电子设备的能力信息以及至少一个第二设备的能力的注册信息,选择用于处理第二通话业务请求的第二目标设备;第二目标设备为电子设备或至少一个第二设备中的一个设备。发送模块,还用于发送第二通话业务请求至第二目标设备。接收模块,还用于接收第二目标设备对处理第二通话业务请求的第二反馈信息。
在一种可能的实现方式中,第一目标设备与第二目标设备为不同的第二设备,第一目标设备用于直接接收第二目标设备发送的通话数据。
在一种可能的实现方式中,处理模块,还用于根据第一通话业务请求,选择与第一通话业务请求关联的第一目标设备。
在一种可能的实现方式中,电子设备与至少一个第二设备中的至少一个第二设备之间的设备形态不同。
在一种可能的实现方式中,电子设备的能力信息的数量为一个或多个,同一个第二设备的能力的注册信息的数量为一个或多个。
在一种可能的实现方式中,第一通话业务请求为号码解析请求、号码拨打请求、视频播放和/或采集请求、音频播放和/或采集请求中的任一项。
在一种可能的实现方式中,第一目标设备为至少一个第二设备中的目标第二设备。发送模块,具体用于发送第一通话业务请求至目标第二设备。接收模块,具体用于接收目标第二设备对处理第一通话业务请求的第一反馈信息。
可选的,接收模块和发送模块可以统称为收发模块,可以由收发器或收发器相关电路组件实现,可以为收发器或收发单元。
此外,第三方面的电子设备的技术效果可以参考第一方面的通话方法的技术效果,此处不再赘述。
第四方面,本申请实施例提供一种电子设备,该电子设备具有实现如上述第一方面及其中任一种可能的实现方式中所述的通话方法的功能。该功能可以通过 硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。
第五方面,本申请实施例提供一种计算机可读存储介质,包括计算机指令,当计算机指令在电子设备上运行时,使得电子设备执行如第一方面及其中任一种可能的实现方式中任一项所述的通话方法。
第六方面,本申请实施例提供一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行如第一方面及其中任一种可能的实现方式中任一项所述的通话方法。
第七方面,提供一种电路***,电路***包括处理电路,处理电路被配置为执行如上述第一方面及其中任一种可能的实现方式中所述的通话方法。
第八方面,本申请实施例提供一种芯片***,包括至少一个处理器和至少一个接口电路,至少一个接口电路用于执行收发功能,并将指令发送给至少一个处理器,当至少一个处理器执行指令时,至少一个处理器执行如上述第一方面及其中任一种可能的实现方式中所述的通话方法。
图1为本申请实施例提供的通信***的示意图;
图2为本申请实施例提供的电子设备的结构示意图;
图3为本申请实施例提供的界面示意图一;
图4为本申请实施例提供的界面示意图二;
图5为本申请实施例提供的界面示意图三;
图6为本申请实施例提供的通话场景示意图一;
图7为本申请实施例的电子设备的软件结构框图的示意图;
图8为本申请实施例提供的通话控制器的结构示意图;
图9为本申请实施例提供的通话方法流程图一;
图10为本申请实施例提供的通话方法流程图二;
图11为本申请实施例提供的界面示意图四;
图12为本申请实施例提供的通话方法流程图三;
图13为本申请实施例提供的界面示意图五;
图14为本申请实施例提供的通话场景示意图二;
图15为本申请实施例提供的通话场景示意图三;
图16为本申请实施例提供的通话场景示意图四;
图17为本申请实施例提供的通话方法流程图四;
图18为本申请实施例提供的通话场景示意图五;
图19为本申请实施例提供的界面示意图六;
图20为本申请实施例提供的通话装置的结构示意图。
下面结合附图对本申请实施例提供的通话方法及电子设备进行详细地描述。
本申请实施例的描述中所提到的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、 ***、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括其他没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
在本申请实施例的描述中,除非另有说明,“多个”的含义是指两个或两个以上。本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
首先,为了便于理解,下面先对本申请实施例可能涉及的相关术语和概念进行介绍。
(1)通话过程
通话过程是指通话双方用户借助电子设备,完成双向的语音流、视频流的交换过程。通话过程可以为点对点通话过程,如通话双方用户利用对讲机执行通话过程。通话过程还可以利用其它设备中转,完成通话。比如,电子设备中安装有用户标识模块(subscriber identification module,SIM)卡,利用SIM通过运营商网络执行通话过程。又比如,电子设备中安装有即时通讯应用程序(如微信、skype等),利用即时通讯应用程序执行通话过程。
(2)基带处理器
基带处理器也可以描述为基带芯片,用于合成即将发射的基带信号,或对接收到的基带信号进行解码。基带芯片需要运营商网络的支持。例如,手机中安装有5G基带芯片,可以支持5G通信,该手机在通信过程中,需要在运营商5G网络的支持下才能达到5G的带宽。
进一步的,基带处理器承担了双向数据的收发。其中,数据可以包括音频、视频、文本、图片、流媒体等数据,还可以包括控制通话过程的控制信令。
在一些实施例中,电子设备中用于与其他电子设备通信的网络模块(如基带处理器等),可以描述为网络组件。在通话过程中,网络组件可以直接与对端电子设备相连,例如对端电子设备为小型对讲机。网络组件也可以通过某个中转设备中转后与对端电子设备通信,例如中转设备为运营商基站、即时通讯应用程序服务器等。
(3)分布式通话***
其中,分布式***(distributed system)是指由多个电子设备组合而成的一个整体。在分布式***中,可以将一个任务分配给其中的各个电子设备协作完成。相应的,分布式通话***中,至少两个电子设备通过无线连接或者有线连接的方式连接后,共同执行通话任务。
需要说明的是,在分布式通话***中的设备可以称之为分布式通话设备。分布式通话***处于分布式环境,该分布式环境可以为局域网,或广域网,对此本 申请实施例不做限定。
(4)组件
组件(component)是对数据和方法的简单封装。组件具备特定的属性和方法,属性是组件数据的简单访问者,方法是组件的功能。
示例性的,按照通话过程中,电子设备实现的功能,可以将电子设备按照组件维度进行分割。比如,手机具有处理音频数据的能力,例如包括用于处理音频数据的音频组件,如麦克风,扬声器等。电视具有显示视频画面的能力,例如包括用于显示视频画面的视频组件,如显示屏,摄像头等。
图1为本申请实施例提供的一种通话方法应用的通信***的示意图。如图1所示,该通信***包括第一电子设备100和至少一个第二电子设备200(如第二电子设备1,第二电子设备2和第二电子设备3)。其中,通信***也可以描述为分布式***,分布式通信***,分布式通话***等,第一电子设备100和第二电子设备200基于该***,协作完成共同的任务,如通话任务等。
在通信***中,第一电子设备100和第二电子设备200之间可以通过有线网络或者无线网络连接。比如,第一电子设备100可分别与上述一个或多个第二电子设备200建立短距离无线通信连接,实现第一电子设备100和第二电子设备200之间的通信功能。例如,第一电子设备100可与第二电子设备200建立蓝牙连接、无线保真(wireless fidelity,Wi-Fi)连接、紫蜂协议(ZigBee)连接或者近场通信(near field communication,NFC)连接等通信连接。又比如,第一电子设备100还可以通过蜂窝网络互联或者转接设备(例如,USB数据线或Dock设备)与第二电子设备200建立通信连接。本申请实施例对设备之间的连接方式不做具体限定。
可选的,上述第一电子设备100为通信***中的主设备,设置有中心控制器,如通话控制器。第一电子设备100用于接收分布式通话***中用于通话的各个组件的注册,以及控制组件参与通话过程。其中,用于通话的组件例如包括声音播放组件,声音采集组件,显示组件,网络组件等。
示例性的,第一电子设备100例如包括大屏显示设备(如智慧屏等)、手机、平板电脑(Pad)、个人计算机(personal computer,PC)、笔记本电脑、台式电脑、车载设备、可穿戴设备、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)、工业控制(industrial control)中的无线终端、无人驾驶(self driving)中的无线终端、远程医疗(remote medical)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端、人工智能(artificial intelligence)设备等终端设备,本申请实施例对第一电子设备100的具体类型不作任何限制。
可选的,上述第二电子设备200为通信***中的从设备,包含用于通话的组件。进一步的,第二电子设备200中用于通话的组件能够与第一电子设备100中的组件和/或其他第二电子设备200中的组件直接进行数据传输,完成通话任务。
示例性的,第二电子设备200例如包括手机、大屏显示设备(如智慧屏等)、平板电脑(Pad)、个人计算机(personal computer,PC)、笔记本电脑、台式电脑、车载设备、可穿戴设备(如蓝牙耳机,智能手表等)、音响、虚拟现实(virtual reality,VR)终端设备、增强现实(augmented reality,AR)终端设备、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)、工业控制(industrial control)中的无线终端、无人驾驶(self driving)中的无线终端、远程医疗(remote medical)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端、人工智能(artificial intelligence)设备等终端设备,本申请实施例对第二电子设备200的具体类型不作任何限制。
在一些实施例中,上述第一电子设备100和第二电子设备200也可以称之为分布式通话设备,用于参与通话过程,为用户提供通话体验。
可选的,如图1所示,上述通信***中还可以包括服务器300。服务器300用于提供行运营商网络(如移动网络,电信网络,联通网络等),第一电子设备100或第二电子设备200通过服务器300,实现利用运营商网络进行拨打电话。其中,在本申请实施例中,电子设备利用运营商网络拨打电话,也可以描述为电子设备拨打运营商电话,电子设备利用电话应用程序拨打电话等,对此下文不再进行赘述。
示例性的,服务器300可以是云服务器或者网络服务器等具有计算功能的设备或服务器。服务器300可以是一台服务器,也可以是由多台服务器组成的服务器集群,或者是一个云计算服务中心。
示例性的,图2示出了电子设备的一种结构示意图,该电子设备可以为上述第一电子设备100和/或第二电子设备200。电子设备可以包括处理器110,外部存储器接口120,内部存储器121,电源管理模块130,天线1,无线通信模块140。
可以理解的是,本申请实施例示意的结构并不构成对电子设备的具体限定。在本申请另一些实施例中,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processing unit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过 或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了***的效率。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作***,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器110通过运行存储在内部存储器121的指令,和/或存储在设置于处理器中的存储器的指令,执行电子设备的各种功能应用以及数据处理。
电源管理模块130用于连接电池,充电管理模块与处理器110。电源管理模块130接收电池和/或充电管理模块的输入,为处理器110,内部存储器121,无线通信模块140等供电。其中,充电管理模块用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。充电管理模块为电池充电的同时,还可以通过电源管理模块130为电子设备供电。在另一些实施例中,电源管理模块130和充电管理模块也可以设置于同一个器件中。
无线通信模块140可以提供应用在电子设备上的包括无线局域网(wireless local area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星***(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块140可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块140经由天线1接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块140还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线1转为电磁波辐射出去。
在一些实施例中,电子设备还可以包括天线2和移动通信模块150。移动通信模块150可以提供应用在电子设备上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线2接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线2转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
其中,天线1和天线2用于发射和接收电磁波信号。电子设备中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线2复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
在一些场景中,电子设备的天线1和无线通信模块140耦合,天线2和移动通信模块150耦合,使得电子设备可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯***(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(code division multiple access,CDMA),宽带码分多址(wideband code division multiple access,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位***(global positioning system,GPS),全球导航卫星***(global navigation satellite system,GLONASS),北斗卫星导航***(beidou navigation satellite system,BDS),准天顶卫星***(quasi-zenith satellite system,QZSS)和/或星基增强***(satellite based augmentation systems,SBAS)。
在一些实施例中,电子设备还可以包括用户标识模块(subscriber identification module,SIM)卡接口151,用于连接SIM卡。SIM卡可以通过***SIM卡接口151,或从SIM卡接口151拔出,实现和电子设备的接触和分离。电子设备可以支持1个或N个SIM卡接口,N为大于1的正整数。
在一些实施例中,无线通信模块140和移动通信模块150可以作为电子设备中的网络组件。
电子设备的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块140,调制解调处理器以及基带处理器等实现。比如,电子设备中安装有即时通讯应用程序,利用无线通信模块140,为用户提供拨打网络电话的功能,如畅连通话等。又比如,电子设备中利用SIM卡接口151连接SIM卡后,利用移动通信模块150,经过运营商云服务,实现拨打电话。
在一些实施例中,电子设备还可以包括音频模块160。音频模块160包括扬声器,受话器,麦克风,耳机接口等。用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块160还可以用于对音频信号编码和解码。在一些实施例中,音频模块160可以设置于处理器110中,或将音频模块160的部分功能模块设置于处理器110中。电子设备可以通过音频模块,扬声器,受话器,麦克风,耳机接口,以及应用处理器等实现音频功能。例如接听或拨打电话,音乐播放,录音等。
在一些实施例中,在通话过程中,电子设备利用音频模块160播放音频和/或采集音频数据,从而实现通话。音频模块160可以作为电子设备中的音频组件。
在一些实施例中,电子设备还可以包括显示屏170。电子设备可以通过GPU,显示屏170,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏170和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器 110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏170用于显示图像,视频等。显示屏170包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emitting diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode的,AMOLED),柔性发光二极管(flex light-emitting diode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot light emitting diodes,QLED)等。在一些实施例中,电子设备可以包括1个或N个显示屏170,N为大于1的正整数。
在一些实施例中,电子设备还可以包括摄像头180。电子设备还可以通过ISP,摄像头180,视频编解码器,GPU,显示屏170以及应用处理器等实现拍摄功能。
ISP用于处理摄像头180反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头180中。
摄像头180用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备可以包括1个或N个摄像头180,N为大于1的正整数。
视频编解码器用于对数字视频压缩或解压缩。电子设备可以支持一种或多种视频编解码器。这样,电子设备可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
在一些实施例中,在视频通话过程中,电子设备利用显示屏170显示视频画面。和/或通过摄像头180采集用户视频画面,从而实现实时视频通话。显示屏170和摄像头180可以作为电子设备中的视觉组件。
在一些实施例中,电子设备还可以包括传感器模块190。传感器模块190可以包括压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器等。
其中,触摸传感器,也称“触控器件”。触摸传感器可以设置于显示屏170,由触摸传感器与显示屏170组成触摸屏,也称“触控屏”。触摸传感器用于检测 作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏170提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器也可以设置于电子设备的表面,与显示屏170所处的位置不同。
在一些实施例中,传感器模块190或触摸屏可以作为电子设备中的用户交互组件。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuit sound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purpose input/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。在一些实施例中,处理器110可以包含多组I2C总线。处理器110可以通过不同的I2C总线接口分别耦合触摸传感器,充电器,闪光灯,摄像头180等。例如:处理器110可以通过I2C接口耦合触摸传感器,使处理器110与触摸传感器通过I2C总线接口通信,实现电子设备的触摸功能。
I2S接口可以用于音频通信。在一些实施例中,处理器110可以包含多组I2S总线。处理器110可以通过I2S总线与音频模块160耦合,实现处理器110与音频模块160之间的通信。在一些实施例中,音频模块160可以通过I2S接口向无线通信模块140传递音频信号,实现通过蓝牙耳机接听电话的功能。
PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。在一些实施例中,音频模块160与无线通信模块140可以通过PCM总线接口耦合。在一些实施例中,音频模块160也可以通过PCM接口向无线通信模块140传递音频信号,实现通过蓝牙耳机接听电话的功能。所述I2S接口和所述PCM接口都可以用于音频通信。
UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。在一些实施例中,UART接口通常被用于连接处理器110与无线通信模块140。例如:处理器110通过UART接口与无线通信模块140中的蓝牙模块通信,实现蓝牙功能。在一些实施例中,音频模块160可以通过UART接口向无线通信模块140传递音频信号,实现通过蓝牙耳机播放音乐的功能。
MIPI接口可以被用于连接处理器110与显示屏170,摄像头180等***器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(display serial interface,DSI)等。在一些实施例中,处理器110和摄像头180通过CSI接口通信,实现电子设备的拍摄功能。处理器110和显示屏170通过 DSI接口通信,实现电子设备的显示功能。
GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,GPIO接口可以用于连接处理器110与摄像头180,显示屏170,无线通信模块140,音频模块160,传感器模块190等。GPIO接口还可以被配置为I2C接口,I2S接口,UART接口,MIPI接口等。
USB接口是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口可以用于连接充电器为电子设备充电,也可以用于电子设备与***设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如AR设备等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备的结构限定。在本申请另一些实施例中,电子设备也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
在一些实施例中,电子设备在通过蓝牙,Wi-Fi等无线通信技术连接音频设备如蓝牙耳机后,能够将本地语音能力扩展到音频设备,向音频设备发送音频数据,利用音频设备进行播放,并且接收音频设备采集的音频数据。
示例性的,如图3中(a)所示手机检测到来电,显示来电提示界面301。响应于用户操作控件31接听电话的操作,读取音频设备列表,按照预设规则选择用于通话的音频设备,并显示如图3中(b)所示的通话界面302。其中,音频设备列表中包括本地音频模块,与手机连接可用于处理音频数据的设备。预设规则包括音频设备选择的优先级顺序,一般的该优先级顺序预配置在手机中。手机在需要选择音频设备时,基于该优先级顺序,选择优先级较高的音频设备处理音频数据。比如,优先级顺序从大至小为蓝牙耳机或音箱>有线耳机>本地音频模块。假设在图3所示的场景中,手机与蓝牙耳机32之间已建立蓝牙连接。那么,手机响应于用户操作控件31接听电话的操作,确定利用蓝牙耳机接听电话。在通话过程中,手机会通过蓝牙耳机32采集用户语音,并向用户播放来电音频。
上述音频分布式场景中,电子设备在选择音频设备的过程中,仅会按照固定的预设规则进行选择,并不会结合当前场景的实际情况进行选择,因此确定选择的音频设备可能并不能保证通话过程的稳定性。例如,在图3所示的场景中,若此时蓝牙连接稳定性较差,手机按照预设规则,仍然会选择蓝牙耳机接听电话,造成通话质量较差,影响用户使用体验。
进一步的,目前电子设备能够应用于多种通话场景,例如应用于上述使用通话应用程序,并基于运营商云的通话场景。还可以应用于使用其他即时通讯应用程序的通话场景,如语音通话场景、视频通话场景等。
示例性的,如图4中(a)所示的界面401,响应于用户点击接听控件41的操作,手机接通视频通话,并显示图4中(b)所示的视频通话界面402。假设当前手机与蓝牙耳机建立蓝牙连接,同样的,手机会优先将音频数据发送至蓝牙耳机,因此在当前场景中同样会出现由于按照固定预设规则选择音频设备,导致影响通话质量的问题。进一步的,受限于手机显示屏的显示面积,影响视频通话界面402的显示效果。因此,可以利用无线投屏技术,将视频通话界面402的显示内容投 屏至大屏设备进行显示。如图5中(a)所示界面501,响应于用户点击控件51的操作,手机显示如图5中(b)所示界面502,为用户提供更多的操作选项。响应于用户点击分享屏幕控件52的操作,手机将界面502的显示内容投屏至电视进行显示,手机和电视构成分布式***。如图5中(c)所示,由电视显示界面503,放大显示视频通话界面的内容,为用户提供更好的显示效果。
但是,无线投屏技术只能够将显示内容进行投屏显示,但是音频数据并不能够同时发送。如图5中(c)所示场景,手机将视频通话界面投屏至电视进行显示时,还需要利用手机当前正在使用的音频模块进行通话。如手机连接蓝牙耳机53,则需要利用蓝牙耳机53处理音频数据,利用电视显示视频画面。而并不能利用电视显示视频画面的同时播放和采集音频数据,影响用户使用体验。进一步的,如图5中(c)所示,应用无线投屏技术后,电视的整个显示屏只能用于显示投屏画面,而无法执行其他操作。
在另一些实施例中,电子设备还可以基于设备虚拟化技术,利用其他电子设备,执行通话过程。比如,不支持***SIM卡的电视,通过利用手机的SIM卡拨打电话功能,实现拨打运营商电话。又比如,手机中安装有基于IP的语音传输(voice over internet protocol,VoIP)应用程序,则可以利用家庭光猫的VoIP通话能力,拨打VoIP电话。
示例性的,如图6所示,电视61不支持***SIM卡,应用设备虚拟化技术,利用手机62拨打运营商电话的功能,通过运营商云63拨打电话。在通话过程中,音频数据由通话对端的电子设备发送至手机62后,再由手机62转发至电视61进行播放。假设当前电视61通过无线通信技术与音响64建立蓝牙连接,电视61可以利用音响64播放音频数据。在当前场景中,电视61与手机62建立连接,并且与音响64建立连接,但是手机62和音响64没有建立直接连接关系,不能互相感知。因此,手机62接收到音频数据后不能直接发送至音响64,只能先将音频数据发送至电视61,再由电视61将音频数据发送至音响64进行播放,造成不必要的数据转发,影响传输效率。
可以看出,上述图3-图6所示的分布式通话场景中,均是将参与通话过程的分布式通话设备按照设备粒度进行调度,因此可能造成非最佳设备组合导致的影响通话质量的问题,以及跨设备传输数据导致的影响传输效率的问题。
由此,本申请实施例提出一种通话方法,能够在通话过程中,将参与通话过程的分布式通话设备按照组件粒度进行划分。在通话过程中,调用相应的组件,保证通话质量,并且减少跨设备传输数据,为用户提供更好的使用体验。
在一些实施例中,将分布式通话设备按照在通话过程中实现的功能进行组件划分,并将划分后的组件进行分组,将同一类别的组件划分为一组组件。具体的,在组件划分的过程中,电子设备需要遵循如下原则:首先,将执行单一业务且具有明确输入和输出的功能模块划分为一个组件。如号码解析组件,能够将输入的语音命令进行处理,输出号码信息。其次,分布式通话设备中的组件不仅能够与该分布式通话设备内的其他组件进行数据交互,还能够通过对外接口与其他分布式通话设备中的组件进行数据交互。其中,交互数据例如包括通话数据和/或控制 信令。
示例性的,如图7所示,电子设备的软件***可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android***为例,示例性说明电子设备的软件结构。图7是本申请实施例的电子设备的软件结构框图。分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android***分为四层,从上至下分别为应用程序层,应用程序框架层,服务层,以及内核层。
其中,应用程序层包括语音助手,拨号盘,通话界面等应用程序。应用程序框架层为应用程序层的应用程序提供应用编程接口(application programming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。如图7所示,应用程序框架层可以包括本地电话管理,通话控制器,号码解析,联系人/通话记录存储等。服务层包括蜂窝通话服务,Voip通话协议栈等。内核层是硬件和软件之间的层。内核层包含显示驱动,音频驱动,传输控制协议(transmission control protocol,TCP)协议栈或IP协议栈,蜂窝协议栈,编解码,蓝牙/WIFI协议栈等。
上述各层中的模块按照在通话过程中实现的功能,可以划分为不同的组件。如下结合图7所示的电子设备软件结构框图对组件的划分进行说明。在通话过程中,组件例如可以分类为输入组件,号码解析组件,用户交互组件,以及网络组件。
其中,输入组件,用于在通话开始前接收用户的输入。并且,在通话过程中向其他组件输入数据。比如,输入组件能够接收用户的语音命令,或文本命令。可选的,在通话过程的软件实现过程中,输入组件可以只包含输出接口,而不包含输入接口。比如,在通话过程中,输入组件将语音命令发送至号码解析组件进行处理,而不需要再接收其他组件发送的数据。示例性的,如图7所示,输入组件例如包括位于应用程序层的语音助手和拨号盘,用于向下一组件发送接收到的用户输入的呼叫信息。如拨号盘向下一组件发送接收到的用户拨号信息。
号码解析组件,用于处理输入组件输入的数据,输出号码信息。可选的,号码解析组件接收到的输入数据为号码信息,如为具体的待拨打号码,则号码解析组件不必再做处理,直接输出接收到的号码信息。可选的,号码解析组件接收到输入数据为语音数据,则需要对语音数据进行解析,将语音数据转化为文本信息,再对文本信息进行语义分析,输出号码信息。或者在语义分析后获得用户名,再利用用户名在电话簿中查找相应的号码信息,输出确定的号码信息。示例性的,如图7所示,号码解析组件例如包括位于应用程序框架层的号码解析。
网络组件,用于接收号码解析组件输出的号码信息,基于号码信息按照协议规范,生成呼出信令,进行拨号。例如,号码信息为运营商号码(即普通手机号码),网络组件为基带处理器,则按照通话协议,利用运营商网络向其他电子设备发送呼出信令。或者,号码信息为即时通讯应用程序中的号码信息,网络组件为即时通讯应用程序中的通话模块,则直接利用无线通信网络向其他电子设备发送呼出信令。相应的,网络组件还可以接收并处理接收到的呼入信令。进一步的, 在与对端电子设备的通话连接建立后,网络组件还可以用于与对端电子设备传输音频数据和/或视频数据。示例性的,如图7所示,网络组件,例如包括位于服务层的蜂窝通话服务,Voip通话协议栈。
用户交互组件,用于在通话过程中接收用户的输入数据,和/或向用户输出数据。可选的,按照组件与用户的交互方式可以将用户组件划分为听觉组件,视觉组件以及交互组件。例如,听觉组件也可以描述为音频组件或语音组件,包括扬声器,听筒,麦克风等音频模块。视觉组件也可以描述为视频组件或图像组件,包括显示屏,摄像头等。交互组件包括实体键盘或软键盘,应用程序中的控件,电子设备按键,触摸传感器等。其中,听觉组件能够与用户进行声音的交互,其输入为音频数据,输出为用户可感知的声音。视觉组件能够与用户进行图像数据的交互,其输入为视频数据,输出为用户可感知的图像。交互组件也可以直接描述为控制组件或触觉组件,用于接收用户输入的控制命令,如用户通过点击显示屏上显示的控件,输入挂断命令。示例性的,如图7所示,用户交互组件例如包括位于应用程序层中的通话界面。如在通话过程中,通话界面检测到用户的触摸操作,执行对应的动作。
需要说明的是,分布式通话设备包含的组件既可以为上述软件组件,也可以为硬件组件。例如,实体键盘通过电缆或无线连接的方式接入电子设备,在电子设备中配置一软件代理,用于将用户在实体键盘上的输入转化为命令,则该实体键盘不能单独划分为组件。但是,若实体键盘能够直接将用户的输入转化为明确的命令,并通过电缆或无线连接的方式发送至其他组件,则该实体键盘能够单独划分为组件。也就是说,组件划分后,必须能够保证与其他组件交互的过程中具有明确的输入和输出。
需要说明的是,在通话过程中,上述输入组件的数据接收能力为可选的,但必须具有数据发送能力。号码解析组件,网络组件和用户交互组件则必须同时数据接收能力和数据发送能力。
可以理解的是,上述组件划分方式仅为一种示例性说明,还可以包含其他划分方式,本申请实施例对此不做具体限定。
下文以上述组件划分方式为例,对本申请实施例提供的通话方法进行介绍。
在一些实施例中,分布式通话设备在参与通话过程之前,需要将自身包含的组件进行划分及分组,并将组件分组情况上报至通话控制器,便于通话控制器在通话过程中调用最优的组件组合,执行通话过程。示例性的,如图14所示,手机和电视将自身可用于执行通话过程的功能模块划分为组件。如图15所示,手机和电视将划分后的组件向位于电视中的通话控制器进行注册。图14和图15所示场景的相关内容详见下文描述,在此不再详细说明。
其中,通话控制器也可以描述为控制器,通话控制模块,中心控制器等,用于对分布式通话过程进行管理。将组件分组情况上报至通话控制器的过程,也可以描述为注册过程,各个分布式通话设备将自身包含的组件向通话控制器进行注册,以完成注册过程。该注册过程为自动注册过程,电子设备在检测到包含通话控制器的电子设备后,即可自动完成注册过程。示例性的,如图7所示,通话控 制器可以位于应用程序框架层。
示例性的,如图1所示的分布式通话***中,第一电子设备和第二电子设备需要进行组件划分,并将组件划分结果上报至第一电子设备的通话控制器中。如下表1所示,示出一种音频组件注册信息。其中,音频组件的输入格式,用于描述音频组件对应的编码方式,采样率,码率以及声道个数。例如,编码方式为MP4编码方式,对应的码率为1411.2Kbps,声道为双通道。编码格式为脉冲编码调制(pulse code modulation,PCM)编码方式,对应的码率为380Kbps,声道为单通道。
表1
在一些实施例中,若电子设备离线或某个组件离线,则需要执行反注册流程。比如,离线的电子设备中的全部组件或离线的某个组件向通话控制器发送离线通知,通话控制器则将离线组件的注册信息删除或者标识已离线,从而避免在通话过程中调度已离线的组件,出现通话异常的问题。其中,电子设备离线的场景例如包括电子设备关机,电子设备中的全部组件失去能力等。某个组件离线的场景例如包括即时通讯应用程序退出登录,SIM卡掉网等。
在一些实施例中,分布式通话***中的一个或多个电子设备内均可以配置通话控制器。但是,若分布式通话***中存在多个通话控制器,多个通话控制器不会同时工作,以避免通话过程执行错误。也就是说,在分布式通话场景中,仅在其中一个分布式通话设备中部署通话控制器。
具体的,通话控制器的部署原则包括如下一项或几项原则:
1)将分布式通话***中,拥有较多数量组件的电子设备确定为第一电子设备,部署通话控制器,从而减少跨设备的数据传输。比如,配置有通话控制器的电子设备广播通知自身拥有的组件数量,通过信息交互,拥有组件数量最多的电子设备内部的通话控制器开始工作,接收各个组件的注册。
2)将通话过程中,持续保持在线状态的电子设备确定为第一电子设备,部署通话控制器,从而保证通话业务的连续性。
3)将处理能力能够满足通话过程中组件调度与控制需求的电子设备,确定为第一电子设备,部署通话控制器,从而保证通话控制器能够正确处理通话任务。
比如,手机中拥有的组件数量为分布式通话***中拥有组件数量最多的电子设备,能够保证在通话过程中持续在线,且处理器能力足够,则将通话控制器部署在手机中。又比如,蓝牙耳机中仅拥有音频组件,拥有组件数量较少,则不必部署通话控制器。
在一些实施例中,通话控制器在接收各个分布式通话设备中组件的注册后,按照各组件功能,以及通话过程中需要应用的组件及执行顺序,选择一组最优组件组合,协同处理通话任务。
示例性的,如图8所示,通话控制器中例如包括注册模块,决策模块,数据中转模块。其中,注册模块用于接收各个组件的注册。决策模块,用于根据输入组件输入的数据,在已经注册的组件中,确定最优的用于执行通话任务的组件组合。数据中转模块,用于连接各个组件的输入接口或输出接口,完成数据的中转。
其中,数据的中转包括接口地址的中转和/或通话数据的中转。若最优组件组合中,逻辑上相连的两个组件能够依靠所在的电子设备能力直接完成通话数据传输,则数据中转模块仅需将两个组件的接口地址进行中转,协助两个组件建立直连通道。即在两个组件间建立设备到设备(device to device,D2D)通信通道。比如,假设网络组件与用户交互组件为逻辑上前后连接的两个组件,网络组件输出音频流的方式为pipe。用户交互组件输入音频流的方式也为pipe,接口地址为192.168.1.5:8080。那么,数据中转组件只需将用户交互组件的接口地址发送至网络组件,网络组件基于接收到的接口地址,就能够将接收到的音频数据以pipe的方式发送至用户交互组件进行播放。
若最优组件组合中,逻辑上相连的两个组件间传输的数据格式不同,和/或数据收发方式不同,和/或无法建立直连通道,则数据中转模块需要接收上一组件输出的数据发送至下一组件,完成数据的中转。比如,假设网络组件与用户交互组件为逻辑上前后连接的两个组件,网络组件支持通过Wi-Fi网络建立连接,用户交互组件仅支持通过蓝牙建立连接,则当前网络组件与用户交互组件无法建立直连通道,必须通过数据中转模块进行数据中转,执行通话过程。
如下介绍通话控制器中各个模块如何调度组件执行通话任务。
示例性的,如图9所示,各个组件已完成注册流程,通话控制器执行拨打电话的通话过程包括如下步骤。
S901、输入组件向数据中转模块发送呼叫信息。
S902、数据中转模块向决策模块发送呼叫信息。
在一些实施例中,输入组件在通话过程开始之前,先接收用户输入的呼叫信息。之后,将该呼叫信息发送至数据中转模块,由数据中转模块将该呼叫信息转发至决策模块。其中,呼叫信息例如包括拨号号码,在电话簿中点击的通话记录,在电话簿中点击的用户名等。
S903、决策模块确定目标号码解析组件。
S904、决策模块向数据中转模块发送目标号码解析组件地址。
在一些实施例中,在步骤S903和步骤S904中,决策模块根据呼叫信息,在已注册的号码解析组件中确定最优的目标号码解析组件。并且,将已确定的目标号码解析组件地址发送至数据中转模块,便于数据中转模块向目标号码解析模块发送呼叫信息。
S905、数据中转模块向目标号码解析模块发送呼叫信息。
S906、目标号码解析模块确定号码信息。
S907、目标号码解析模块向数据中转模块发送号码信息。
在一些实施例中,在步骤S905-步骤S907中,目标号码解析模块接收到数据中转模块转发的呼叫信息后,对呼叫信息进行解析,获得号码信息。即将呼叫信息转化为能够拨打的号码。并且,将号码信息发送至数据中转模块。
S908、数据中转模块向决策模块发送号码信息。
S909、决策模块确定目标网络组件。
S910、决策模块向数据中转模块发送目标网络组件地址。
在一些实施例中,在步骤S908-步骤S910中,决策模块在接收到数据中转模块转发的号码信息后,根据号码信息,确定已注册的网络组件中最优的目标网络组件。并且,将目标网络组件地址发送至数据中转模块,以便于数据中转模块将号码信息转发至目标网络组件。
S911、数据中转模块向目标网络组件发送号码信息。
S912、目标网络组件发起通话,等待应答。
S913、目标网络组件向数据中转模块发送号码信息接收响应。
在一些实施例中,在步骤S911-步骤S913中,目标网络组件接收到数据中转模块转发的号码信息后,利用号码信息向对端电子设备发起通话,等待对端电子设备接听。并且,向数据中转模块发送号码信息接收响应信号,用于通知数据中转模块可以开始D2D通信确认流程。
S914、数据中转模块向决策模块发送D2D确认请求。
S915、决策模块确定目标用户交互组件,并确定目标用户交互组件与目标网络组件间是否能够进行D2D通信。
S916、决策模块向数据中转模块发送D2D确认响应。
在一些实施例中,在步骤S914-步骤S916中,数据中转模块在接收到号码信息接收响应信号后,确定目标网络组件已经发起通话,可以开始执行D2D通信确认流程,向决策模块发送D2D确认请求。决策模块首先确定已注册的用户交互组件中最优的目标用户交互组件,之后,确定目标用户交互组件与目标网络组件间是否能够进行D2D通信。
若目标用户交互组件与目标网络组件间能够进行D2D通信,则执行图9所示的步骤S917a-步骤S919a。若目标用户交互组件与目标网络组件间不能进行D2D通信,则执行图10所示的步骤S917b-步骤S919b。
S917a、数据中转模块向目标网络组件发送接口地址。
S918a、目标网络组件与目标用户交互组件建立D2D通信通道。
S919a、目标网络组件与目标用户交互组件交互通话数据。
在一些实施例中,如前文所述如果目标用户交互组件与目标网络组件间具备进行D2D通信的条件,那么在目标用户交互组件与目标网络组件之间建立D2D通信通道。在后续通话过程中,目标用户交互组件与目标网络组件之间能够直接传输通话数据,减少通话数据的跨设备传输。其中,通话数据例如包括音频数据,视频数据,控制命令等。
S917b、数据中转模块向目标网络组件发送D2D确认结果。
S918b、目标网络组件与数据中转模块交互通话数据。
S919b、目标用户交互组件与数据中转模块交互通话数据。
在一些实施例中,如前文所述如果目标用户交互组件与目标网络组件间不具备进行D2D通信的条件,那么在后续通话过程中,目标用户交互组件与目标网络组件之间需要通过数据中转模块中转通话数据,不能够进行直接通信。
在上述图9和图10所示的通话流程中,音频数据包括上行音频数据和下行音频数据。其中,上行音频数据为目标用户交互组件采集并向目标网络组件发送的音频数据。下行音频数据为目标网络组件接收到的通话对端电子设备发送的音频数据,目标网络组件向目标用户交互组件发送下行音频数据。视频数据包括上行视频数据和下行视频数据。其中,上行视频数据为目标用户交互组件采集并向目标网络组件发送的视频数据。下行视频数据为目标网络组件接收到的通话对端电子设备发送的视频数据,目标网络组件向目标用户交互组件发送下行视频数据。
在上述图9和图10所示的通话流程中,决策模块需要确定最优的号码解析组件,网络组件,以及用户交互组件。如下介绍决策模块如何在已注册的组件中,确定各类别组件中的最优组件。
在一些实施例中,根据不同类别的组件在通话过程中实现的功能,以及影响其工作的因素,为不同类别的组件预配置对应的指标以及指标权重,用于评价同类别组件中的各个组件,获得其中的最优组件。比如,通话控制器根据指标以及对应的权重,对同类别组件中的各个组件进行评分,将获得的分数进行排序,分数最高的组件作为最优组件。通话控制器按照通话过程执行顺序,依次确定各类别组件中的最优组件,获得一组最优组件。
示例性的,如下介绍各个类别组件的评价指标以及对应的权重。其中,通话控制器能够根据各个组件的注册信息,确定各个组件在各指标下的具体情况,从而进行评分。
下表2为用于评价号码解析组件的指标以及对应的权重。其中,作为号码解析组件,应具备号码解析能力,能够获得最终用于拨号的号码。示例性的,如下表2所示,数据匹配指标对应的权重为60%,即通话控制器优先选择包含用户指定号码或名字的号码解析组件。进一步的,数据集大小指标对应的权重为20%,即若多个号码解析组件均为包含用户指定号码或名字的号码解析组件,则根据数据集大小确定号码解析组件。其中,数据集例如包括通讯录。如选择最大数据集对应的号码解析组件,该号码解析组件具有更好的号码解析能力。但是,若当前拨号 场景为拨打陌生号码的场景,即所有的号码解析组件均未包含用户指定的号码或名字,则通话控制器选择包含通讯录或通话记录的号码解析组件,由其判断该号码是否为有效号码,进而确定是否执行后续通话过程。
表2
指标 | 描述 | 权重 |
数据匹配 | 数据集中是否包含指定的号码或者名字 | 60% |
数据集大小 | 通讯录和通话记录总的数据集大小 | 20% |
通讯录 | 是否支持通讯录 | 10% |
通话记录 | 是否支持通话记录 | 10% |
需要说明的是,号码解析组件在上通话控制器注册的过程中,能够注册数据集大小,是否支持通讯录,是否支持通话记录等信息。但是,不必注册数据集,也即不必将数据集发送至号码解析组件。通话控制器在判断数据匹配时,可以将接收到的呼叫信息处理后发送至各个号码解析组件,号码解析组件进行简单的运算确定是否数据匹配即可,将数据匹配结果发送至通话控制器。从而通话控制器能够基于数据匹配结果对各个号码解析组件进行评分。比如,号码解析组件利用哈希(Hash)算法,确定数据匹配结果。
在一些场景中,号码解析组件解析输入数据后可能获得一个号码,或者一组号码。比如,若为一个号码,则决策模块直接根据下述网络组件对应的指标确定目标网络组件。又比如,若为一组号码,则决策模块根据预设条件确定最优的一个号码,再确定对应的目标网络组件。其中,预设条件为最近拨打的号码,拨打次数等。比如,号码解析组件输出号码1和号码2,决策模块确定用户在1小时前拨打过号码1,则此次将号码1确定为最优的号码。
下表3为用于评价网络组件的指标以及对应的权重。其中,服务端是指承载网络组件的电子设备。
表3
需要说明的是,网络组件的选择需要基于号码解析组件的输出结果。比如,号码解析组件输出的号码可以为运营商号码,还可以为即时通讯应用程序对应的网络号码,不同号码类型可能对应不同的网络组件。此外,若号码解析组件的输入数据已经指定了所需的网络组件类型,则输出该网络组件类型以及对应的号码信息,决策模块再确定最优的该类型的网络组件。进一步的,若号码解析组件的输入数据已经指定了所需的网络组件,并且输出的号码信息仅包含一个号码,则决策模块无需工作,直接确定对应的网络组件。例如,用户输入某即时通讯应用程序的一个号码,则直接利用该即时通讯应用程序中的网络组件进行拨号。也就是说,在存在多个号码和/或网络组件的情况下,需要由决策模块进行选择。
此外,上表3中各个指标中,部分信息为网络组件注册时即可提供的信息,部分信息会基于网络状态动态变化,因此,可选的,如图8所示,在通话控制器中还可以包括信息采集模块,用于实时获取网络状态信息,或者用于在需要选择网络组件时获取网络状态信息。决策模块获得信息采集模块输出的网络状态信息,进而确定最优的网络组件。
下表4-表6为用于评价用户交互组件的指标以及对应的权重。其中,如上文所述用户交互组件包括听觉组件,视觉组件以及交互组件。表4为用于评价听觉组件的指标以及对应的权重。表5为用于评价视觉组件的指标以及对应的权重。表6为用于评价交互组件的指标以及对应的权重。
表4
需要说明的是,上表4中,评价连接质量和网络带宽,需要利用信息采集模块获得当前状态参数。评价音频质量时,利用听觉组件的注册信息进行评价即可。
表5
需要说明的是,上表5中,评价连接质量和网络带宽,需要利用信息采集模块获得当前状态参数。评价视频质量,屏幕参数和camera参数时,利用视觉组件的注册信息进行评价即可。
表6
需要说明的是,上表6中,交互组件的评价指标与其硬件能力或软件规格相关,一般为固定参数,因此利用交互组件的注册信息进行评价即可。进一步的,交互组件一般仅传输少量控制数据及文本信息,对连接的质量、网络带宽等要求不高。因此,通话控制器在进行交互组件选择的过程中,应基于当前通话场景中用户所需的交互功能,选择能够为用户提供更多功能的交互组件。
在一些实施例中,不同类别的组件间可以建立订阅关系,组成组件组合。其中,组件间建立订阅关系即为组件间建立静态的关联关系。在通话控制器选择组 件组合中的一个组件后,根据订阅关系,通话控制器直接确定选择组件组合中的其他组件,不必再执行相应组件类别的组件评分过程。或者,基于上述指标对各组件评分后,再基于订阅关系,提高具有订阅关系的组件被选中的权重,再次进行评分,即基于指标和订阅关系进行两次评分后,确定最终选择的组件。其中,具有订阅关系的组件可以位于同一个电子设备中,也可以位于不同的电子设备中。组件订阅关系的建立详见下文描述。
示例性的,如图8所示的通话控制器结构示意图,通话控制器中包含订阅模块,在决策模块进行组件选择的过程中,不仅需要接收注册模块发送的组件注册信息,还需要接收订阅模块发送的组件订阅关系。决策模块基于组件注册信息和组件订阅关系对各个组件进行评分,确定最优的组件组合。
如下表7所示,示出一种订阅关系。其中,音频组件与三个组件间建立了订阅关系,包括视频组件,网络组件1和网络组件2。例如,网络组件1为与音频组件位于同一个电子设备中的组件。网络组件2为与音频组件位于不同电子设备中的组件。
进一步的,若同类型组件的数量为多个,则按照排序顺序确定优先级顺序,排序在先的组件优先级较高。如网络组件1的优先级高于网络组件2的优先级。在通话控制器选择网络组件时,优先选择网络组件1。
表7
在一些实施例中,若通话控制器根据上述指标选择的组件与根据订阅关系选择的组件存在冲突,则将冲突的组件通过界面显示或语音提示等方式由用户进行选择,将用户选择的组件作为最终通话过程应用的组件。
示例性的,假设在选择显示通话视频的组件的过程中,组件选择出现冲突。如图11所示界面1101,通话控制器按照上述指标评分后,确定最优的组件为组件A。根据订阅关系确定的组件为组件B。电子设备在检测到用户点击控件111的操作后,确定用户选择利用组件A显示视频,则通话控制器在通话过程中调度组件A参与通话流程。
在一些实施例中,电子设备在向通话控制器注册组件的过程中,可以选择同时注册订阅关系。例如,在如下情况下,电子设备可以在组件间建立订阅关系。
情况一、在同一电子设备内的组件间,建立订阅关系,为用户提供更好的使用体验。
示例性的,若用户交互组件中多个组件位于同一电子设备中,则将这些组件建立订阅关系,减少用户在通话过程中需要交互的电子设备的数量,方便用户操作。比如,电视中的用户交互组件包含音频组件和视频组件,则电视可以建立自身音频组件和视频组件的订阅关系,在向通话控制器注册订阅关系时,将该订阅关系进行注册。进而在利用电视进行通话的过程中,可以利用同一设备播放音频 并显示视频,为用户提供更好的使用体验。
又示例性的,将同一电子设备中的输入组件和用户交互组件间建立订阅关系。假设输入组件A与用户交互组件B在同一个电子设备中,并存在订阅关系。那么,由输入组件A发起的通话,优先选择用户交互组件B。比如,智能音箱接收了一段语音,发起通话,通话建立后,选择智能音箱本身作为听觉组件,提高通话执行效果,为用户提供更好的使用体验。
情况二、组件间建立订阅关系后,能够减少跨设备数据传输,提高数据传输效率。
示例性的,如图6所示场景,将音响64作为音频组件与手机62中的网络组件建立订阅关系。那么,在通话过程中,手机62中的网络组件能够与音响64之间的音频组件直接传输音频数据,而不必再由电视61进行数据中转,提高数据传输效率。
具体的,在上述手机与音响之间音频数据直接传输的场景中,手机与音响之间需要建立D2D通信通道,用于传输音频数据。具体的,通过下述步骤能够实现上述不同设备的组件间的订阅场景。其中,假设通话控制器位于电视当中。
步骤一、手机通过蓝牙扫描的方式发现附近存在的音响,并确定蓝牙传输通道正常。
步骤二、手机向通话控制器发送自身网络组件与音响的订阅关系。其中,音响为音频组件。该订阅消息中包含D2D通信通道信息,如蓝牙套接字(socket)名称。
步骤三、通话控制器记录订阅关系,并存储socket名称。
步骤四、通话控制器选择手机中的网络组件,并选择与其存在订阅关系的音响(即音频组件),建立通话。
步骤五、通话控制器在分布式通话***需要传输音频数据之前,根据订阅关系,判断当前D2D通信通道是否可以传输音频数据。若可以,则通知网络组件将音频数据的传输通道由指向通话控制器的传输通道替换为音响的蓝牙socket,从而建立D2D通信通道传输音频数据。即执行如图9所示的步骤S914-步骤S919a。
如此,通过上述步骤一至步骤五所述的方法,两个组件利用所在电子设备本身的通信能力(如蓝牙连接能力)实现通信握手,以建立D2D通信通道,从而减少跨设备传输数据。
可以理解的是,上述组件间建立订阅关系的情况仅为示例性说明,还可以存在其他需要建立订阅关系的情况。比如,某特定组件仅接受固定组件的输入数据,则需要建立订阅关系来保证该固定连接关系。
此外,若组件需要执行上述反注册流程时,同样需要将关联的订阅关系进行反订阅。比如,离线的电子设备中的全部组件或离线的某个组件向通话控制器发送离线通知,通话控制器则将离线组件的注册信息删除或者标识已离线。并且,将与离线组件相关联的订阅关系删除或标识已失效。
由此,本申请实施例提供的通话方法,能够将分布式通话设备按照组件进行划分,分组以及注册。并通过通话控制器对已注册的组件基于注册信息和订阅关 系,进行调度,选择当前通话场景中最适用的组件组合,执行通话任务。相对于以电子设备粒度执行通话任务的场景,能够有效减少跨设备数据传输,提高通话效率。并且,能够提高用户的使用体验。
以下将以两个场景为例,对本申请实施例提供的通话方法进行介绍。
场景一、多人会议通话场景。
其中,多人会议场景是指在会议室中存在至少一个可能发声的用户,并且会议室中配置有会议终端,用于连接远端电子设备,如通过会议终端中配置的应用程序向远端电子设备请求通话。会议终端能够接收并播放远端电子设备发送的音频数据,并且能够采集会议室中用户的声音,生成音频数据发送至远端电子设备。其中,远端电子设备是指位于会议室以外的电子设备。
在一些实施例中,在会议终端中部署通话控制器,会议终端中的组件向通话控制器进行注册。如会议终端中的听觉组件向通话控制器进行注册。并且,在用户携带手机进入会议室后,手机中的组件自动向通话控制器进行注册。如手机中的输入组件,号码解析组件,网络组件,听觉组件,交互组件向通话控制器进行注册。并且,手机中的输入组件和听觉之间存在订阅关系。
需要说明的是,一般的,用户通过某一电子设备发起通话,也会在该电子设备执行其他操作,如进行语音交互。因此,在手机中的输入组件和听觉组件间需要建立订阅关系。
示例性的,如图12所示,当前场景中,通话方法包括如下步骤。
S1201、输入组件向通话控制器发送呼叫信息。
在一些实施例中,当前场景中,远端电子设备中可能并未安装与会议终端中用于通话的应用程序相应的应用程序。并且,受限于会议终端的性能,会议终端并不能拨打外线电话,或者会议终端中的通信***与远端电子设备中的通信***并不兼容。那么,用户无法直接利用会议终端向远端电子设备拨打电话。
比如,假设会议终端中安装的应用程序为应用A;远端电子设备1中安装用于会议通讯的应用程序为应用B;远端电子设备2中未安装用于会议通讯的应用程序,仅支持拨打运营商电话。此时,会议终端无法直接与远端电子设备1和远端电子设备2之间建立通讯连接,提供多人线上会议服务。
基于此,在本申请实施例提供的通话方法中,会议终端中的通话控制器能够基于已注册的各个手机中的网络组件,确定其中支持相应功能的网络组件,拨打电话,提供多通讯***的多人线上会议服务。
在步骤S1201中,以手机为例进行说明。输入组件为支持向对应的远端电子设备发起通话请求的手机中的输入组件。具体的,用户在确定当前待拨打的号码无法利用会议终端进行拨号,则确定具有该拨打能力的手机,利用该手机进行拨号。手机中的输入组件在接收到呼叫信息后,向通话控制器发送该呼叫信息。
S1202、通话控制器确定目标号码解析组件。
在一些实施例中,会议终端中的通话控制器在接收到呼叫信息后,基于前文所述的号码解析组件的评价指标以及对应的权重,确定目标号码解析组件。比如,目标号码解析组件位于与输入组件相同的手机中。
S1203、通话控制器向目标号码解析组件发送呼叫信息。
S1204、目标号码解析组件确定号码信息。
S1205、目标号码解析组件向通话控制器发送号码信息。
S1206、通话控制器确定目标网络组件。
S1207、通话控制器向目标网络组件发送号码信息。
S1208、目标网络组件发起通话,等待应答。
S1209、目标网络组件向通话控制器发送音频数据。
可选的,步骤S1203-步骤S1209中的内容可以参考上述步骤S904-步骤S913中的相关内容,在此不再赘述。
S1210、通话控制器确定存在多个听觉组件,并存在订阅关系。
在一些实施例中,通话控制器检测到已注册的组件中包括多个听觉组件,如会议终端的听觉组件,以及至少一个手机的听觉组件。一般的,在多人会议场景中,应由会议终端中的听觉组件处理音频数据,使其采集各个方向的声音数据并且能够保证所有用户均清晰的听到声音。但是,步骤S1201中发起此次通话的输入组件还与其所在的手机中的听觉组件存在订阅关系。因此,通话控制器根据指标选择的会议终端中的听觉组件与订阅关系对应的听觉组件间存在冲突,通话控制器无法判断最优的听觉组件。
S1211、通话控制器向交互组件发送听觉组件确认请求。
S1212、交互组件向通话控制器发送听觉组件确认结果。
S1213、通话控制器确定目标听觉组件。
S1214、通话控制器与目标听觉组件之间传输音频数据。
在一些实施例中,上述步骤S1211-步骤S1214中,由于通话控制器无法判断最优的听觉组件,则需要由用户进行选择。通话控制器向交互组件发送听觉组件确认请求,以接收用户选择。其中,交互组件与步骤S1201中的输入组件位于同一手机中,以便于用户操作。示例性的,交互组件例如为视觉组件,在接收到确认请求后,手机显示如图13所示的界面1301,检测到用户点击控件131的操作,确定用户选择利用会议终端音频模块处理音频数据,即用户选择的听觉组件为会议终端中的音频模块。交互组件将听觉组件确认结果发送至通话控制器,通话控制器确定目标听觉组件为根据指标选择的会议终端中的听觉组件。之后,已确定应用的各个组件开始协同执行通话任务。
需要说明的是,在上述多人会议场景中,由于通话控制器与目标听觉组件均位于会议终端中,目标网络组件与目标听觉组件间是否建立D2D通信通道,均不会出现跨设备传输音频数据的问题。因此,当前场景中,本申请实施例对目标网络组件与目标听觉组件间是否建立D2D通信通道不做具体限定。
如此,重复上述步骤S1201-步骤S1214,会议终端能够利用一个或多个手机的网络组件能力,与支持不同通信***的远端电子设备进行通信,提高多人会议场景中用户的办公体验。
场景二、利用不具备通话能力的电子设备进行通话的场景。
假设用户在客厅看电视的过程中,需要拨打电话,而此时手机不在身边而在 其他房间。采用本申请实施例提供的通话方法,能够实现利用不具备通话能力的电视进行通话。
在当前场景中,涉及的电子设备包括手机和电视。在手机和电视接入局域网络,如Wi-Fi网络后,能够互相检测到对方的存在。并且,通话控制器可以部署在手机中,也可以部署在电视中,由于在通话过程中,需要保证仅一个通话控制器处于工作状态,因此,当前场景中,以通话控制器部署在电视中为例,对通话方法进行说明。
示例性的,如图14所示,手机中包含输入组件,号码解析组件,用户交互组件以及网络组件。其中,用户交互组件包括听觉组件,视觉组件以及交互组件。手机支持多种网络通信,网络组件包括网络组件1,网络组件2以及网络组件3。比如,网络组件1支持即时通讯应用程序拨打电话,网络组件2支持利用移动网络拨打电话,网络组件3支持利用电信网络拨打电话。电视中包含输入组件,用户交互组件以及通话控制器。其中,用户交互组件同样包括听觉组件,视觉组件以及交互组件。
如图15所示,在手机和电视接入局域网络后,上述各个组件向通话控制器中的注册模块进行注册。并且,手机中的输入组件和手机中的各个用户交互组件存在订阅关系。电视中的输入组件和电视中的各个用户交互组件存在订阅关系。如图16所示,存在订阅关系的组件也需要向通话控制器中的订阅模块发送订阅关系,由订阅模块进行存储。
示例性的,如图17所示,当前场景中,通话方法包括如下步骤。
S1701、输入组件向通话控制器发送呼叫信息。
在一些实施例中,电视中的输入组件接收到用户的语音命令“给爸爸打电话”,输入组件接收到语音命令后,解析语音命令,确定呼叫信息为“爸爸”,将呼叫信息发送至通话控制器。
示例性的,如图18所示,电视中的输入组件参与当前通话流程。
S1702、通话控制器确定目标号码解析组件。
S1703、通话控制器向目标号码解析组件发送呼叫信息。
在一些实施例中,通话控制器接收到呼叫信息后,将手机中的号码解析组件确定为目标号码解析组件,将呼叫信息发送至目标号码解析组件。
示例性的,如图18所示,通话控制器确定手机中的号码解析组件参与当前通话流程。
S1704、目标号码解析组件确定号码信息。
S1705、目标号码解析组件向通话控制器发送号码信息。
在一些实施例中,手机中的目标号码解析组件在接收到呼叫信息后,将呼叫信息中的语音数据转化为文本信息,再对文本信息进行语义分析,确定“爸爸”对应两个号码。一个为即时通讯应用程序对应的号码,另一个为运营商号码。目标号码解析组件将确定的两个号码发送至通话控制器。
S1706、通话控制器确定目标网络组件。
在一些实施例中,通话控制器接收到两个号码,由位于其中的决策模块,确 定待拨打号码为即时通讯应用程序对应的号码。那么,决策模块确定目标网络组件为手机中支持即时通讯应用程序拨打电话的网络组件1。
示例性的,如图18所示,通话控制器确定手机中的网络组件1参与当前通话流程。
S1707、通话控制器向目标网络组件发送号码信息。
在一些实施例中,通话控制器中的数据中转模块将确定的号码信息发送至目标网络组件。
S1708、目标网络组件发起通话,等待应答。
在一些实施例中,手机中的目标网络组件在接收到通话控制器发送的号码信息后,基于号码信息进行拨号。
S1709、目标网络组件向通话控制器发送音频数据和/或视频数据的接口地址。
示例性的,假设音频输入接口地址为192.168.1.20:8000;音频输出接口地址为192.168.1.20:8001;视频输入接口地址为192.168.1.20:8000;视频输出接口地址为192.168.1.20:8001。
S1710、通话控制器确定目标用户交互组件。
S1711、通话控制器向目标用户交互组件发送音频数据和/或视频数据的接口地址。
S1712、目标用户交互组件与目标网络组件之间基于接口地址传输音频数据和/或视频数据。
在一些实施例中,上述步骤S1709-步骤S1712中,通话控制器确定电视中的输入组件和用户交互组件间存在订阅关系,因此将电视中的用户交互组件确定为目标用户交互组件。
并且,通话控制器确定目标用户交互组件与手机中的目标网络组件间传输的音频数据和/或视频数据格式匹配,基于接口地址能够建立D2D通信通道。因此,建立D2D通信通道,在后续通话过程中,目标用户交互组件与目标网络组件间直接传输音频数据和/或视频数据。
示例性的,如图18所示,通话控制器确定电视中的用户交互组件参与当前通话流程。其中,由电视中的听觉组件播放及采集声音,并且由电视中的视觉组件显示及采集视频画面。
进一步的,在当前场景中,用户不仅可以利用不具备通话能力的电视进行通话。并且,区别于现有技术中的无线投屏技术,电视显示通话过程中的视频画面不会占据电视的整个显示屏。其余未被占据的显示屏区域可以用于为用户提供其他功能。
示例性的,如图19所示界面1901,电视显示屏包括显示区域191和显示区域192。其中,显示区域191用于显示视频画面。显示区域192用于显示其他画面,和/或接收用户的其他操作。例如,如界面1901所示,显示区域191显示当前正在通话的视频画面,显示区域192显示游戏画面。
可以理解的是,上述电子设备为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所 公开的实施例描述的各示例的单元及算法步骤,本申请实施例能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请实施例的范围。
本申请实施例可以根据上述方法示例对上述电子设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
在一种可能的设计中,图20为本申请实施例提供的通话装置的结构示意图。如图20所示,通话装置2000包括:处理模块2001,接收模块2002以及发送模块2003。通话装置2000可用于实现上述方法实施例中涉及的设备的功能。其中,通话装置2000可以为设备本身,也可以为设备中的功能单元或者芯片,或者与通信设备匹配使用的装置。
可选的,处理模块2001,用于支持通话装置2000执行上述实施例中的步骤S903、步骤S909和步骤S915中的一个或者多个步骤;和/或,处理模块2001还用于支持通话装置2000执行本申请实施例中通话控制器执行的其他处理步骤。
可选的,接收模块2002,用于支持通话装置2000执行上述实施例中的步骤S901、步骤S907、步骤S913,步骤S918b和步骤S919b中的一个或者多个步骤;和/或,接收模块2002还用于支持通话装置2000执行本申请实施例中通话控制器执行的其他接收步骤。
可选的,发送模块2003,用于支持通话装置2000执行上述实施例中的步骤S905、步骤S911、步骤S917b,步骤S918b和步骤S919b中的一个或者多个步骤;和/或,发送模块2003还用于支持通话装置2000执行本申请实施例中通话控制器执行的其他发送步骤。
可选地,图20所示的通话装置2000还可以包括存储模块(图20中未示出),该存储模块存储有程序或指令。当处理模块2001,接收模块2002以及发送模块2003执行该程序或指令时,使得图20所示的通话装置2000可以执行本申请实施例提供的通话方法。
其中,接收模块和发送模块可以统称为收发模块,可以由收发器或收发器相关电路组件实现,可以为收发器或收发单元。
其中,处理模块2001可以是处理器或控制器。其可以实现或执行结合本申请实施例公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。
图20所示的通话装置2000中的各个单元的操作和/或功能分别为了实现上述方法侧实施例提供通话方法的相应流程,为了简洁,在此不再赘述。图20所示的通话装置2000的技术效果可以参考上述方法侧实施例提供通话方法的技术效果, 此处不再赘述。
本申请实施例还提供一种芯片***,包括:处理器,所述处理器与存储器耦合,所述存储器用于存储程序或指令,当所述程序或指令被所述处理器执行时,使得该芯片***实现上述任一方法实施例中的方法。
可选地,该芯片***中的处理器可以为一个或多个。该处理器可以通过硬件实现也可以通过软件实现。当通过硬件实现时,该处理器可以是逻辑电路、集成电路等。当通过软件实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现。
可选地,该芯片***中的存储器也可以为一个或多个。该存储器可以与处理器集成在一起,也可以和处理器分离设置,本申请实施例并不限定。示例性的,存储器可以是非瞬时性处理器,例如只读存储器ROM,其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请实施例对存储器的类型,以及存储器与处理器的设置方式不作具体限定。
示例性的,该芯片***可以是现场可编程门阵列(field programmable gate array,FPGA),可以是专用集成芯片(application specific integrated circuit,ASIC),还可以是***芯片(system on chip,SoC),还可以是中央处理器(central processor unit,CPU),还可以是网络处理器(network processor,NP),还可以是数字信号处理电路(digital signal processor,DSP),还可以是微控制器(micro controller unit,MCU),还可以是可编程控制器(programmable logic device,PLD)或其他集成芯片。
应理解,上述方法实施例中的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本申请实施例所公开的方法步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
本申请的实施例还提供了一种存储介质,用于存储为上述通信装置所用的指令。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机指令,当该计算机指令在服务器上运行时,使得服务器执行上述相关方法步骤实现上述实施例中的通话方法。
本申请实施例还提供一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述相关步骤,以实现上述实施例中的通话方法。
另外,本申请的实施例还提供一种装置,该装置具体可以是组件或模块,该装置可包括相连的一个或多个处理器和存储器;其中,存储器用于存储计算机程序,一个或多个计算机程序包括指令。当该指令被一个或多个处理器执行时,以使装置执行上述各方法实施例中的通话方法。
其中,本申请实施例提供的装置、计算机可读存储介质、计算机程序产品或芯片均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
结合本申请实施例公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软 件模块组成,软件模块可以被存放于随机存取存储器(random access memory,RAM)、闪存、只读存储器(read only memory,ROM)、可擦除可编程只读存储器(erasable programmable ROM,EPROM)、电可擦可编程只读存储器(electrically EPROM,EEPROM)、寄存器、硬盘、移动硬盘、只读光盘(CD-ROM)或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于专用集成电路(application specific integrated circuit,ASIC)中。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的***,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,模块或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之 内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (22)
- 一种通话方法,其特征在于,应用于第一设备,所述方法包括:建立与至少一个第二设备的通信连接;接收所述至少一个第二设备的能力的注册信息;接收第一通话业务请求;根据所述第一设备的能力信息以及所述至少一个第二设备的能力的注册信息,选择用于处理所述第一通话业务请求的第一目标设备;所述第一目标设备为所述第一设备或所述至少一个第二设备中的一个设备;发送所述第一通话业务请求至所述第一目标设备;接收所述第一目标设备对处理所述第一通话业务请求的第一反馈信息。
- 根据权利要求1所述的方法,其特征在于,所述根据所述第一设备的能力信息以及所述至少一个第二设备的能力的注册信息,选择用于处理所述第一通话业务请求的第一目标设备,包括:根据所述第一设备的能力信息以及所述至少一个第二设备的能力的注册信息,将所述第一设备的能力和所述第二设备的能力按照功能类别进行分组,设置每一组别对应的评价指标以及每一评价指标对应的权重;选择用于处理所述第一通话业务请求的第一组别,利用所述评价指标和所述评价指标对应的权重,对所述第一组别中的所述第一设备的能力和/或所述第二设备的能力进行评分,选择所述第一目标设备,所述第一目标设备在所述第一组别中的能力的评分为最高评分。
- 根据权利要求1或2所述的方法,其特征在于,在接收所述第一目标设备对处理所述第一通话业务请求的第一反馈信息之后,所述方法还包括:根据所述第一反馈信息,确定第二通话业务请求;所述第二通话业务请求不同于所述第一通话业务请求;根据所述第一设备的能力信息以及所述至少一个第二设备的能力的注册信息,选择用于处理所述第二通话业务请求的第二目标设备;所述第二目标设备为所述第一设备或所述至少一个第二设备中的一个设备;发送所述第二通话业务请求至所述第二目标设备;接收所述第二目标设备对处理所述第二通话业务请求的第二反馈信息。
- 根据权利要求3所述的方法,其特征在于,所述第一目标设备与所述第二目标设备为不同的第二设备,所述第一目标设备用于直接接收所述第二目标设备发送的通话数据。
- 根据权利要求1所述的方法,其特征在于,所述接收第一通话业务请求之后,所述方法还包括:根据所述第一通话业务请求,选择与所述第一通话业务请求关联的所述第一目标设备。
- 根据权利要求1-5任一项所述的方法,其特征在于,所述第一设备与所述至少一个第二设备中的至少一个第二设备之间的设备形态不同。
- 根据权利要求1-6任一项所述的方法,其特征在于,所述第一设备的能力信息 的数量为一个或多个,同一个第二设备的能力的注册信息的数量为一个或多个。
- 根据权利要求1-7任一项所述的方法,其特征在于,所述第一通话业务请求为号码解析请求、号码拨打请求、视频播放和/或采集请求、音频播放和/或采集请求中的任一项。
- 根据权利要求1-8任一项所述的方法,其特征在于,所述第一目标设备为所述第一设备,所述发送所述第一通话业务请求至所述第一目标设备,接收所述第一目标设备对处理所述第一通话业务请求的第一反馈信息,包括:所述第一目标设备中的第一模块发送所述第一通话业务请求至所述第一目标设备中的第二模块;所述第一模块接收所述第二模块对处理所述第一通话业务请求的所述第一反馈信息。
- 根据权利要求1-8任一项所述的方法,其特征在于,所述第一目标设备为所述至少一个第二设备中的目标第二设备,所述发送所述第一通话业务请求至所述第一目标设备,接收所述第一目标设备对处理所述第一通话业务请求的第一反馈信息,包括:所述第一设备发送所述第一通话业务请求至所述目标第二设备;所述第一设备接收所述目标第二设备对处理所述第一通话业务请求的所述第一反馈信息。
- 一种电子设备,其特征在于,包括:处理器和存储器,所述存储器与所述处理器耦合,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述处理器从所述存储器中读取所述计算机指令,使得所述电子设备执行如下操作:建立与至少一个第二设备的通信连接;接收所述至少一个第二设备的能力的注册信息;接收第一通话业务请求;根据所述电子设备的能力信息以及所述至少一个第二设备的能力的注册信息,选择用于处理所述第一通话业务请求的第一目标设备;所述第一目标设备为所述电子设备或所述至少一个第二设备中的一个设备;发送所述第一通话业务请求至所述第一目标设备;接收所述第一目标设备对处理所述第一通话业务请求的第一反馈信息。
- 根据权利要求11所述的电子设备,其特征在于,所述根据所述电子设备的能力信息以及所述至少一个第二设备的能力的注册信息,选择用于处理所述第一通话业务请求的第一目标设备,包括:根据所述电子设备的能力信息以及所述至少一个第二设备的能力的注册信息,将所述电子设备的能力和所述第二设备的能力按照功能类别进行分组,设置每一组别对应的评价指标以及每一评价指标对应的权重;选择用于处理所述第一通话业务请求的第一组别,利用所述评价指标和所述评价指标对应的权重,对所述第一组别中的所述电子设备的能力和/或所述第二设备的能力进行评分,选择所述第一目标设备,所述第一目标设备在所述第一组别中的能力的评分为最高评分。
- 根据权利要求11或12所述的电子设备,其特征在于,当所述处理器从所述存 储器中读取所述计算机指令,还使得所述电子设备执行如下操作:根据所述第一反馈信息,确定第二通话业务请求;所述第二通话业务请求不同于所述第一通话业务请求;根据所述电子设备的能力信息以及所述至少一个第二设备的能力的注册信息,选择用于处理所述第二通话业务请求的第二目标设备;所述第二目标设备为所述电子设备或所述至少一个第二设备中的一个设备;发送所述第二通话业务请求至所述第二目标设备;接收所述第二目标设备对处理所述第二通话业务请求的第二反馈信息。
- 根据权利要求13所述的电子设备,其特征在于,所述第一目标设备与所述第二目标设备为不同的第二设备,所述第一目标设备用于直接接收所述第二目标设备发送的通话数据。
- 根据权利要求11所述的电子设备,其特征在于,当所述处理器从所述存储器中读取所述计算机指令,还使得所述电子设备执行如下操作:根据所述第一通话业务请求,选择与所述第一通话业务请求关联的所述第一目标设备。
- 根据权利要求11-15任一项所述的电子设备,其特征在于,所述电子设备与所述至少一个第二设备中的至少一个第二设备之间的设备形态不同。
- 根据权利要求11-16任一项所述的电子设备,其特征在于,所述电子设备的能力信息的数量为一个或多个,同一个第二设备的能力的注册信息的数量为一个或多个。
- 根据权利要求11-17任一项所述的电子设备,其特征在于,所述第一通话业务请求为号码解析请求、号码拨打请求、视频播放和/或采集请求、音频播放和/或采集请求中的任一项。
- 根据权利要求11-18任一项所述的电子设备,其特征在于,所述第一目标设备为所述电子设备,所述发送所述第一通话业务请求至所述第一目标设备,接收所述第一目标设备对处理所述第一通话业务请求的第一反馈信息,包括:所述第一目标设备中的第一模块发送所述第一通话业务请求至所述第一目标设备中的第二模块;所述第一模块接收所述第二模块对处理所述第一通话业务请求的所述第一反馈信息。
- 根据权利要求11-18任一项所述的电子设备,其特征在于,所述第一目标设备为所述至少一个第二设备中的目标第二设备,所述发送所述第一通话业务请求至所述第一目标设备,接收所述第一目标设备对处理所述第一通话业务请求的第一反馈信息,包括:发送所述第一通话业务请求至所述目标第二设备;接收所述目标第二设备对处理所述第一通话业务请求的所述第一反馈信息。
- 一种计算机可读存储介质,其特征在于,包括程序或指令,当所述程序或指令被执行时,如权利要求1-10中任一项所述的通话方法被实现。
- 一种包含指令的计算机程序产品,其特征在于,当所述计算机程序产品在电子设备上运行时,使得所述电子设备执行如权利要求1-10中任一项所述的通话方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP21900023.9A EP4239955A4 (en) | 2020-12-01 | 2021-12-01 | CALLING PROCEDURE AND ELECTRONIC DEVICE |
US18/039,539 US20240007558A1 (en) | 2020-12-01 | 2021-12-01 | Call method and electronic device |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011400206.5A CN114584734A (zh) | 2020-12-01 | 2020-12-01 | 通话方法及电子设备 |
CN202011400206.5 | 2020-12-01 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022116992A1 true WO2022116992A1 (zh) | 2022-06-09 |
Family
ID=81769902
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2021/134764 WO2022116992A1 (zh) | 2020-12-01 | 2021-12-01 | 通话方法及电子设备 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240007558A1 (zh) |
EP (1) | EP4239955A4 (zh) |
CN (2) | CN114584734A (zh) |
WO (1) | WO2022116992A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024124396A1 (zh) * | 2022-12-13 | 2024-06-20 | 北京小米移动软件有限公司 | 一种通信方法、装置、通信设备及计算机存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170054814A1 (en) * | 2014-04-26 | 2017-02-23 | Huawei Technologies Co., Ltd. | Communication Establishment Method, Device, and System |
WO2017084317A1 (zh) * | 2015-11-16 | 2017-05-26 | 乐视控股(北京)有限公司 | 视频通话连接方法、***、设备及视频服务端 |
WO2017084315A1 (zh) * | 2015-11-16 | 2017-05-26 | 乐视控股(北京)有限公司 | 视频通话连接方法、***、设备及视频服务端 |
WO2017173903A1 (zh) * | 2016-04-08 | 2017-10-12 | ***通信有限公司研究院 | 一种视频通话实现方法、终端及计算机存储介质 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105704692B (zh) * | 2014-11-24 | 2020-08-04 | 南京中兴软件有限责任公司 | 呼叫转移方法及装置 |
WO2016165083A1 (zh) * | 2015-04-15 | 2016-10-20 | 华为技术有限公司 | 一种局域网内消息发送方法、局域网网关和可穿戴设备 |
US10200339B2 (en) * | 2015-08-03 | 2019-02-05 | Verizon Patent And Licensing Inc. | Providing a service to a user device based on a capability of the user device when the user device shares an identifier |
WO2019238133A1 (zh) * | 2018-06-15 | 2019-12-19 | 云丁网络技术(北京)有限公司 | 一种资源管理及控制方法和*** |
CN111385513B (zh) * | 2018-12-28 | 2021-08-20 | 华为技术有限公司 | 通话方法以及相关设备 |
CN111371849A (zh) * | 2019-02-22 | 2020-07-03 | 华为技术有限公司 | 数据处理的方法和电子设备 |
CN111628916B (zh) * | 2019-02-27 | 2021-11-09 | 华为技术有限公司 | 一种智能音箱与电子设备协作的方法及电子设备 |
CN111258526B (zh) * | 2020-05-06 | 2020-08-28 | 上海幻电信息科技有限公司 | 投屏方法和*** |
-
2020
- 2020-12-01 CN CN202011400206.5A patent/CN114584734A/zh active Pending
- 2020-12-01 CN CN202210530846.0A patent/CN114845078B/zh active Active
-
2021
- 2021-12-01 EP EP21900023.9A patent/EP4239955A4/en active Pending
- 2021-12-01 US US18/039,539 patent/US20240007558A1/en active Pending
- 2021-12-01 WO PCT/CN2021/134764 patent/WO2022116992A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170054814A1 (en) * | 2014-04-26 | 2017-02-23 | Huawei Technologies Co., Ltd. | Communication Establishment Method, Device, and System |
WO2017084317A1 (zh) * | 2015-11-16 | 2017-05-26 | 乐视控股(北京)有限公司 | 视频通话连接方法、***、设备及视频服务端 |
WO2017084315A1 (zh) * | 2015-11-16 | 2017-05-26 | 乐视控股(北京)有限公司 | 视频通话连接方法、***、设备及视频服务端 |
WO2017173903A1 (zh) * | 2016-04-08 | 2017-10-12 | ***通信有限公司研究院 | 一种视频通话实现方法、终端及计算机存储介质 |
Non-Patent Citations (1)
Title |
---|
See also references of EP4239955A4 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024124396A1 (zh) * | 2022-12-13 | 2024-06-20 | 北京小米移动软件有限公司 | 一种通信方法、装置、通信设备及计算机存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114845078A (zh) | 2022-08-02 |
CN114845078B (zh) | 2023-04-11 |
EP4239955A4 (en) | 2024-04-17 |
CN114584734A (zh) | 2022-06-03 |
US20240007558A1 (en) | 2024-01-04 |
EP4239955A1 (en) | 2023-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020249098A1 (zh) | 蓝牙通信方法、tws蓝牙耳机及终端 | |
US12019864B2 (en) | Multimedia data playing method and electronic device | |
CN112988102B (zh) | 投屏方法和装置 | |
WO2020244623A1 (zh) | 一种空鼠模式实现方法及相关设备 | |
WO2021175300A1 (zh) | 数据传输方法、装置、电子设备和可读存储介质 | |
CN113330761B (zh) | 占用设备的方法以及电子设备 | |
WO2022116930A1 (zh) | 内容共享方法、电子设备及存储介质 | |
US20210377642A1 (en) | Method and Apparatus for Implementing Automatic Translation by Using a Plurality of TWS Headsets Connected in Forwarding Mode | |
CN112995731B (zh) | 切换多媒体设备的方法和*** | |
WO2022042265A1 (zh) | 通信方法、终端设备及存储介质 | |
WO2021013196A1 (zh) | 一种同时响应的方法及设备 | |
WO2022048371A1 (zh) | 跨设备音频播放方法、移动终端、电子设备及存储介质 | |
WO2022116992A1 (zh) | 通话方法及电子设备 | |
CN114035721A (zh) | 触控屏显示方法、装置及存储介质 | |
US20230350629A1 (en) | Double-Channel Screen Mirroring Method and Electronic Device | |
WO2022042261A1 (zh) | 屏幕共享方法、电子设备及*** | |
CN113963732B (zh) | 音频播放方法和终端设备 | |
EP4164235A1 (en) | Screen sharing method, terminal, and storage medium | |
US20240129352A1 (en) | Live broadcast method, apparatus, and system | |
WO2022183941A1 (zh) | 消息回复的方法和装置 | |
WO2023165513A1 (zh) | 通信方法、电子设备及装置 | |
US20240045651A1 (en) | Audio Output Method, Media File Recording Method, and Electronic Device | |
WO2023241558A1 (zh) | 通信方法、通信***和鼠标 | |
CN116095219B (zh) | 通知显示方法和终端设备 | |
WO2023045966A1 (zh) | 能力共享方法、电子设备以及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21900023 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 18039539 Country of ref document: US |
|
ENP | Entry into the national phase |
Ref document number: 2021900023 Country of ref document: EP Effective date: 20230531 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |