Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

modood/pushapi

Repository files navigation

pushapi

各手机厂商推送 api 接入

Coverage Status GoDoc

vivo(更新日期:2024年03月21日):

oppo (更新日期:2024年04月25日) :

小米 (更新日期:2024年04月25日):

华为 (更新日期:2024年03月05日):

调用示例

vivo

package main
import (
	"fmt"
	"strconv"
	"time"
	"github.com/modood/pushapi/vivopush"
)
var appId = "your app id"
var appKey = "your app key"
var appSecret = "your app secret"
var regId = "your reg id"
func main() {
	client := vivopush.NewClient(appId, appKey, appSecret)
	sendReq := &vivopush.SendReq{
		RegId: regId,
		NotifyType: 4,
		Title: "test push title",
		Content: "test push content",
		TimeToLive: 24 * 60 * 60,
		SkipType: 1,
		NetworkType: -1,
		Classification: 1,
		RequestId: strconv.Itoa(int(time.Now().UnixNano())),
	}
	sendRes, err := client.Send(sendReq)
	fmt.Println(sendRes, err)
}

oppo

package main
import (
	"fmt"
	"github.com/modood/pushapi/oppopush"
)
var appKey = "your app key"
var masterSecret = "your master secret"
var regId = "your reg id"
var channelId = "your channel id"
func main() {
	client := oppopush.NewClient(appKey, masterSecret)
	sendReq := &oppopush.SendReq{
		Notification: &oppopush.Notification{
			Title: "test push title",
			Content: "test push content",
			ChannelID: channelId,
		},
		TargetType: 2,
		TargetValue: regId,
	}
	sendRes, err := client.Send(sendReq)
	fmt.Println(sendRes, err)
}

小米

package main
import (
	"fmt"
	"github.com/modood/pushapi/xiaomipush"
)
var appSecret = "your app secret"
var regId = "your reg id"
var channelId = "your channel id"
var channelName = "your channel name"
func main() {
	client := xiaomipush.NewClient(appSecret)
	sendReq := &xiaomipush.SendReq{
		RegistrationId: regId,
		Title: "test push title",
		Description: "test push content",
		NotifyType: 2,
		Extra: &xiaomipush.Extra{
			NotifyEffect: "1",
			ChannelId: channelId,
			ChannelName: channelName,
		},
	}
	sendRes, err := client.Send(sendReq)
	fmt.Println(sendRes, err)
}

华为

package main
import (
	"fmt"
	"strconv"
	"github.com/modood/pushapi/huaweipush"
)
var appId = "your app id"
var appSecret = "your app secret"
var regId = "your reg id"
var badgeClass = "your badge class. example: com.example.hmstest.MainActivity"
func main() {
	client := huaweipush.NewClient(appId, appSecret)
	sendReq := &huaweipush.SendReq{
		Message: &huaweipush.Message{
			Android: &huaweipush.AndroidConfig{
				FastAppTarget: 2,
				Notification: &huaweipush.AndroidNotification{
					Title: "test push title",
					Body: "test push content",
					ClickAction: &huaweipush.ClickAction{
						Type: 3,
					},
					Sound: strconv.Itoa(1),
					Badge: &huaweipush.BadgeNotification{
						AddNum: 1,
						Class: badgeClass,
					},
				},
			},
			Tokens: []string{regId},
		},
	}
	sendRes, err := client.Send(sendReq)
	fmt.Println(sendRes, err)
}

License

this repo is released under the MIT License.

About

安卓手机推送 api 接入(vivo oppo 小米 华为)

Topics

Resources

License

Stars

Watchers

Forks

Packages

Contributors

AltStyle によって変換されたページ (->オリジナル) /