I have a WCF service which exposes SOAP and REST endpoints and we have WPF,Android,Windows Phone(in future),ASP.NET applications on top of our WCF service, so many users can use many apps from different parts of the world.
Right now we have a big issues with the freshness of data we are using some old school polling techniques to look for the updated data, is there a way to create a system which push data to the connected apps regardless of the platform and location if any data update occurs on the server from any application.
I have already looked into the Duplex Callbacks but that is not possible with android and has some other limitations.i also know about the GCM for android but dont know how to make it working with other platforms apps.
GCM only works for Android devices. There are similar push notification services for Windows Phone and iOS. There are several solutions such as PushSharp and Windows Azure Mobile Services, which allow you to push notifications to several devices.
As for what to use the push notifications for. I strongly suggest not to use them to push data, as you cannot always be 100% sure if the notifications ever reach the device. Hence only use them to notify the client about new data is available, and then fetch it. Use push notifications along with polling.
It is not entirely clear what your application does, hence I do not know when and how often you need the new data. Just keep in mind that iOS for instance does not allow using a permanent background service, like Android and Windows Phone does, however the WP one does only allow for updates every 30 minutes.
Related
I have an Outlook add-in and a separate winform app. These two apps need to "talk" together sending/receiving notifications.
Sometimes they are on the same computer and sometimes they are on different computers. Sometimes several instances runs on the same computer by different users (RDS server). Maybe later they will need to talk to mobile apps too.
If I do no want to play around with TCPIP, what is the best and easiset way? I don't mind buying some server software that will make it easier. It must be plug-and-play.
I thought about Microsoft Notification HUB, but it doesn't seam like it works with winform.
Then there is Amazon SNS, but I have no experience if this works in winform.
Do you have any suggestions?
Well you can use SignalR to develop real time notification system it easy and you can use it cross platform because it uses websockets like node js
Is it possible to send notifications(toast, tiles, raw) from a server and receive it from Windows Phone 8.1 not using Azure Account(Notification Hub). I saw examples using 8.1 silverlight but I could not implement within WP 8.1.
If yes, can you explain simply how, or suggest a document?
Yes it is possible you can create your own web service desktop app to do this.
Here is an article from MSDN that explains how...
https://msdn.microsoft.com/en-us/library/windows/desktop/hh868252.aspx
There are quite a few things you need to setup such as WNS etc.
It is not necessary to using Azure. You can implement your own notifications server but you should understand how it works first, it's a little bit complicated :) - there is an overview for WP8.1 (Windows Runtime).
In short:
Your server must be authenticated with Windows Notification Service (WNS): How to here
Your WP8.1 app must obtain notification channel (Uri) from Windows Notification Service (WNS) and send it to your server.
Your server should send REST request (POST) with special xml content to channel (Uri) received from your app (WNS mediates in communication).
In last step WP app handles notification.
More info about communication with WNS on your server side: https://msdn.microsoft.com/en-us/library/windows/apps/hh465435.aspx
It's your decision in which technology/platform you'll code it.
But there are several solutions provided by third-party push notifications providers. Eg. Parse - you can send some notifications for free. You'll avoid the problem of creating your own service.
Looked for a long time and didn't find anything that showed this, so I apologize in advance I missed something.
I have an android app running on KitKat (Android 4.4.2) and a Winforms application running Windows 7. I need to send messages between the two of them.
Clearly GCM works to get the message to the Android device. I have code that sends from Winforms to the Android Device using GCM. I cannot find a way to have the Android App send anything BACK though. Is it possible to have a Winforms app RECEIVE a GCM Message? Do I have to use Azure? (All examples there seem to focus on the Windows App store and Windows 8.1 neither one of which can be a solution in this case due to client restraints.)
I'm putting this here in case anyone stumbles across it and has a similar question. This is not really an answer. Still hoping someone comes on here and shows that I am wrong. But after 26 days, no one has even offered a suggestion, so I'm guessing not.
There is no way that I have seen that allows for this the way I had hoped. Windows 7 doesn't have this built in to it (AFAIK). Windows 10 should have it built in, but Windows 7 pre-dates the huge shift to the cloud, and didn't have it in the design. If I were working with something like Xamarin -- which is a cross-platform tool, this might be possible. But there is no concept in Windows 7 for receiving messages from the Cloud.
In order to accomplish this, there would have to be some sort of server added to the mix that could take messages and pass them along via a REST API. This is beyond the scope of what I wanted to code.
The solution I found, and that works for me, is to use Microsofts API that wraps a REST service. This allows for communication to OneDrive, for example. That is what I am using as my intermediary REST server.
Microsoft LIVE SDK
This has a pretty good sample list of Android examples, and can be used for what I need. The good thing is the Upstream is just a simple call, and I don't need to have the Android device poll anything (which kills the battery). The laptop will need to poll OneDrive, but its plugged in so there is no battery life concern.
One thing to be aware of, though, is that Microsoft sort of hints that they don't want a bunch of traffic headed to OneDrive. This is from the overview doc:
Throttling
OneDrive has limits in place to make sure that individuals and apps do
not adversely affect the experience of other users. When an activity
exceeds OneDrive's limits, API requests will be rejected for a period
of time. OneDrive may also return a Retry-After header with the number
of seconds your app should wait before sending more requests.
Although, I have never seen what those limits actually are, so YMMV.
create a server app in vb.net or C#. It'll run on system with turned on bluetooth. If any mobile with turned on bluetooth devices will comes within the system bluetooth signal, it'll send notification automatically. Is this possible to create?
No. It would not work.
APNS
https://developer.apple.com/library/IOs/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/ApplePushService.html
GCM
https://developer.android.com/google/gcm/gcm.html
Push notifications requires to be pushed from Apple's or Google's notifications infrastructures.
For iOS there's local notifications that your app can trigger based on your conditions, but from my knowledge when the Bluetooth connects, your application has to be running and listening for bluetooth changes.
If your app goes into background and got recycled, it would not be able to know when the bluetooth is connected, let alone run your logic to send the notifications.
No this is not possible. Your title asks for "without mobile app". The mobile app on the device is what receives the notification. You create the notification on the server (as shown in #Lee's explanation) and your app decides whether to show it to the user or process data behind the scene.
Assuming we disregard the part about "without mobile app", you CAN do something similar with iBeacons. Department stores use them for targeted notifications in their app. You walk by a certain rack of clothes with an iBeacon and your app shows a notification that that section is 20%.
As an alternative, you might, somehow, also be able to use a service like Twilio which you can TEXT/MMS information (notification) to someone based on some kind of trigger that you define. This would however require that you already have their phone number and some what to identify that they came within your region.
As a whole, being able to notify people within a proximity that haven't done something to subscribe (i.e. download your app, provide contact info) is just plain spammy.
I have a project wherein i have to create a windows mobile app which synchronize files between two windows phone, provided that the connectivity between two phone should be through WiFi.
Being new to this app development field , i have no idea on where to start and where to look. Is there any sample application present to sync data between two phones without involving any database. And what API should i use. i referred to some tutorials on this website.
This won't be possible without a server between both phones. Microsoft is very restrictive and won't let you access the WiFi connection. Actually you would have to use one of the phones as a WiFi hotspot and the other one as client and this is definitely not possible with an WP app.
I would recommend to write a Windows Service (have a look at WCF) which both phones connect to. This service would have to do all the work which would be:
Wait for phone requests to work with them
Handle the request when a phone wants to synchronize data
Let the second phone know that there are new data to receive
Transfer data to the second phone
Actually there will be more requirements for such a service (e.g. security) you will have to deal with.
Yet, there is a solution because Rudy Huyn connected several Windows phone using the connection Wifi without server http://www.youtube.com/watch?feature=player_embedded&v=rl0VHkoOHTA
But I don't know how..