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
Allow to choose your server on mobile apps #1251
Comments
Thank you very much, @ldidry! We plan to add the feature in the future. In the meantime, contributions are welcome! On a slightly related note, did you know that the mobile app supports opening full URLs? Firstly, users may type a full URL instead of just a room name. Secondly and that's where choosing a server gets a little bit complicated, the mobile app declares that it handles URLs from specific domains. But that's got to be declared in the app's manifest and on iOS the server has to declare the app as well. In order to provide a full experience for your app and your server, one should not only change the default server address used by the app but should also modify the manifests of the Android and the iOS apps. While the first step can obviously be configurable through the app's UI, the second step must be done before building the app. |
No, I didn't, thx for the tip 🙂
I understand. I think that our users would not be too disappointed, that's a very small problem. But would it possible to add framatalk.org to the URLs of your manifest? What are your criterias for accepting a demand like that?
How do you do that? |
@ldidry Here is how you do it for iOS: https://developer.apple.com/library/content/documentation/General/Conceptual/AppSearch/UniversalLinks.html |
hey, where do I have to change the default server domain in order to use our own jitsi server for the mobile app? Why does changing the domain in the projects config.js not work? |
You'd need to make your own build. Right now there are 2 ways to use your own server:
The apps default to meet.jit.si, which can be changed by recompiling, or as I mentioned above. |
i want to visit my server(my local domain https://jitsi.example.com) with react-native app(ios),i modify the three place code
2:at react/features/app/reducer.js
3:modify xcode project info.plist file at the item App Transport Security Settings -> if i dont modify the server domain(meet.jit.si) to my server domain (jitsi.example.com) everything is all right. note:my chrome visit my server meeting is ok. i set local service domain agency throught fiddler,my ios device set wifi 's http agency,so ios device can visit my domain server i want you give me some help to resolve that error thanks |
Hi @cui1061651778 , we have faced same problem just a few hours ago. We are using self signed certificate for development server. So, android and ios operating system doesn't allow to connect to untrusted server. If you are using self signed certificate, you have to install a valid certificate to solve this error. Or add your certificate to your device as trusted. To add certificate as trusted on android 6, settings->general->security->certificate management->install from sd card-> then point your .crt file. After doing this, try to join conference again from your app. Or, you can also download jitsi meet app from the market and enter your server's full url,(https://your-url.com/roomname) it will join the conference. Regards |
tks ,i will try it , |
Hi @cui1061651778,have you resolved that error? We have faced same problem. |
in your server: step1: cp /etc/jitsi/meet/*.crt /usr/share/jitsi-meet step2: use your iOS safari or Android chrome ,and visit https://xx.xx.xx/*.crt step3: install the crt to your mobile phone,when complete,you can use your server in jitsi meet app (after install in iOS,in about,IOS certificate,Check yes with crt) (you can send the *.crt to your users by mail instead of step1 and step2 ) |
Gents, we have a hard time to connect Jitsi iOS React native client to our server.
In our scenario the client is connecting to existing conference anonymously. And that connection always fails. Here's part of the console log which we believe describes internal reason of the problem:
And what about server side? Here we go. Here's the prosody's log when Jitsi-meet iOS client is trying to connect to:
And this is a log extras from the same server for "good" session (XMPP client on Matrix):
It looks like while connecting to Prosody iOS client does not: Does it make sense? |
|
341e7e0 adds a |
@lyubomir I've hardly tried putting the full url of my private server (https://meet.codcast.it) in the room field of the Android app, but as I push the Join button the app simply empties the field and nothing more happens. When I connect from a PC or even from mobile chrome (asking desktop version) it works. Any suggestions? |
Do you type the full room URL, including the room? I just tried the “foo” room and worked for me. |
@saghul , have you typed in the Jitsi Meet App? Android App? Because, even for me Jitsi works in PC and even in app's Chrome, if I ask the desktop version of the site. But not in the app. I've settled up Jistsi Meet in Android Studio. The emulator report an error "Failed to load config from https://meet.codcast.it/config.js?room=foo". I'm using a valid certificate released by Thawte. Suggestions? |
@Mrmerluzzo I tried on iOS. I'll give Android a test later today. |
@saghul, thank you so much |
@saghul, yap! you right, it works on iOS but not in Android. I'm using Pixel 6P with Android 8 |
Can you try to use another certificate? Does the builtin browser give you a warning? If the cert is not in the trust store, the connection will fail. |
@saghul, No I had only the Tahwte certificate, but in any browser (Android or PC) I receive no warnings; all green! The cert has been installed by Jitsi itself, during the setup process. And it is in the trust store of the server (/etc/ssl/certs). There are weird symptoms on Android:
I'm puzzled. |
The problem with https://meet.codcast.it/foo is the certificate. It worked for @saghul and it didn't work for @Mrmerluzzo because you two used at least two different certificate chains/stores on your respective phones to verify the certificate's authority. I did test on two Android devices with multiple browsers and https://meet.codcast.it cannot be verified by some of them. For example, Google Chrome on S8 does not complain about it but Samsung's "Internet" browser on the same S8 complains about it with |
@lyubomir , thank you for you time, I really appreciate. Thawte, which I consider a primary CA, releases the certificate to meet.codcast.it. In the Adroid certificate store Thawte is present with 3 certificates. I manually add the certificate and also an intermediate.crt certificate that Thawte istself "suggest" to install server side. But nothing change. This intermediate certificate, I downloaded it form Thawte and put in the server certificate store (/etc/ssl/certs). Usually, at this point, in Apache I have to write the appropriate key in config file, but I can't find the same key in Prosody. Maybe the intermediate certificate is essential and is not correctly installed at server side. Do you have any clue? Because, on other hand, to install certificate on every devices is not a very confortable way to proceed, don't you think? |
The operating systems of the devices will verify certificates based on their locally installed root certificates and there's nothing we can do about it. What we can do is figure out how to override the certificate verification inside the app and, for example, (1) ship additional root certificates inside our app and use them in the overridden verification and/or (2) alert the user that the certificate's authority is invalid but allow the user to continue anyway (what browsers like Google Chrome, Safari, and Samsung's "Internet" browser on my S8 do). We do have (2) in our backlog but I don't have an ETA for it at the time of this writing. |
Finally! It works! Certificate and key must be installed in two places: 1) Prosody and 2) Videobridge! Videobridge wants a copy of the certificate in JKS format. At this link I found the script that installs crt certificate in videobridge. https://github.com/jitsi/jitsi-meet/blob/master/resources/install-letsencrypt-cert.sh. I suggest to add a clue of this in docs. Thank you all for the assistance. Yeah! |
Jitsi Meet for Android and iOS support server URL in Settings and, consequently, throughout the app now so I think we may close this issue. |
@Mrmerluzzo Do you have the prosody and video bridge configuration sample to understand where the certificate need to be added? Running the script didn't solve the issue for me. |
@cr7xiaoyu I tried , It did't work |
你的来信已收到。谢谢你
|
On mobile apps (at least on Android, I don't have an Apple device to check), you can just choose the room you want to use, but you can't choose your server.
At Framasoft (non-profit organisation), we deployed our jitsi-meet server under the name of Framatalk (we name all our services frama-something) and users asked us for an Android app for our server. Instead of just changing the server address and recompiling the app, it seems smarter to have a setting allowing to change the server.
The text was updated successfully, but these errors were encountered: