Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
×
Communications IOS Apple

iOS 10 Quietly Deprecated A Crucial API For VoIP and Communication Apps (apple.com) 122

neutrino38 warns that iOS 10 includes a significant change "overlooked by the general public": It deprecates an API that is crucial for VoIP and other instant messaging applications that enable keeping one socket active despite the fact that the application would run in the background. As a replacement, developers need to use PushKit: when an incoming call is to be forwarded to an iOS VoIP client, the VoIP infrastructure needs to:

- withold the call
- contact Apple push infrastructure using a proprietary protocol to wake up the client app remotely
- wait for the application to reconnect to the infrastructure and release the call when it is ready

This "I know better than you" approach is meant to further optimize battery life on iOS devices by avoiding the use of resources by apps running in background. It has also the positive effect of forcing developers to switch to a push model and remove all periodic pollings that ultimately use mobile data and clog the Internet. However, the decision to use an Apple infrastructure has many consequences for VoIP providers:

- the reliability of serving incoming calls is directly bound to Apple service
- Apple may revoke the PushKit certificate. It thus has life and death decision power over third-party communication infrastructures
- organizations wanting to setup IPBX and use iOS client have no option but to open access for the push services of Apple in their firewall
- It is not possible to have iOS VoIP or communication clients in network disconnected from the Internet - Pure standard SIP clients are now broken on iOS

The original submission argues that Apple is creating "the perfect walled garden," adding that "Ironically, the only VoIP 'app' that is not affected is the (future?) VoLTE client that will be added to iOS one day."
This discussion has been archived. No new comments can be posted.

iOS 10 Quietly Deprecated A Crucial API For VoIP and Communication Apps

