floo::BMXPushService

Public Types

Name
enum class PushSdkStatus { Starting = 1, Started, Stoped, Offline}
push sdk状态
enum class PushDirection { Up, Down}
本地推送消息搜索方向

Public Functions

Name
virtual ~BMXPushService()
virtual BMXErrorCode start(const std::string & alias ="", const std::string & bmxToken ="") =0
初始化推送sdk。在仅使用推送的情况下使用该接口初始化推送sdk。在同时使用IM功能的时候直接在BMXClient调用登陆功能即可。config对象初始化的时候需要传入平台类型和设备id。
virtual BMXErrorCode stop() =0
停止推送功能接口。
virtual BMXErrorCode resume() =0
恢复推送功能接口。
virtual BMXErrorCode unbindAlias(const std::string & alias) =0
解除用户别名绑定。
virtual const std::string & getToken() =0
获取登陆后使用的用户token。
virtual const std::string & getCert() =0
获取登陆后服务器返回的推送证书。
virtual PushSdkStatus status() =0
推送sdk当前的状态。
virtual BMXErrorCode bindDeviceToken(const std::string & token) =0
推送绑定设备token。
virtual BMXErrorCode bindVoipToken(const std::string & token) =0
绑定推送设备的voiptoken。
virtual BMXErrorCode getPushProfile(BMXPushUserProfilePtr & pushProfile, bool forceRefresh) =0
获取推送用户详情,如果forceRefresh == true,则强制从服务端拉取
virtual BMXErrorCode setTags(const std::vector< std::string > & tags, const std::string & operationId) =0
设置推送用户的标签。
virtual BMXErrorCode getTags(std::vector< std::string > & tags, const std::string & operationId) =0
获取推送用户的标签。
virtual BMXErrorCode deleteTags(const std::vector< std::string > & tags, const std::string & operationId) =0
删除推送用户的标签。
virtual BMXErrorCode clearTags(const std::string & operationId) =0
清空推送用户的标签。
virtual BMXErrorCode setBadge(int count) =0
设置推送用户的未读角标。
virtual BMXErrorCode setPushMode(bool enable =true) =0
设置推送启用状态。默认为使用推送。
virtual BMXErrorCode setPushTime(int startHour, int endHour) =0
设置允许推送时间。
virtual BMXErrorCode setSilenceTime(int startHour, int endHour) =0
设置推送静默的起始结束时间。
virtual BMXErrorCode setRunBackgroundMode(bool enable =false) =0
设置推送是否可以后台运行。默认是false。
virtual BMXErrorCode setGeoFenceMode(bool enable =false, bool isAllow =false) =0
设置推送的地理围栏功能是否运行。
virtual void clearNotification(int64_t notificationId) =0
清除指定id的通知。
virtual void clearAllNotifications() =0
清空下拉通知栏全部通知。
virtual void sendMessage(const std::string & content) =0
发送推送上行消息,消息状态变化会通过listener通知
virtual BMXErrorCode loadLocalPushMessages(int64_t refMsgId, size_t size, BMXMessageList & result, PushDirection =PushDirection::Up) =0
加载数据库本地存储的推送消息。如果不指定则从最新消息开始
virtual void addPushListener(BMXPushServiceListener * listener) =0
添加推送监听者
virtual void removePushListener(BMXPushServiceListener * listener) =0
移除推送监听者

Public Types Documentation

enum PushSdkStatus

Enumerator Value Description
Starting 1 正在启动
Started 启动,在线
Stoped 停止
Offline 离线

push sdk状态

enum PushDirection

Enumerator Value Description
Up 取更旧消息
Down 取更新消息

本地推送消息搜索方向

Public Functions Documentation

function ~BMXPushService

inline virtual ~BMXPushService()

Example:

function start

virtual BMXErrorCode start(
    const std::string & alias ="",
    const std::string & bmxToken =""
) =0

初始化推送sdk。在仅使用推送的情况下使用该接口初始化推送sdk。在同时使用IM功能的时候直接在BMXClient调用登陆功能即可。config对象初始化的时候需要传入平台类型和设备id。

Parameters:

  • alias 推送初始化使用的当前用户别名
  • bmxToken 推送初始化的时候App传入的使用的用户的token,无用户的状态下不传入即可。

Return: BMXErrorCode

Example:

function stop

virtual BMXErrorCode stop() =0

停止推送功能接口。

Return: BMXErrorCode

Example:

function resume

virtual BMXErrorCode resume() =0

恢复推送功能接口。

Return: BMXErrorCode

Example:

function unbindAlias

virtual BMXErrorCode unbindAlias(
    const std::string & alias
) =0

解除用户别名绑定。

Parameters:

  • alias 需要解除绑定的用户别名。

Return: BMXErrorCode

Example:

function getToken

virtual const std::string & getToken() =0

获取登陆后使用的用户token。

Return: std::stirng

Example:

function getCert

virtual const std::string & getCert() =0

获取登陆后服务器返回的推送证书。

Return: std::stirng

Example:

function status

virtual PushSdkStatus status() =0

推送sdk当前的状态。

Return: PushSdkStatus

Example:

function bindDeviceToken

virtual BMXErrorCode bindDeviceToken(
    const std::string & token
) =0

