Channel

Channel服务(即云管道服务)是百度云平台面向开发者提供的消息推送通道服务。

服务简介

使用Channel服务,可以为您的应用提供全面的云推送解决方案。目前,Channel服务已经提供了向浏览器、Android手机、iOS手机、Windows Phone手机和PC客户端进行消息推送的API。点击这里了解详情

使用示例

以下是一段示例代码:

from bae.api.channel import BaeChannel

def channel_test():
    c = BaeChannel('access_token')

    user_id, channel_id = '123', '456'

    c.pushAndroidMessage(user_id, channel_id, ['msgk1','msgk2'], ['msg1', 'msg2'])

    ### ios指定格式消息
    ios_msg1, ios_msg2 = {}, {}

    c.pushIosMessage(user_id, channel_id, [ios_msg1, ios_msg2])

    ### wp指定格式消息
    wp_msg1, wp_msg2 = {}, {}

    c.pushWpMessage(user_id, channel_id, [wp_msg1, wp_msg2])

接口列表

class BaeChannel
__init__(self, access_token, debug=False)

初始化channel类

string access_token: 如何获得,参考这里
createGroup(self, group_name, **kwargs)

创建消息广播组

string group_name 组名

kwargs 可选参数,支持的可选参数包括:group_info

deleteGroupMessage(self, message_ids, **kwargs)

删除广播组/多播组的消息

list message_ids 删除消息的ID

kwargs 可选参数,支持的可选参数包括:gid

deleteMessage(self, user_id, message_ids, **kwargs)

根据userId、msgIds[、channelId]删除离线消息

string user_id 用户ID号

list message_ids 要删除哪些消息

kwargs 可选参数,支持的可选参数包括:channel_id

destroyAppIosCert(self, **kwargs)

删除ios证书内容

kwargs 暂无
destroyGroup(self, group_id, **kwargs)

删除消息组

int/long group_id

kwargs 暂无

fetchGroupMessage(self, **kwargs)

获取用户的组消息

kwargs 可选参数,支持的可选参数包括:user_id, channel_id, gid, pageno, limit
fetchGroupMessageCount(self, **kwargs)

获取用户的组消息的个数

kwargs 可选参数,支持的可选参数包括:user_id, channel_id, gid
fetchMessage(self, user_id, **kwargs)

根据userId[、channelId]查询离线消息

string user_id 用户ID号

kwargs 可选参数,支持的可选参数包括:channel_id、pageno、limit

getRequestId(self)

获取上次调用的request_id

initAppIosCert(self, name, description, release_cert, dev_cert, **kwargs)

初始化应用ios证书

string name 证书名称

string description 证书描述

string release_cert 正式证书内容

string dev_cert 开发证书内容

kwargs 暂无

messageCount(self, user_id, **kwargs)

根据userId[、channelId]查询离线消息的个数

string user_id 用户ID号

kwargs 可选参数,支持的可选参数包括:channel_id

pushAndroidMessage(self, user_id, channel_id, messages, message_keys, **kwargs)

向android设备推送消息

string user_id 用户ID

string channel_id ChannelID

list messages 发送消息序列

list message_keys 消息key,与messages对应

kwargs:可选参数,支持的可选参数包括 message_type,message_expires
pushBrowserMessage(self, user_id, channel_id, messages, message_keys, **kwargs)

向browser设备推送消息

string user_id 用户ID

string channel_id ChannelID

list messages 发送消息序列

list message_keys 消息key,与messages对应

kwargs:可选参数,支持的可选参数包括 message_type,message_expires

pushGroupMessage(self, messages, message_keys, device_type, **kwargs)

供服务器端根据userId[、channelId]查询绑定信息

string app_id 应用ID

list messages 要发送的消息

list message_keys 发送消息的key

int device_type 1:浏览器设备, 2:pc设备, 3:Android设备

kwargs 可选参数,支持的可选参数包括:gid, message_expires

pushIosMessage(self, user_id, channel_id, messages, **kwargs)

向ios设备推送消息

string user_id 用户ID

string channel_id ChannelID

list messages 发送消息序列,每条消息为一个dict

kwargs:暂无

pushMessage(self, user_id, channel_id, messages, message_keys, **kwargs)

据userId、msgIds[、channelId]推送离线消息

string user_id 用户ID号

string channel_id channelID

list messages 要发送的消息

list message_keys 发送消息的Key

kwargs 可选参数,支持的可选参数包括:message_type、message_expires

pushMessageToUser(self, user_id, messages, message_keys, **kwargs)

供服务器端根据userId[、channelId]查询绑定信息

string user_id 用户ID号

list messages 要发送的消息

list message_keys 发送消息的Key

kwargs 可选参数,支持的可选参数包括:ios_messages、wp_messages、device_type、message_type、message_expires

pushPcMessage(self, user_id, channel_id, messages, message_keys, **kwargs)

向pc设备推送消息

string user_id 用户ID

string channel_id ChannelID

list messages 发送消息序列

list message_keys 消息key,与messages对应

kwargs:可选参数,支持的可选参数包括 message_type,message_expires

pushWpMessage(self, user_id, channel_id, messages, **kwargs)

向windows phone设备推送消息

string user_id 用户ID

string channel_id ChannelID

list messages 发送消息序列,每条消息为一个dict

kwargs:暂无

queryAppIosCert(self, **kwargs)

查询ios证书内容

kwargs 暂无
queryBindList(self, user_id, **kwargs)

供服务器端根据userId[、channelId]查询绑定信息

string user_id 用户ID号

kwargs 可选参数,支持的可选参数包括:channel_id、device_type、pageno、limit

queryDeviceType(self, channel_id, **kwargs)

根据channelId查询设备类型

string channel_id channelID

kwargs 暂无

queryGroup(self, group_id, **kwargs)

查询消息组信息

int/long group_id

kwargs 暂无

queryUserGroup(self, user_id, **kwargs)

查询属于用户的组列表

string user_id 用户ID号

kwargs 暂无

setAccessToken(self, access_token)

重新设置access_token

string access_token
updateAppIosCert(self, **kwargs)

修改ios证书内容

kwargs 可选参数,支持的可选参数包括 name, description, release_cert, dev_cert
verifyBind(self, user_id, **kwargs)

校验userId[、channelId]是否已经绑定

string user_id 用户ID号

kwargs 可选参数,支持的可选参数包括:channel_id、device_type

异常

  • BaeConstructError: 对象初始化错误
  • BaeParamError: 参数错误
  • BaeValueError: 后端返回的数据格式错误
  • BaeOperationFailed: 后端返回结果,但本次操作失败,异常中包含了错误原因

Table Of Contents

Previous topic

BCS

Next topic

SOCK代理

This Page