Can't connect to BBB 2.2.0 with iPhone 8

297 views
Skip to first unread message

Brent W. Baccala

unread,
May 10, 2020, 9:01:04 PM5/10/20
to BigBlueButton-dev
Hi -

One of my students has been unable to connect to my BBB installation with an iPhone 8.

I tried using an iPhone 8 simulator on lambdatest.com and it had the same problem, both on my BBB installation and on another I have access to.

The symptoms are the same in all cases - the audio connection gets to the dialog where you're given a microphone icon to connect with sound or the option to connect listen-only.  You can't really click on the microphone; it will just take you back to the login page.

Is this a known problem?

    agape
    brent

Henry Ho

unread,
May 10, 2020, 9:12:04 PM5/10/20
to BigBlueButton-dev
This means there is no Flash, no Java, no downloads, no app to install. Compared with the previous version, the new BigBlueButton 2.2 client is a third in download size and launches twice as fast. It also runs on iPhones and iPads (iOS 12.2+) and Android devices (6.0+). Both Safari Mobile (iOS) and Google Chrome (Android) support WebRTC out-of-the-box (no mobile app to install).

Please check your ios version

Brent W. Baccala

unread,
May 10, 2020, 9:40:25 PM5/10/20
to BigBlueButton-dev
The simulator is running iOS 13.3

Kristoff Scherer

unread,
May 11, 2020, 9:17:32 AM5/11/20
to BigBlueButton-dev
No audio problems with my iphone 6s (ios 13.4.1). it works fine

Brent W. Baccala

unread,
May 11, 2020, 12:53:04 PM5/11/20
to BigBlueButton-dev
Does anybody have access to an iPhone 8?

Or can you try it in Apple's Xcode simulator (which I've never used)?  Does it have a setting for iPhone 8?

Martin Thomas Schrott

unread,
May 11, 2020, 1:22:33 PM5/11/20
to bigblueb...@googlegroups.com, Brent W. Baccala

Hi,


I used bbb with an iphone 8 without any issues.

cheers

Martin

--
You received this message because you are subscribed to the Google Groups "BigBlueButton-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to bigbluebutton-...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/bigbluebutton-dev/b3796cc3-0fe4-49c9-8c46-059564ddc4b9%40googlegroups.com.

Brent W. Baccala

unread,
May 11, 2020, 9:01:50 PM5/11/20
to BigBlueButton-dev
OK, I've looked at this some more, and I don't think its an iPhone 8 issue.

For one thing, the simulator doesn't work if I set it for an iPhone 10, either.

Furthermore, tcpdump doesn't show any inbound connections to my TURN server.

So, I'm thinking that both the simulator and the student's iPhone are behind some restrictive firewall.

I'm using a TURN server on my own machine, but freeswitch's STUN server.

I'll have to look at it some more to figure what's going on...



On Monday, May 11, 2020 at 1:22:33 PM UTC-4, Martin Thomas Schrott wrote:

Hi,


I used bbb with an iphone 8 without any issues.

cheers

Martin


Am 11.05.2020 um 18:53 schrieb Brent W. Baccala:
Does anybody have access to an iPhone 8?

Or can you try it in Apple's Xcode simulator (which I've never used)?  Does it have a setting for iPhone 8?

On Monday, May 11, 2020 at 9:17:32 AM UTC-4, Kristoff Scherer wrote:
No audio problems with my iphone 6s (ios 13.4.1). it works fine
--
You received this message because you are subscribed to the Google Groups "BigBlueButton-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to bigblueb...@googlegroups.com.
iphone.mp4

Brent W. Baccala

unread,
May 12, 2020, 2:15:01 PM5/12/20
to BigBlueButton-dev
Don't think it's a firewall issue.

I disabled the freeswitch STUN server in my configuration, so now I'm only using my own TURN server, encrypted, on port 5349.

From the test machine, I can connect directly to 5349 from the web browser, by navigating to "osito.freesoft.org:5349" and I see the packets on tcpdump.

But when I try to connect from BBB, I don't see any traffic to port 5349.

Could this be something like a cross-domain issue?  The browser can navigate to the site on port 443, but the Javascript can't connect to port 5349?

Neither screen share nor video work, either.  I just get the "spinning arrows" on both.

Brent W. Baccala

