CNLiveMsgManager.h 6.1 KB
//
//  CNLiveMsgManager.h
//  CNLiveMsgTools
//
//  Created by cnliveJunBo on 2017/11/24.
//  Copyright © 2017年 cnlive. All rights reserved.
//

#import <Foundation/Foundation.h>

typedef void (^CNLiveTOOLSucc)();

typedef void (^CNLiveTOOLFail)(int code, NSString * msg);

@interface CNLiveMsgManager : NSObject

@property (nonatomic, readonly, assign) BOOL isTestEnvironment;


- (void)initTIM;

+ (NSString *)getCNLiveMsgVersion;


+ (instancetype)sharedCNLiveMsgManager;


- (void)setToolsInfoWithInfoId:(NSString *)infoId
                      infoName:(NSString *)infoName
                       infoUrl:(NSString *)infoUrl
                          succ:(CNLiveTOOLSucc)succ
                          fail:(CNLiveTOOLFail)fail;


- (NSDictionary *)getToolsInfo;


- (uint32_t)getUploadingProgress:(NSDictionary *)param;


- (void)getMessage:(NSString*)path
             param:(NSDictionary *)param
              succ:(CNLiveTOOLSucc)succ
              fail:(CNLiveTOOLFail)fail;


- (BOOL)setCustomInt:(int32_t)param dict:(NSDictionary *)dict;
- (int32_t)customInt:(NSDictionary *)dict;


- (void)initCNLiveMsgToolsWithAppKey:(NSString *)appKey
                               appId:(NSString *)appId;


- (void)initCNLiveMsgToolsWithAppKey:(NSString *)appKey
                               appId:(NSString *)appId
                   isTestEnvironment:(BOOL)isTestEnvironment;


- (void)onLineWithMsgToolsInfoId:(NSString *)infoId
                        infoName:(NSString *)infoName
                         infoUrl:(NSString *)infoUrl
                         success:(void (^)(NSString *toolsId))successBlock
                           error:(void (^)(int code, NSString *msg))errorBlock;


- (void)justOnLineSuccess:(void (^)(NSString *toolsId))successBlock
                    error:(void (^)(int code, NSString *msg))errorBlock;

- (void)streamOnLineSuccess:(void (^)(NSString *toolsId))successBlock
                      error:(void (^)(int code, NSString *msg))errorBlock;

- (void)stealthCNLiveMsgTools:(CNLiveTOOLSucc)succ
                         fail:(CNLiveTOOLFail)fail;


- (void)offLineCNLiveMsgTools:(CNLiveTOOLSucc)succ
                         fail:(CNLiveTOOLFail)fail;


- (void)gatherTogether:(NSString *)targetId
          messageCount:(int)messageCount
               success:(void (^)(NSString *targetId))successBlock
                 error:(void (^)(NSInteger errors, NSString *errorMsg))errorBlock;


- (void)gatherIfNullCreate:(NSString *)targetId
              messageCount:(int)messageCount
                   success:(void (^)(NSString *targetId))successBlock
                     error:(void (^)(NSInteger errors, NSString *errorMsg))errorBlock;


- (void)gatherTogether:(NSString *)targetId
              isCreate:(BOOL)isCreate
          messageCount:(int)messageCount
               success:(void (^)(NSString *targetId))successBlock
                 error:(void (^)(NSInteger errors, NSString *errorMsg))errorBlock;


- (void)disperse:(NSString *)targetId
         success:(void (^)(NSString *targetId))successBlock
           error:(void (^)(NSInteger errors, NSString *errorMsg))errorBlock;


- (void)sendCarrier:(NSDictionary *)carrier
               type:(NSInteger)type
           targetId:(NSString *)targetId
            success:(void (^)(NSString *carrier, NSString *messageId, NSString *infoId, NSString *infoName, NSString *infoUrl, NSString *goTime))successBlock
              error:(void (^)(NSInteger errors, NSString *errorMsg))errorBlock;


- (void)sendMedia:(NSDictionary *)media
             type:(NSInteger)type
         targetId:(NSString *)targetId
         progress:(void (^)(NSString *messageId, NSString *infoId, NSString *infoName, NSString *infoUrl, NSString *taskId, NSString *sendTime))proBlock
          success:(void (^)(NSString *messageId, NSString *infoId, NSString *infoName, NSString *infoUrl, NSString *taskId, NSString *origin, NSString *oruuid, NSString *orsize, NSString *orwidth, NSString *orheight,  NSString *thumb, NSString *thuuid, NSString *thsize, NSString *thwidth, NSString *thheight, NSString *sendTime))successBlock
            error:(void (^)(NSInteger errorCode, NSString *errorMsg))errorBlock;


- (void)sendVoice:(NSDictionary *)voice
               type:(NSInteger)type
           targetId:(NSString *)targetId
           progress:(void (^)(NSString *messageId, NSString *infoId, NSString *infoName, NSString *infoUrl, NSString *taskId, NSString *sendTime))proBlock
            success:(void (^)(NSString *messageId, NSString *infoId, NSString *infoName, NSString *infoUrl, NSString *goTime, NSDictionary *dict))successBlock
              error:(void (^)(NSInteger errors, NSString *errorMsg))errorBlock;


- (void)sendVideo:(NSDictionary *)video
             type:(NSInteger)type
         targetId:(NSString *)targetId
         progress:(void (^)(NSString *messageId, NSString *infoId, NSString *infoName, NSString *infoUrl, NSString *sendTime))proBlock
          success:(void (^)(NSString *messageId, NSString *infoId, NSString *infoName, NSString *infoUrl, NSString *videoId, NSString *url, NSString *size, NSString *coverUrl, NSString *coverSize, NSString *goTime, NSDictionary *dict))successBlock
            error:(void (^)(NSInteger errors, NSString *errorMsg))errorBlock;


- (NSString *)getOnLineStatus;


- (BOOL)judgeLoginStatus;


- (void)getLatestCarriers:(NSInteger)type
                 targetId:(NSString *)targetId
                    count:(int)count
             successBlock:(void(^)(NSArray *msgs))successBlock
               errorBlock:(void(^)(int code, NSString *msg))errorBlock;


- (int)getLocalCarriers:(NSInteger)type
               targetId:(NSString *)targetId
                  count:(int)count last:(NSDictionary*)last
           successBlock:(void(^)(NSArray *msgs))successBlock
             errorBlock:(void(^)(int code, NSString *msg))errorBlock;


- (NSArray*)getLastCarriers:(NSInteger)type
                   targetId:(NSString *)targetId
                      count:(uint32_t)count;


- (void)getMeetingPointContent:(NSString *)pointId
                       success:(void (^)(int totalMemberCount))successBlock
                         error:(void (^)(NSInteger errors, NSString *errorMsg))errorBlock;

@end