2017-02-15 5 views
1

Я использую QuickBlox SDK от follwing refrenceНевозможно увидеть значение обновления в Quick Blox панели администратора

https://quickblox.com/developers/SimpleSample-chat_users-ios

В Sample чате я также сделать групповой видеочат. но когда я обновляю конкретный тег с помощью приведенного ниже кода. Чем я не могу увидеть обновленное значение в моей панели администратора quickblox. Если кто-то обновит имя тега, чем просьба предложить. Я использую ниже код

QBUUser *qbUser = [QBUUser user]; 
    qbUser.ID = 23429378; 
    NSString *roomName = @"ios group"; 
    qbUser.tags = @[roomName].mutableCopy; 
    NSArray *arry = [[NSArray alloc]initWithObjects:qbUser, nil]; 
    [QMUsersCache.instance insertOrUpdateUsers:users]; 

    - (BFTask *)insertOrUpdateUsers:(NSArray *)users 
    { 
    __weak __typeof(self)weakSelf = self; 

    return [BFTask taskFromExecutor:[BFExecutor executorWithDispatchQueue:self.queue] withBlock:^id{ 
     __typeof(self) strongSelf = weakSelf; 

     NSManagedObjectContext* context = [strongSelf backgroundContext]; 

     NSMutableArray *toInsert = [NSMutableArray array]; 
     NSMutableArray *toUpdate = [NSMutableArray array]; 

     //To Insert/Update 
     for (QBUUser *user in users) 
     { 

      CDUser *cachedUser = [CDUser QM_findFirstWithPredicate:IS(@"id", @(user.ID)) inContext:context]; 
      if (cachedUser) { 

       QBUUser *qbCachedUser = [cachedUser toQBUUser]; 
       if (![user.updatedAt isEqualToDate:qbCachedUser.updatedAt]) { 
        [toUpdate addObject:user]; 
       } 
      } 
      else { 
       [toInsert addObject:user]; 
      } 
     } 

     if (toUpdate.count > 0) { 
      [strongSelf updateUsers:toUpdate inContext:context]; 
     } 

     if (toInsert.count > 0) { 
      [strongSelf insertUsers:toInsert inContext:context]; 
     } 

     if (toInsert.count + toUpdate.count > 0) { 
      [context QM_saveToPersistentStoreAndWait]; 
     } 
     QMSLog(@"[%@] Users to insert %tu, update %tu", NSStringFromClass([weakSelf class]), toInsert.count, toUpdate.count); 

     return nil; 
    }]; 
} 

ответ

1

Ваш код просто обновляет пользователей в магазине CoreData.

Вы можете обновить только текущий пользователь из приложения:

+ (QBRequest *)updateCurrentUser:(QBUpdateUserParameters *)parameters 
       successBlock:(nullable void (^)(QBResponse *response, QBUUser * _Nullable user))successBlock 
        errorBlock:(nullable QBRequestErrorBlock)errorBlock; 

Если вы хотите обновить другие пользователь, вы должны сделать это с помощью панели администратора.

Sample chat, связанный с этим вопросом. API Documentation относящийся к этому вопросу.

+0

Я знаю этот метод, и это обновление только для текущего пользователя. Я получаю всех пользователей и хочу обновлять отдельные пользовательские данные. Я не хочу обновлять пользователя через панель администратора. Программно, как обновлять пользователей –

+0

В основном я хочу изменить имя группы чатов для группового видео чата. Ex ---> Имя группы MyChat - это группа iOS. Затем он обновит имя этого тега для выбранных пользователей. –

+1

Как я уже писал, и как сказано в документации, нет возможности обновлять другого пользователя в приложении, кроме как через панель администратора. –

Смежные вопросы