Here is my follow up to this issue. It seems something happened to the server where it stopped sending Binding responses to Chrome. This is a known issue that I've seen before that Google says was an Asterisk issue. However, the same thing happens to Freeswitch as well, indicating the problem is the network/server, not the software.
I booted up another server from a snapshot, verified two way audio with Asterisk, then reinstalled Freeswitch, uncommented the ws-binding parameter to enable WS on port 5066, then registered user 1000 and 1002 from the
tryit.jssip.net demo using the following configuration:
Name: James
SIP URI: sip:1000@54.X.X.X <-- public IP of server
password: 1234
WS URI: ws://54.X.X.X:5066 <--- same public IP
and I substituted 1002 in place of 1000 for another user on another network. I verified audio flows both ways with audio flowing through Freeswitch.
I made no other changes to the configuration. This was a lot easier to get started with than Asterisk WebRTC. I just made it out to be a lot harder than it was by assuming I needed to manually add in my server's IP address in the configuration files. This happens automatically, even on a NAT'd server. Amazing! :)
Now, for the PSTN part, I configured my BANDWIDTH.com provider as an internal context and as an outbound and inbound dialplan. I can connect a call between my cellphone and Chrome, but there's no audio flowing to/from Bandwidth. I suspect the problem has something to do with bridging AVP and SAVPF, since the carriers don't support SRTP.
I've grepped the configuration files, and I don't see how I would configure the system to bridge AVP and SAVPF and do transcoding. Any ideas?
Thank you!!
James