Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[VC-977] Release v0.7.6 #46

Merged
merged 51 commits into from
Jan 6, 2025
Merged

[VC-977] Release v0.7.6 #46

merged 51 commits into from
Jan 6, 2025

Conversation

shivamsharma2710
Copy link
Contributor

What's new

  • [Android Platform]

    • Supports Signed Call Android SDK v0.0.7.6 which is compatible with CleverTap Android SDK v6.2.1.
    • CallStyle Notifications on Android 12 and Onwards:
      • Replaced regular call notifications with the CallStyle notifications for incoming, outgoing and ongoing calls. This update adheres to the new standards for non-dismissible notifications as outlined in the Android 14 behavior changes. These notifications are given top priority in the notification shade or tray.
    • Call Quality Control Enhancements: Introduced network quality checks at both the initiator and receiver ends to ensure optimal call quality.
    • At the Initiator Side, the SDK checks network latency before processing a call request. If the network latency exceeds the benchmark, set by the SDK, an error with 5004 error-code within the SignedCallResponse promise object is returned.
    • At the Receiver Side, the SDK evaluates network quality before showing the incoming call screen. The network quality score (ranging from -1 to 100) is provided via the onNetworkQualityResponse(int score) callback, allowing the app to decide whether to proceed with or decline the call. Refer to the SDK documentation for detailed usage.
    • Support new parameters in the initProperties object which gets passed to the SignedCall.initialize(initProperties) method:
      • fcmProcessingMode and fcmProcessingNotification: SDK supports the two modes for processing FCM calls: FcmProcessingMode.foreground and FCMProcessingMode.background. These modes determine how the SDK handles incoming calls whether in background or in a foreground service depending on whether the app is actively running or is running in the background. The FcmProcessingMode.background is default mode. If choosing the FcmProcessingMode.foreground, the fcmProcessingNotification parameter is mandatory. Refer to the SDK documentation for more details on overriding the default mode.
      • callScreenOnSignalling : A Boolean property to control when the outgoing call screen appears relative to the signaling process. By default, the SDK immediately displays the outgoing call screen upon a call request and performs the validations in background. Please refer to SDK documentation for detailed usage.
    • Support new call events in the SignedCall.SignedCallOnCallStatusChanged handler:
      • CallEvent.AppInitiatedDeclinedDueToNetworkQuality: Allows to determine the cases where app initiates the call-decline based on the network quality score provided within onNetworkQualityResponse(int score) callback.
      • CallEvent.EndedDueToLocalNetworkLoss: Allows to determine when the call disconnects due to network loss at the local end.
      • CallEvent.EndedDueToRemoteNetworkLoss: Allows to determine when the call disconnects due to network loss at the remote end.
        NOTE: The CallEvent.EndedDueToLocalNetworkLoss and CallEvent.EndedDueToRemoteNetworkLoss events are reported alongside the existing CallEvent.Ended event to maintain backward compatibility.
  • [iOS Platform]

  • [Android and iOS Platform]

  • Remote Context Configuration for Call Screens:

    • Added support for setting a remoteContext parameter within callProperties object during call initiation, allowing to pass custom context for receiver's call screens.

Bug Fixes

  • [iOS Platform]
    • Resolved sa_family_t declaration issue to ensure compatibility with Xcode 16.
    • Resolves EXC_BAD_ACCESS error that occurred when clicking the mute button on the CallKit screen. This exception was only observed in debugging mode.
    • Fixes synchronization issues regarding the Mute and Speaker controllers between the CallKit and native screens.

Behaviour Changes

  • [Android Platform]
    • Optimized screen launch delay when initiating a call. The SDK now launches the outgoing call screen immediately, without waiting for signaling confirmation. A countdown ProgressBar is displayed around the cancel button until signaling is completed. You can use the cancelCountdownColor parameter within the overrideDefaultBranding initProperty to customize the countdown ProgressBar's color. The default color is yellow (#F5FA55). Please refer to SDK documentation for the details on usage.

Enhancements

  • [Android Platform]
    • Optimized delay in the heads-up behavior of the call notification when the user exits from the call screen.
    • Added fallback to the regular notification template for call notifications when using the CallStyle template, in case the full-screen intent permission is not granted.
    • Prevented the call notification popup when the SDK requests microphone permissions after the call is accepted.
    • Local branding configured during SDK initialization is now interoperable with the remote branding configured via the CleverTap dashboard, allows to override the specific branding properties without requiring all properties to be set at once.

shivamsharma2710 and others added 30 commits October 9, 2024 13:28
…er, but BridgeDevSupportManager class was not found or could not be created

Issue has been fixed by overriding the registerReceiver method in the Application class
- Fix event name in eventEmitter class
- Optimize imports
… strong reference to not let GC to collect it considering weakReference
…erTap/clevertap-signed-call-react-native-sdk into task/VC-974/expose_callScreenOnSignalling_parameter
… github.com:CleverTap/clevertap-signed-call-react-native-sdk into task/VC-987/garabge-collector_fix
shivamsharma2710 and others added 21 commits January 1, 2025 02:02
- Resolve local build issue : `Could not get GOOGLE_APP_ID in Google Services file from build environment` by including GoogleService-Info.plist file
- ignore GoogleService-Info.plist via .gitignore
- supports CT v6.2.1
[VC-990] Support Signed Call iOS SDK v0.0.9
…hannel

[VC-989]: Expose signalling channel details via CallDetails
[VC-970]: Expose FCM processing mode implementation
…nts_for__parity

[VC-988] Expose callback events in parity with Android SDK v0.0.7.6
[VC-987] Make `outgoingCallResponse` callback instance to hold the strong reference to fix GC issue
…Signalling_parameter

[VC-974] Expose callScreenOnSignalling API parameter
…call

[VC-975]: Sample app UI changes to input the remote-context
…ownColor_parameter

[VC-971] Add support for  cancel countdown color parameter in branding object
…Action_handler

[VC-969] Replace the deprecated way to setting missedCall handler with new approach
…0.7.6

[VC-968] Support Signed Call Android SDK v0.0.7.6
…character

[VC-978] Remove podSpec invalid character
@shivamsharma2710 shivamsharma2710 merged commit 94b9369 into main Jan 6, 2025
0 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants