bilibili-backup/app/service/main/push/dao/oppo/define.go
2019-04-22 02:59:20 +00:00

73 lines
3.0 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package oppo
import "fmt"
const (
_host = "https://api.push.oppomobile.com"
_apiAuth = _host + "/server/v1/auth"
_apiMessage = _host + "/server/v1/message/notification/save_message_content" // 保存通知栏消息内容体
_apiPushUnicast = _host + "/server/v1/message/notification/unicast" // 单条推送
_apiPushBroadcast = _host + "/server/v1/message/notification/broadcast" // 批量推送
// _apiStatistics = _host + "/server/v1/message/statistics" // 推送统计
_callbackURL = "https://api.bilibili.com/x/push/callback/oppo"
_authExpire = 24 * 60 * 60 // auth token 过期秒数
// _pushTypeAll = "1" // 推送全部设备
_pushTypeToken = "2" // 按token推
// ResponseCodeServiceUnavalable service unavalable
ResponseCodeServiceUnavalable = -1
// ResponseCodeSuccess http normal response code
ResponseCodeSuccess = 0
// ResponseCodeInvalidToken invalid token response code
ResponseCodeInvalidToken = 10000
// ResponseCodeUnsubscribeToken unsubscribe token
ResponseCodeUnsubscribeToken = 10001
// ResponseCodeRepeatToken repeat token
ResponseCodeRepeatToken = 10004
// ActionTypeInner 打开应⽤内⻚activity的intentaction
ActionTypeInner = 1
)
// Message message content.
type Message struct {
Title string `json:"title"`
Content string `json:"content"`
ActionType int `json:"click_action_type"` // 0:启动应⽤; 1:打开应⽤内⻚(activity的intentaction); 2:打开⽹⻚; 4:打开应⽤内⻚(activity); [⾮必填默认值为0]
ActionActivity string `json:"click_action_activity"` // 应⽤内⻚地址【click_action_type 为1或4时必填⻓度500】
ActionURL string `json:"click_action_url"` // ⽹⻚地址【click_action_type为2 必填⻓度500】
ActionParams string `json:"action_parameters"` // 传递给应⽤的参数,json格式
OfflineTTL int `json:"off_line_ttl"` // 离线消息的存活时间 (默认3600s) (单位:秒), 【off_line值为true时必填最 ⻓10天】
CallbackURL string `json:"call_back_url"` // 应⽤接收消息到达回执的回调(仅⽀持registrationId或aliasName 两种推送⽅式)
}
// Response push response.
type Response struct {
Code int `json:"code"`
Message string `json:"message"`
Data struct {
MsgID string `json:"message_id,omitempty"`
TaskID string `json:"task_id,omitempty"`
TokenInvalid []string `json:"10000"`
TokenUnsubscribe []string `json:"10001"`
TokenRepeat []string `json:"10004"`
} `json:"data"`
}
// Callback oppo callback.
type Callback struct {
MsgID string `json:"messageId"`
TaskID string `json:"taskId"`
Tokens string `json:"registrationIds"` // regId1, regid2
EventType string `json:"eventType"` // push_arrive
}
// CallbackURL gets callback URL.
func CallbackURL(app int64, task string) string {
return fmt.Sprintf("%s?app=%d&task=%s", _callbackURL, app, task)
}