ubports / ubuntu-touch

Ubuntu Touch's issue inbox is now migrated to GitLab.
https://gitlab.com/ubports/ubuntu-touch
1.29k stars 110 forks source link

Add Wi-Fi calling #1578

Open ghost opened 5 years ago

ghost commented 5 years ago

It is not possible for the moment to activate Wi-Fi calling in the parameters to avoid using the usual cellular network.

See the discussion in this post.

McMarius11 commented 4 years ago

yes we are in desperate need. here is the newest forum https://forums.ubports.com/topic/4479/does-ubports-support-wifi-calling/

UniversalSuperBox commented 4 years ago

Short version: We need to implement an IMS Framework and IMS App for each major radio vendor (Samsung, Qualcomm, Mediatek, Huawei, maybe Xiaomi if they aren't feeling nice). These frameworks and apps are implemented in binary blobs in Android which we cannot reuse. The normal IMS Framework blob is a Java framework (C/C++ providing a Java API) and the IMS App is written entirely in Java. Then we need to implement a WiFi calling registration framework, and then WiFi calling dialer (again, possibly for each vendor).

And there is probably more than that which we don't know about. Sailfish OS seems to have a better understanding of the situation and they also don't have a solid plan for how to implement.

For a quick look at the depth and breadth of the IMS Framework and App, here is a simplified communication diagram showing how they interact with the proprietary RILd IMS, VoLTE IMS manager, and RILd in Android. This diagram shows how an IMS registration is performed. It does not show the exact format of the messages (which are probably vendor-specific), the ordering, or the results. It also doesn't show how you go from an IMS registration to a useful Wi-Fi call.

image

There is a nice blog series on the topic (translated) at https://www.programmersought.com/article/4007363127/. These articles go into detail on how the IMS system works in Android, but there still isn't enough detail unfortunately.

In other words, it is unlikely we will be able to get this working on anything but a multi-year term. It will take an even longer time to do this for every vendor's radio we support. Unless someone magical appears who understands the IMS implementation on every vendor's radio.

UniversalSuperBox commented 4 years ago

Someone brought up a good point. If you are exclusively looking for calls while on WiFi, a SIP service and dialer like Linphone may be useful to you. Of course, you won't be keeping your existing number that way.

Flohack74 commented 4 years ago

Also to add here, I am in contact with Jolla engineers, and there is no plan there either for VoLTE. And VoLTE is the easier technology of both, as its entirely handled inside the modem. So, bad news, alternative projects without support from the vendors will have a hard time with that.

McMarius11 commented 4 years ago

@Flohack74 Volla Support told me this

"Noch nicht, da die Unterstützung abhängig vom jeweiligen Chipset und dessen Treiber sind. Da wir eng mit der UBports Stiftung zusammenarbeiten haben wir aber die Möglichkeit , diese Anforderung aufzugreifen und deren Umsetzung voranzubringen."

In English " Not yet, as the support depends on the particular chipset and its driver. Since we work closely with the UBports Foundation, we have the opportunity to take up this requirement and promote its implementation"

It would be awesome if someone from UBports Team could contact volla to help them get this going

UniversalSuperBox commented 4 years ago

Hi @McMarius11, yes, we are in contact with Volla.

AquaMCU commented 1 year ago

Any update on this?