NIMRobotManagerProtocol.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. //
  2. // NIMRobotManagerProtocol.h
  3. // NIMLib
  4. //
  5. // Created by Netease.
  6. // Copyright (c) 2017 Netease. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. @class NIMRobot;
  10. NS_ASSUME_NONNULL_BEGIN
  11. /**
  12. * 机器人获取 block
  13. *
  14. * @param error 错误,如果成功则error为nil
  15. * @param robots 成功的机器人列表,内部为 NIMRobot
  16. */
  17. typedef void(^NIMRobotsHandler)(NSError * __nullable error, NSArray<NIMRobot *> * __nullable robots);
  18. /**
  19. * 机器人管理器
  20. */
  21. @protocol NIMRobotManager <NSObject>
  22. /**
  23. * 获取所有的机器人
  24. * @return 所有机器人信息
  25. */
  26. - (nullable NSArray<NIMRobot *> *)allRobots;
  27. /**
  28. * 是否是有效的机器人
  29. *
  30. * @param userId 用户Id (机器人在云信的id)
  31. * @return 是否是机器人
  32. */
  33. - (BOOL)isValidRobot:(NSString *)userId;
  34. /**
  35. * 获取机器人信息
  36. * @param userId 用户Id (机器人在云信的id)
  37. * @return 机器人信息
  38. */
  39. - (nullable NIMRobot *)robotInfo:(NSString *)userId;
  40. /**
  41. * 远程获取机器人信息
  42. * @param completion 机器人获取回调
  43. */
  44. - (void)fetchAllRobotsFromServer:(nullable NIMRobotsHandler)completion;
  45. @end
  46. NS_ASSUME_NONNULL_END