Skip to content

gCastl/exponent-server-sdk-go

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

exponent-server-sdk-go

Build Status codecov codebeat badge Go Report Card GoDoc

Server side library for working with Exponent using Go

Installing

To install this library, simply run:

go get github.com/Terminux/exponent-server-sdk-go

Usage

Token Checker

Check if the token is a valid Expo push token

  expo.IsExpoPushToken(token)

Send Single Message

  message := expo.PushMessage{To: token, Body: "content"}

  message.Send()
  // or
  expo.SendPushNotification(&message)

Send Several Messages

  expo.SendPushNotifications([]*expo.PushMessage{
    &expo.PushMessage{To: token1, Body: "first message"},
    &expo.PushMessage{To: token2, Body: "another message"},
    &expo.PushMessage{To: token3, Body: "last message"},
  })

Chunks Messages

Split the chunk messages into several chunks messages

  expo.ChunkPushNotifications(messages)

Example

Here's a sample showcasing many features of expo.

import (
  "fmt"
  "os"

  "github.com/Terminux/exponent-server-sdk-go"
)

func main() {
	token := os.Getenv("EXPO_TOKEN")

	if expo.IsExpoPushToken(token) {
		message := expo.PushMessage{
			To:    token,
			Title: "Notification title",
			Body:  "Notification content",
			Data:  struct{ Value string }{"mydata"}}

		apiRes, apiErr, err := message.Send()
		if err != nil {
			panic(err)
		}

		fmt.Println("apiRes:", apiRes)
		fmt.Println("apiErr:", apiErr)
	}
}

to run example

$ EXPO_TOKEN=your_expo_token go run main.go

Based on

About

Expo server sdk in golang

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages