Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AndroidConfig ¶
type AndroidConfig struct {
CollapseKey string `json:"collapse_key,omitempty"`
Priority AndroidMessagePriority `json:"priority,omitempty"`
TTL string `json:"ttl,omitempty"`
RestrictedPackageName string `json:"restricted_package_name,omitempty"`
Data map[string]string `json:"data,omitempty"`
Notification *AndroidNotification `json:"Notification,omitempty"`
FcmOptions AndroidFcmOptions `json:"fcm_options,omitempty"`
}
AndroidConfig format https://firebase.google.com/docs/reference/fcm/rest/v1/projects.messages#androidconfig
func (AndroidConfig) MarshalEasyJSON ¶
func (v AndroidConfig) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (AndroidConfig) MarshalJSON ¶
func (v AndroidConfig) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*AndroidConfig) UnmarshalEasyJSON ¶
func (v *AndroidConfig) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*AndroidConfig) UnmarshalJSON ¶
func (v *AndroidConfig) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type AndroidFcmOptions ¶
type AndroidFcmOptions struct {
AnalyticsLabel string `json:"analytics_label"`
}
AndroidFcmOptions format: https://firebase.google.com/docs/reference/fcm/rest/v1/projects.messages#androidfcmoptions
func (AndroidFcmOptions) MarshalEasyJSON ¶
func (v AndroidFcmOptions) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (AndroidFcmOptions) MarshalJSON ¶
func (v AndroidFcmOptions) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*AndroidFcmOptions) UnmarshalEasyJSON ¶
func (v *AndroidFcmOptions) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*AndroidFcmOptions) UnmarshalJSON ¶
func (v *AndroidFcmOptions) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type AndroidMessagePriority ¶
type AndroidMessagePriority string
AndroidMessagePriority values: https://firebase.google.com/docs/reference/fcm/rest/v1/projects.messages#androidmessagepriority
const ( AndroidMessagePriorityNormal AndroidMessagePriority = "NORMAL" AndroidMessagePriorityHigh AndroidMessagePriority = "HIGH" )
type AndroidNotification ¶
type AndroidNotification struct {
Title string `json:"title,omitempty"`
Body string `json:"body,omitempty"`
Icon string `json:"icon,omitempty"`
Color string `json:"color,omitempty"`
Sound string `json:"sound,omitempty"`
Tag string `json:"tag,omitempty"`
ClickAction string `json:"click_action,omitempty"`
BodyLocKey string `json:"body_loc_key,omitempty"`
BodyLocArgs []string `json:"body_loc_args,omitempty"`
TitleLocKey string `json:"title_loc_key,omitempty"`
TitleLocArgs []string `json:"title_loc_args,omitempty"`
ChannelID string `json:"channel_id,omitempty"`
Image string `json:"image,omitempty"`
}
AndroidNotification format https://firebase.google.com/docs/reference/fcm/rest/v1/projects.messages#androidnotification
func (AndroidNotification) MarshalEasyJSON ¶
func (v AndroidNotification) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (AndroidNotification) MarshalJSON ¶
func (v AndroidNotification) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*AndroidNotification) UnmarshalEasyJSON ¶
func (v *AndroidNotification) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*AndroidNotification) UnmarshalJSON ¶
func (v *AndroidNotification) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type ApnsConfig ¶
type ApnsConfig struct {
Headers map[string]string `json:"headers,omitempty"`
Payload map[string]interface{} `json:"payload,omitempty"`
FcmOptions *ApnsFcmOptions `json:"fcm_options,omitempty"`
}
ApnsConfig format: https://firebase.google.com/docs/reference/fcm/rest/v1/projects.messages#apnsconfig
func (ApnsConfig) MarshalEasyJSON ¶
func (v ApnsConfig) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (ApnsConfig) MarshalJSON ¶
func (v ApnsConfig) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*ApnsConfig) UnmarshalEasyJSON ¶
func (v *ApnsConfig) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*ApnsConfig) UnmarshalJSON ¶
func (v *ApnsConfig) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type ApnsFcmOptions ¶
type ApnsFcmOptions struct {
AnalyticsLabel string `json:"analytics_label,omitempty"`
Image string `json:"image,omitempty"`
}
ApnsFcmOptions foramt: https://firebase.google.com/docs/reference/fcm/rest/v1/projects.messages#apnsfcmoptions
func (ApnsFcmOptions) MarshalEasyJSON ¶
func (v ApnsFcmOptions) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (ApnsFcmOptions) MarshalJSON ¶
func (v ApnsFcmOptions) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*ApnsFcmOptions) UnmarshalEasyJSON ¶
func (v *ApnsFcmOptions) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*ApnsFcmOptions) UnmarshalJSON ¶
func (v *ApnsFcmOptions) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type ErrorCode ¶
type ErrorCode string
ErrorCode values https://firebase.google.com/docs/reference/fcm/rest/v1/ErrorCode
type FcmOptions ¶
type FcmOptions struct {
AnalyticsLabel string `json:"analytics_label,omitempty"`
}
FcmOptions format: https://firebase.google.com/docs/reference/fcm/rest/v1/projects.messages#fcmoptions
func (FcmOptions) MarshalEasyJSON ¶
func (v FcmOptions) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (FcmOptions) MarshalJSON ¶
func (v FcmOptions) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*FcmOptions) UnmarshalEasyJSON ¶
func (v *FcmOptions) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*FcmOptions) UnmarshalJSON ¶
func (v *FcmOptions) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type Message ¶
type Message struct {
Name string `json:"name,omitempty"`
Token string `json:"token,omitempty"`
Topic string `json:"topic,omitempty"`
Condition string `json:"condition,omitempty"`
Data map[string]string `json:"data,omitempty"`
Notification *Notification `json:"notification,omitempty"`
Android *AndroidConfig `json:"android,omitempty"`
Webpush *WebpushConfig `json:"webpush,omitempty"`
Apns *ApnsConfig `json:"apns,omitempty"`
FcmOptions *FcmOptions `json:"fcm_options,omitempty"`
}
Message format: https://firebase.google.com/docs/reference/fcm/rest/v1/projects.messages#Message
func (Message) MarshalEasyJSON ¶
MarshalEasyJSON supports easyjson.Marshaler interface
func (Message) MarshalJSON ¶
MarshalJSON supports json.Marshaler interface
func (*Message) ShouldIgnore ¶ added in v1.0.2
func (*Message) UnmarshalEasyJSON ¶
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*Message) UnmarshalJSON ¶
UnmarshalJSON supports json.Unmarshaler interface
type Notification ¶
type Notification struct {
Title string `json:"title,omitempty"`
Body string `json:"body,omitempty"`
Image string `json:"image,omitempty"`
}
Notification format: https://firebase.google.com/docs/reference/fcm/rest/v1/projects.messages#notification
func (Notification) MarshalEasyJSON ¶
func (v Notification) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (Notification) MarshalJSON ¶
func (v Notification) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*Notification) UnmarshalEasyJSON ¶
func (v *Notification) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*Notification) UnmarshalJSON ¶
func (v *Notification) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type Request ¶ added in v1.0.4
type Request struct {
ValidateOnly bool `json:"validate_only,omitempty"`
Message json.RawMessage `json:"message"`
}
func (Request) MarshalEasyJSON ¶ added in v1.0.4
MarshalEasyJSON supports easyjson.Marshaler interface
func (Request) MarshalJSON ¶ added in v1.0.4
MarshalJSON supports json.Marshaler interface
func (*Request) UnmarshalEasyJSON ¶ added in v1.0.4
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*Request) UnmarshalJSON ¶ added in v1.0.4
UnmarshalJSON supports json.Unmarshaler interface
type Response ¶
type Response struct {
Name string `json:"name,omitempty"`
StatusCode int `json:"-"`
Error *SendError `json:"error,omitempty"`
}
Response format: error example:
{
"error": {
"code": 400,
"message": "Invalid JSON payload received. Unknown name \"\": Root element must be a message.",
"status": "INVALID_ARGUMENT",
"details": [
{
"@type": "type.googleapis.com/google.rpc.BadRequest",
"fieldViolations": [
{
"description": "Invalid JSON payload received. Unknown name \"\": Root element must be a message."
}
]
}
]
}
}
success example:
{
"name": "projects/<project-id>/messages/0:1564476468894369%30820c6b30820c6b"
}
func (Response) MarshalEasyJSON ¶
MarshalEasyJSON supports easyjson.Marshaler interface
func (Response) MarshalJSON ¶
MarshalJSON supports json.Marshaler interface
func (*Response) UnmarshalEasyJSON ¶
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*Response) UnmarshalJSON ¶
UnmarshalJSON supports json.Unmarshaler interface
type SendError ¶
type SendError struct {
Code int `json:"code"`
Message string `json:"message"`
// error status:
// https://firebase.google.com/docs/reference/fcm/rest/v1/ErrorCode
Status ErrorCode `json:"status"`
Details json.RawMessage `json:"details"`
}
SendError format: error response example:
{
"code": 400,
"message": "Invalid JSON payload received. Unknown name \"\": Root element must be a message.",
"status": "INVALID_ARGUMENT",
"details": [
{
"@type": "type.googleapis.com/google.rpc.BadRequest",
"fieldViolations": [
{
"description": "Invalid JSON payload received. Unknown name \"\": Root element must be a message."
}
]
}
]
}
func (SendError) MarshalEasyJSON ¶
MarshalEasyJSON supports easyjson.Marshaler interface
func (SendError) MarshalJSON ¶
MarshalJSON supports json.Marshaler interface
func (*SendError) UnmarshalEasyJSON ¶
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*SendError) UnmarshalJSON ¶
UnmarshalJSON supports json.Unmarshaler interface
type WebpushConfig ¶
type WebpushConfig struct {
Headers map[string]string `json:"headers,omitempty"`
Data map[string]string `json:"data,omitempty"`
Notification map[string]interface{} `json:"notification,omitempty"`
FcmOptions *WebpushFcmOptions `json:"fcm_options,omitempty"`
}
WebpushConfig format: https://firebase.google.com/docs/reference/fcm/rest/v1/projects.messages#webpushconfig
func (WebpushConfig) MarshalEasyJSON ¶
func (v WebpushConfig) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (WebpushConfig) MarshalJSON ¶
func (v WebpushConfig) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*WebpushConfig) UnmarshalEasyJSON ¶
func (v *WebpushConfig) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*WebpushConfig) UnmarshalJSON ¶
func (v *WebpushConfig) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type WebpushFcmOptions ¶
type WebpushFcmOptions struct {
Link string `json:"link,omitempty"`
}
WebpushFcmOptions format: https://firebase.google.com/docs/reference/fcm/rest/v1/projects.messages#webpushfcmoptions
func (WebpushFcmOptions) MarshalEasyJSON ¶
func (v WebpushFcmOptions) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (WebpushFcmOptions) MarshalJSON ¶
func (v WebpushFcmOptions) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*WebpushFcmOptions) UnmarshalEasyJSON ¶
func (v *WebpushFcmOptions) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*WebpushFcmOptions) UnmarshalJSON ¶
func (v *WebpushFcmOptions) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface