Code Monkey home page Code Monkey logo

jpush-api-golang-client's Introduction

jpush-api-golang-client

概述

JPush's Golang client library for accessing JPush APIs. 极光推送的 Golang 版本服务器端 SDK。 该项目参考ylywyn结合极光推送官方文档而来。(原项目年久失修,有很多新特性都没有提供,本项目旨在将其完善,方便大家使用,后续会持续更新,不足之处欢迎大家指正,谢谢~) 参考REST API文档

极光短信

参考短信 REST API 文档

短信这边暂时只实现了发送单条模板短信

现已支持以下内容

  • Push API v3
  • Report API v3
  • Device API v3
  • Schedule API v3
  • File API v3
  • Image API v3
  • Admin API v3
  • SMS API v1

使用

go get github.com/Scorpio69t/jpush-api-golang-client

推送流程

1.构建要推送的平台:jpush.Platform

// Platform: all
var pf jpush.Platform
pf.Add(jpush.ANDROID)
pf.Add(jpush.IOS)
pf.Add(jpush.WINPHONE)
// pf.All()

2.构建接收目标:jpush.Audience

// Audience: tag
var at jpush.Audience
s := []string{"tag1", "tag2"}
at.SetTag(s)
id := []string{"1", "2"}
at.SetID(id)
// at.All()

3.构建通知:jpush.Notification 或者消息:jpush.Message

// Notification
var n jpush.Notification
n.SetAlert("alert")
n.SetAndroid(&jpush.AndroidNotification{Alert: "alert", Title: "title"})
n.SetIos(&jpush.IosNotification{Alert: "alert", Badge: 1})
n.SetWinPhone(&jpush.WinPhoneNotification{Alert: "alert"})

// Message
var m jpush.Message
m.MsgContent = "This is a message"
m.Title = "Hello"

4.构建消息负载:jpush.PayLoad

// PayLoad
payload := jpush.NewPayLoad()
payload.SetPlatform(&pf)
payload.SetAudience(&at)
payload.SetNotification(&n)
payload.SetMessage(&m)

5.构建JPushClient,发送推送

// Send
c := jpush.NewJPushClient("appKey", "masterSecret") // appKey and masterSecret can be gotten from https://www.jiguang.cn/
data, err := payload.Bytes()
if err != nil {
	panic(err)
}
res, err := c.Push(data)
if err != nil {
	fmt.Printf("%+v\n", err)
} else {
	fmt.Printf("ok: %v\n", res)
}

6.详细例子见examples

发送短信参见sms_test中的代码

jpush-api-golang-client's People

Contributors

scorpio69t avatar githubhxd1995 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.