StreamDefaultNotificationHandler
constructor(application: Application, notificationManager: NotificationManagerCompat = NotificationManagerCompat.from(
application.applicationContext,
), notificationPermissionHandler: NotificationPermissionHandler = DefaultNotificationPermissionHandler.createDefaultNotificationPermissionHandler(
application,
), intentResolver: StreamIntentResolver = DefaultStreamIntentResolver(application, DefaultNotificationIntentBundleResolver()), hideRingingNotificationInForeground: Boolean = (StreamVideo.instanceOrNull() as? StreamVideoClient)?.streamNotificationManager?.notificationConfig?.hideRingingNotificationInForeground == true, initialNotificationBuilderInterceptor: StreamNotificationBuilderInterceptors = StreamNotificationBuilderInterceptors(), updateNotificationBuilderInterceptor: StreamNotificationUpdateInterceptors = StreamNotificationUpdateInterceptors(), notificationChannels: StreamNotificationChannels = StreamNotificationChannels(
incomingCallChannel = createChannelInfoFromResIds(
application.applicationContext,
R.string.stream_video_incoming_call_notification_channel_id,
R.string.stream_video_incoming_call_notification_channel_title,
R.string.stream_video_incoming_call_notification_channel_description,
NotificationManager.IMPORTANCE_HIGH,
),
ongoingCallChannel = createChannelInfoFromResIds(
application.applicationContext,
R.string.stream_video_ongoing_call_notification_channel_id,
R.string.stream_video_ongoing_call_notification_channel_title,
R.string.stream_video_ongoing_call_notification_channel_description,
NotificationManager.IMPORTANCE_DEFAULT,
),
outgoingCallChannel = createChannelInfoFromResIds(
application.applicationContext,
R.string.stream_video_outgoing_call_notification_channel_id,
R.string.stream_video_outgoing_call_notification_channel_title,
R.string.stream_video_outgoing_call_notification_channel_description,
NotificationManager.IMPORTANCE_DEFAULT,
),
missedCallChannel = createChannelInfoFromResIds(
application.applicationContext,
R.string.stream_video_missed_call_notification_channel_id,
R.string.stream_video_missed_call_notification_channel_title,
R.string.stream_video_missed_call_notification_channel_description,
NotificationManager.IMPORTANCE_HIGH,
),
missedCallLowImportanceChannel = createChannelInfoFromResIds(
application.applicationContext,
R.string.stream_video_missed_call_low_priority_notification_channel_id,
R.string.stream_video_missed_call_notification_channel_title,
R.string.stream_video_missed_call_low_priority_notification_channel_description,
NotificationManager.IMPORTANCE_DEFAULT,
),
incomingCallLowImportanceChannel = createChannelInfoFromResIds(
application.applicationContext,
R.string.stream_video_incoming_call_low_priority_notification_channel_id,
R.string.stream_video_incoming_call_notification_channel_title,
R.string.stream_video_incoming_call_low_priority_notification_channel_description,
NotificationManager.IMPORTANCE_DEFAULT,
),
), mediaSessionCallback: MediaSessionCompat.Callback? = null, mediaSessionController: StreamMediaSessionController = DefaultStreamMediaSessionController(
initialNotificationBuilderInterceptor,
updateNotificationBuilderInterceptor,
), notificationDispatcher: NotificationDispatcher = DefaultNotificationDispatcher(notificationManager), permissionChecker: (context: Context, permission: String) -> Int = { context, permission ->
ActivityCompat.checkSelfPermission(context, permission)
})