Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. We have updated the language to the Editor Terms based on feedback from our employees and community. Learn more.
    Dismiss Notice
  3. Join us on November 16th, 2023, between 1 pm and 9 pm CET for Ask the Experts Online on Discord and on Unity Discussions.
    Dismiss Notice

[RELEASED] OneSignal - Free Multi-Platform Push Notification SDK and Platform

Discussion in 'Assets and Asset Store' started by gdeglin, Jun 4, 2015.

  1. gdeglin

    gdeglin

    Joined:
    Mar 7, 2013
    Posts:
    78
    OneSignal is a multi-platform push notification system used by over 5,000 published Unity games and over 200,000 mobile developers, including some of the largest in the world. Best of all, all basic features are free to developers of any size.​

    Supported Platforms:
    iOS, Android, Windows Phone 8, Windows 8.1, Chrome Native, Amazon Fire Devices, Mac OS X, and Web Push (Chrome, Firefox, Safari).

    Getting Started:
    Follow the steps here to implement OneSignal into your Unity3D game.

    Free Tier Features:
    • Free and Unlimited - No limitations on number of devices or notifications. We will never ask existing users to pay a penny for the features below.
    • Multi-Platform Delivery = Compose once and send to users across all platforms.
    • Segmentation - Send personalized messages to a subset of your players based on a set of filters.
    • Per-user localization - Our SDK automatically tracks each device's language, and allows you to specify localized notification content.
    • Scheduling - Schedule notifications to be delivered to each player at their own ideal time of day, based on when they've previously played your game. Or simply schedule them for a day in the future.
    • High-throughput API - Easily deliver user-to-user, or server-to-user messages. Or, programmatically export your data and statistics. Our API is currently processing over 1 1 Million requests per minute at peak times, and delivering 1 Billion notifications per day.
    • A/B Testing - Compose two messages to be samples on a small set of your players, then in one click send the better converting message to your remaining players.
    • Real Time Analytics - Watch your messages be delivered and convert into re-engaged players with zero latency or page refreshing.
    Client Testimonials:

    "I had been trying to get push notifications working with a fews different services and it just wasn’t happening. I got OneSignal up and running in a weekend and now have it working in my app. The best part of all of this? I just started work on a new game and the setup process for notifications took me all of 5 minutes. Tops. I absolutely love it!"

    "I have been developing software since 1990 and webs since 1995 and apps since 2009. Your service is by far the best and most easy service that I have used in my life."

    "I'm really loving OneSignal. Your tech-support especially is really great.”


    Not convinced? Contact our support team for a prompt reply if you have any questions.

    Links:

    Homepage
    Documentation
    Support Form

    Screenshots
    3ad1a8a2-37de-11e6-9e63-4a04d19c6de4.png 3bc59ec6-37de-11e6-8739-d0ffc786d964.png 3a034174-37de-11e6-988e-be8065842f06-1.png 3d847c1e-37de-11e6-9068-d92b735da91e.png
     
    Last edited: Jul 14, 2017
  2. gdeglin

    gdeglin

    Joined:
    Mar 7, 2013
    Posts:
    78
    Hi All. We have a bunch of new features to announce:

    1) Unsubscribing From Notifications
    You can now call the SetSubscription(true/false) method to toggle whether a device will receive notifications. This makes it easy to create a notification opt-out option for your players.

    2) iOS Certificate Expiration Warnings
    We'll now send you an email reminder if your iOS push notification certificate is about to expire.

    3) In-App Notifications
    We now support showing notifications even if they arrive while the app is open. Simply use the EnableInAppAlertNotification(true/false) method to toggle this option. The default behavior is false.

    4) Notification Stacking
    We now support stackable notifications on Android. These are an essential feature for apps that send more than a few notifications per day. Here's an example:


    (Stackable Notification Example)

    Stackable notifications are supported through both our dashboard and API using the "Group Key" option.

    You can read more about these changes on our latest blog post.
     
    Last edited: Apr 1, 2016
  3. gdeglin

    gdeglin

    Joined:
    Mar 7, 2013
    Posts:
    78
    More great new features coming your way, but first, check out our brand new beautiful website!

    Moving forward, here's what's new:

    1) Everything is faster for larger apps.

    Notification batches over 1 million will now be sent much faster. Pages on the dashboard for apps with over 5 Million installs apps will also be much faster.

    2) Our API now supports the "OR" operator when sending notifications targeted based on tags.

    3) Scheduled notification improvements.
    Scheduled notifications will now determine their recipients at the moment they're scheduled to be delivered, instead of the moment they are created.

    4) Windows 8.1 Support
    In the next couple of days we will release support for Windows 8.1 notifications. (We already support Windows 8 Phone)

    5) Better Error Handling
    Our already reliable backend system now even better handles rare iOS and Google Cloud Messaging server errors.
     
  4. gdeglin

    gdeglin

    Joined:
    Mar 7, 2013
    Posts:
    78
    Several new updates are now available, including a new SDK version.

    Download the updated OneSignal SDK here.

    1) Unity Windows Phone 8.1 Support is now available!
    Follow these simple instructions to use OneSignal with your Windows Phone 8.1 app.

    2) Several bugs have been fixed in the latest SDK:
    a) Using postNotification to send a notification from inside your app now formats UTF-8 characters correctly.
    b) Notifications will now not be cleared by default when the app is started
    c) Fixed a bug where silent notifications with content could be marked as converted twice.

    3) Documentation Improvements
    Our documentation has undergone a visual refresh, and several areas have been made easier to navigate.

    4) Dashboard Improvements
    Much of our dashboard has been redesigned to be easier to navigate and more visually appealing.

    As always, thanks everyone for your support and feedback!
     
    Last edited: Jul 14, 2017
  5. gdeglin

    gdeglin

    Joined:
    Mar 7, 2013
    Posts:
    78
    1) We've released an updated Unity SDK with several bug fixes. You can download it here.

    2) We also added an emoji selector to our notification creation page:


    Enjoy!
     
    Last edited: Jul 14, 2017
  6. gdeglin

    gdeglin

    Joined:
    Mar 7, 2013
    Posts:
    78
    A few quick updates:

    1) We just crossed 6000 developers.

    A huge thanks to all of you who have been signing up!

    2) iOS 9

    We have full Unity iOS 9 support, including bitcode.

    2) We've made Unity setup even easier.

    You can now use our simple wizard to guide you through SDK setup. You can even test out and troubleshoot notifications in the setup wizard to make sure everything is working smoothly.

     
  7. gdeglin

    gdeglin

    Joined:
    Mar 7, 2013
    Posts:
    78
    Wow, we're now at over 8,500 developers and over 12,000 apps!

    We've been hard at work improving the stability and speed of our backend systems to support all of your holiday notifications. We also left some time work on adding even more useful features:

    1) Multiple iOS Certificate Support.

    You can now upload both a development and a production iOS push certificate for your app and we will automatically use the right one for each of your users.

    2) Faster website, documentation, and API.

    We've made loading speed improvements across the board, especially for our documentation pages.

    3) Blazing fast data exporting.

    We've added a bulk export API to help you export any user data out of our system to analyze or use outside of our service. It's fast enough to export data on millions of users in just a minute or two.

    4) You can now send silent notifications.

    5) We've made dozens of improvements to our Web Push support -- perfect for your website or WebGL game!
     
  8. gdeglin

    gdeglin

    Joined:
    Mar 7, 2013
    Posts:
    78
    A new version of the OneSignal Unity plugin is now available. Here's some of the major changes:

    1) Smaller file size
    Our, already small, SDK is now even smaller.

    2) Less network traffic
    Our SDK will now batch network calls to reduce network usage by calls like getTags and setTags.

    3) Fewer setup steps
    Your OneSignal App ID and Google Project number are now pulled automatically from the AndroidManifest.xml.

    4) Linking to the app store improvements
    Android market:// links will now open the Play Store directly instead of opening your app first.

    5) Better detection of old / incomplete android support v4 library issues.

    6) Cleaner Unity Import
    We've moved most of our SDK files into a OneSignal folder for Unity 5 for a cleaner import. A 4.6 SDK package still exists for backwards compatibility.

    7) Improved Google Play Games plugin compatibility.

    6) Several bug and compatibility fixes.
    These include an issue where a device may not register if Google Play services 8.1.0 or newer was used in your project.

    You can read more about all of these changes on our blog here.

    Thank you all for your continued support!
     
  9. Requiem99

    Requiem99

    Joined:
    Aug 6, 2013
    Posts:
    12
    Wow! It is simply amazing and it is free! Thank you so much guys:)
     
  10. gdeglin

    gdeglin

    Joined:
    Mar 7, 2013
    Posts:
    78
    Thanks for the kind words Requiem99! :)

    We've got a bunch of new updates we're excited to share, but first, we're excited to announce that OneSignal's number of developers has increased to over 25,000!

    And here's a look at how fast our notification volume is increasing:


    And now on to the updates:

    1. Improved Notification Delivery Speed

    OneSignal already sent notifications very fast, but now the speed is off the charts. You can read about our new delivery backend here.

    2. Bug fixes

    a. Fixed an issue related to default notification sounds.
    b. Fixed an issue related to subscriptions for devices with intermittent internet connections.
    c. Fixed a bug where GetTags would return null in certain cases.
    d. Fixes an error that could be encountered with a small number of other plugins that also modify the AndroidManifest.xml

    3. Location Targeting

    Added the ability to target notifications to subscribers based on their last known location.

    4. Improved Error Reporting

    The OneSignal dashboard now more clearly displays the reason for undelivered notifications. We have a bunch more improvements planned for this as well!
     
    elias_t likes this.
  11. gdeglin

    gdeglin

    Joined:
    Mar 7, 2013
    Posts:
    78
    Hey all. We have more great updates to share!

    But first, we'd like to announce that OneSignal is now used by over 37,000 developers. This means we've added 12,000 new developers in under 2 months!

    Here's what's new:

    1. It's easy to migrate from Parse to OneSignal

    Are you looking for a Push Notification solution to replace Parse? Look no further! We have an automatic importer to transfer over your Parse notification subscribers to OneSignal.

    2. Improved dashboard UI

    The OneSignal dashboard now makes it easier to see your subscribers and the status of your messages at a glance.

    3. Android Badge Support

    OneSignal notifications will now update the badge counter on your app for Android launchers that support notification badges.

    4. Notification accent color

    We added an option to set the notification accent color on Android 5+. To use it, add the following code to your Android-Manifest.xml file.

    <!-- Sets all OneSignal notification's accent color to Green by default. -->
    <meta-data android:name="com.onesignal.NotificationAccentColor.DEFAULT" android:value="FF00FF00" />
     
    Last edited: Jul 14, 2017
  12. Kafar

    Kafar

    Joined:
    Nov 29, 2012
    Posts:
    220
    When you will include in Unity plugin a method delegate to handle remote push notifications when the app is closed, opened in foreground or in background but the user not have clicked on notifications?
    Thanks
     
    Last edited: Jun 8, 2016
  13. JKasten

    JKasten

    Joined:
    Apr 11, 2013
    Posts:
    23
  14. tiyulin1025

    tiyulin1025

    Joined:
    Sep 21, 2016
    Posts:
    1
    I just follow the website documentation, but I got the error message when I build the example scene in Unity. The platform is iOS. Is anyone know the problem ? Thank you.

    "Assets/OneSignal/src/OneSignal.cs(228,173): error CS1502: The best overloaded method match for `OneSignalIOS.OneSignalIOS(string, string, bool, bool, bool, int, OneSignal.LOG_LEVEL, OneSignal.LOG_LEVEL)' has some invalid arguments"
    "Assets/OneSignal/src/OneSignal.cs(228,173): error CS1503: Argument `#6' cannot convert `OneSignal.OSInFocusDisplayOption' expression to type `int'"
     
  15. JKasten

    JKasten

    Joined:
    Apr 11, 2013
    Posts:
    23
    @tiyulin1025 Sorry about the issue. We just released a new revision of our 2.0 SDK which fixes this issue.
     
  16. sathya

    sathya

    Joined:
    Jul 30, 2012
    Posts:
    279
    Hi,
    How does Unity WebGL WebPush works. is it supported with provided unity SDK ?
    Did not find any relevant docs for the same. I have android notification in place and its working fine. Can we make WebGL Notification from unity ?
     
  17. gdeglin

    gdeglin

    Joined:
    Mar 7, 2013
    Posts:
    78
    Yes, you should use our Web Push support for WebGL games.
     
  18. gdeglin

    gdeglin

    Joined:
    Mar 7, 2013
    Posts:
    78
    We have a bunch of new updates that should be especially useful for Unity game developers. We're also excited to announce that we crossed over 80,000 developers using OneSignal!

    1. Rich Android Notifications

    OneSignal now supports customizable notification background and text colors for Android notifications. These rich notifications have significantly increased conversion rate, and are perfect for games.

    ge1mfexQ0y8yCHSn5sag_CustomAndroid_Images_Blog.gif

    Read more about how to implement this here.

    2. Rich iOS 10 Notifications

    OneSignal supports the new iOS 10 media attachments, and content extensions.

    PointedEthicalAmericansaddlebred.gif

    You can learn about how to implement these in your app here.

    3. Improved API

    OneSignal's API has received major improvements. Segments can now be defined in real-time when sending notifications based on filters such as last active time, location, device type, amount spent on iAP, and more. You can learn more about this feature here.

    4. Improved documentation

    All of OneSignal's documentation has been rewritten to be easier to follow. The documentation now also includes detailed tutorials on how to use each of OneSignal's powerful features.

    5. Improved Analytics

    OneSignal now showed detailed analytics about the growth rate of your app.

    Screenshot_2016_10_06_19_44_39-1475808336760.png


     
  19. sathya

    sathya

    Joined:
    Jul 30, 2012
    Posts:
    279
    @gdeglin,
    Understood. But how to call notification from unity game. I want to send web push to users for facebook web games from android devices. user to user notification.
     
  20. sathya

    sathya

    Joined:
    Jul 30, 2012
    Posts:
    279
    Is this oneSingal offical thread ? i do not see oneSignal publisher here regularly. where i can contact onesignal directly for support
     
  21. kosted

    kosted

    Joined:
    Mar 14, 2015
    Posts:
    104
    Go to their website. Onesignal.com
     
  22. gdeglin

    gdeglin

    Joined:
    Mar 7, 2013
    Posts:
    78
    Happy 2017 everyone! We're excited to announce that OneSignal is used by over 110,000 developers, including thousands of Unity developers.

    Here's some new features we've introduced in the last couple of months --

    Smart-Scheduling

    Our new smart scheduling feature combines data from 2 Billion devices across 125,000 apps to predict the ideal notification delivery time for each user.

    First, we analyze each time users interact with notifications from your game. These events are used to build a predictive model of when to deliver future notifications to that user.

    Next, if you have and provide us with the email of the player, we further improve time predictions by storing the email as an anonymized hash and cross-referencing it with data from 125,000 other applications. This makes our predictive model incredibly accurate and constantly improving as OneSignal grows in popularity.

    To make full use of our predictive scheduling, your game will need to know the emails of your users. If you have this, here is the Unity method to use to send it to us.

    If you don't have emails for your players, don't worry, Smart Scheduling works even based on just the data from when players have played your game or opened your notifications.

    Early testing demonstrates a 15% increase in the clickthrough rate (CTR) of marketing notifications that use this new scheduling capability and this will only improve as OneSignal is adopted by more developers over time.

    Tag Substitution

    Notifications can now be personalized for each player based on tags you have set for them. For example, this can be used to include the player's name, level, or in-app purchase they've made.

    If a user has the tag {name: "George"}, you can now insert this tag into your notification like so:

    Hello {{ name | default: "there"}}!

    And then this user will receive the notification "Hello George!".

    Tag substitution can also used in the Title or Launch URL fields.

    Additional guides and examples on this powerful new feature can be found in our documentation.


    Segmentation Improvements

    Segments can now contain both AND and OR conditions, making it even easier to precisely target players.

    unspecified_4-1484003722839.png


    Thanks for helping to make OneSignal the go-to place for all of your Push Notification needs!
     
  23. MikeCoderMore

    MikeCoderMore

    Joined:
    Sep 22, 2013
    Posts:
    61
    Well done guys this service is amazing, can't believe it's free :)
     
  24. notifyvisitors

    notifyvisitors

    Joined:
    Feb 16, 2017
    Posts:
    1
    Thank you for sharing the information, this service is really amazing .
     
  25. adarrigol

    adarrigol

    Joined:
    Dec 10, 2015
    Posts:
    4
  26. gdeglin

    gdeglin

    Joined:
    Mar 7, 2013
    Posts:
    78
    We're excited to announce that we've reached 1 Billion notifications sent per day!

    Here's a summary of some recent updates to OneSignal:

    Dashboard

    The OneSignal Dashboard is undergoing some big design improvements. Our focus has been on making the dashboard both faster and easier to use as well as set the foundation for many upcoming improvements we have in store.

    Each setting on the dashboard now has a detailed description of how to use it, making it easier to leverage features like big pictures, custom sounds and action buttons in your notifications.

    Platforms
    • OneSignal now leverages the Notification Service Extension capability introduced for iOS 10+ to support notification attachments such as images, gifs, and videos.
    • Our latest Android updates have over 20 bug fixes for issues that have been reported to us. Although most issues are minor, we recommend updating to get all of the fixes.
    • OneSignal now delivers Amazon Device Messaging (ADM) and Windows Push Notification Services (WNS) through our new backend delivery system, making these platforms faster and more reliable.
     
  27. Gunhi

    Gunhi

    Joined:
    Apr 18, 2012
    Posts:
    300
    How can I trigger a notification in client-side? For example: an user send a private message to others then the receivers should be notified.
     
  28. JKasten

    JKasten

    Joined:
    Apr 11, 2013
    Posts:
    23
    @adarrigol This is something we plan on adding in the future. You can follow this open github issue to stay up to date on our progress on it.
    https://github.com/OneSignal/OneSignal-Unity-SDK/issues/40

    @Gunhi You can use the postNotification method part of the OneSignal SDK to send to a list of OneSignal player ids by setting `include_player_ids` on it. You can use IdsAvailable to get the current device's id. However you will need to synchronize the OneSignal player / user Id through your server or some other means to the devices.
     
  29. larku

    larku

    Joined:
    Mar 14, 2013
    Posts:
    1,422
    Hey gdeglin,

    Is there anyway to have my app be notified of a received notification even if the app is closed (on next open?). I understand that on Android we'd need a service or similar to process the notifications and do what ever is required. Does OneSignal offer something to do this already?

    Any suggestions on a cross platform approach?
     
  30. JKasten

    JKasten

    Joined:
    Apr 11, 2013
    Posts:
    23
    @larku Push notifications are shown on Android even if the app has been closed by swiping it away. The only time notifications wouldn't be shown is if the app is force-stopped. Some manufactures run a modified build of Android like Xiaomi and put the app into this state in a few cases.

    This page covers all the possible cases of the force-stopped state.
    https://documentation.onesignal.com...-being-shown#section-the-app-is-force-stopped

    For iOS the app can be force-quite (swiped away) and notifications will still show. This is because iOS it self displays the notification without starting / waking your app.
     
  31. larku

    larku

    Joined:
    Mar 14, 2013
    Posts:
    1,422
    Thanks JKasten, I don't think you quite understand my question. I want to process the notification in my app (set flags, update data etc). Similar to how I can process received notifications when my app has focus using HandleNotificationReceived(OSNotification notification).
     
  32. JKasten

    JKasten

    Joined:
    Apr 11, 2013
    Posts:
    23
    larku likes this.
  33. larku

    larku

    Joined:
    Mar 14, 2013
    Posts:
    1,422
    Thanks JKasten,

    That's great. Is there a similar solution for iOS?

    It'd be awesome if OneSignal could provide a default implementation of this that would just deliver the notifications to the app proper once started. But a great workaround regardless.

    Thanks.
     
  34. mona_alaa

    mona_alaa

    Joined:
    Dec 11, 2013
    Posts:
    1
    I want to create a scheduled notification problematically from code by taking the notification text and time from server or something, i have a zero background in backend
    thanks
     
  35. sathya

    sathya

    Joined:
    Jul 30, 2012
    Posts:
    279
    Hi @gdeglin ,
    I have set the scheduled push notification for one of our game. but that notification triggers even if the app the running. I want to suspend the notification silently if the game is running in the foreground. Is it possible!
     
    Last edited: Aug 17, 2017
  36. CristianArrow

    CristianArrow

    Joined:
    Mar 13, 2017
    Posts:
    3
    Hi!
    Finally i can receive notifications on android!...but, when the user press the noti and the app is launched, i wanna save the title and message in a txt . file.
    Is there any way to do this with unity scripting?
    Thanks!
     
  37. larku

    larku

    Joined:
    Mar 14, 2013
    Posts:
    1,422
    I don't think this can be done without opening the app (or having a service to receive the notification (which I'm assuming is possible in theory))...

    But if you just want to process it after the app is launched from the notification then the HandleNotificationOpened(...) callback will allow you to process the notification data.

    So like so:

    Code (csharp):
    1.     void Start()
    2.     {
    3.         OneSignal.StartInit("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
    4.           .HandleNotificationReceived(HandleNotificationReceived)
    5.           .HandleNotificationOpened(HandleNotificationOpened)
    6.           .EndInit();
    7.     }
    8.     private static void HandleNotificationOpened(OSNotificationOpenedResult result)
    9.     {
    10.         OSNotificationPayload payload = result.notification.payload;
    11.         Dictionary<string, object> additionalData = payload.additionalData;
    12.         string message = payload.body;
    13.         string actionID = result.action.actionID;
    14.         //etc
    15.     }
     
  38. gdeglin

    gdeglin

    Joined:
    Mar 7, 2013
    Posts:
    78
    OneSignal has had a bunch of updates over the last few months, most of which we've detailed on our blog https://onesignal.com/blog/, but a few are relevant enough to share here as well:

    1. Notification Category Support & Editing

    AndroidOCategoryEditor-1503624030774.png

    Android O introduces support for Notification Categories, so users can choose which types of notifications they wish to receive from your game in their device settings.

    Our new category editor allows you to create these categories and manage them from our dashboard, and they are automatically updated in your app without requiring you to release a new app version.

    2. Improved Segment Editor

    OneSignalNewSegments-1503943894156.png

    Our improved segment editor makes it easier to target specific audiences for your notification, so you can make sure all notifications are getting sent to relevant users. It also makes it easy to duplicate existing segments or to create them dynamically when you're composing a notification.

    3. We raised a Series A

    We're excited to announce that we raised a $7 Million Series A, ensuring that you can rely on OneSignal to get even better as we expand the team. Thanks for your support!
     
    larku likes this.
  39. ahmadomar966

    ahmadomar966

    Joined:
    Mar 2, 2018
    Posts:
    6


    hello please help
     
  40. shahzad_assetStore

    shahzad_assetStore

    Joined:
    Feb 3, 2018
    Posts:
    2
    Hello
    using OneSignal is there anyone who knows how to override same notifications coming from different games.
    for example if i send a notification from my two or more than two games, in android device it shows two or more
    than two same notification. i want to override these notification and want to display only one notification.
    is there any way to do this ?
     
  41. Marek_Bakalarczuk

    Marek_Bakalarczuk

    Joined:
    Dec 28, 2012
    Posts:
    112
    Is with OneSignal I can open specific scene when I tap on push notification, when app is off?
     
  42. nsmith1024

    nsmith1024

    Joined:
    Mar 18, 2014
    Posts:
    869
    Do i need a server to tell your sever to deliver a message to a particular user whose has the app closed?
     
  43. ROBYER1

    ROBYER1

    Joined:
    Oct 9, 2015
    Posts:
    1,444
    We have been enjoying using the SDK, however we have hit a hurdle with implementing VOIP notifications (incoming or outgoing calls) with our app using your SDK. Is there any reference for how to set up VOIP notifications (with Apple at least) with your SDK or without?