TIMCloudDef.h 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. // Copyright (c) 2023 Tencent. All rights reserved.
  2. #ifndef SRC_PLATFORM_CROSS_PLATFORM_INCLUDE_TIM_CLOUD_DEF_H_
  3. #define SRC_PLATFORM_CROSS_PLATFORM_INCLUDE_TIM_CLOUD_DEF_H_
  4. #include "TIMCloudComm.h"
  5. // 模块简介
  6. // - 公共配置选项 和 通用回调 的定义
  7. /////////////////////////////////////////////////////////////////////////////////
  8. //
  9. // 一. SDK 接口常用配置选项
  10. //
  11. /////////////////////////////////////////////////////////////////////////////////
  12. /// 1.1 调用接口的返回值(若接口参数中有回调,只有当接口返回 TIM_SUCC 时,回调才会被调用)
  13. enum TIMResult {
  14. /// 接口调用成功
  15. TIM_SUCC = 0,
  16. /// 接口调用失败,ImSDK 未初始化
  17. TIM_ERR_SDKUNINIT = -1,
  18. /// 接口调用失败,用户未登录
  19. TIM_ERR_NOTLOGIN = -2,
  20. /// 接口调用失败,错误的 Json 格式或 Json Key
  21. TIM_ERR_JSON = -3,
  22. /// 接口调用失败,参数错误
  23. TIM_ERR_PARAM = -4,
  24. /// 接口调用失败,无效的会话
  25. TIM_ERR_CONV = -5,
  26. /// 接口调用失败,无效的群组
  27. TIM_ERR_GROUP = -6,
  28. };
  29. /// 1.2 会话类型
  30. enum TIMConvType {
  31. /// 无效会话
  32. kTIMConv_Invalid,
  33. /// 个人会话
  34. kTIMConv_C2C,
  35. /// 群组会话
  36. kTIMConv_Group,
  37. /// 系统会话,已废弃
  38. kTIMConv_System,
  39. };
  40. /// 1.3 消息接收选项
  41. enum TIMReceiveMessageOpt {
  42. /// 在线正常接收消息,离线时会进行 APNs 推送
  43. kTIMRecvMsgOpt_Receive = 0,
  44. /// 不会接收到消息,离线不会有推送通知
  45. kTIMRecvMsgOpt_Not_Receive,
  46. /// 在线正常接收消息,离线不会有推送通知
  47. kTIMRecvMsgOpt_Not_Notify,
  48. /// 在线接收消息,离线只接收 at 消息的推送
  49. kTIMRecvMsgOpt_Not_Notify_Except_At,
  50. /// 在线和离线都只接收@消息
  51. kTIMRecvMsgOpt_Not_Receive_Except_At,
  52. };
  53. /////////////////////////////////////////////////////////////////////////////////
  54. //
  55. // 二. SDK 接口通用回调
  56. //
  57. /////////////////////////////////////////////////////////////////////////////////
  58. /**
  59. * 接口通用回调的定义
  60. *
  61. * @param code 值为 ERR_SUCC 表示成功,其他值表示失败。详情请参考 [错误码](https://cloud.tencent.com/document/product/269/1671)
  62. * @param desc 错误描述字符串
  63. * @param json_params Json 字符串,不同的接口,Json 字符串不一样
  64. * @param user_data ImSDK 负责透传的用户自定义数据,未做任何处理
  65. *
  66. * @note
  67. * 所有回调均需判断 code 是否等于 ERR_SUCC,若不等于说明接口调用失败了,具体原因可以看 code 的值以及 desc 描述。详情请参考 [错误码](https://cloud.tencent.com/document/product/269/1671)
  68. */
  69. typedef void (*TIMCommCallback)(int32_t code, const char* desc, const char* json_params, const void* user_data);
  70. #endif // SRC_PLATFORM_CROSS_PLATFORM_INCLUDE_TIM_CLOUD_DEF_H_