推送绑定设备token。

Parameters:

  • token 设备的推送token

Return: BMXErrorCode

Example:

function bindVoipToken

virtual BMXErrorCode bindVoipToken(
    const std::string & token
) =0

绑定推送设备的voiptoken。

Parameters:

  • token 设备的voip推送token

Return: BMXErrorCode

Example:

function getPushProfile

virtual BMXErrorCode getPushProfile(
    BMXPushUserProfilePtr & pushProfile,
    bool forceRefresh
) =0

获取推送用户详情,如果forceRefresh == true,则强制从服务端拉取

Parameters:

  • profile 推送用户profile信息,初始传入指向为空的shared_ptr对象,函数返回后从此处获取用户profile信息。
  • forceRefresh 是否强制从服务器拉取,本地获取失败的情况下会自动从服务器拉取

Return: BMXErrorCode

Example:

function setTags

virtual BMXErrorCode setTags(
    const std::vector< std::string > & tags,
    const std::string & operationId
) =0

设置推送用户的标签。

Parameters:

  • tags 用户标签
  • operationId 操作id。在回调通知中对应通知提醒。

Return: BMXErrorCode

Example:

function getTags

virtual BMXErrorCode getTags(
    std::vector< std::string > & tags,
    const std::string & operationId
) =0

获取推送用户的标签。

Parameters:

  • tags 用户标签
  • operationId 操作id。在回调通知中对应通知提醒。

Return: BMXErrorCode

Example:

function deleteTags

virtual BMXErrorCode deleteTags(
    const std::vector< std::string > & tags,
    const std::string & operationId
) =0

删除推送用户的标签。

Parameters:

  • tags 要删除用户标签
  • operationId 操作id。在回调通知中对应通知提醒。

Return: BMXErrorCode

Example:

function clearTags

virtual BMXErrorCode clearTags(
    const std::string & operationId
) =0

清空推送用户的标签。

Parameters:

  • operationId 操作id。在回调通知中对应通知提醒。

Return: BMXErrorCode

Example:

function setBadge

virtual BMXErrorCode setBadge(
    int count
) =0

设置推送用户的未读角标。

Parameters:

  • count 用户未读角标数

Return: BMXErrorCode

Example:

function setPushMode

virtual BMXErrorCode setPushMode(
    bool enable =true
) =0

设置推送启用状态。默认为使用推送。

Parameters:

  • enable 推送的启用状态

Return: BMXErrorCode

Example:

function setPushTime

virtual BMXErrorCode setPushTime(
    int startHour,
    int endHour
) =0

设置允许推送时间。

Parameters:

  • startHour 静默允许推送的起始时间小时
  • endHour 静默允许推送的结束时间小时

Return: BMXErrorCode

Example:

function setSilenceTime

virtual BMXErrorCode setSilenceTime(
    int startHour,
    int endHour
) =0

设置推送静默的起始结束时间。

Parameters:

  • startHour 静默推送的起始时间小时
  • endHour 静默推送的结束时间小时

Return: BMXErrorCode

Example:

function setRunBackgroundMode

virtual BMXErrorCode setRunBackgroundMode(
    bool enable =false
) =0

设置推送是否可以后台运行。默认是false。

Parameters:

  • enable 推送后台运行状态。

Return: BMXErrorCode

Example:

function setGeoFenceMode

virtual BMXErrorCode setGeoFenceMode(
    bool enable =false,
    bool isAllow =false
) =0

设置推送的地理围栏功能是否运行。

Parameters:

  • enable 地理围栏功能是否运行。
  • isAllow 用户是否主动弹出用户定位请求。

Return: BMXErrorCode

Example:

function clearNotification

virtual void clearNotification(
    int64_t notificationId
) =0

清除指定id的通知。

Parameters:

  • notificationId 通知id

Example:

function clearAllNotifications

virtual void clearAllNotifications() =0

清空下拉通知栏全部通知。

Example:

function sendMessage

virtual void sendMessage(
    const std::string & content
) =0

发送推送上行消息,消息状态变化会通过listener通知

Parameters:

  • content 发送的上行推送消息内容

Example:

client->sendMessage(msg);

function loadLocalPushMessages

virtual BMXErrorCode loadLocalPushMessages(
    int64_t refMsgId,
    size_t size,
    BMXMessageList & result,
    PushDirection  =PushDirection::Up
) =0

加载数据库本地存储的推送消息。如果不指定则从最新消息开始

Parameters:

  • refMsgId 加载推送消息的起始id
  • size 最大加载消息条数
  • result 数据库返回的加载本地推送消息列表
  • Direction 加载推送消息的方向,默认是加载更早的消息

Example:

function addPushListener

virtual void addPushListener(
    BMXPushServiceListener * listener
) =0

添加推送监听者

Parameters:

  • listener 推送监听者

Example:

function removePushListener

virtual void removePushListener(
    BMXPushServiceListener * listener
) =0

移除推送监听者

Parameters:

  • listener 推送监听者

Example:


Updated on 2022-01-26 at 17:20:40 +0800

© 2019-2023 美信拓扑 | 官网 该文件修订时间: 2023-08-09 14:48:15

results matching ""

    No results matching ""