{"id":13807092,"url":"https://github.com/jklingsporn/vertx-push-onesignal","last_synced_at":"2025-06-20T06:37:59.972Z","repository":{"id":57733698,"uuid":"78532228","full_name":"jklingsporn/vertx-push-onesignal","owner":"jklingsporn","description":"Send push notifications asynchronously in your vertx application with OneSignal.","archived":false,"fork":false,"pushed_at":"2020-10-12T20:55:17.000Z","size":46,"stargazers_count":15,"open_issues_count":1,"forks_count":4,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-08T00:29:06.747Z","etag":null,"topics":["java","onesignal","onesignal-notifications","push-notifications","vertx"],"latest_commit_sha":null,"homepage":"","language":"Java","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/jklingsporn.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}},"created_at":"2017-01-10T12:37:26.000Z","updated_at":"2022-07-18T07:31:36.000Z","dependencies_parsed_at":"2022-08-24T11:20:14.452Z","dependency_job_id":null,"html_url":"https://github.com/jklingsporn/vertx-push-onesignal","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/jklingsporn/vertx-push-onesignal","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jklingsporn%2Fvertx-push-onesignal","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jklingsporn%2Fvertx-push-onesignal/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jklingsporn%2Fvertx-push-onesignal/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jklingsporn%2Fvertx-push-onesignal/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jklingsporn","download_url":"https://codeload.github.com/jklingsporn/vertx-push-onesignal/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jklingsporn%2Fvertx-push-onesignal/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260897672,"owners_count":23079220,"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":["java","onesignal","onesignal-notifications","push-notifications","vertx"],"created_at":"2024-08-04T01:01:20.712Z","updated_at":"2025-06-20T06:37:54.939Z","avatar_url":"https://github.com/jklingsporn.png","language":"Java","funding_links":[],"categories":["Integration"],"sub_categories":[],"readme":"# vertx-push-onesignal\nSend push notifications asynchronously in your [vertx](http://vertx.io/) application with [OneSignal](https://onesignal.com/).\n\n#### Example\n```\n//Create a client. You get the APP_ID and API_KEY from the OneSignal-dashboard\nPushClient.create(Vertx.vertx(), \"YOUR_APP_ID\", \"YOUR_API_KEY\").\n                //setup the content of the message on the serverside\n                withContent(new JsonObject().put(\"en\", \"English Content.\").put(\"de\",\"Deutscher Inhalt.\")).\n                //all users should receive this\n                targetBySegments(Segments.ALL).\n                sendNow(\n                        h -\u003e {\n                            if (h.succeeded()) {\n                                System.err.println(h.result().encodePrettily());\n                            } else {\n                                h.cause().printStackTrace();\n                            }\n                        });\n```\n\nMore examples can be found in the [``Examples``](https://github.com/jklingsporn/vertx-push/blob/master/src/main/java/io/github/jklingsporn/vertx/push/examples/Examples.java)-class.\n\n#### Why would I use this library over writing my own CURL?\nSure you can do this. What this library gives you on top is validation. When writing your own request it is absolutely\nfine to both target users by segments and filters. This library makes sure that you only use one targeting parameter.\nAlso the content of a message can either be defined by using templates _or_ setting the content like in the example above, this\nlibrary lets you set exactly one way to deliver messages.\n\n**Filters**\n\nTargeting users using filters can be tricky when writing your own CURL call. You have to remember which relation can be used\nfor which filter. This library only lets you use the relations that are allowed for a given filter:\n\n```\n//using a filter to target only users that haven't used the app for 24 hours\nFilters.lastSession().greater(24);  //OK\nFilters.lastSession().less(24);     //OK\nFilters.lastSession().exists(24);   //Compiler-error\n\n//Combining filters using OR\nFilters.lastSession().greater(24).or(Filters.sessionCount().equal(1));\n...\n```\n\n# requirements\nTo use this library you need to create a [OneSignal](https://onesignal.com/)-account and configure your clients (web or mobile) accordingly.\n\n# maven\n```\n\u003cdependency\u003e\n  \u003cgroupId\u003eio.github.jklingsporn\u003c/groupId\u003e\n  \u003cartifactId\u003evertx-push-onesignal\u003c/artifactId\u003e\n  \u003cversion\u003e1.9\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n# disclaimer\nThe author has no connection to the companies behind OneSignal or Vertx. This library also comes without any warranty - just take\nit or leave it.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjklingsporn%2Fvertx-push-onesignal","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjklingsporn%2Fvertx-push-onesignal","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjklingsporn%2Fvertx-push-onesignal/lists"}