A Swift command-line tool to easily send push notifications to the iOS simulator.
Poes helps you with:
- Generating a JSON payload for push notifications
- Sending and testing push notifications in the simulator
- Xcode 11.4 beta 1 and up
$ poes --help
OVERVIEW: A Swift command-line tool to easily test push notifications to the
iOS simulator
USAGE: poes <subcommand>
OPTIONS:
-h, --help Show help information.
SUBCOMMANDS:
send Send a push notification to an app installed on the
iOS Simulator
$ poes send --help
OVERVIEW: Send a push notification to an app installed on the iOS Simulator
USAGE: poes send <bundle-identifier> [--title <title>] [--body <body>] [--badge <badge>] [--is-mutable] [--verbose]
ARGUMENTS:
<bundle-identifier> The bundle identifier of the app to push to
OPTIONS:
-t, --title <title> The title of the Push notification (default: Default
Title)
-b, --body <body> The body of the Push notification (default: Default
Body)
-b, --badge <badge> The number to display in a badge on your app’s icon
-i, --is-mutable Adds the mutable-content key to the payload
--verbose Show extra logging for debugging purposes
-h, --help Show help information.
The bundle identifier is mandatory, all others have a default value. The following command can be enough to send out a notification:
$ poes send com.wetransfer.app --verbose
Generated payload:
{
"aps" : {
"alert" : {
"title" : "Default title",
"body" : "Default body"
},
"mutable-content" : false
}
}
Sending push notification...
Push notification sent successfully
Installation using Mint
You can install Poes using Mint as follows:
$ mint install AvdLee/Poes
cd
into the repository- run
swift package generate-xcodeproj
(Generates an Xcode project for development) - Run the following command to try it out:
swift run Poes --help
Poes is a Dutch word for a female cat. The pronunciation is the same as "Push" and pushing notifications is what we're doing here!
This makes it really easy to eventually create a Mac App with a UI around it 🚀
Check out my blog post Swift Package framework creation in Xcode.
Yes! I've written a detailed blog post about this: Testing push notifications on the iOS simulator