.NET SDK #

.Net SDK是对C++的封装

UPushClient #

namespace upush2_net_client
{
    public class UPushClient
    {
      /**
        * @brief 注册到UPush
        * @param spaceName    空间名
        * @param host         master地址
        * @param port         master端口
        * @param appId        项目ID
        * @param appKey       应用唯一标示
        */
        public void RegisterUPush(string spaceName,
                          string host, int port,
                          string appId, string appKey);
        
      /**
        * @brief 注册到指定的UPush服务
        * @param spaceName    空间名
        * @param host         master地址
        * @param port         master端口
        * @param appId        项目ID
        * @param appKey       应用唯一标示
        */
        public void RegisterSpecifiedUPushServer(string spaceName,
                                   string host, int port,
                                   string appId, string appKey);
        
        /**
          * @brief 绑定用户
          * @param userId
          */
        public void BindUser(string userId);

        /**
          * @brief 注销推送
          */
        public void UnregisterUPush();

        /**
          * @brief 暂停
          * @return
          */
        public bool Pause();

        /**
          * @brief 恢复
          * @return
          */
        public bool Resume();

        /**
          * @brief 取得状态
          * @return
          */
        public int GetStatus();

        /**
          * @brief 获得已经绑定的用户ID
          * @return
          */
        public string GetUserId();

        /**
          * @brief 设置事件监听
          * @param l   事件监听
          * @return
          */
        public void SetListener(IUPushListener l);

        /**
          * @brief 设置网络连接类型
          * @param type 0 udp, 1 tcp, -1 auto
          */
        public void SetNetworkType(int type);

        /**
          * @brief 设置心跳间隔
          * @param interval 心跳间隔,单位秒
          */
        public void SetHeartbeatInterval(int interval);

    }
}

IUPushListener #

namespace upush2_net_client
{
    public interface IUPushListener
    {
        /**
          * @brief PushToken监听
          * @param code         0成功,小于0失败,参照错误码
          * @param pushToken    推送设备唯一标示,失败时为空
          * @param userId       pushToken绑定的用户ID
          */      
        void OnPushToken(int code, string pushToken, string userId);

        /**
          * @brief 绑定用户监听
          * @param status      0成功,小于0失败,参照错误码
          */
        void OnBindUser(int status);

        /**
          * @brief 接收到推送消息监听
          * @param data         推送数据,JSON字符串,详细见下面
          * @param pushTime     推送时间
          * @param isOfflineMsg 是否为离线消息
          */
        void OnPush(string data, UInt64 pushTime, bool isOfflineMsg);

        /**
          * @brief 状态监听,参照状态码
          * @param status
          */
        void OnStatusChanged(int status);

        /**
          * @brief 注销完成监听
          */
        void OnUnregister();

        /**
          * @brief 用户ID在其他设备注册(单点登录/被顶掉)监听
          * @param JSON字符串, keys: ip, platform
          */
        void OnRegisteredOnAnotherDevice(string info);

        /**
          * @brief 消息撤回监听
          * @param data          JSON字符串,详细见下面
          * @param revokeTime    撤回时间
          */
        void OnRevoke(string data, UInt64 revokeTime);
    }
}

OnPush 详细

  • OnPush中data参数为JSON字符串,JSON键值参照
  • OnRevoke中data参数为JSON字符串,JSON键值参照
上次更新: 6/18/2022, 4:35:37 PM