- Notifications
You must be signed in to change notification settings - Fork202
Uniqush is a free and open source software system which provides a unified push service for server side notification to apps on mobile devices.
License
uniqush/uniqush-push
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Uniqush (\ˈyü-nə-ku̇sh\ "uni" pronounced as in "unified", and "qush" pronounced asin "cushion") is afree andopen source software system which providesa unified push service for server side notification to apps on mobile devices.Theuniqush-push
API abstracts the APIs of the various push services usedto send push notifications to those devices. By runninguniqush-push
on theserver side, you can send push notifications to any supported mobile platform.
- GCM from Google for the Android platform
- FCM from Google for the Android platform
- APNS from Apple for the iOS platform
- ADM from Amazon for Kindle tablets
Q: Is this a general push notification platform for all types of devices? How does this differfrom services such asUrban Airship?
A:Urban Airship is a great service, and there areother similar services available, likeOpenPush,Notificare, etc. All of them are wonderful services.However,Uniqush is different from them.Uniqush is not a service. Instead,Uniqush is a system, which runs on your ownserver. In fact, if you wish, you can use Uniqush to set up a service similar toUrban Airship.
Q: OK. Then is it a library? Likejava-apns?
A: Well.. Not actually. I mean, it is a program, like Apache HTTP Server. You download it, you run it. It does require aRedis server, but, other than that, you don't need to worry about which language to use, package dependencies, etc.
Q: But wait, how can I use it anyway? I mean, if my program wants to senda push notification, I need to tell Uniqush about this action. How can Icommunicate with Uniqush? There must be some library so that I can use itin my program to talk with Uniqush, right?
A: We are trying to make it easier.
uniqush-push
provides RESTful APIs. Inother words, you talk withuniqush-push
through HTTP protocol. As long asthere's an HTTP client library for your language, you can use it and talk withuniqush-push
. For details about our RESTful APIs, seeour APIdocumentation.Q: Then that's cool. But I noticed that you are usingGo programming language. Do I need to installGo compiler and other stuff to run
uniqush-push
?A: No. There are no installation dependencies. All you need to do is to download thebinary file from thedownload page andinstall it. But you do need to set up aRedis server runningsomewhere, preferably with persistence, so that
uniqush-push
can store theuser data inRedis. For more details, see theinstallation guideQ: This is nice. I want to give it a try. But you are keep talking about
uniqush-push
, and I'm talking aboutUniqush, are they the same thing?A: Thank you for your support!Uniqush is intended to be the name of asystem which provides a full stack solution for communication between mobiledevices and the app's server.
uniqush-push
is one piece of the system.However, right now,uniqush-push
is the only piece and others are underactive development. If you want to know more details about theUniqushsystem's plan, you can read theblogpost. If you want to find outabout the latest progress withUniqush, please check outourblog. And, if you are really impatient, there'salways ourour GitHub account which could havebrand-new stuff that hasn't been released yet.
Redis persistence describes the detailsof how Redis saves data on shutdown, as well as how one might back up thatdata. Make sure that the Redis server you use has persistence enabled - yourredis.conf should have contents similar to the section**PERSISTENCE**
ofredis.conf in the example config files linked inhttp://redis.io/topics/config
You're encouraged to contribute to theuniqush-push
project. There are two ways you can contribute.
If you encounter an issue while usinguniqush-push
, please report it at the project'sissues tracker. Feature suggestions are also welcome.
Code contributions touniqush-push
can be made using pull requests. To submit a pull request:
- Fork this project.
- Make and commit your changes.
- Submit your changes as a pull request.
- This story may help you to understandthe basic idea ofUniqush.
- Documentation
- The Uniqush blog announces the latest news about Uniqush.
- Redis persistence
About
Uniqush is a free and open source software system which provides a unified push service for server side notification to apps on mobile devices.