Linphone сохранить руководство смс
В нашем iOS-приложении нам нужно загрузить чаты Linphone с смс с сервера, используя запрос. Для этого мы добавили изменения в iOS-Linphone-библиотеку, но у нас возникла проблема с дублированием chatRooms.
шаги:
- после запуска приложения отправляем запрос на сервер, который проверяет новые сообщения
- мы скачали и проанализировали эти сообщения. Для добавления нового LinphoneChatMessage в конкретный LinphoneChatRoom мы ищем в существующем LinphoneChatRooms по имени (мы получаем имя LinphoneChatRoom по linphone_address_get_username())
метод:
(NSInteger) findIndexByAddressName: (NSString *) userName {NSInteger index = NSNotFound; NSInteger count = [self dataSortCount]; for (int i = 0; i
- если мы найдем необходимый LinphoneChatRoom, мы добавим туда LinphoneChatMessage, если нет - создадим новый LinphoneChatRoom, используя метод:
(void) addChatRooms: (NSArray *) комнаты {для (адрес NSString * в комнатах) { NSInteger index = [self findIndexByAddressName:address]; if (index == NSNotFound) { [self addRoom:address]; [self loadData]; [NSNotificationCenter.defaultCenter postNotificationName: объект kChatUpdate:nil userInfo:{"Индекс": [NSNumber numberWithInt:0]}]; } } }
Проблема заключается в создании нового дублированного LinphoneChatRoom, хотя LinphoneChatRoom с таким именем уже существует.
Мы думаем, что проблема в том, что iOS-Linphone-библиотека запускается асинхронно, и когда мы ищем комнаты, чаты Linphone еще не были загружены, и поэтому мы не можем найти существующие комнаты. Существуют ли способы загрузки чатов вручную и получения уведомления о том, что чаты были полностью загружены? Или проблема в особенностях iOS-Linphone-библиотеки?