first commit
This commit is contained in:
74
service/offline-push/pusher/android/push.go
Normal file
74
service/offline-push/pusher/android/push.go
Normal file
@@ -0,0 +1,74 @@
|
||||
package android
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"gitlab.33.cn/chat/dtalk/pkg/util"
|
||||
"strconv"
|
||||
|
||||
push "github.com/oofpgDLD/u-push"
|
||||
android_push "github.com/oofpgDLD/u-push/android"
|
||||
"gitlab.33.cn/chat/dtalk/service/offline-push/pusher"
|
||||
)
|
||||
|
||||
type androidPusher struct {
|
||||
AppKey string
|
||||
AppMasterSecret string
|
||||
MiActivity string
|
||||
environment string
|
||||
}
|
||||
|
||||
func (t *androidPusher) SinglePush(deviceToken, title, text string, extra *pusher.Extra) error {
|
||||
var client push.PushClient
|
||||
unicast := android_push.NewAndroidUnicast(t.AppKey, t.AppMasterSecret)
|
||||
|
||||
//fmt.Println(t.AppKey, t.AppMasterSecret, t.DeviceToken, title, text)
|
||||
unicast.SetDeviceToken(deviceToken)
|
||||
unicast.SetTitle(title)
|
||||
unicast.SetText(text)
|
||||
unicast.GoCustomAfterOpen("")
|
||||
unicast.SetDisplayType(push.NOTIFICATION)
|
||||
unicast.SetMipush(true, t.MiActivity)
|
||||
unicast.SetExpireTime(util.UnixToTime(extra.TimeOutTime).In(util.Shanghai()).Format("2006-01-02 15:04:05"))
|
||||
switch t.environment {
|
||||
case "debug":
|
||||
// 测试模式
|
||||
unicast.SetTestMode()
|
||||
case "release":
|
||||
// 线上模式
|
||||
unicast.SetReleaseMode()
|
||||
default:
|
||||
return errors.New("unknown environment")
|
||||
}
|
||||
// Set customized fields
|
||||
unicast.SetExtraField("address", extra.Address)
|
||||
unicast.SetExtraField("channelType", strconv.FormatInt(int64(extra.ChannelType), 10))
|
||||
return client.Send(unicast)
|
||||
}
|
||||
|
||||
func (t *androidPusher) SingleCustomPush(address, title, text string, extra *pusher.Extra) error {
|
||||
var client push.PushClient
|
||||
unicast := android_push.NewAndroidCustomizedcast(t.AppKey, t.AppMasterSecret)
|
||||
|
||||
//fmt.Println(t.AppKey, t.AppMasterSecret, t.DeviceToken, title, text)
|
||||
unicast.SetAlias(address, "ADDRESS")
|
||||
unicast.SetTitle(title)
|
||||
unicast.SetText(text)
|
||||
unicast.GoCustomAfterOpen("")
|
||||
unicast.SetDisplayType(push.NOTIFICATION)
|
||||
unicast.SetMipush(true, t.MiActivity)
|
||||
unicast.SetExpireTime(util.UnixToTime(extra.TimeOutTime).In(util.Shanghai()).Format("2006-01-02 15:04:05"))
|
||||
switch t.environment {
|
||||
case "debug":
|
||||
// 测试模式
|
||||
unicast.SetTestMode()
|
||||
case "release":
|
||||
// 线上模式
|
||||
unicast.SetReleaseMode()
|
||||
default:
|
||||
return errors.New("unknown environment")
|
||||
}
|
||||
// Set customized fields
|
||||
unicast.SetExtraField("address", extra.Address)
|
||||
unicast.SetExtraField("channelType", strconv.FormatInt(int64(extra.ChannelType), 10))
|
||||
return client.Send(unicast)
|
||||
}
|
||||
Reference in New Issue
Block a user