gaurun

package module
v1.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 5, 2017 License: MIT Imports: 11 Imported by: 0

README

gaurun-client

Travis branch codecov Go Report Card codebeat badge GoDoc GitHub license

About

Gaurun Client written in Go.

Install

$ go get -u github.com/osamingo/gaurun-client

License

Released under the MIT License.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewError

func NewError(resp *http.Response) error

NewError generates *gaurun.Error from *http.Response.

Types

type AndroidSetting

type AndroidSetting struct {
	CollapseKey    string `json:"collapse_key,omitempty"`
	DelayWhileIdle bool   `json:"delay_while_idle,omitempty"`
	TimeToLive     int    `json:"time_to_live,omitempty"`
}

An AndroidSetting has setting fields for FCM/GCM.

type Client

type Client struct {
	Endpoint   *url.URL
	HTTPClient *http.Client
}

A Client for gaurun server.

func NewClient

func NewClient(endpoint string, cli *http.Client) (*Client, error)

NewClient generates a client for gaurun server.

func (*Client) Push

func (cli *Client) Push(c context.Context, p *Payload) error

Push sends a payload to gaurun server.

func (*Client) PushMulti

func (cli *Client) PushMulti(c context.Context, ps ...*Payload) error

PushMulti sends payloads to gaurun server.

type Error

type Error struct {
	StatusCode int
	Response   gaurun.ResponseGaurun
}

An Error is error response from gaurun server.

func (*Error) Error

func (err *Error) Error() string

Error implements error interface.

type Extend

type Extend gaurun.ExtendJSON

An Extend is alias gaurun.ExtendJSON.

type IOSSetting

type IOSSetting struct {
	Badge            int       `json:"badge,omitempty"`
	Sound            string    `json:"sound,omitempty"`
	ContentAvailable bool      `json:"content_available,omitempty"`
	MutableContent   bool      `json:"mutable_content,omitempty"`
	Expiry           int       `json:"expiry,omitempty"`
	Retry            int       `json:"retry,omitempty"`
	Extend           []*Extend `json:"extend,omitempty"`
}

An IOSSetting has setting fields for APNs.

type Notification

type Notification struct {
	Tokens   []string `json:"token"`
	Platform Platform `json:"platform"`
	Message  string   `json:"message"`
	// Metadata
	ID uint64 `json:"seq_id,omitempty"`
	AndroidSetting
	IOSSetting
}

A Notification has gaurun notification data.

type Payload

type Payload struct {
	Notifications []*Notification `json:"notifications"`
}

A Payload has notifications.

type Platform

type Platform int

A Platform is alias gaurun platform enum.

const (
	// PlatformAndroid is enum for FCM/GCM.
	PlatformAndroid Platform = gaurun.PlatFormAndroid
	// PlatformIOS is enum for APNs.
	PlatformIOS Platform = gaurun.PlatFormIos
)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL