Git Product home page Git Product logo

jitsi_meet_wrapper's People

Contributors

abishop-jac avatar gaurav-caremonitor avatar nilsreichardt avatar saibotma avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

jitsi_meet_wrapper's Issues

Add macOS Support

Should be pretty straight forward as it should be very close to what is done for iOS. Same I'll try to make a PR if you're ok with that :)

On Target sdk version 31 or above app crashes on Android 12 release build

### RELEASE LOGS:

I/flutter ( 5491): JitsiMeetingOptions: JitsiMeetingOptions{roomNameOrUrl: jitsi-meet-wrapper-test-room, serverUrl: null, subject: My Plugin Test Meeting, token: , isAudioMuted: true, isAudioOnly: false, isVideoMuted: true, userDisplayName: Plugin Test User, userEmail: [email protected], userAvatarUrl: null, featureFlags: {}, configOverrides: null}

I/flutter ( 5491): onOpened

Result: App crashed

iOS doesn't compile

I have followed the step on readme but getting this error where trying to run the app:

 Command CompileSwiftSources failed with a nonzero exit code
    /Users/jaumard/.pub-cache/hosted/pub.dartlang.org/jitsi_meet_wrapper-0.0.1/ios/Classes/CustomPiPViewCoordinator.swift:64:69: warning: 'keyWindow' was deprecated in iOS 13.0: Should not be used for applications that support multiple scenes as it returns a key window across all connected scenes
                    let parentView = parentView ?? UIApplication.shared.keyWindow
                                                                        ^
    /Users/jaumard/.pub-cache/hosted/pub.dartlang.org/jitsi_meet_wrapper-0.0.1/ios/Classes/CustomPiPViewCoordinator.swift:165:33: error: cannot find 'PiPViewCoordinator' in scope
                    in: Bundle(for: PiPViewCoordinator.self),
                                    ^~~~~~~~~~~~~~~~~~

No audio or video from Android 12.

When the meet starts, the Android device never gets audio or video. When pressing the video camera switch button (not mic) this log appears:

ExternalAPI Sending event: VIDEO_MUTED_CHANGED with data: { NativeMap: {"muted":0} }

I've only seen it in Android 12.

Camera/Video black screen

First of all, thx for updating the plugin. I wanted to ask if someone else have the issues with black screen video (when receive from a browser) and sending no video to other devices. I have this issue on both my iPhone 12 and Oneplus 9.

jitsi sdk upgrade

Mobile SDKs Changelog
6.0.0 (2022-07-08)
Android
iOS
Changes
BREAKING: External API scope has been removed
Add a pre-join screen
Add ability to move participants across rooms without being in them
Add show self-view button in overflow menu
Make sure Picture-in-Picture is only enabled in the conference screen
Car Mode UI improvements
Update the lobby UI
Update WebRTC to version 100
Fix landscape mode tile view
Fix janky scrolling in bottom sheets
Fix incorrect handling of private chat replies
Fix video context sheet not displaying
Navigation improvements
Numerous UI tweaks and improvements
Updated translations
Android
BREAKING: JitsiMeetFragment has been removed
BREAKING: Removed delegate methods, BroadcastReceiver is the only supported event mechanism now
Fix incorrect colors on MIUI 12 devices
Fix initial muted state in the ongoing notification
Fix crash starting foreground service
Set proper theme for JitsiMeetActivity
Relevant native dependencies:

react-native: 0.68.1
Full changelog

iOS
N/A
Full changelog

hangup feature is not working

thanks for this feature its much needed and thanks for the effort but i tried it more than once it is not working in the new release

Get Meeting Timer

Hello sir, please i would love to get the timer of the meeting so as to be able to track the number time user spend on meeting?

Cant Build on iOS

Have done all the required configuration for both android and ios but only for it not working on iOS
here is the log am getting in my console
Screen Shot 2022-05-04 at 9 34 09 PM

