云豹一对一直播系统中的腾讯IM推送如何配置?

发布来源:云豹科技
发布人:云豹科技
2020-07-29 08:53:44

云豹一对一直播系统中的消息推送是很重要的功能,没有它就无法实现消息通知,如果主播开播,直播系统也没法及时提醒用户了,在此前,我们已经讲过极光的推送配置,今天我们来说下腾讯IM推送的配置:


一对一直播系统.jpg


1、 首先我们需要在一对一直播系统中引入腾讯IM SDK

pod 'TXIMSDK_iOS'


2.配置头文件

#import <TIMManager.h>
#import "THeader.h"
#import "TUIKit.h"
#import "TUIKitConfig.h"


3.在AppDelegate中注册通知

- (void)registNotification {
    if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 8.0){
        [[UIApplication sharedApplication] registerUserNotificationSettings:[UIUserNotificationSettings settingsForTypes:(UIUserNotificationTypeSound | UIUserNotificationTypeAlert | UIUserNotificationTypeBadge) categories:nil]];
        [[UIApplication sharedApplication] registerForRemoteNotifications];
    } else {
        [[UIApplication sharedApplication] registerForRemoteNotificationTypes: (UIUserNotificationTypeBadge | UIUserNotificationTypeSound | UIUserNotificationTypeAlert)];
    }
}


4.注册device token,上传IM

-(void)application:(UIApplication *)app didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
    //记录下 Apple 返回的 deviceToken
//    _deviceToken = deviceToken;
    NSString *uid = minstr([Config getOwnID]);
    if (!uid || [uid integerValue] <= 0) {
        return;
    }
    //这里如果使用了 TUIKit,请在 TUKit 登录回调里面设置 Token,如果没有使用,请在 TIMManager 的 login 回调里面设置 Token。
    [[TUIKit sharedInstance] loginKit:[Config getOwnID] userSig:[Config lgetUserSign] succ:^{
        TIMTokenParam *param = [[TIMTokenParam alloc] init];
        /* 用户自己到苹果注册开发者证书,在开发者帐号中下载并生成证书(p12 文件),将生成的 p12 文件传到腾讯证书管理控制台,控制台会自动生成一个证书 ID,将证书 ID 传入一下 busiID 参数中。*/
#if DEBUG
        param.busiId = 20685;
#else
        param.busiId = 18923;//2382;
#endif
        [param setToken:deviceToken];
        [[TIMManager sharedInstance] setToken:param succ:^{
            NSLog(@"-----> 上传 token 成功 ");
        } fail:^(int code, NSString *msg) {
            NSLog(@"-----> 上传 token 失败 ");
        }];
    } fail:^(int code, NSString *msg) {
        NSLog(@"登录失败!");
    }];
}


5.点击通知。进入app调用此方法 开始

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler {
    NSLog(@"userInfo === %@",userInfo);
    
    [[NSNotificationCenter defaultCenter]postNotificationName:@"getTimNot" object:nil];
   
completionHandler(UIBackgroundFetchResultNewData);
    
}

至此,一对一直播系统中的腾讯IM消息推送就配置完毕了,在云豹一对一直播系统开发中,IM消息负责支持系统中的私聊、群聊、直播间聊天等功能,云豹一对一直播系统默认使用腾讯IM,但如果用户需要用到其他第三方IM系统,也都是可以的哦。

 

声明:以上内容为云豹科技原创,未经公司同意,禁止转载,否则将追究相关法律责任www.yunbaokj.com


声明:
以上内容为云豹科技作者本人原创,未经作者本人同意,禁止转载,否则将追究相关法律责任