Webphone

Status
Not open for further replies.

pogingbagsik

New Member
Jul 10, 2019
14
1
3
33
Hi all. Just testing this now. The webphone loads but is not able to send/receive calls. Not seeing anything in the CLI.

I have an SSL cert and TLS is enabled/working. Under SIP status wss is showing as being on the private side IP not public.

Is there a variable to ad such as ext_sip_ip to bind this to the public IP?
Hello,

Just experiencing this, can you please share on how you overcome this?

SIP status enables WSS and TLS using letsencrypt SSL
1610433161653.png

Opened ports
1610433119866.png

BTW I'm using a firewall in front with Destination NAT with those ports, test calls via SIP2SIP Call is working but it is not registered when I logged in over the dashboard.
No logs over nginx and freeswitch could be pulled :(

Any thoughts about this?

Regards,
Pogingbagsik
 

Kenny Riley

Active Member
Nov 1, 2017
243
39
28
36
@KonradSC

I've been using this webphone solution for quite some time but all of sudden it stopped working. When a call is placed from the webphone to either an internal extension or an external number, the call goes through and rings the callee for a moment but as soon as they answer, the call hangs up.


Here is the error from the logs:
2021-01-28 07:06:36.669757 [ERR] switch_rtp.c:3185 audio Handshake failure 1
2021-01-28 07:06:36.669757 [INFO] switch_rtp.c:3186 Changing audio DTLS state from HANDSHAKE to FAIL
2021-01-28 07:06:36.689762 [NOTICE] switch_rtp.c:3167 Hangup sofia/internal-5080/201@xxx.velocityvoice.net [CS_EXECUTE] [DESTINATION_OUT_OF_ORDER]

1611839723294.png

Some background:

1.) I have webrtc running on a separate SIP profile using port 5080.
2.) I am able to register a softphone to my SIP profile for webrtc on port 5080 and place calls out just fine, which eliminates any sort of issue with the SIP profile.
3.) This happens with the ctxSip softphone across multiple browsers.

Any ideas? Help would greatly be appreciated as we have been using this webphone solution for quite some time and really were enjoying the contribution!
 
Last edited:

Kenny Riley

Active Member
Nov 1, 2017
243
39
28
36
Does it work with this webrtc phone? https://www.doubango.org/sipml5/

Perhaps a certificate or openssl issue on the server. Any OS updates lately?

Also, I see G722 as the codec. Can you try something else? Mine connects using OPUS right now.

It does not work with the webrtc phone you recommended, I get the same error when watching the logs.

Actually good point @KonradSC , I forgot to mention that I upgraded from Debian 8 to 9 a few months ago. My Let's Encrypt certificates on the server are fine however. Anything that I should be looking for after an OS upgrade?

I'll try a different codec as well.

Edit: I forced opus and still am seeing the same result: /

Logs: https://pastebin.com/0eYNDbcg
 
Last edited:

KonradSC

Active Member
Mar 10, 2017
166
98
28
Everything I'm seeing from Google makes it look like crypto incompatibility. Certs, client OS, OpenSSL, browsers, mod_verto all come into play.

I did see someone say something about having FS & web server certs that match. Does a FS restart fix it? Wondering if Let's Encrypted updated the certs and FS needs to reread it.

Is it broken in your lab too?
 

Kenny Riley

Active Member
Nov 1, 2017
243
39
28
36
@KonradSC

Well, this is completely bizarre.. I restarted FS afterhours and retested with no changes.. restarted my entire server and retested with no changes.

I've been doing most of my testing using Chrome during this time, so I tried Edge.. same result.

Then I tried Firefox and it's working just fine!

Any ideas? Pretty strange..

EDIT: After further research, I believe this is certificate related one way or another.. I've tried revoking my certificate and reissuing it but that doesn't seem to be working.
 
Last edited:

pogingbagsik

New Member
Jul 10, 2019
14
1
3
33
Apologies for the late revert. Managed to get around the issue using SSL OV cert, but the delay in accepting/making calls is still there.
Anyone has fixed this already? so handy application that eliminate softphone configurations manually.
 

Kenny Riley

Active Member
Nov 1, 2017
243
39
28
36
Apologies for the late revert. Managed to get around the issue using SSL OV cert, but the delay in accepting/making calls is still there.
Anyone has fixed this already? so handy application that eliminate softphone configurations manually.
Out of curiosity where did you buy your SSL OV cert from? Does this webphone no longer work when using a LetsEncrypt SSL?
 

kobyhud

New Member
Mar 1, 2021
24
3
3
43
KonradSC Just FYI there appears to be a bug in the version of SIP.js that you are using that breaks DTMF tone '0'

