Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions packages/stream_video/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,9 @@
🔄 Changed
* Deprecated `callRejoinTimeout` in `RetryConfig`, instead added `networkAvailabilityTimeout` to `CallPreferences` to control how long the SDK waits for network connectivity to be restored during reconnection attempts before timing out.

🔄 Dependency updates
* Updated `flutter_callkit_incoming` dependency to the latests (2.5.5) version. That version contains Android 14 compatibility fixes for ringing notifications and lock screen handling.

## 0.10.1

✅ Added
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,17 @@ class ActionCallCallback extends CallKitEvent {
List<Object?> get props => [data];
}

class ActionCallConnected extends CallKitEvent {
/// Creates an [ActionCallConnected] event instance with the specified [data].
const ActionCallConnected({required this.data});

/// The call data associated with the call that was called back.
final CallData data;

@override
List<Object?> get props => [data];
}

/// Represents a call toggle hold event.
///
/// Note: This event is only available on iOS.
Expand Down
11 changes: 11 additions & 0 deletions packages/stream_video_flutter/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,14 @@
## Unreleased

✅ Added
* Introduced the `reconnectTimeout` option in `CallPreferences`, allowing you to set the maximum duration the SDK will attempt to reconnect to a call before giving up.

🔄 Changed
* Deprecated `callRejoinTimeout` in `RetryConfig`, instead added `networkAvailabilityTimeout` to `CallPreferences` to control how long the SDK waits for network connectivity to be restored during reconnection attempts before timing out.

🔄 Dependency updates
* Updated `flutter_callkit_incoming` dependency to the latests (2.5.5) version. That version contains Android 14 compatibility fixes for ringing notifications and lock screen handling.

## 0.10.1

🐞 Fixed
Expand Down
5 changes: 5 additions & 0 deletions packages/stream_video_push_notification/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
## Unreleased

🔄 Dependency updates
* Updated `flutter_callkit_incoming` dependency to the latests (2.5.5) version. That version contains Android 14 compatibility fixes for ringing notifications and lock screen handling.

## 0.10.1

✅ Added
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ import io.flutter.plugin.common.MethodChannel.MethodCallHandler
import io.flutter.embedding.engine.plugins.activity.ActivityAware
import io.flutter.embedding.engine.plugins.activity.ActivityPluginBinding
import com.hiennv.flutter_callkit_incoming.CallkitNotificationManager
import com.hiennv.flutter_callkit_incoming.FlutterCallkitIncomingPlugin

/** StreamVideoPushNotificationPlugin */
class StreamVideoPushNotificationPlugin: FlutterPlugin, MethodCallHandler, ActivityAware {
Expand All @@ -27,7 +28,7 @@ class StreamVideoPushNotificationPlugin: FlutterPlugin, MethodCallHandler, Activ
channel = MethodChannel(flutterPluginBinding.binaryMessenger, "stream_video_push_notification")
channel.setMethodCallHandler(this)

callkitNotificationManager = CallkitNotificationManager(flutterPluginBinding.applicationContext)
callkitNotificationManager = FlutterCallkitIncomingPlugin.getInstance()?.getCallkitNotificationManager() ?: CallkitNotificationManager(flutterPluginBinding.applicationContext, null)
}

override fun onMethodCall(call: MethodCall, result: MethodChannel.Result) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -557,6 +557,7 @@ extension on CallEvent {
Event.actionCallEnded => ActionCallEnded(data: toCallData()),
Event.actionCallTimeout => ActionCallTimeout(data: toCallData()),
Event.actionCallCallback => ActionCallCallback(data: toCallData()),
Event.actionCallConnected => ActionCallConnected(data: toCallData()),
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Verification agent

🧩 Analysis chain

LGTM! Event mapping follows established pattern.

The addition of Event.actionCallConnected => ActionCallConnected(data: toCallData()) is consistent with the existing event mapping pattern and correctly extracts call data.


🏁 Script executed:

#!/bin/bash
# Description: Verify ActionCallConnected class is defined and imported

# Search for ActionCallConnected class definition
ast-grep --pattern 'class ActionCallConnected extends CallKitEvent {
  $$$
}'

# Check if it's imported in the current file
rg -A 2 -B 2 "ActionCallConnected" packages/stream_video_push_notification/lib/src/stream_video_push_notification.dart

Length of output: 514


🏁 Script executed:

#!/bin/bash
# Search for definition of ActionCallConnected across the repository
rg -n "class ActionCallConnected"

# Search for any references to ActionCallConnected to locate its definition context
rg -n "ActionCallConnected"

Length of output: 749


🏁 Script executed:

#!/bin/bash
# Verify that ActionCallConnected (and CallKitEvent) are imported in the Push Notification file

rg -n "import .*call_kit_events" packages/stream_video_push_notification/lib/src/stream_video_push_notification.dart

# Show the first 30 lines to confirm imports
head -n 30 packages/stream_video_push_notification/lib/src/stream_video_push_notification.dart

Length of output: 1393


🏁 Script executed:

#!/bin/bash
# Show exports in the main entrypoint of stream_video package
head -n 200 packages/stream_video/lib/stream_video.dart

# Specifically look for exporting call_kit_events
rg -n "export .*call_kit_events" packages/stream_video/lib/stream_video.dart

Length of output: 2138


Add missing import for CallKit events

It looks like the new ActionCallConnected (and the other ActionCall* classes) are defined in
package:stream_video/src/push_notification/call_kit_events.dart but that file isn’t imported. Without it the switch case won’t compile.

Please update packages/stream_video_push_notification/lib/src/stream_video_push_notification.dart to include:

 import 'package:stream_video_push_notification/stream_video_push_notification_platform_interface.dart';
+import 'package:stream_video/src/push_notification/call_kit_events.dart';
 
 import 'stream_video_push_params.dart';
🤖 Prompt for AI Agents
In
packages/stream_video_push_notification/lib/src/stream_video_push_notification.dart
at line 560, the switch case uses ActionCallConnected and other ActionCall*
classes which are defined in
package:stream_video/src/push_notification/call_kit_events.dart but this file is
not imported. To fix this, add an import statement for call_kit_events.dart at
the top of the file to ensure these classes are recognized and the code compiles
correctly.

Event.actionDidUpdateDevicePushTokenVoip =>
ActionDidUpdateDevicePushTokenVoip(
token: body['deviceTokenVoIP'] as String,
Expand Down
2 changes: 1 addition & 1 deletion packages/stream_video_push_notification/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ dependencies:
firebase_messaging: ^15.2.0
flutter:
sdk: flutter
flutter_callkit_incoming: 2.5.2
flutter_callkit_incoming: ^2.5.5
json_annotation: ^4.9.0
meta: ^1.9.1
plugin_platform_interface: ^2.1.8
Expand Down
Loading