unread,
May 20, 2020, 1:02:27 PM5/20/20
to BigBlueButton-dev
So, I've now got an actual iPhone to test with, and my immediate observations are that it's an ICE 1007 error, and that the iPhone is trying to use IPv6 for everything.

Which doesn't make sense (to me), since I haven't set an AAAA record for that DNS name.

It does make sense that this would cause problems, however.

Any ideas?

Brent W. Baccala

unread,
May 20, 2020, 1:31:47 PM5/20/20
to BigBlueButton-dev
My bad.  The problem was that I couldn't sniff promiscuously on wifi, so all I was seeing was another machine's IPv6 traffic

Prathapchandran R

unread,
May 20, 2020, 9:46:16 PM5/20/20
to BigBlueButton-dev
hi can you guide me how can I enable apps for ios and android mobile

Martin Thomas Schrott

unread,
May 21, 2020, 2:44:31 AM5/21/20
to bigblueb...@googlegroups.com, Prathapchandran R

Am 21.05.2020 um 03:46 schrieb Prathapchandran R:
> hi can you guide me how can I enable apps for ios and android mobile
>

as Henry already wrote:

> (no mobile app to install).
cheers

Martin


I Brof

unread,
May 21, 2020, 9:11:21 AM5/21/20
to BigBlueButton-dev

Brent W. Baccala

unread,
May 28, 2020, 6:40:13 PM5/28/20
to BigBlueButton-dev
I think I have the packet sniffer working right now.

I'm seeing an SSL alert - "Unknown CA" when the iPhone tries to connect to the TURN server on port 5349.

I'm using a certificate from Let's Encrypt.  openssl s_client reports it like this (and verifies it as correct):

Certificate chain
   i:C = US, O = Let's Encrypt, CN = Let's Encrypt Authority X3
 1 s:C = US, O = Let's Encrypt, CN = Let's Encrypt Authority X3
   i:O = Digital Signature Trust Co., CN = DST Root CA X3

Connecting to it with the iPhone's web browser also verifies it correctly.  It's the same certificate used by the site on its 443 port, which the iPhone successfully connects to when loading the site's HTML pages, as well as BBB's client code.

Any ideas?

Brent W. Baccala

unread,
May 29, 2020, 11:29:02 AM5/29/20
to BigBlueButton-dev
I got the iPhone working!

Sort of.

I switched the TURN configuration to use unencrypted TCP.

Two things:

1. I suggest that we document this clearly.  I've cloned bigbluebutton.gitjhub.io.  I'll open a ticket there and revise the documentation.

2. Could at least one other person verify that an iPhone doesn't work using an encrypted TURN session?

Here's my test setup:

----------                   -----------------                     ---------------------
| iPhone |<------ WiFi ----->| Linux hotspot |<---- Internet ----->| bbb/coturn server |
----------                   -----------------                     ---------------------

Here's a snippet of my failing turn-stun-servers.xml file:

    <bean id="turn1" class="org.bigbluebutton.web.services.turn.TurnServer">
        <constructor-arg index="0" value="SECRET"/>
        <constructor-arg index="1" value="turns:osito.freesoft.org:5349"/>
        <constructor-arg index="2" value="86400"/>
    </bean>
...
        <property name="turnServers">
            <set>
                <ref bean="turn1" />
            </set>
        </property>


The Linux hotspot is configured to block UDP traffic, like this:

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
 4005  387K REJECT     udp  --  wlp1s0 any     anywhere             anywhere             reject-with icmp-port-unreachable
 ...

DNS and DHCP are handled locally by the hotspot, so they don't go through the FORWARD chain.  No other UDP traffic is required, so I block all forwarded UDP.

The point is to force the iPhone to use TURN for its WebRTC traffic, and only provide an encrypted option in the configuration file.

Then if I switch to unencrypted TCP, everthing works:

    <bean id="turn2" class="org.bigbluebutton.web.services.turn.TurnServer">
        <constructor-arg index="0" value="SECRET"/>
        <constructor-arg index="1" value="turn:osito.freesoft.org:5349?transport=tcp"/>
        <constructor-arg index="2" value="86400"/>
    </bean>


Would somebody else please verify this?  I know that it would take an hour to set all this up, and I'm pretty sure that this is my problem, but it would be nice to hear that somebody else has duplicated the problem.

Thanks.
Reply all
Reply to author
Forward
0 new messages