2.7 KiB
2.7 KiB
Gopush
A push notification server using Gin framework written in Go (Golang).
Feature
- Support Google Cloud Message using go-gcm library for Android.
- Support HTTP/2 Apple Push Notification Service using apns2 library.
- Support YAML configuration.
- Support command line to send single Android or iOS notification.
- Support Web API to send push notification.
See the YAML config example:
core:
port: "8088"
max_notification: 100
mode: "release"
ssl: false
cert_path: "cert.pem"
key_path: "key.pem"
api:
push_uri: "/api/push"
stat_go_uri: "/api/status"
android:
enabled: false
apikey: ""
ios:
enabled: false
pem_cert_path: "cert.pem"
pem_key_path: "key.pem"
production: false
log:
format: "string" # string or json
access_log: "stdout" # stdout: output to console, or define log path like "log/access_log"
access_level: "debug"
error_log: "stderr" # stderr: output to console, or define log path like "log/error_log"
error_level: "error"
Basic Usage
How to send push notification using gopush
command? (Android or iOS)
Android
Send single notification with the following command.
$ ./gopush -android -m="your message" -k="API Key" -t="Device token"
-m
: Notification message.-k
: Google cloud message api key-t
: Device token.
iOS
Send single notification with the following command.
$ ./gopush -ios -m="your message" -i="API Key" -t="Device token"
-m
: Notification message.-i
: Apple Push Notification Certificate path (pem
file).-t
: Device token.
The default endpoint is APNs development. Please add -production
flag for APNs production push endpoint.
$ ./gopush -ios -m="your message" -i="API Key" -t="Device token" -production
License
Copyright 2016 Bo-Yi Wu @appleboy.
Licensed under the MIT License.