diff --git a/internal/push/offlinepush/getui/body.go b/internal/push/offlinepush/getui/body.go index 976e3c50d..9c9c884a5 100644 --- a/internal/push/offlinepush/getui/body.go +++ b/internal/push/offlinepush/getui/body.go @@ -22,8 +22,13 @@ import ( ) var ( - incOne = datautil.ToPtr("+1") - addNum = "1" + incOne = datautil.ToPtr("+1") + addNum = "1" + defaultStrategy = strategy{ + Default: 1, + IOS: 4, + St: 4, + } ) type Resp struct { @@ -64,7 +69,14 @@ type TaskResp struct { } type Settings struct { - TTL *int64 `json:"ttl"` + TTL *int64 `json:"ttl"` + Strategy strategy `json:"strategy"` +} + +type strategy struct { + Default int64 `json:"default"` + IOS int64 `json:"ios"` + St int64 `json:"st"` } type Audience struct { diff --git a/internal/push/offlinepush/getui/push.go b/internal/push/offlinepush/getui/push.go index 1ad66a152..7b713e789 100644 --- a/internal/push/offlinepush/getui/push.go +++ b/internal/push/offlinepush/getui/push.go @@ -145,7 +145,7 @@ func (g *Client) Auth(ctx context.Context, timeStamp int64) (token string, expir func (g *Client) GetTaskID(ctx context.Context, token string, pushReq PushReq) (string, error) { respTask := TaskResp{} ttl := int64(1000 * 60 * 5) - pushReq.Settings = &Settings{TTL: &ttl} + pushReq.Settings = &Settings{TTL: &ttl, Strategy: defaultStrategy} err := g.request(ctx, taskURL, pushReq, token, &respTask) if err != nil { return "", errs.Wrap(err) @@ -205,7 +205,7 @@ func (g *Client) getTokenAndSave2Redis(ctx context.Context) (token string, err e } func (g *Client) GetTaskIDAndSave2Redis(ctx context.Context, token string, pushReq PushReq) (taskID string, err error) { - pushReq.Settings = &Settings{TTL: &g.taskIDTTL} + pushReq.Settings = &Settings{TTL: &g.taskIDTTL, Strategy: defaultStrategy} taskID, err = g.GetTaskID(ctx, token, pushReq) if err != nil { return