edganiukov / fcm

Golang client library for Firebase Cloud Messaging.
MIT License
24 stars 10 forks source link
android fcm firebase-cloud-messaging go go-fcm golang push-notifications

fcm

GoDoc Build Status Go Report Card

Golang client library for Firebase Cloud Messaging. Implemented only HTTP client.

More information on Firebase Cloud Messaging

Getting Started


To install fcm, use go get:

go get github.com/edganiukov/fcm

or dep, add to the Gopkg.toml file dependency:

[[constraint]]
  name = "github.com/edganiukov/fcm"
  version = "0.3.0"

and then run:

dep ensure

Sample Usage


Here is a simple example illustrating how to use FCM library:

package main

import (
    "github.com/edganiukov/fcm"
)

func main() {
    // Create the message to be sent.
    msg := &fcm.Message{
            Token: "sample_device_token",
            Data: map[string]interface{}{
                "foo": "bar",
            },
    }

    // Create a FCM client to send the message.
    client, err := fcm.NewClient("sample_api_key")
    if err != nil {
        log.Fatal(err)
    }

    // Send the message and receive the response without retries.
    response, err := client.Send(msg)
    if err != nil {
        /* ... */
    }
    /* ... */
}

TODO: