$ npm install blind-push-gatewayPOC - This is a proof-of-concept still. Breaking changes possible till the V1 release.
P2P push notification gateway for blind-peer clients. The service exposes a forward-push RPC method over Hyperswarm, converts the request into Android/APNS payloads, and forwards it through an external push provider such as Firebase Cloud Messaging.
npm install blind-push-gateway
Create a config file at ~/.blind-push-gateway/config.json:
{
"certPath": "./service-account.json",
"notification": {
"title": "Keet",
"body": "✉️"
},
"apnsTopic": "io.keet.app"
}
Then run:
blind-push-gateway run
The service will log its public key on startup. Clients can connect to that swarm key and send forward-push RPC requests.
protomux-rpc-router.forward-push request encoded with blind-push/encodings.blind-push-gateway run [options]
--config|-c [path]: config path, defaults to ~/.blind-push-gateway/config.json--storage|-s [path]: storage path, defaults to ~/.blind-push-gateway/storageconst service = new BlindPushGateway(swarm, router, externalPushService, opts)Create a new gateway service.
swarm: Hyperswarm instancerouter: ProtomuxRPCRouter instanceexternalPushService: object with an async send(message) methodopts.notification: default notification payload, defaults to { title: 'Keet', body: '✉️' }opts.apnsTopic: APNS topic, defaults to io.keet.appawait service.ready()Start the gateway and begin listening for RPC connections.
await service.close()Gracefully shut down the gateway.
service.publicKeyThe swarm public key clients use to connect.