November 2024

We are excited to share CleverTap's November SDK changelog!

πŸ“˜

Note

Click each SDK header to view the corresponding GitHub repository for release details.

November 29

What's New

  • Supports the setCredentials method for setting up custom handshake domains.
  • Supports previewing In-App messages created using the advanced builder.
  • Supports parsing of URLs for the open-url action to track parameters in the URL for Notification Clicked events within HTML In-App messages.
  • Supports the promptForPushPermission method in the JavaScript interface and HTML In-App messages.

Bug Fixes

  • Fixes a potential crash related to the CTValidationResultStack class.
  • Fixes a potential crash for the [CTInAppHTMLViewController hideFromWindow:] method.
  • Updates campaign triggering evaluation to ignore letter case and whitespace in event names, event properties, and profile properties.
  • Fixes the issue where the wzrk_c2a value is passed as null to the backend when the callToAction value is received as null in a WebView message handler.

What's New

  • Supports previewing In-App messages created using the advanced builder.

Bug Fixes

  • Updates campaign triggering evaluation to ignore letter case and whitespace in event names, event properties, and profile properties.

November 22

What's New

  • Android
    • Supports Signed Call Android SDK v0.0.7.4, compatible with CleverTap Android SDK v6.2.1.
    • CallStyle Notifications
      • Replaces standard notifications with CallStyle notifications for incoming, outgoing, and ongoing calls on Android 12 and above.
      • Adheres to non-dismissible notification standards as outlined in the Android 14 behavior changes, ensuring top priority in the notification tray.
    • Call Quality Control Enhancements ο»Ώ
      Introduces network quality checks at both the initiator and receiver ends to ensure optimal call quality.
      • Initiator Side
        • Adds network latency checks before call requests.
        • Returns error code 5004 if latency exceeds SDK-defined benchmarks.
      • Receiver Side
        • Evaluates network quality before displaying the incoming call screen.
        • Provides a network quality score (-1 to 100) through onNetworkQualityResponse (int score) callback for app-based call handling. For more information, refer to Receiver Side.
      • New InitProperties Parameters
        • fcmProcessingMode
          • The following are the two FCM Processing modes: FCMProcessingMode.foreground and FCMProcessingMode.background. These modes determine how the SDK handles incoming calls, whether in the background or in a foreground service, depending on whether the app is actively running or is running in the background. The default mode is FCMProcessingMode.background. The fcmProcessingNotification parameter is required when using foreground mode.
        • callScreenOnSignalling
          Boolean parameter to control when the outgoing call screen is displayed. By default, the SDK immediately displays the outgoing call screen upon a call request and performs the validations in the background. For more information, refer to Control Call Screen Display Timing.
        • New Call Events in callEventListener
          CallEvent.appInitiatedCallDeclinedDueToNetworkQuality: Tracks app-initiated call declines based on network quality score provided within onNetworkQualityResponse(int score) callback.
    • iOS
    • Android and iOS
      • Remote Context Configuration for Call Screens: Adds support for setting a remoteContext parameter within thecallOptions object during call initiation, allowing to pass custom context for receiver's call screens.

Enhancements

  • Android
    • Reduces delay in the heads-up behavior of the call notification when the user exits from the call screen.
    • Adds a fallback to the regular notification template for call notifications when using the CallStyle template in case the Full-Screen Intent permission is not granted.
    • Prevents the call notification popup when the SDK requests microphone permissions after the call is accepted.

Bug Fixes

  • iOS
    • Resolves sa_family_t declaration issue to ensure compatibility with Xcode 16.
    • Resolves EXC_BAD_ACCESS error that occurred on clicking the mute button on the CallKit screen in debug mode.
    • Fixes synchronization issues between Mute and Speaker controllers in CallKit and native screens.

Behavior Change

  • Android
    • Optimizes Call Screen Launch
      The outgoing call screen now launches immediately. The Countdown ProgressBar is displayed until signaling completes. The cancelCountdownColor parameter can be added within the overrideDefaultBranding to customize ProgressBar color. The default color is yellow (#F5FA55). For more information, refer to overrideDefaultBranding.

November 18

Bug Fixes

  • Fixes EXC_BAD_ACCESS error that occurs when clicking Mute on the CallKit screen in debug mode.
  • Fixes synchronization issues related to the Mute and Speaker controls on the CallKit and native screens.

November 8

November 7

Bug Fixes

  • iOS
    • Fixes an issue where the push notification callback gets triggered twice when the app is in the killed state.