- if (!tones || !tones.toString().match(/^[0-9A-D#*,]+$/i)) {
+ if (tones === false || !tones.toString().match(/^[0-9A-D#*,]+$/i)) {

Otherwise the app seems to be working for me pretty well. Reasonable minimum viable product with direct integration with FusionPBX.

Thanks!!
 
  • Like
Reactions: gflow and hamagid

fkcristino

New Member
Feb 14, 2021
1
0
1
40
hi, im new in fusionpbx and try to config web phone but don't work, I have this error

Uncaught (in promise) Websocket Closed

Firefox was unable to establish a connection to the server in wss://sxkm.xxxxx.mx:7443/

Tue Sep 21 2021 21:55:15 GMT-0500 (hora de verano central) | sip.transport | WebSocket disconnected (code: 1015)

but I have listen in port
root@localhost:/var/www/fusionpbx/app/webphone/phone/scripts# netstat -pln | grep 7443


tcp 0 0 x.x.x.x:7443 0.0.0.0:* LISTEN 2771/freeswitch
 

tjfayaz

New Member
Apr 20, 2021
15
1
3
46
I've just installed this, it works so far as I can choose an extension and get the dialpad up but there is no actual WSS registration happening on freeswitch. Basically the app cannot make or receive calls as a consequence.

My webrtc works fine in simpl5 so I know the rtc part is working on my box.

Any ideas? Maybe I missed something obvious? I even tried using the latest 0.20 sip.js libraries but still nothing even hits the freeswitch logs when I press "launch".
 

hamagid

Member
Dec 14, 2020
71
6
8
33
I noticed that this client is using INFO for DTMF. You may want to add something like this to your dialplan in order for DTMF to be processed.

Code:
    <condition field="${sip_user_agent}" expression="SIP.js">
        <action application="set" data="dtmf_type=info"/>
    </condition>
Is this method preferred over setting liberal_dtmf to true?
 

kobyhud

New Member
Mar 1, 2021
24
3
3
43
liberal-dtmf:
For DTMF negotiation, use this parameter to just always offer 2833 and accept both 2833 and INFO. Use of this parameter is not recommended since its purpose is to try to cope with buggy SIP implementations.

FYI, I just tested liberal-dtmf in my webphone implementation and it didn't work, where the very simple dialplan rule worked a charm.

I guess I can mention than I just created a global dialplan rule at order 21 and it works for all domains without problems.
 

hamagid

Member
Dec 14, 2020
71
6
8
33
setting liberal-dtmf to true made the webphone work for me without creating the dialplan condition, but as the use of this parameter is not recommended, i'll change it to use the dialplan method instead, thank you.
 

gflow

Active Member
Aug 25, 2019
261
28
28
Does anybody know if this softphone can do an attended transfer? If it can what are the steps?
 

kobyhud

New Member
Mar 1, 2021
24
3
3
43
gflow, I am not aware of it being able to do an attended transfer. It requests a destination number and only transfers blind. That said adding an attended transfer feature should be possible as the underlying sip.js library does have support for refer headers and can do it.

Park has been my stop gap, I added a park button instead.

I also never pursued making BLFs work though that is possible as well. The saraphone https://github.com/gmaruzz/saraphone has support for BLFs, MWI, and attended transfer and is based off of the same libraries. I found the interface was a little clumsy, but if you followed the examples in Saraphone I am sure you could make an attended transfer button in no time.
 

jad.seifeddine

New Member
Aug 3, 2018
4
2
3
33
any fix for the delays in call connection ?

2022-09-14 22:35:46.080646 [NOTICE] sofia.c:8445 Channel [sofia/external/XXXXXX] has been answered
2022-09-14 22:36:02.220648 [INFO] switch_rtp.c:3282 Changing audio DTLS state from HANDSHAKE to SETUP
2022-09-14 22:36:02.240678 [INFO] switch_rtp.c:3189 audio Fingerprint Verified.
2022-09-14 22:36:02.240678 [INFO] switch_rtp.c:4254 Activating audio Secure RTP SEND
2022-09-14 22:36:02.240678 [INFO] switch_rtp.c:4232 Activating audio Secure RTP RECV
2022-09-14 22:36:02.240678 [INFO] switch_rtp.c:3231 Changing audio DTLS state from SETUP to READY


This appears about 15 seconds after the call is answered, subsequently Audio is received, nothing before hand
 

kobyhud

New Member
Mar 1, 2021
24
3
3
43
I don't have 15 second delays in call connection. I would check your javascript console/sip.js logs for problems.
 
Status
Not open for further replies.