On Wed, Jul 22, 2015 at 3:38 AM, Bevis Tseng <bts...@mozilla.com> wrote:
> To prevent exposing too much in the web api level unnecessarily,
> instead of creating new attribute in Navigator.webidl,
> we could define the ImsHandler as one attribute of MozMobileConnection and
> remove mozImsManager from Navigator, since it's only related to the IMS
> registration and is also suitable to be part of MozMobileConnection that
> already available in Navigator.

As long as the API is only exposed to certified content, and is
completely hidden from other pages, then I think you should feel free
to put the API whereever in the DOM that makes most sense to you.

If it turns out to be a problem in the future we can always modify the
API later.

I do agree with Martin that there's no point in 'moz' prefixing it,
but I don't have a strong opinion either way.

/ Jonas

> On Wed, Jul 22, 2015 at 4:57 PM, Martin Thomson <m...@mozilla.com> wrote:
>
>> I think that building these sorts of features into the web platform at
>> large is a very bad idea.
>>
>> I appreciate that we operate under different constraints for Firefox
>> OS devices that might have native support for IMS on the baseband chip
>> and that we don't have much hope of convincing the industry of their
>> folly.  As a certified-only extension, it's still bad, but I recognize
>> that it may be an inevitability.  Drop the moz/Moz prefixing though.
>>
>> (I don't have enough time to go through this immediately: my time over
>> the next two weeks is highly constrained, so forgive me for not
>> engaging in this thread to the extent that you might like.)
>>
>> On Tue, Jul 21, 2015 at 11:50 PM, Bevis Tseng <bts...@mozilla.com> wrote:
>> >
>> > Hi all,
>> >
>> > I am from RIL team in Mozilla Taipei.
>> > I'm glad to propose you a new module/web api called "IMS Registration
>> > Manager". It is worth sharing you the details and having suggestion
>> > and feedback from you! :)
>> >
>> > IMS(IP Multimedia Subsystem) is a new infrastructure and is very
>> > important in mobile network especially for the carriers that enable
>> > LTE which relies more on IP-based network and technology compared to
>> > circuit-switched one in 3G/2G mobile network.
>> >
>> > With IMS enabled, carriers start to migrate current telephony services
>> > (Call Control, Text messaging) from legacy network to reduce the
>> > the maintenance expense on multiple infrastructures(LTE, GSM, CDMA).
>> > The mirgation takes couple of years. That means multiple technology
>> > will coexist for a while. Hence, an additional option for user to
>> > toggle this feature in device side becomes required from both
>> > carrier's and device vendor's perspective.
>> > In addition to traditional services, with IMS, carriers can introduce
>> > rich communication services like video call, video sharing, presence
>> > and instant-messaging to the users.
>> >
>> > This is also a big task to enable IMS in device side, so we'd like to
>> > work on this step by step. Introducing "IMS Registration Manager" is
>> > the first step to provide user 2 additional options in settings:
>> > 1. To enable/disable IMS.
>> >    There is no obvious difference from UX perspective when making
>> >    voice call or text messaging even the underlying technology is
>> >    changed.
>> >    (Note: audio quality will be better because AMR-WB is introduced.)
>> > 2. To choose the preferred IMS Porfile to have better service
>> >    quality according to the network condition where the device user
>> >    is located. The device will register to IMS network with preferred
>> >    bearrer that user seleted. Possible options are:
>> >    [wifi-preferred, wifi-only, cellular-preferred, cellular-only]
>> >
>> > Based on these requirements, the following webidl is proposed:
>> >
>> > enum ImsCapability {
>> >   "voice-over-cellular",
>> >   "voice-over-wifi",
>> >   "video-over-cellular",
>> >   "video-over-wifi"
>> > };
>> >
>> > enum ImsProfile {
>> >   "wifi-preferred",
>> >   "wifi-only",
>> >   "cellular-preferred",
>> >   "cellular-only"
>> > };
>> >
>> > interface MozImsRegManager {
>> >   getter MozImsRegHandler? handler(unsigned long index);
>> >          // with multi-sim support, will be null if not supported
>> >          // by the device configuration.
>> >
>> >   readonly attribute unsigned long length;
>> >                                    // with multi-sim supported, the
>> >                                    // value will be the same to the
>> >                                    // number of service-id/radio
>> >                                    // interfaces available in device.
>> > };
>> >
>> > interface MozImsRegHandler : EventTarget {
>> >     Promise<void> setEnabled(boolean enabled);
>> >     Promise<boolean> getEnabled();
>> >     Promise<void> setPreferredProfile(ImsProfile profile);
>> >     Promise<ImsProfile> getPreferredProfile();
>> >
>> >     readonly attribute ImsCapability? capability;
>> >                                       // available when ims registered.
>> >
>> >     readonly attribute DOMString? error;
>> >                                   // available when the ims is not
>> >                                   // registration to provide possible
>> >                                   // error cause.
>> >
>> >     attribute EventHandler oncapabilitychange;
>> >                            // triggered if capability or error is
>> changed.
>> > };
>> >
>> > partial interface Navigator {
>> >   [Throws, Pref="dom.ims.enabled",
>> >    CheckPermissions="ims", // or "mobileconnection"
>> >    AvailableIn="CertifiedApps", UnsafeInPrerendering]
>> >   readonly attribute MozImsRegManager mozImsManager;
>> > };
>> >
>> > Any suggestion on this is really appreciated. :)
>> >
>> > Thanks,
>> > Bevis
>> > _______________________________________________
>> > dev-platform mailing list
>> > dev-platform@lists.mozilla.org
>> > https://lists.mozilla.org/listinfo/dev-platform
>>
> _______________________________________________
> dev-platform mailing list
> dev-platform@lists.mozilla.org
> https://lists.mozilla.org/listinfo/dev-platform
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to