[Ios] app crash when take screenshot

when take screenshot app crashed in Ios and get this error :

* thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=2, address=0x16d3a3ff8)
    frame #0: 0x0000000181cf5010 Foundation`probeGC + 36
Foundation`probeGC:
->  0x181cf5010 <+36>: str    x2, [sp, #0x8]
    0x181cf5014 <+40>: mov    x21, x1
    0x181cf5018 <+44>: mov    x22, x0
    0x181cf501c <+48>: adrp   x8, 497864
Target 0: (Runner) stopped.

i think this error happen when two package sit a layer in app.superLayer ,
where should i search for this .

Duplicate participants when reconnecting the meeting

When meeting is reconnected due to intenet issue then I get joined two times. Means there is a duplicate user with my same name in the meeting. If anyone faced this issue and solved it please share your solution. Thank you.

I am using version jitsi_meet_wrapper: ^0.0.1

Add integration tests

Description

I would be great to have an integration test for this package, to be sure it's working as expected.

I think for the beginning would be a test case where we run the example app, join the meeting, take a screenshot and compare this with the master screenshot great. It covers the integration with the native SDKs and checks if the user is able to join the meeting - and I think this is the most important thing.

We need to be sure that the Jitsi room is empty, because otherwise would be the UI a bit different. So generating a new room ID (like a uuid4) for every test would be good.

We should be able to run the integration tests in the Android Emulator and iOS Simulator with GitHub Actions πŸ‘

I already started to implement this integration test (https://github.com/nilsreichardt/jitsi_meet_wrapper/tree/integration-tests). But I'm currently I stuck when I try to compare the screenshot with the master screenshot. So I created a Flutter issue for help: flutter/flutter#103222

upgrade sdk

plz upgrade your sdk from 4.0.0 to 4.1.0 in jitsi. and plz add background notifyer that notify the meeting is running in background. plz sir plzzzz

Callkit on iOS Not Running

How to auto join meeting on answer call when the iPhone is locked (like in Whatsapp)?

Current Flow:
When answer call, the meeting not yet joined.
It should have been able to join when I answer the call even I haven't clicked the icon (jitsi_meet_example)

When click app icon (jitsi_meet_example), and it joins the meeting.

image

Code Below

in AppDelegate:

@UIApplicationMain
@objc class AppDelegate: FlutterAppDelegate, JMCallKitListener {
    //var jitsiViewController: JitsiViewController?
    var flutterResult: FlutterResult?
    
  override func application(
    _ application: UIApplication,
    didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
  ) -> Bool {
      GeneratedPluginRegistrant.register(with: self)
      let controller : FlutterViewController = window?.rootViewController as! FlutterViewController
      let CHANNEL = FlutterMethodChannel(name: "com.flutter.callkit/callkit", binaryMessenger: controller.binaryMessenger)
      
      CHANNEL.setMethodCallHandler { [unowned self] (methodCall, result) in
          if methodCall.method == "callkit" {
              
              guard let args = methodCall.arguments else { return }
              
              let myArgs = args as? [String: Any]
              let strUuid = myArgs?["uuid"] as? String
              let strHandle = myArgs?["handle"] as? String
              let strDisplayName = myArgs?["displayName"] as? String
              let boolHasVideo = myArgs?["hasVideo"] as? Bool
              let uuid = UUID(uuidString: strUuid!) ?? UUID()
              
              print("real",uuid)
              
              let backgroundTaskIdentifier =
                UIApplication.shared.beginBackgroundTask(expirationHandler: nil)
              //guard !JMCallKitProxy.hasActiveCallForUUID(uuid.uuidString) else { return }
              JMCallKitProxy.enabled = true
              //guard JMCallKitProxy.hasActiveCallForUUID(uuid.uuidString) else { return }
              configureAudioSession()
              
              JMCallKitProxy.configureProvider(localizedName: "Testing SDK", ringtoneSound: nil, iconTemplateImageData: nil)
              DispatchQueue.main.asyncAfter(deadline: .now() + 5.0) {
                  JMCallKitProxy.reportNewIncomingCall(UUID: uuid, handle: strHandle, displayName: strDisplayName, hasVideo: boolHasVideo!, completion: {
                      (error) in UIApplication.shared.endBackgroundTask(backgroundTaskIdentifier)
                  })
              }
              
              //result("Hi, your request has successfull")
              JMCallKitProxy.addListener(self)
              flutterResult = result
          }
      }

      
    return super.application(application, didFinishLaunchingWithOptions: launchOptions)
  }
    func configureAudioSession() {
        let session = AVAudioSession.sharedInstance()//AVAudioSession.sharedInstance()
        do {
            try session.setCategory(.playAndRecord)
            try session.setMode(.voiceChat)
            try session.setActive(true)
        } catch let error {
            Swift.print("configureAudioSession error: \(error)")
        }
    }
    
    
    func performAnswerCall(UUID: UUID) {
        DispatchQueue.main.asyncAfter(deadline: .now() + 1.0) {
            self.flutterResult!("gettoken")
        }
        print("performAnswerCall: \(UUID.uuidString)")
    }

in Dart:

void callUuid(String uuid, String handle, String displayName, bool hasVideo) async {
    var sendUuid = <String, dynamic> {
      'uuid' : uuid,
      'handle' : handle,
      'displayName' : displayName,
      'hasVideo' : hasVideo,
    };
    String value;

    try {
      value = await platform.invokeMethod("callkit", sendUuid);

      if (value == "gettoken") {
        //the code join the meeting
      }
      print(value);
    } catch (e) {
      print(e);
    }
  }

handle PendingIntent to fix used in android 12 .

i get that error when try to start room , and app crashed ,
Targeting S+ (version 31 and above) requires that one of FLAG_IMMUTABLE or FLAG_MUTABLE be specified when creating a PendingIntent.

Video and audio mute showing.

Hi ,
I am using flutter app.I am connecting from mobile and desktop web browser.Having problem since few days,Video and audio mute showing .Actually the video and audio is on by the user.

Screenshot 2022-07-29 at 12 25 27 AM

Mobile video not displaying in browser but browser video showing in mobile.
please tell the solution

Problem in video chats with 3 or more users

Video conferencing with two persons runs very well, but if a third participant joins the meeting, video call not work , I can see only my cam.
I used your example without customize server link

jitsi_meet_wrapper: ^0.0.5
flutter 3.0.1
2022-06-03 15 19 03

FeatureFlag.isToolboxEnabled does not work

Looks like it is being (incorrectly) mapped to toolbox.alwaysVisible instead of toolbox.enabled (jitsi_meet_wrapper_platform_interface/lib/method_channel_jitsi_meet_wrapper.dart line 203)

Bring back web support

Would be nice and shouldn't be too hard based on jitsi_meet works, I'll try to make a PR if I find time if you're open for it

Unable to build for Android `Could not resolve com.github.MatrixFrog:android-scalablevideoview:v1.0.4-jitpack.`

* What went wrong:
Execution failed for task ':app:checkDevReleaseAarMetadata'.
> Could not resolve all files for configuration ':app:devReleaseRuntimeClasspath'.
   > Could not resolve com.github.MatrixFrog:android-scalablevideoview:v1.0.4-jitpack.
     Required by:
         project :app > project :jitsi_meet_wrapper > org.jitsi.react:jitsi-meet-sdk:5.0.2 > com.facebook.react:react-native-video:5.2.0-jitsi-10226385
      > Could not resolve com.github.MatrixFrog:android-scalablevideoview:v1.0.4-jitpack.
         > Could not get resource 'https://www.jitpack.io/com/github/MatrixFrog/android-scalablevideoview/v1.0.4-jitpack/android-scalablevideoview-v1.0.4-jitpack.pom'.
            > Could not GET 'https://www.jitpack.io/com/github/MatrixFrog/android-scalablevideoview/v1.0.4-jitpack/android-scalablevideoview-v1.0.4-jitpack.pom'.
               > Connect to www.jitpack.io:443 [www.jitpack.io/149.56.28.39] failed: Connection refused (Connection refused)

Your app uses a bad version of WebRTC, which contains security vulnerabilities.

I have integrated jitsi_meet_wrapper plugin in my project and published app on google play store. I got below mentioned error message from google :-

"Your app uses a bad version of WebRTC, which contains security vulnerabilities."

I am using :-
Flutter : 2.10.5
Dart: 2.16.2
jitsi_meet_wrapper: ^0.0.1
callkeep :0.3.2
.....

Please provide me the solution

Thank you

jitsi android and ios sdk update

5.1.0 (2022-05-16)
Android
iOS
Changes
Add Car Mode
Added GIPHY integration
Revamp lobby UI
Update React Native to version 0.68.1
Update WebRTC to version M100
Stop reordering tiles in small meetings
Don't show raise hand button in menu if disabled
Don't disable screen-sharing button when in audio-only mode
Hide display name label in one to one meeting
Updated UI for thumbnail indicators
Fix last N getting stuck on 1
Fix private chat messages getting stuck
Fix navigation getting stuck in the connecting state
Fix lobby not showing up on subsequent tries
Fix joining breakout rooms
Fix participant list not taking enough space
Fix recording start button not being enabled
UI tweaks and fixes
Updated translations
Android
Fix crash when starting foreground service
JitsiMeetActivity now uses JitsiMeetView instead of JitsiMeetFragment
Fix back button behavior
Relevant native dependencies:

react-native: 0.68.1
Full changelog

iOS
Build SDK releases with bitcode
Fix not marking speaker as a selected device
Fix not showing the CarPlay audio interface
Fix cycle in dependencies with Xcode 13.3
Full changelog

Parse Jitsi β€œlinks” that contain config overrides

An implementation could look like this:

final uri = Uri.tryParse(link);
final mappedFragment = uri?.hasFragment ?? false
    ? Uri.splitQueryString(uri!.fragment)
    : <String, String>{};
final configOverrides = mappedFragment.map((key, value) {
  return MapEntry(
    key.replaceFirst("config.", ""),
    _castValue(value),
  );
});

Crash and Technical Difficulty

Hello Sir,

First of, I would love to Thank you for this awesome package, am currently using this package in a release version for my user and it's on playstore.

But there are some few technical issues that my users are having

  1. Some device can't open the meeting

  2. Some device are able to open the meeting but got stuck at "Connecting you to meeting"

  3. When two participants are in the meeting the jitsi package it's saying "No Audio device is available" But Audio device is always available

  4. Sometimes when pass meeting ID it does show null when meeting start.

Below are screenshot

IMG-20220714-WA0001
IMG-20220714-WA0000

Embed Jitsi as a PlatformView

As the original Jitsi Flutter plugin doesn't support embedding it into a Flutter view, we created a fork that could do that (we needed to put our buttons on the call). We forked that from https://github.com/gunschu/jitsi_meet, but as that plugin is not maintained anymore, I wanted to suggest to merge that feature in this plugin instead (it would also be easier for us to maintain the project if it was included in this one). Would people be interested in doing this?

Require to fetch participants info, chat info and meeting info for storing data in my app.

@saibotma Thanks for the library. I have checked in and it's working on Pixel XL API 31. It has saved me lots of time. Thanks again.

I am also getting logs for when any participants join, left, or any message arrives in the meeting.
Here are the logs for that:

D/JitsiMeetSDK( 7218): ExternalAPI Sending event: PARTICIPANT_LEFT with data: { NativeMap: {"participantId":"515e6b41"} }
D/JitsiMeetSDK( 7218): ExternalAPI Sending event: CHAT_MESSAGE_RECEIVED with data: { NativeMap: {"senderId":"83409ad1","isPrivate":false,"message":"yes please"} }
D/JitsiMeetSDK( 7218): ExternalAPI Sending event: PARTICIPANT_JOINED with data: { NativeMap: {"name":"tester meri","participantId":"cbc8a823","role":"moderator"} }

Are there any methods available for getting all these longs in your flutter example project? I like to store meetings and participants' data in my application. It will be great if you find it. Thank you.

You have mentioned in the GitLab repo that currently more options are not available same as ios and android in a flutter. Can you add in this repo?

[BUG]: Unable to generate closed captions

Jitsee version
jitsi_meet: 4.0.0

Describe the bug
I'm neither able to generate closed captions nor able to locate any option to do it in menu options.

To Reproduce
Steps to reproduce the behavior:

Join a meeting
Check that there are no captions available and that there is no option to generate them in the menu.
-->

Screenshots
image

Flutter doctor -v
[√] Flutter (Channel stable, 3.0.5, on Microsoft Windows [Version 10.0.22000.856], locale en-IN)
β€’ Flutter version 3.0.5 at D:\Softwares\flutter
β€’ Upstream repository https://github.com/flutter/flutter.git
β€’ Framework revision f1875d570e (5 weeks ago), 2022-07-13 11:24:16 -0700
β€’ Engine revision e85ea0e79c
β€’ Dart version 2.17.6
β€’ DevTools version 2.12.2

[√] Android toolchain - develop for Android devices (Android SDK version 32.0.0)
β€’ Android SDK at C:\Users\ABHISHEK\AppData\Local\Android\sdk
β€’ Platform android-32, build-tools 32.0.0
β€’ Java binary at: D:\Softwares\Android studio\jre\bin\java
β€’ Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7249189)
β€’ All Android licenses accepted.

[√] Chrome - develop for the web
β€’ Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[√] Visual Studio - develop for Windows (Visual Studio Build Tools 2019 16.11.8)
β€’ Visual Studio at C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools
β€’ Visual Studio Build Tools 2019 version 16.11.32002.261
β€’ Windows 10 SDK version 10.0.19041.0

[√] Android Studio (version 2020.3)
β€’ Android Studio at D:\Softwares\Android studio
β€’ Flutter plugin can be installed from:
https://plugins.jetbrains.com/plugin/9212-flutter
β€’ Dart plugin can be installed from:
https://plugins.jetbrains.com/plugin/6351-dart
β€’ Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7249189)

[√] Connected device (5 available)
β€’ RMX1971 (mobile) β€’ 91e6e37b β€’ android-arm64 β€’ Android 11 (API 30)
β€’ sdk gphone x86 (mobile) β€’ emulator-5554 β€’ android-x86 β€’ Android 11 (API 30) (emulator)
β€’ Windows (desktop) β€’ windows β€’ windows-x64 β€’ Microsoft Windows [Version 10.0.22000.856]
β€’ Chrome (web) β€’ chrome β€’ web-javascript β€’ Google Chrome 104.0.5112.81
β€’ Edge (web) β€’ edge β€’ web-javascript β€’ Microsoft Edge 104.0.1293.54

[√] HTTP Host Availability
β€’ All required HTTP hosts are available

Smartphone (please complete the following information):

Device: [e.g. RealMe (physical), Pixel4(emulator)]
Physical andEmulator
OS: Android 11 on both the devices
Additional context
I'm looking to generate closed captions that will enable people with hearing impairment to experience video calls.

Install Jitsi on Android 12 not working

Hi All, I see this issue is common, can someone please confirm if the Jitsi build on flutter can be installed on Android v12, and how to achieve that.
Already added the android:exported="true" in AndroidManifest but cant install on version 12, shows issue " there was a problem parsing the package".

Thanks

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.