Информация о выпусках (Release notes) Webim Mobile SDK v3.0 для iOS
Ниже представлен список выпусков Webim Mobile SDK 3 для iOS.
Важно!
Для корректной работы SDK, начиная с версии 3.39.0
, необходим Webim Server версии 10.5.30
или выше.
3.42.0
- Добавлена автоматическая отправка неотправленных сообщений
3.41.11
- Исправлен метод getThumbURL()
3.41.10
- Исправлена работа опросников
3.41.9
- Обновлена поддержка Xcode 16
3.41.8
- Добавлена поддержка Xcode 16
3.41.7
- Исправлена проблема в методе автозаполнения
3.41.6
- Исправлена проблема с SPM
3.41.5
-
Добавлен Privacy Manifest
-
Добавлена поддержка групп сообщений
-
Добавлена поддержка ошибки
SendFileError.maliciousFileDetected
3.41.4
-
Исправлено поведение
setChatRead()
, при вызове метода число непрочитанных сообщений становится равным 0 сразу же, не дожидаясь ответа от сервера -
Добавлено получение значения
disablingMessageInputField
3.40.0
-
Исправлены ошибки предыдущей версии.
-
Добавлен случай
uploadCanceled
для ошибки при отправке файла. -
Добавлен метод
set(mobileChatInstance:)
для настройки количества сессий внутри приложения. -
Добавлен подключаемый метод для получения дополнительной информации о о кнопке клавиатуры чат-бота.
3.39.3
- Библиотека переименована в
WebimMobileSDK
3.39.2
- Добавлено итеративное увеличение времени таймаута между запросами при отсутствии сетевого соединения.
3.39.1
- Добавлены новые записи логирования.
3.39.0
-
Исправлены ошибки предыдущей версии.
-
Добавлен класс
WebimAlert
. -
Добавлен подключаемый метод для получения подсказок.
3.38.2
- Исправлена ошибка метода
MessageListener#changed(message:to:)
, из-за которой после редактирования сообщения полеcanBeEdited
могло изменить значение наfalse
.
3.38.0
-
В
MessageStream
добавлен метод для получения настроек сервера (getServerSideSettings
) и id текущего чата (getChatId
). -
Добавлена возможность настройки логирования и типы логов.
-
Исправлены некоторые баги.
3.36.3
- Добавлен пропуск UI аутентификации для
Keychain
.
3.36.2
Внимание!
Указанные в этой версии изменения и нововведения работают не у всех клиентов (чтобы узнать, поддерживается ли данная функциональность на вашем аккаунте, уточните у технической поддержки Webim).
-
Добавлен метод
keyboardButton.getConfiguration()
, который возвращает объектConfiguration
. -
Добавлен
AttachmentState.externalChecks
. -
Исправлена ошибка в методе
messageAttachment.getState()
. -
Добавлены методы
operator.getTitle()
иoperator.getInfo()
. -
Добавлен метод
searchStreamMessagesBy(query:completionHandler:)
. -
Добавлен метод
react(message:reaction:completionHandler:)
. -
Добавлен метод
clearHistory()
. -
Исправлены ошибки версий 3.36.0 и 3.36.1.
3.36.1
- Исправлены ошибки версии 3.36.0.
3.36.0
Внимание!
Указанные в этой версии изменения и нововведения работают не у всех клиентов (чтобы узнать, поддерживается ли данная функциональность на вашем аккаунте, уточните у технической поддержки Webim).
-
Добавлен перечисляемый тип
ButtonState
, используемый для определения состояния кнопки. -
Добавлен перечисляемый тип
ButtonType
, используемый для определения типа кнопки. -
Добавлен
FileState.externalChecks
. -
Добавлен протокол
ReactionCompletionHandler
, являющийся обработчиком реакций на сообщения, а также связанный с ним перечисляемый типReactionError
. -
Добавлен протокол
Configuration
, представляющий информацию о конфигурации кнопок клавиатуры чат-бота. -
В протоколе
Message
добавлены методыcanVisitorReact()
,getVisitorReaction()
иcanVisitorChangeReaction()
, позволяющие узнать, может ли посетитель оставить или изменить реакцию, а получить информацию непосредственно о реакции. -
Добавлен протокол
RawLocationConfigHandler
. -
Добавлен протокол
SearchMessagesCompletionHandler
.
3.35.6
- Исправлена ошибка вызова
completionHandler
при удалении загруженного файла.
3.35.5
-
Добавлена обработка ошибки загрузки файла с слишком малым размером.
-
Исправлена ошибка вызова
completionHandler
при удалении загруженного файла. -
Улучшена работа с разными потоками в SDK.
3.35.3
- Исправлены ошибки при использовании
Swift Package Manager
.
3.35.2
-
Исправлена проблема с загрузкой истории.
-
Улучшена безопасность: добавили шифрование истории чата и хранение данных в Keychain.
-
Добавлена поддержка
Swift Package Manager
.
3.34.1
- Добавлен метод
set(onlineStatusRequestFrequencyInMillis:):
с помощью этого метода можно установить период обновления онлайн-статуса сессии в миллисекундах. Данный метод необходимо использовать для правильной работы экземпляра протоколаOnlineStatusChangeListener
.
3.34.0
-
Исправлена ошибка метода
getLastRatingOfOperatorWith(id:):
метод возвращает оценку в диапазоне от 1 до 5 или 0, если оценка не была выставлена. -
Добавлена поддержка групповой передачи файлов.
3.33.0
-
Добавлен метод
isEdited()
у интерфейсаMessage
. -
Исправлена ошибка метода
getNextMessages
, которая приводила к дублированию сообщений при загрузке истории. -
Добавлена поддержка отправки стикеров посетителем.
-
Метод
changed(operator:to)
срабатывает, когда чат лишается оператора (параметрto
равенnil
).
3.32.1
- Исправлена ошибка при работе с историей диалогов.
3.32.0
-
Добавлена поддержка опросов.
-
Добавлена поддержка приветственного сообщения.
-
В перечисляемый тип
SendFileError
добавлена ошибкаunauthorized
.
3.31.10
- Исправлена ошибка в методе
getNextMessages
.
3.31.9
- Исправлена ошибка в методе
getRawData()
.
3.31.8
- Исправлены некоторые сбои в работе SDK.
3.31.7
- Исправлены некоторые сбои в работе SDK.
3.31.6
- Инициализация запроса с версией SDK.
3.31.5
- Исправлена ошибка в функции цитирования сообщений.
3.31.4
-
Исправлена ошибка в методе
getCurrentOperator()
. -
Добавлен новый метод для возобновления сессии.
3.31.3
- Метод
destroyWithClearVisitorData()
устанавливаетnone
в значении push-токена.
3.31.2
- Исправлена ошибка в
RateOperatorCompletionHandler
.
3.31.1
- Исправлена ошибка в работе истории.
3.31.0
- Добавлен метод
sendDialogTo(emailAddress:sendDialogToEmailAddressComplitionHandler)
.
3.30.0
- Появилась возможность добавлять комментарий при оценке оператора.
3.29.7
-
Исправлена ошибка в
sendKeyboardRequest
. -
Исправлена ошибка в
sendKeyboardRequest
. -
Поддержка SQLite 0.12.2.
3.29.6
- Исправлена ошибка в
Cartfile
.
3.29.5
- Добавлены новые методы
FAQ
.
3.29.4
- Исправлена ошибка в истории сообщений.
3.29.3
- База данных размещается в
.applicationSupportDirectory
.
3.29.2
- Добавлены некоторые исключения в
FAQ
.
3.29.1
- Внесены некоторые изменения в
FAQ
.
3.29.0
- Внесены некоторые изменения в
FAQ
.
3.28.3
- Исправлена ошибка в
MessageFactories
.
3.28.2
- Новая версия
FAQ
.
3.28.1
- Новая версия
FAQ
.
3.28.0
-
Добавлен метод
set(multivisitorSection:)
.Внимание!
Указанный в этой версии метод работает не у всех клиентов (чтобы узнать, поддерживается ли данная функциональность на вашем аккаунте, уточните у технической поддержки Webim).
-
Новые методы
WebimRemoteNotification
.
3.27.2
- Новый метод для
FAQ
.
3.27.1
-
Исправлены ошибки в индексах БД.
-
Исправлены ошибки в
UserDefaults
.
3.27.0
- Новые функции для
FAQ
.
3.26.0
-
Добавлена поддержка цитирования сообщений.
-
Исправлены ошибки при работе с локальной базой данных.
3.25.2
- Устранены возможные утечки памяти.
3.25.1
-
Исправлена ошибка неправильного
ID сообщения
. -
Исправлено поведение, при котором текст отредактированного сообщения менялся на изначальный текст.
3.25.0
-
Добавлена поддержка сценарного робота.
-
Миграция исходного кода на Swift 5.
3.24.7
-
Исправлены ошибки, связанные с периодичностью запросов истории.
-
Исправлена ошибка работы с базой данных на устройстве, приводящая к возможному падению приложения.
-
Добавлена передача
Bundle ID
и версии приложения вUser-Agent
сетевых запросов.
3.24.6
- Использование
SQLite 0.11.5
. Поздние версии приводят к ошибкам сборки.
3.24.5
- Замена типа
Int
наInt64
вHistoryRevisionItem
для избежания переполнения значения переменной, которое хранит время, на 32-битных устройствах.
3.24.4
- Исправлена опечатка в методе
rateOperatorWith(id:rating:completionHandler:)
.
3.24.3
- Исправлена ошибка удаления сообщений при первом обращении в чат.
3.24.2
Внимание!
Указанный в этой версии метод работает не у всех клиентов (чтобы узнать, поддерживается ли данная функциональность на вашем аккаунте, уточните у технической поддержки Webim).
- Новый метод
updateWidgetStatus(data:)
.
3.24.1
- Оптимизация запросов истории сообщений.
3.24.0
- Добавлена возможность работы с блоком часто задаваемых вопросов (
FAQ
).
3.23.7
-
Исправлен метод
MessageListener.added(message newMessage:, after previousMessage:)
. -
Исправлен метод
UnreadByVisitorMessageCountChangeListener.changedUnreadByVisitorMessageCountTo(newValue:)
.
3.23.6
- Добавлен собственный
User-Agent
для сетевых запросов.
3.23.5
- Исправлена ошибка при запросе сообщений, если история посетителя пустая.
3.23.4
- Исправлена ошибка при запросе миниатюры вложенного изображения.
3.23.3
- Добавлена задержка в десять секунд при повторной попытке обращению к серверу при отсутствии доступа к сети.
3.23.2
- Повышение версии
Swift до 4.2
.
3.23.1
- Исправлена ошибка, которая приводила к падению из-за неизвестного типа сообщения в текущем чате.
3.23.0
-
Добавлен новый метод
edit(message:text:completionHandler:)
. -
Добавлен новый метод
delete(message:completionHandler:)
. -
Добавлен новый метод
canBeEdited()
.
3.22.3
-
Исправлена ошибка при загрузке истории.
-
Исправлена ошибка в работе
FileSendCompletionHandler
.
3.22.2
- Исправлена ошибка сборки с помощью
Carthage
.
3.22.1
- Исправлена повторная инициализация сессии.
3.22.0
Внимание!
Указанный в этой версии метод работает не у всех клиентов (чтобы узнать, поддерживается ли данная функциональность на вашем аккаунте, уточните у технической поддержки Webim).
- Добавлен метод
set(prechatFields:)
.
3.21.2
- Исправлен
CurrentOperatorChangeListener
.
3.21.1
- Убрана слабая ссылка у
FatalErrorHandler
для правильной работы воwrapper
'е.
3.21.0
-
Добавлен метод
isReadByOperator
. -
Отправка параметров файлового сообщения в
HTTPBody
.
3.20.1
- Исправлена ошибка, из-за которой методы
getLastMessages
иgetNextMessages
могли возвращать пустой список сообщений при первом вызове этих методов.
3.20.0
- Новый метод
setChatRead()
.
3.19.0
Внимание!
Указанные в этой версии изменения и нововведения работают не у всех клиентов (чтобы узнать, поддерживается ли данная функциональность на вашем аккаунте, уточните у технической поддержки Webim).
-
Добавлен новый метод
set(prechat:)
. -
Добавлен новый метод
startChat(customFields:)
.
3.18.3
-
Устранены утечки памяти при повторном открытии сессии.
-
Исправлена аутентификации по
providedAuthorizationToken
.
3.18.2
- Устранены утечки памяти при загрузке истории.
3.18.1
- Исправлена ошибка для 32-битных платформ.
3.18.0
-
Добавлен метод
destroyWithClearVisitorData
. -
База данных создаётся не для каждого открытия сессии, а только для первого.
3.17.5
- Исправлена ошибка при загрузки конца истории.
3.17.4
- Исправлена ошибка, возникающая после разблокировки экрана во время работы чата.
3.17.3
-
После восстановления доступа к сети запросы отправляются в порядке очереди.
-
Возвращены слабые ссылки.
3.17.2
- Убраны слабые ссылки.
3.17.1
-
Исправлена ошибка при запросе истории.
-
Добавлен повтор сетевых запросов при отсутствии доступа к сети.
3.17.0
- Добавлены новые типы ошибок.
3.16.0
Внимание!
Указанный в этой версии метод работает не у всех клиентов (чтобы узнать, поддерживается ли данная функциональность на вашем аккаунте, уточните у технической поддержки Webim).
- Добавлен метод
respondSentryCall(id)
.
3.15.0
-
Добавлен
UnreadByVisitorMessageCountListener
. -
Исправлены незначительные ошибки.
3.14.2
-
Улучшено взаимодействие с сервисом в контексте обновления параметра, возвращаемого методом
getUnreadByVisitorTimestamp()
протоколаMessageStream
и методами протоколаUnreadByVisitorTimestampChangeListener
. -
Исправлена ситуация, когда методы протокола
MessageListener
не вызываются до первого запроса истории сообщений. -
Исправлены различные незначительные ошибки. Произведены множественные незначительные улучшения.
3.14.1
-
Исправлена ошибка, приводившая к остановке приложения в случае, если используемая учетная запись Webim заблокирована.
-
Исправлена ошибка, которая могла привести к получению чужой истории сообщений, в случае, если в приложении изменится посетитель после запроса истории сообщений, но до получения результата этого запроса.
-
Улучшена работа с памятью (библиотека больше не держит сильные ссылки на объекты своих делегатов).
-
Произведены множественные незначительные улучшения.
3.14.0
- Добавлены протоколы для отслеживания изменений значений, возвращаемых методами
getUnreadByOperatorTimestamp()
иgetUnreadByVisitorTimestamp()
протоколаMessageStream
(UnreadByOperatorTimestampChangeListener
иUnreadByVisitorTimestampChangeListener
, соответственно).
3.13.1
Внимание!
После данного обновления приложение необходимо переустановить!
- Исправлены различные важный ошибки в работе с запросами истории сообщений.
3.13.0
-
Исправлена логика работы метода
getUnreadByVisitorTimestamp()
протоколаMessageStream
: теперь в случае, если все сообщения прочитаны посетителем, метод возвращаетnil
. -
Возвращаемые значения методов
getID()
иgetName()
протоколаOperator
более не опциональные. -
Добавлено новое состояние чата –
CHATTING_WITH_ROBOT
. -
Исправлены различные ошибки в методах для работы с историей сообщений при использовании локального хранилища.
-
Произведены незначительные улучшения во взаимодействии с сервисом.
-
Оптимизация настроек подключаемой библиотеки.
3.12.0
-
Метод
rateOperatorWith(id:byRating:comletionHandler:)
протоколаMessageStream
изменен, чтобы позволить передаватьnil
в качестве параметруid
– в этом случае оценен будет текущий оператор чата (если есть). -
Добавлена начальная поддержка
push
-уведомлений, высылаемых при отправке операторомaction
request
- иwidget
-сообщений. -
Исправлены ошибки работы методов для запрашивания истории сообщений: случай, когда первоначальный запрос истории сообщений мог не вернуть запрашиваемые сообщения и не выполнить передаваемое замыкание.
-
Произведены множественные незначительные улучшения.
3.11.0
-
Методу
set(webimLogger:verbosityLevel:)
добавлен параметрverbosityLevel
, в который можно передать значениеWebimLoggerVerbosityLevel
для регулировки многословности передаваемых записей лога. -
Методы
getContentType()
,getFileName()
иgetURL()
протоколаMessageAttachment
изменены, чтобы возвращать неопциональные значения. -
Ликвидирована внешняя зависимость от сторонней библиотеки
CryptoSwift
. -
Метод
new(messageTracker:)
протоколаMessageStream
переименован вnewMessageTracker(messageListener:)
. -
Исправлена ошибка, из-за которой метод протокола
Operator
мог вернуть пустой (nil
) ID оператора. -
Произведены множественные незначительные улучшения.