最近由于业务需求,需要接入佳信的移动客服,但是因为佳信是一家开始不久的公司,所以在文档和博客数都比较欠缺。所以希望记录下来为自己以后开发或者有需要的人参考。
采用的时佳信SDK2.1.1,可以上官网下载。但是SDK集成度不够,有些必要的文件在SDK并没有很好的集成。由于引入头文件在官方文档都有说明,这里就不做阐述。因为公司的开发进度很快,我这里集成的方法也只做参考,最新的方法还需参考官方最新的文档。主要代码如下:
[[JXLocalPushManager sharedInstance] registerLocalNotification:application];//这里需要加入到delegate中的- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions方法中
- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification {
[[JXLocalPushManager sharedInstance] didReceiveLocalNotification:notification];
}//同样需要加入到delegate中
- (void)jxrequestData
{
[[JXMCSUserManager sharedInstance] loginWithAppKey:@"########" responseObject:^(BOOL success, id responseObject){
if (success) {
[[JXMCSUserManager sharedInstance] requestCSWithBlock:^(BOOL success, id responseObject){
if (success) {
NSLog(@"佳信请求成功");
self.jxCount = @"成功";
} else {
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.f * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
JXError *error = responseObject;
//错误的打印
[SVProgressHUD showErrorWithStatus:[error getLocalDescription]];
});
}
}];
}else{
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.f * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
JXError *error = responseObject;
[SVProgressHUD showErrorWithStatus:[error getLocalDescription]];
});
}
}];
}//需要根据appKey进行登录,其中appKey用######代替
- (void)requetGroup
{
JXWorkgroup *service = [[JXIMClient shareInstance].mcsManager activeService];
if (service) {
JXChatViewController *chatVC = [[JXChatViewController alloc] init];
chatVC.to = service;
[Utils hideTabBar];
[self.navigationController pushViewController:chatVC animated:YES];
}else{
[kJXHUD showMessageWithActivityIndicatorView:@"请求客服技能组" inView:self.view];
[[JXMCSUserManager sharedInstance] requestCSWithBlock:^(BOOL success, id response){
if (success) {
//跳转
[Utils hideTabBar];
self.navigationController.navigationBarHidden = YES;
JXCSViewController *csVC = [[JXCSViewController alloc] init];
[self.navigationController pushViewController:csVC animated:YES];
}
}];
}
}//请求客服技能组,包括进入客服聊天界面
因为时间进度较赶,没有对SDK代码进行进一步的了解,所以其中可能会有不足之处,希望以后改进,也希望有了解的给与指正。