mass

package
v0.0.0-...-4877452 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 20, 2015 License: Apache-2.0 Imports: 2 Imported by: 0

README

群发消息接口

根据分组进行群发消息示例
package main

import (
	"fmt"

	"github.com/chanxuehong/wechat/mp"
	"github.com/chanxuehong/wechat/mp/message/mass/mass2group"
)

var TokenServer = mp.NewDefaultTokenServer("appid", "appsecret", nil)

func main() {
	text := mass2group.NewText(1 /* groupid */, "content")

	clt := mass2group.NewClient(TokenServer, nil)

	msgId, err := clt.SendText(text)
	if err != nil {
		fmt.Println(err)
		return
	}
	fmt.Println("msgId:", msgId)
}

Documentation

Overview

群发消息.

Index

Constants

View Source
const (
	EventTypeMassSendJobFinish = "MASSSENDJOBFINISH"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

type Client struct {
	mp.WechatClient
}

func NewClient

func NewClient(TokenServer mp.TokenServer, HttpClient *http.Client) *Client

创建一个新的 Client.

如果 HttpClient == nil 则默认用 http.DefaultClient

func (*Client) DeleteMass

func (clt *Client) DeleteMass(msgid int64) (err error)

删除群发.

请注意:
只有已经发送成功的消息才能删除删除消息只是将消息的图文详情页失效,已经收到的用户,
还是能在其本地看到消息卡片。 另外,删除群发消息只能删除图文消息和视频消息,
其他类型的消息一经发送,无法删除。

func (*Client) GetMassStatus

func (clt *Client) GetMassStatus(msgid int64) (status *MassStatus, err error)

查询群发消息发送状态

type MassSendJobFinishEvent

type MassSendJobFinishEvent struct {
	XMLName struct{} `xml:"xml" json:"-"`
	mp.CommonMessageHeader

	Event string `xml:"Event" json:"Event"` // 事件信息,此处为 MASSSENDJOBFINISH

	MsgId int64 `xml:"MsgId" json:"MsgId"` // 群发的消息ID, 64位整型

	// 群发的结构, 为 "send success" 或 "send fail" 或 "err(num)".
	// 但 send success 时, 也有可能因用户拒收公众号的消息, 系统错误等原因造成少量用户接收失败.
	// err(num) 是审核失败的具体原因, 可能的情况如下:
	// err(10001), //涉嫌广告
	// err(20001), //涉嫌政治
	// err(20004), //涉嫌社会
	// err(20002), //涉嫌色情
	// err(20006), //涉嫌违法犯罪
	// err(20008), //涉嫌欺诈
	// err(20013), //涉嫌版权
	// err(22000), //涉嫌互推(互相宣传)
	// err(21000), //涉嫌其他
	Status string `xml:"Status" json:"Status"`

	TotalCount int `xml:"TotalCount" json:"TotalCount"` // group_id 下粉丝数, 或者 openid_list 中的粉丝数

	// 过滤(过滤是指特定地区, 性别的过滤, 用户设置拒收的过滤; 用户接收已超4条的过滤)后,
	// 准备发送的粉丝数, 原则上, FilterCount = SentCount + ErrorCount
	FilterCount int `xml:"FilterCount" json:"FilterCount"`
	SentCount   int `xml:"SentCount"   json:"SentCount"`  // 发送成功的粉丝数
	ErrorCount  int `xml:"ErrorCount"  json:"ErrorCount"` // 发送失败的粉丝数
}

高级群发消息, 事件推送群发结果

func GetMassSendJobFinishEvent

func GetMassSendJobFinishEvent(msg *mp.MixedMessage) *MassSendJobFinishEvent

type MassStatus

type MassStatus struct {
	MsgId  int64  `json:"msg_id"`
	Status string `json:"msg_status"` // 消息发送后的状态,SEND_SUCCESS表示发送成功
}

Directories

Path Synopsis
群发消息给所有用户.
群发消息给所有用户.
根据分组进行群发消息.
根据分组进行群发消息.
根据OpenID列表群发消息.
根据OpenID列表群发消息.
预览接口.
预览接口.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL