Electron SDK #

import { UPush, UPushListener } from 'upush2-electron-client'

UPush #

  • configUPush 需要在主进程调用,建议在放在主进程入口js文件中,其他方法在主进程,渲染进程都可以被调用
/**
 * 配置
 * @param {String} packageName     包名
 * @param {String} appId           项目唯一标示
 * @param {String} appKey          应用唯一标示
 * @param {UPushListener} listener 事件监听
 */
configUPush(packageName, appId, appKey, listener)

/**
 * 注册推送
 * @param {String}  wsUrl websocket地址
 * @returns 
 */
registerUPush(wsUrl)

/**
 * 注册到指定连接服务
 * @param {String} wsUrl websocket地址
 */
registerSpecifiedUPushServer(wsUrl)

/**
 * 注销
 */
unregisterUPush()

/**
 * 绑定用户
 * @param {String} userId 用户唯一标示
 */
bindUser(userId)

/**
 * 检查连接,如果没有连接则立即建立连接
 * @param context
 */
checkConnect(Context context);

/**
 * 取得绑定的userId
 * @return 主进程调用直接返回userId,渲染进程返回Promise
 */
getUserId()

/**
 * 取得状态
 * @return 主进程调用直接返回状态,渲染进程返回Promise
 */
getStatus()

/**
 * 获得PushToken
 * @return 主进程调用直接返回pushToken,渲染进程返回Promise
 */
getPushToken()

UPushListener #

/**
 * pushToken监听
 * @event {Function(code: Int, pushToken: String, serverTime: Number, userId: String)} cb 
 */
setOnPushToken(cb)

/**
 * 接收消息
 * @event {Function(msg: UMessage, timestamp: Date, isOfflineMsg: Boolean)} cb   支持async
 */
setOnPush(cb)
  
/**
 * 注销完成监听
 * @event {Function()} cb 
 */
setOnUnregister(cb)

/**
 * 消息撤回
 * @event {Function({fromId, msgId, alert}} cb    支持async
 */
setOnRevoke(cb)

/**
 * 状态监听
 * @event {Function(status: Int)} cb 
 */
setOnStatus(cb)

/**
 * 绑定用户监听
 * @event {Function(status: Int)} cb 
 */
setOnBindUser(cb)

/**
 * 用户在其他设备注册,被顶掉
 * @event {Function({ip, platform}} cb 
 */
setOnRegisteredOnAnotherDevice(cb)


其他 #

状态码
错误码
UMessage参照

上次更新: 4/16/2024, 6:08:51 PM