{"id":14961586,"url":"https://github.com/drmoriarty/godot-local-notification","last_synced_at":"2026-02-15T09:03:56.129Z","repository":{"id":41113043,"uuid":"98391882","full_name":"DrMoriarty/godot-local-notification","owner":"DrMoriarty","description":"Godot module for local notifications (android and iOS)","archived":false,"fork":false,"pushed_at":"2024-01-17T06:21:09.000Z","size":127,"stargazers_count":144,"open_issues_count":14,"forks_count":25,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-01-31T04:24:41.361Z","etag":null,"topics":["android","godot","godot-engine","godot-game-engine","godot-local-notification","godot-module","godot-plugin","godotengine","nativelib"],"latest_commit_sha":null,"homepage":"","language":"Objective-C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DrMoriarty.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-07-26T07:14:46.000Z","updated_at":"2025-01-24T21:25:45.000Z","dependencies_parsed_at":"2024-09-24T13:43:24.038Z","dependency_job_id":"25afaa87-e7c9-41af-8234-6330fe713e9b","html_url":"https://github.com/DrMoriarty/godot-local-notification","commit_stats":{"total_commits":42,"total_committers":5,"mean_commits":8.4,"dds":"0.19047619047619047","last_synced_commit":"6c8ce7dca94193cc7217a376fb0bc75568c46c7e"},"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DrMoriarty%2Fgodot-local-notification","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DrMoriarty%2Fgodot-local-notification/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DrMoriarty%2Fgodot-local-notification/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DrMoriarty%2Fgodot-local-notification/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DrMoriarty","download_url":"https://codeload.github.com/DrMoriarty/godot-local-notification/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238035385,"owners_count":19405682,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","godot","godot-engine","godot-game-engine","godot-local-notification","godot-module","godot-plugin","godotengine","nativelib"],"created_at":"2024-09-24T13:25:44.607Z","updated_at":"2026-02-15T09:03:51.088Z","avatar_url":"https://github.com/DrMoriarty.png","language":"Objective-C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Local/Push notification plugin for Godot engine\n\nThis is a module for [Godot Game Engine](http://godotengine.org/) which add local and remote notification feature for iOS and Android. \n\n## Installation\n\n1. At first you need [NativeLib-CLI](https://github.com/DrMoriarty/nativelib-cli) or [NativeLib Addon](https://github.com/DrMoriarty/nativelib).\n\n2. Make `nativelib -i local-notification` in your project directory if you are using CLI. Find `LOCAL-NOTIFICATION` in plugins list and press \"Install\" button if you are using GUI Addon.\n\n3. Enable **Custom Build** for using in Android.\n\n## Usage\n\nAdd wrapper `scripts/localnotification.gd` into autoloading list in your project. So you can use it everywhere in your code.\n\n## API\n\n### show(message: String, title: String, interval: float, tag: int, repeating_interval: int = 0)\n\nShow notification with `title` and `message` after delay of `interval` seconds with `tag`. You can override notification by it's tag before it was fired.\nIf you defined `repeating_interval` the notification will be fired in a loop until you cancelled it.\n\n### show_daily(message: String, title: String, hour: int, minute: int, tag: int = 1)\n\nShow notification daily at specific hour and minute (in 24 hour format).\nYou can overide the notification with new time, or cancel it with tag and register a new one.\n\n*Need help*: Currently just support ios, need help on Android\n\n### cancel(tag: int)\n\nCancel previously created notification.\n\n### cancel_all()\n\nCancel all pending notifications (implemented for iOS only).\n\n### init()\n\nRequest permission for notifications (iOS only).\n\n### is_inited() -\u003e bool\n\nCheck if notification permission was requested from user (iOS only).\n\n### is_enabled() -\u003e bool\n\nCheck if notification permission was granted by user (iOS only).\n\n### register_remote_notification()\n\nRequest system token for push notifications.\n\n### get_device_token() -\u003e String\n\nReturns system token for push notification.\n\n### get_notification_data() -\u003e Dictionary\n\nReturns custom data from activated notification (Android only).\n\n### get_deeplink_action() -\u003e String\n\nReturns action from deeplink, if exists. (Android only).\n\n### get_deeplink_uri() -\u003e String\n\nReturns deeplink URI, if exists (Android only).\n\n## Customising notifications for Android\n\nThe default notification color is defined in `android/build/res/values/notification-color.xml`. You can change it at your desire. The color string format is `#RRGGBB`.\n\nIn order to change default notification icon you should make this new files:\n```\nandroid/build/res/mipmap/notification_icon.png            Size 192x192\nandroid/build/res/mipmap-hdpi-v4/notification_icon.png    Size 72x72\nandroid/build/res/mipmap-mdpi-v4/notification_icon.png    Size 48x48\nandroid/build/res/mipmap-xhdpi-v4/notification_icon.png   Size 96x96\nandroid/build/res/mipmap-xxhdpi-v4/notification_icon.png  Size 144x144\nandroid/build/res/mipmap-xxxhdpi-v4/notification_icon.png Size 192x192\n```\nNotification icons should be b/w with alpha channel. They will be tinted with color which we discuss above.\n\n## Use push notifications for iOS\n\n1) check if notifications `is_inited`, it means that application requested permissions from user.\n2) call `init` if app didn’t requested it yet.\n3) catch signal `enabled` or check method `is_enabled`. It will return `false` if user didn’t grant you permission.\n4) get device token (`get_device_token`) for push notifications or catch signal `device_token_received`\n5) send your device token to the server side.\n\nThat’s all. Sending notifications processed by your server, receiving notifications processed by OS. \n\n## Troubleshooting\n\nIf the notification doesn't appear, make sure you're not trying to display it while your game is in the foreground. In iOS, apps can only show notifications if they are in the background. This implies that you must use `interval` \u003e 0.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdrmoriarty%2Fgodot-local-notification","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdrmoriarty%2Fgodot-local-notification","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdrmoriarty%2Fgodot-local-notification/lists"}