# Notification Services

Essential Kit's Notification Services feature lets Unity teams schedule local notifications and deliver push notifications without maintaining platform-specific code. This tutorial walks you through setup, permission handling, notification scheduling, and testing so you can bring players back to your game with timely, relevant notifications.

{% hint style="info" %}
Using PlayMaker? See the PlayMaker guide: [PlayMaker](/features/notification-services/playmaker.md).
{% endhint %}

{% hint style="info" %}
Looking for a working reference? Open the demo scene at `Assets/Plugins/VoxelBusters/EssentialKit/Examples/Scenes/NotificationServicesDemo.unity` and the companion script at `Assets/Plugins/VoxelBusters/EssentialKit/Examples/Scripts/NotificationServicesDemo.cs` to see the full API in action.
{% endhint %}

## What You'll Learn

* Request notification permissions and handle user consent gracefully
* Schedule local notifications with time-based and calendar triggers for game timers and daily rewards
* Implement push notifications for server-driven real-time messaging
* Handle notification interactions and manage app badge numbers
* Test notification flows in editor simulator and on devices

## Why Notification Services Matter

* **Player retention**: Remind players about energy refills, daily rewards, and time-limited events
* **Re-engagement**: Bring inactive players back with contextual notifications at optimal times
* **Live operations**: Send real-time updates about tournaments, special offers, and community events
* **Cross-platform**: Single API works across iOS (APNS) and Android (FCM) automatically

## Tutorial Roadmap

1. [Setup](https://github.com/voxelbusters/essential-kit-docs/blob/master/tutorials/v3/features/notification-services/setup.md) - Enable the feature and configure platform-specific requirements
2. [Usage](/features/notification-services/usage.md) - Permissions, local notifications, push notifications, and event handling
3. [Testing](https://github.com/voxelbusters/essential-kit-docs/blob/master/tutorials/v3/features/notification-services/testing.md) - Simulate in editor and verify on devices
4. [FAQ](/features/notification-services/faq.md) - Troubleshoot common issues

## Key Use Cases

* **Energy systems**: Schedule notifications when energy refills so players return when they can play
* **Daily rewards**: Send reminders at optimal times to encourage daily login habits
* **Event announcements**: Notify players about limited-time tournaments and special offers
* **Social interactions**: Alert players about friend requests, guild invitations, and multiplayer challenges
* **Server-driven content**: Push real-time announcements for flash sales and surprise events

## Prerequisites

* Unity project with Essential Kit v3 installed and NotificationServices feature included in the build
* iOS or Android target platforms with notification permission descriptions configured
* For push notifications: Server infrastructure or third-party service (Firebase, OneSignal) to send messages
* Test devices to validate permission prompts and notification delivery before release

{% content-ref url="<https://github.com/voxelbusters/essential-kit-docs/blob/master/tutorials/v3/features/notification-services/setup.md>" %}
<https://github.com/voxelbusters/essential-kit-docs/blob/master/tutorials/v3/features/notification-services/setup.md>
{% endcontent-ref %}

{% content-ref url="/pages/-MLDWUDm-Ya1s2Hem9wu" %}
[Usage](/features/notification-services/usage.md)
{% endcontent-ref %}

{% content-ref url="<https://github.com/voxelbusters/essential-kit-docs/blob/master/tutorials/v3/features/notification-services/testing.md>" %}
<https://github.com/voxelbusters/essential-kit-docs/blob/master/tutorials/v3/features/notification-services/testing.md>
{% endcontent-ref %}

{% content-ref url="/pages/-MLDWXSlPekhL4UCWqTz" %}
[FAQ](/features/notification-services/faq.md)
{% endcontent-ref %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://assetstore.essentialkit.voxelbusters.com/features/notification-services.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
