Push notification mechanism used by other apps in Windows Phone - facebook

I want to know what push mechanism does gmail, facebook or other common apps use in Windows Phone? Are they using MPNS only or something else (like MQTT). For example, Facebook is available for all platforms so whether they are using different protocols for different platforms or using a common approach.
I want to implement push notification for my app. The same app is being developed for other platforms like Android and iPhone also. So I want to use a mechanism which can be used across platforms.

You can use Urban Airship, it provides support for Microsoft Windows Phone 8 and Windows 8 push through MPNS and WNS, but doesn't support MPNS push to Windows Phone 7 devices
Docs for .net http://docs.urbanairship.com/build/build_push.html#windows
Docs for iOS http://docs.urbanairship.com/build/build_push.html#ios
Docs for Android http://docs.urbanairship.com/build/build_push.html#android
Or Amazon SNS which requires more work
API for .net http://aws.amazon.com/sdkfornet/
API for iOS http://aws.amazon.com/sdkforios/
API for Android http://aws.amazon.com/sdkforandroid/

You should think of Push Notifications as a transport channel, not more. Each mobile platform (Apple, Google, Microsoft) uses it's own cloud to reach your device, and that's could be enough. Once reached, your mobbile app may do whatever it need (for example, to grab extra details about the notification as size of Push message is usually limited).
Given that in mind, it's not a big deal to create one server app communicating to 3 different clouds if sending notifications.

Related

Is it possible to make mobile p2p app without a server?

What I want is to make a web/mobile app (I've chosen Flutter) that acts both as a host and as a client, so multiple instances of this app can share data without actual back-end (let's say the addresses of the devices are hardcoded into the app for the simplicity).
I can't use Firebase or Backendless, my app has to be the only host.
I've looked into socket.io, websockets, WebRTC and didn't find a solution.
So, is it even possible? With or without Flutter.
It is in theory possible, if you are planning to only use android you can use this library Flutter p2p which use wifi-direct (Android documentation) to discover devices and connect to them. It has some problems with newer environments but there is lots of forks from the git project that you can import. I've read that it should be possible to allow devices that doesn't support wifi-direct to connect if you create a group so maybe it could work for iOS if there is a hosting android device.

Phonegap for iphone development on Windows questino re native api

I've spent the day googling all the leads on developing iphone apps on Windows and apart from buying a mac the most suitable route seems to be Phonegap. I cannot find out whether Phonegap gives access to all the native functionality. For example I want to access and manipulate the address book contents. I also want to be able to send text messages programatically and intercept and examine incoming text messages. It would be helpful if someone could confirm whether this can be done with Phonegap.
My understanding is that Phonegap is based on webapps but I am assuming that an app developed with it can run offline for operations that dont require internet access.
Even using Phonegap you will still need access to a mac to actually build your iOS application. This is a restriction that Apple has in place, and to my knowledge there is no way around it.
Phonegap uses a UIWebView to display your application built using HTML, CSS, Javascript etc, but this does not mean that an Internet connection is required for the app to run (so offline apps are definitely possible).
With regards to Phonegap's functionality, details of the Phonegap API can be found on their website. Specific to your needs, I believe phonegap provides access to the device's address book through the contacts API:
http://docs.phonegap.com/en/2.3.0/cordova_contacts_contacts.md.html#Contacts
I don't think Phonegap provides the ability to send SMS messages itself, but many people have developed extensions to add extra functionality to their applications through plugins. The majority of Phonegap iOS plugins can found at the following GitHub repo. The plugin I think you require is the SMSComposer:
https://github.com/phonegap/phonegap-plugins/tree/master/iOS/SMSComposer

Any iPhone SIP/VOIP Application that can be called from other iPhone App?

Is there any VOIP app for iPhone/iPad that can accept call request from another custom iPhone application?
I have a custom iPhone application written with C# and MonoTouch. I need to make VOIP calls (and conference call with multiple phones) from my iphone application. But developing a VOIP app from ground up is not worth the time (and I dont know Obective-C either). So I was looking for an SDK or App that can accept call request from other apps. For example my app could construct and call a URL like (app-protocol:call?18002221111&18003331112&18001322244)... an installed VOIP in iPhone will listen to the protocol and place conference call to all three numbers. (Something like this is possible with skype but skype does not support conferencing in IOS... although works fine in Mac or Windows).
Thanks
Thanks for your answer Paul. Do you know if gvconnect url scheme will support bulk call (multiple numbers at the same time? For single number I can have skype installed (Free), I tested the skype: url scheme and that works fine. The problem is it does not work with semicolon delimited phone numbers in iOS ... which works fine in skype for Windows Desktop version.
I think GV Connect - Google Voice Connect can do this for you. It supports gvconnect:// url handler scheme. You can find a list of apps which use custom URL handlers here http://handleopenurl.com
I haven't tested this one but it could be also helpful:
Siphon, an open source iPhone app.

How can I target push notifications to both iPhone and Android?

I am developing apps for both Android and iPhone, and am looking for how I can push notifications to both (if you only have an answer for one, that's ok, I'm sure someone has an answer for the other).
For example, if I'm having a special on something and want to notify people so it sort of dings and a message pops up (I have a Groupon app that does that) how can I accomplish this? And do I have to reprogram each time, or can I do it through an RSS or something else?
For Android 2.2+ use C2DM. Apple also has a proprietary push notification service. In both cases you need to register with the company to use the system. Also in both cases you will need a web server able to communicate to Google and Apple.
If you don't want to have to support an entire server framework for communicating with both iOS and Android devices, take a look at UrbanAirship. It's a dirt-cheap service that allows you to push both plain- and rich- text messages to iOS, Android, and BlackBerry.
Gravy: It also has mechanisms for In-App Purchasing, and statistics tracking.
Maybe PushOver can be a solution https://pushover.net/ but there is probably other web services like that !

Is there a way to test Android, iPhone push notification without having one?

I need to create a push notification webservice for Android & iPhone, but I actually own an Iphone only, I'd like to be able to test on my machine the push notification.
I don't know anything to mobile device or development.
In order to push messages to Android using the Google Cloud to Device messaging (C2DM) requires an application on the device which has registered to the C2DM servers to receive push notifications. AFAIK, you cannot do a generic push (using C2DM) which will be received by all applications.
For more info on C2DM you can look at the documentation here and a good article can be found here.
You could download the Android SDK. It gives you the basic stuff you need to get up and running.
If you want a virtual machine, you can set one up using this guide. I set this up and it was pretty painless. I don't know how current it is, but it will at least get you something to work with.