Comments Filter:
  • Meh (Score:2, Troll)

    by NettiWelho ( 1147351 )
    I think the real joke here is that for a price of one of their phones you could instead have 2 kilos of pure silver.
    • Re: Meh (Score:5, Funny)

      by Zone-MR ( 631588 ) * <slashdotNO@SPAMzone-mr.net> on Saturday August 12, 2017 @03:55PM (#54999883) Homepage

      What an amazing world we live in, that a state of the art device featuring communication radios, cameras, a display, and phonomenal processing power is available for the same price as a chunk of metal.

      • Re: (Score:3, Funny)

        by NettiWelho ( 1147351 )

        What an amazing world we live in, that a state of the art device featuring communication radios, cameras, a display, and phonomenal processing power is available for the same price as a chunk of metal.

        Yet the the people who make these things need suicide nets around the buildings because.. reasons?

        • Re: Meh (Score:5, Insightful)

          by Rockoon ( 1252108 ) on Saturday August 12, 2017 @04:15PM (#54999967)

          Yet the the people who make these things need suicide nets around the buildings because..

          ...because they are considered to be worth more than a college student in America, that have significantly higher suicide rates.

          • by epine ( 68316 )

            ...because they are considered to be worth more than a college student in America, that have significantly higher suicide rates.

            I hate to break your bitter pill, but once American colleges fully implement the mandatory age-parity quotas, your beloved suicide rate will no longer thrive in this equation.

  • by Anonymous Coward on Saturday August 12, 2017 @02:44PM (#54999617)

    It provides defense against lazy app writers. And it's courageous.

    • by Anonymous Coward on Saturday August 12, 2017 @03:54PM (#54999879)

      It just shows you who Apple thinks itâ(TM)s customer is. Theyâ(TM)re choosing to favour their user experience over their app developers wish to be lazy and to potentially do neferious things tracking the user constantly.

      Not that surprising considering which of those pays Apple to buy a price of hardware. And not the kind of move google would do given that the app developer is their true customer.

      • by msauve ( 701917 )
        "It just shows you who Apple thinks itÃ(TM)s customer is. TheyÃ(TM)re choosing to favour their user experience over their app developers wish to be lazy "

        Exactly the opposite of /., which favors their lazy developers over the improved user experience which would come with Unicode support.
        • by ls671 ( 1122017 )

          Who needs fricking Unicode support to type an apostrophe? It is ASCII code 39, that should be compatible enough with anything. But, no, people use fancy Unicode apostrophes, sometimes OS specific. Why?

          • by msauve ( 701917 )
            Ahhh. Your problem is you don't know the difference between an apostrophe and single or curly quotes.
            • by ls671 ( 1122017 )

              On the contrary, it makes me think that every time something is working fine, somebody comes along to change it. Typewriter apostrophe has been around, well, since typewriters!

              https://en.wikipedia.org/wiki/... [wikipedia.org]

              MS-WORD doesn't even use the same quotation marks for English and French because of those printing inspired people that say that a symbol looks nicer than another depending on the language, establish trends etc. when the used symbol adds no value at all and everybody understands what the symbol means a

            • by chihowa ( 366380 )

              Ahhh. Your problem is you don't know the difference between an apostrophe and single or curly quotes.

              Neither do you. The appropriate punctuation symbol for it's and they're is an apostrophe.

              It looks like the AC got some of the quotation marks correct, but wanted to use a righthand single curly quotation mark in place of an apostrophe (and clicked through the preview without looking at it).

      • They favor their own pockets and draconic tendencies and nothing else. You are nothing but cow for them to be regularly milked.

  • the carrier don't like what was disabled. Now you can't use an iPhone handset to bypass the carrier using VOIP

    • the carrier don't like what was disabled. Now you can't use an iPhone handset to bypass the carrier using VOIP

      Please explain this, since your comment means that one of us doesn't have a clue what he is talking about.

      • Why would the carrier even CARE anymore? Actual voice calls are NOW almost more trouble & taxes than they're worth.

        Data, on the other hand, is their new big-ticket billable item... they LOVE apps that constantly poll for data, because a single-byte payload in a TCP/IP request generates a few hundred billable bytes of data transfer. Carriers would abandon voice & MAKE you find your own VoIP service if they thought they could get away with it. Voice calls are now just a loss-leader to sell data.

        With s

        • With someone like AT&T, T-mobile, Verizon, or Sprint (where voice calls are free),

          Unlimited and free are not the same thing.

          they LOSE money (in state & federal taxes) every time someone makes a voice call.

          I'm not doubting you, but do you have any sort of citation for that statement?

          • In many ways carriers are becoming a dumb pipe and the evolution of their plans suggest that they are realising this. In many ways charging for data is of more value than charging for voice, if everyone is moving to third party apps.

            The value of keeping a phone number with your carrier is that it is still the closest to an universal contact ID, working across carriers. The same can't be said for solutions such as WhatsApp, Skype, Facebook and Google Hangouts.

          • I can't quote a URL, but I used to work for a major telco & had a role in writing our billing software. Circa 2009, it cost *us* (in taxes and Tariff-mandated fees) more to terminate a landline call from Fort Lauderdale to Boca Raton than it cost for us to terminate a call from a landline phone in Fort Lauderdale to a landline phone in BRITAIN --
            because intra-LATA calls (a/k/a "local long-distance" calls) were among the most expensive ones you could make, while international calls actually had t

          • by joemck ( 809949 )

            When so many plans are "unlimited calls and texts, some GB of data and if you go over you pay", calls are effectively free once you've paid your monthly base rate. You could spend the entire month on the phone 24/7 and not pay a cent more than if you never make a voice call. But for the carrier, each call consumes resources on their network, and if too many people make calls they have to upgrade their network or quickly gain a reputation for dropped calls. Therefore, a carrier would prefer if you pay for un

    • Because data miraculously teleports to the iPhone.

      (If you want to claim you only ever use your phone with WiFi, first I don't believe you and second you are moot to carriers since you were already unwilling to be a customer.)

    • Yeah, that would make sense if practically every single mobile plan sold today didn't include unlimited call minutes, but limited data. The carriers would much rather the call be VoIP - they stand to make more money from packetized data than voice.

      What is the weather like 10 years ago?

  • by gnasher719 ( 869701 ) on Saturday August 12, 2017 @02:59PM (#54999685)
    Apple deprecated the old VoIP interface one year ago. Absolutely obvious for anyone interested. But one year warning will obviously come as a surprise to some people.

    VoIP required that your phone was turned on, your app was running, and regularly pulled requests. An absolute battery eater. The new feature allows your phone to be asleep, use no energy, and wake up immediately when a call arrives.
    • by Zaphon ( 13837 )

      Cool, guess I don't need to worry about getting calls remotely from my office's SIP phone system anymore. Sweet!

    • Re: (Score:3, Informative)

      VoIP required that your phone was turned on, your app was running, and regularly pulled requests. An absolute battery eater.

      That's silly. Android systems can sleep for days while have VoIP solutions, like Signal, installed and ready to receive a call (via its own listener).

      Unless you're saying iOS is somehow worse than Android in this regard.

      • That is because nothing about voip requires regular pings. If that was needed on iOS that was defect of the lazy Apple developers and not app develpers.

      • I agree.

        My Moto X Play (2 year old phone) still gets 2 days battery without issue.

        In addition to regular voice & text communications, I have two VOIP lines using Grandstream's GS Wave app. Works fantastic over both Wifi and 3G/4G/LTE.

      • by GNious ( 953874 )

        I'm thinking my turn-of-the-millenium cellphone's VoIP/SIP app had to be running, but don't recall any issues like regularly pinging a network or incurring a lot of data-traffic.
        Of course, I mostly used my phone to listen to MP3s while biking, so might just have been lack of usage.

      • Unless you're saying iOS is somehow worse than Android in this regard.

        That's exactly the point of this change. Using PushKit, your phone can sleep for days and will be woken up by a VoIP phone call. The old method that is deprecated doesn't allow that.

    • Apple deprecated the old VoIP interface one year ago. Absolutely obvious for anyone interested. But one year warning will obviously come as a surprise to some people. VoIP required that your phone was turned on, your app was running, and regularly pulled requests. An absolute battery eater. The new feature allows your phone to be asleep, use no energy, and wake up immediately when a call arrives.

      Thanks for explaining this. I was curious about how that would affect Vonage Extensions, a VOIP app that I use. If the app still uses the old API, whether it would stop working. Same question for WhatsApp. I know that FaceTime audio is an option, but wouldn't work w/ non iPhones.

    • by HiThere ( 15173 )

      It's potentially significant to me. It's new information because as I currently don't use an IOS device, I didn't either need to know this or follow deprecation warnings. It's significant in case I was contemplating getting such a device in the near future. (In the further future this will be rolled into "current features" that I'd evaluate when selecting the device.)

      So this is valuable news, at least potentially. (As it happens, I hadn't been seriously thinking of getting a new phone...and my current d

    • I don't really see the problem with Apple (and Google too) forcing developers to use their push framework to be able to wake up on demand from network traffic.

      That said, if they simply use a blocking call on a socket the OS can go to sleep just as deeply as it can when it's all routed through the single push service.

    • by Entrope ( 68843 )

      VoIP required that your phone was turned on, your app was running, and regularly pulled requests.

      Got a citation for that? SIP requires a UDP and/or TCP socket to be up and listening. It does not require that any IP data be transferred between calls. It *does* require the phone to communicate with the mobile network frequently enough for incoming calls or data sessions to be routed to the right place, but that is true for voice calls and push notifications as well...

      The new feature allows your phone to be

    • by Anonymous Coward

      Apple deprecated the old VoIP interface one year ago.

      Actually, they deprecated the old VoIP interface two year ago. And released iOS 10 without it to the public about a year ago. Yes, this a non-story when it was new a year ago. The fucking article is over one year old. For Christ sake, editors on dope again?

    • True, the API wasn't "quietly deprecated" in iOS 10 as the poster claims; it was removed in iOS10. The API in question was deprecated in iOS 9 which was released Sept 2015. With the iOS 9 SDK released in June 2015, that's more than 2 years of warnings. The response to the question even says as much :"In iOS 10, you should be using PushKit for handling push notifications for incoming VoIP calls . . once you move to iOS 10 our recommendation is to update your minimum deployment target to iOS 9 . . . " So it
  • by EmperorOfCanada ( 1332175 ) on Saturday August 12, 2017 @03:03PM (#54999699)
    I'm looking at you facebook; what are the chances they were abusing the old API. It sounds like a right pain in the ass from a development point of view. Maybe though with this there could be a way from phone calls interrupting my skype calls. That would be a huge win.
    • The new inability to poll in the background has at least two drawbacks:

      1. increased latency. This is why, with devices like a 'Ring' doorbell, your most likely view -- after the visitor presses the button, the doorbell notifies their server, their server sends a push notification, your phone gets the notification & notifies you, you react to it, unlock the phone, and launch their app -- is (...drumroll...) streaming video of the visitor WALKING AWAY (because they pressed the button 30 seconds ago).

      2. Sm

  • by Gravis Zero ( 934156 ) on Saturday August 12, 2017 @03:32PM (#54999801)

    Now the next iPhone can be even thinner! I can't wait to call 911 and tell them I accidently cut myself with my new razor thin iPhone 12! -_-

    • Now the next iPhone can be even thinner! I can't wait to call 911 and tell them I accidently cut myself with my new razor thin iPhone 12!

      I hear they're going to call the next model the iPhone RAZR.

  • by alancronin ( 1171375 ) on Saturday August 12, 2017 @03:47PM (#54999849)
    Apple has let developers know that this change was coming for about a year and a half now. We develop a VoIP application and have been making changes well in advance of Apple fully deprecating the older socket mechanism. It does have the downside of giving Apple more control but Apple already has full control over whether you can publish to the App Store, how your UI should look (within reason based on guidelines), not duplicating system functionality, etc. However if this improves battery life and creates applications that are designed in a better fashion then it is positive change.
    • by Anonymous Coward

      They did, and it really does leave a certain amount of LAN-only applications like my startup's in a lurch.

      I had the fortune of having an app server on premise and have written a push bridge, but lots of other developers don't have so much control over their backend (many SIP implementations, etc) and this change fundamentally ends their product viability.

      It really hurt us, and required we change strategies. That has been the Apple dance...

    • The concern that overrides all this, is that the change makes it impossible to support existing protocols, that do not require Apple-specific cloud infrastructure, on iOS.

  • by Anonymous Coward

    Apple maintains full control over iPhones. It's not meant to be a computer-like device. Background apps have always been kept on a very short leash. An iPhone is a limited device that only does what Apple allows you to do. If you want a phone that is more like a computer, get an Android.

  • by Anonymous Coward

    will this allow Apple, and as is always the case, any U.S. government agencies to get more insight or even subvert the use of secure communication apps?

    • will this allow Apple, and as is always the case, any U.S. government agencies to get more insight or even subvert the use of secure communication apps?

      1. You are paranoid. 2. From personal knowledge, no.

  • There is no reason that listening on a socket needs to use ANY battery at all. It WOULD be wise to have a model for checking whether a packet is DoS/dealing with heartbearts before causing it to fire up the real app process, but given that, there is no reason why SIP can't be efficient. If the reasoning for this has anything to do with battery, then it's lazy.

    • by tlhIngan ( 30335 )

      There is no reason that listening on a socket needs to use ANY battery at all. It WOULD be wise to have a model for checking whether a packet is DoS/dealing with heartbearts before causing it to fire up the real app process, but given that, there is no reason why SIP can't be efficient. If the reasoning for this has anything to do with battery, then it's lazy.

      No, it's not just a listening socket, because that wouldn't work on most networks (think NAT or firewalls).

      You need a constant connection, which means

  • Make the damn phone 1mm thicker and put a bigger battery in it. Apple are determined to offer the smallest battery capacity they can get away with. Courage?

"It takes all sorts of in & out-door schooling to get adapted to my kind of fooling" - R. Frost

Working...