AlecsisDuarte / go-fcm

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Example

import (
	gfcm "github.com/michaelwp/go-fcm"
)
  • Set Firebase Admin
app, err := gfcm.SetFirebaseAdmin("serviceAccountKey.json")
if err != nil {
    log.Fatalf("Error: %v", err)
}
  • Single Receiver
singleReceiver := "eOznMhsdSxmp74ZMNLe0V2:APA91bGQE-VjFMkKSFZ5E9sdRaecJr2wDn-rRDYsH6u52ewkI6-FrHgIfbghoe7zR"

data := map[string] string {
    "score": "850",
    "time":  "2:45",
}

res, err := gfcm.SentSingleClient(app, singleReceiver, data)
if err != nil {
    fmt.Println("Error sent single client: ", err)
}
fmt.Println("Successfully sent single client: ", res)
  • Multi Receivers
multiReceiver := []string{
        "fuv9sAo_uJ4:APA91bEAgx7yL0cRNSsiSQlPnKtgJvAtWAQlnu6yT4jnxrLR4YmXAnev5bDPVRRRcIoWp58F6wCi07oS_-g8Pza82dYbx",
        "eOznMhsdSxmp74ZMNLe0V2:APA91bGQE-VjFMkKSFZ5E9sdRaecJr2wDn-rRDYsH6u52ewkI6-FrHgIfbghoe7zRjoPYeM5kQOg-hJCWZP",
    }

data := map[string] string {
    "score": "850",
    "time":  "2:45",
}

bRes, err := gfcm.SentMultiClient(app, multiReceiver, data)
if err != nil {
    fmt.Println("Error sent multi client: ", err)
}
fmt.Printf("%d messages were sent successfully\n", bRes.SuccessCount)
  • Topic
topic := "highScores"

data := map[string] string {
    "score": "850",
    "time":  "2:45",
}


res, err = gfcm.SentToTopic(app, topic, data)
if err != nil {
    fmt.Println("Error sent to topic: ", err)
}
fmt.Println("Successfully sent message:", res)

About

License:MIT License


Languages

Language:Go 100.0%