Skip to content

Releases: MyPureCloud/genesys-messenger-transport-mobile-sdk

2.5.0

03 Aug 16:36
cc6fcd9
Compare
Choose a tag to compare

Additions:

  • Implement Conversation Clear feature.
  • Add application parameter to ws request.
  • Add user agent with Platform and OS version details.

Bug Fixes:

  • Do not check DeploymentConfig.ConversationDisconnect status when Disconnect event received.
  • Reorder sequence of handling Event.ConversationDisconnect. First do state transition and only then dispatch event.

Documentation:

  • Add/Update KDoc.
  • SDK Documentation published in Developer Center
  • Add Clear Conversation related diagrams.

Test applications:

  • Implement Clear Conversation on Android and iOS Testbed Applications.

Testing:

  • Add automation tests for Clear Conversation on Android and iOS.
  • Add/Update unit tests.
  • Refactor MessagingClientImplTest.kt

Full Changelog: v2.4.1...v2.5.0

2.4.1

29 Jun 19:58
Compare
Choose a tag to compare

Improvements:

  • Improve resilience of Transport SDK during parsing of unknown types of StructureMessage.
  • Improve resilience of History fetch api.

Full Changelog: v2.4.0...v2.4.1

2.4.0

21 Jun 21:38
2560b48
Compare
Choose a tag to compare

Additions:

  • Implement Authenticated Messaging feature.
  • Deprecate TokenStore. If needed - use Vault instead.
  • Add MessengerTransport.sdkVersion api to get the current version of MessengerTransport SDK.

Bug Fixes:

  • Improve Transport resilience when unknown events and StucturedMessage received.

Documentation:

  • SDK Documentation published in Developer Center
  • Add/Update KDoc.
  • Add auth related diagrams.

Build:

  • To demonstrate authenticated messaging functionality the testbed app stores sample Okta-related data in okta.properties/okta.plist. (Note: This approach was taken to simplify development and testing. In production implementations, auth data should follow best practices and be kept private and secure.)
  • Increment Android Testbed Application to target Android Sdk Version = 33
  • Add androidx.browser:browser:1.4.0 dependency to Android Testbed Application.
  • Add com.codingfeline.buildkonfig:buildkonfig-gradle-plugin:0.13.3 dependency to help with build values declaration.
  • Upgrade junit dependcy in Android Testbed Application to 1.1.3

Test applications:

  • Implement Auth flow with Okta on Android and iOS Testbed Applications.
  • Support Authenticated Messaging on Android and iOS Testbed Applications.
  • Android TestBed application refactoring.

Testing:

  • Add automation tests for Authenticated Messaging on Android and iOS.
  • Add/Update unit tests.

2.3.2

12 Jun 18:51
d8cfd74
Compare
Choose a tag to compare

This release is functionally the same as 2.3.1 but applies a patch to the iOS framework configuration to specify dynamic linkage, reversing static linkage that was introduced in 2.3.0.

Patch:

  • configure Framework within CocoapodsExtension to isStatic = false

2.3.1

11 May 20:09
e6d50b4
Compare
Choose a tag to compare

Bug Fix:

  • Address the issue with WebSocket behavior identified on iOS 16.4 while the device is in airplane mode.

2.3.0

31 Mar 19:12
12923a5
Compare
Choose a tag to compare

Additions:

  • Implement Conversation Disconnect feature. (for more info see SDK Documentation published in Developer Center)

Documentation:

Build:

  • ktor version upgrade to 2.2.2 (added new dependencies for contentNegotiation and kotlinxSerialization
  • gradle upgrade to 7.3.1
  • kotlin-gradle-plugin to 1.7.21
  • Android TestBed application compile version upgraded to 33
  • Android TestBed application compose version upgraded to 1.4.0-alpha02

Test applications:

  • Added support for Conversation Disconnect feature on iOS And Android TestBed applications.

Testing

  • Add automation tests for Conversation.Disconnect on Android.
  • Add/Update unit tests.

2.2.0

23 Jan 14:57
777c4a6
Compare
Choose a tag to compare

Additions:

  • Implement Participant Name and Avatar feature.
  • Events are added to history response.

Bug Fixes:

  • Inbound message sent from WebMessenger are not dispatched.

Documentation:

Build:

  • Bump mockk version. (issue: Duplicate class io.mockk.ValueClassSupportKt mockk/mockk#828)
  • Exclude licence from android packaging options as junit has conflicts.

Test applications:

  • iOS TestBed application refactoring.

Testing

  • Add automation tests for Conversation.Autostart on Android.
  • Add automation tests for Participant Name and Avatar on Android and iOS.
  • Add iOS integration test for access denied scenario.
  • Add/Update unit tests.

Full Changelog: v2.1.0...v2.2.0

2.1.0

15 Nov 15:51
b93b105
Compare
Choose a tag to compare

Additions:

  • Support Conversation.Autostart feature.
  • Support ConnectionClosedEvent.
  • Fetch deploymentConfig during MessagingClient instantiation.
  • Improve Typing Indicator behaviour to rely on DeploymentConfig when indicateTyping() is invoked.
  • Update the structure of OnMessageRequest to be compatible with changes on Shyrka.

Fixes:

  • Resolve issue with access denied (403) response where WS was trying to reconnect after being denied.

Documentation:

Build:

  • Remove Logback dependency.

Tests:

  • Add automation tests for Conversation.Autostart on iOS.
  • Add automation tests for Typing Indicator on Android.
  • Provide/Update tests to cover new functionality and changes.

Test applications:

  • Update Android and iOS testbed apps to integrate with new functionality and API changes.

Full Changelog: 2.0.0...v2.1.0

2.0.0

30 Sep 19:26
81a4b77
Compare
Choose a tag to compare

Breaking changes:

  • The Android library dependency name has changed from cloud.genesys:messenger-transport-mobile-sdk:<version> to cloud.genesys:messenger-transport-mobile-sdk-android:<version>.
  • The main entry point object, previously MobileMessenger, has been renamed to MessengerTransport.
  • The renamed MessengerTransport is now an instantiated class instead of a singleton object.
  • The tokenStoreKey has been removed from the Configuration object.
  • Removed deprecated MessagingClient.connect() and MessagingClient.configure() APIs.
  • Removed deprecated MessagingClient.stateListener API.

Additions:

  • Bi-directional typing indicators to signal when a user or agent has started typing a message.
  • Handling for Web Messaging StructuredMessage types (Text and Event).
  • Add eventListener to MessagingClient to observe incoming messaging events.
  • Add HealthChecked Event to report successful sendHealthCheck() responses.
  • Package Messenger Transport as a multiplatform library that can be used in other Kotlin Multiplatform projects as a dependency.

Fixes:

  • In order to improve reconnection experience on Android, the delay between reconnection attempts is lowered.
  • Fix for case when calling connect on the MessagingClient after reconnection attempts are exhausted fails without going into the retries reconnection cycle.
  • [Android] Report State.Closed when closing web socket reports that a graceful shutdown was not initiated by the call. In this scenario the shutdown is already underway or closed.

Documentation:

Build:

  • [iOS] Remove EXCLUDED_ARCHS from CocoaPods podspec since Messenger Transport frameworks are built with apple silicon slices. Reported in Issue 93.
  • Disable bitcode when building iOS Framework as it is deprecated per Xcode 14 Release Notes.
  • Update generated XCFramework Info.plist with proper version information.
  • Update Kermit to 1.1.2
  • Update OKHttp to 4.10.0

Tests:

  • Provide/Update tests to cover new functionality and changes.

Test applications:

  • Update testbed apps to integrate with new functionality and API changes.

Full Changelog: v1.2.2...2.0.0

1.2.2

12 Aug 00:00
214de5f
Compare
Choose a tag to compare

Additions:

  • Reconnection handling.
  • Add support to send message with custom attributes.
  • Add connect(shouldConfigure: Boolean) function to API.
  • Use NSURLSessionWebSocketTask for iOS.
  • Minimum supported version of iOS is 13.0.
  • iOS PlatformSocket pingInterval now behaves similarly to OKHttp websocket.
  • Replace kotlinx.date-time library with klock library that does not use Instant api. (Fix incorrect timestampt)

Deletion/Deprecation:

  • Deprecate connect and configure use parameterized connect(shouldConfigure: Boolean) instead.
  • Remove Region enum and generation script.

Documentation:

  • Add/Update KDoc to reflect the changes.
  • Add/Update developer-center documentation.

Build:

  • Ignore Snyk vulnerability.

Tests:

Unit Tests:

  • Provide/Update unit tests to cover new functionality.

Automation Tests:

  • Added a new E2E test in the iosApp target.
  • New test for attaching and sending an image.

Test applications

Android

  • Update test app to reflect the changes.
  • Downgrade the minSdkVersion on TestBed app to 21.

iOS

  • Update test app to support reconnection and customAttributes.
  • Factoring UI concerns out of MessengerHandler.
  • iosApp min target to iOS 13.
  • Update info display on state change.

Full Changelog: v1.2.1...v1.2.2