Page 1 of 2

ViciPhone - Our WebRTC Phone

PostPosted: Thu Jul 21, 2016 12:35 pm
by mcargile
We are developing our own WebRTC phone which we are calling ViciPhone. It will be it's own open source project, separate from Vicidial once we have fully tested it. It is based off SIP.js and loads into the agent interface just like the Zoiper Webphone. It will not be specifically tied to Vicidial and will be able to work as a regular phone on other systems with minor config changes. It will also be able to be embedded into a website and allow customers to call you directly from their browser without having to go through any carrier connection. It also works quite well with mobile devises (though I need to make a better CSS skin for them). Best of all there is nothing to install on the agent web browser. As long as they have a microphone and speakers (though a headset is highly recommended) the agents just have to log into Vicidial and the phone will automatically load for them.


We are currently looking for people to beta test ViciPhone at their centers. If you are interested there are some specific requirements to running it.

- First off it only works over a VALID HTTPS connection. This means you either need to have a legitimate SSL certificate for each of your servers from a TRUSTED certificate authority or you need to add your own certificate authority for your self signed certs to the agent web browsers. Adding your own CA to the agent browsers is something I have yet to be able to do successfully so I cannot help with that.

- Second the agents must be using a browser that properly supports WebRTC. You can find more information on supported browsers here https://webrtc.org/. Microsoft IE and Edge are not supported at present.

- Third you cannot be loading anything else into the agent's interface from a non-HTTPS source. Meaning you cannot have an embedded IFRAME in the script tab that is not HTTPS. Having this data loaded into other browser tabs though is perfectly fine.

- Fourth the dialers must be running Asterisk 11 and have all OS updates installed.

- Fifth the dialers must also have valid SSL certificates from a trusted CA.

- Sixth you must be willing to allow us access to your cluster..

- Seventh for the time being your agents must be able to connect to *.viciphone.com over HTTPS. Eventually we will publish the code so you can deploy it locally, but for now this allows us to make changes more easily.

Please keep in mind that what you will mostly be testing is how well Asterisk 11 scales with WebRTC calls. We are pretty confident in the actual ViciPhone code. What we do not know is if a single Asterisk 11 server will be able to maintain 20+ WebRTC connections for 8+ hours without doing something weird like load spikes or randomly hanging up on agents.

If you are interested in helping beta test ViciPhone please email support@vicidial.com and put it to my attention making sure to mention your desire to beta test ViciPhone. I will reply back with further details.

Re: ViciPhone - Our WebRTC Phone

PostPosted: Fri Jan 06, 2017 12:49 pm
by bobbymc
I've already tried, after 30 agents and a few hours asterisk gets deadlocks because of some stun bug

Re: ViciPhone - Our WebRTC Phone

PostPosted: Fri Jan 06, 2017 2:14 pm
by mcargile
Good thing our WebRTC phone uses Google's public STUN server and not Asterisk's.

Re: ViciPhone - Our WebRTC Phone

PostPosted: Fri Jan 06, 2017 3:00 pm
by bobbymc
Asterisk issue is with that stun protocol as a whole. I paid digiun to investigate the issue and there is Open bug, they most likely won't fix it as all efforts are into asterisk 13 and 14

Re: ViciPhone - Our WebRTC Phone

PostPosted: Fri Jan 06, 2017 3:32 pm
by mcargile
Would be interested in seeing the bug report.

Re: ViciPhone - Our WebRTC Phone

PostPosted: Sat Jan 21, 2017 2:02 am
by bobbymc
https://issues.asterisk.org/jira/browse/ASTERISK-25852

this deadlock was caused by dundi or stun, the guys internally told me it was a issue with stun that caused it, but who knows

Re: ViciPhone - Our WebRTC Phone

PostPosted: Mon Jan 23, 2017 9:33 am
by mcargile
Was wondering if that was you. We am pretty confident at this point that that error is being caused by brute force attacks against the SIP port that are not showing up in the Asterisk CLI which makes Fail2Ban completely ineffective. Most likely the SIP packets are malformed which causes issues for Asterisk with parsing it. We have yet to be able to get a proper packet capture of the issue, but in our experience the issue goes away as soon as you lock the SIP port down to only speak with carriers and agent phones. Another thing that points to some sort of external cause is that it is effecting all Asterisk 11 versions. We have had clients abusing Asterisk 11 without issue for months and then suddenly this started popping up.

Re: ViciPhone - Our WebRTC Phone

PostPosted: Mon Jan 23, 2017 1:36 pm
by bobbymc
Possible, there is also another issue where asterisk isn't keeping up with the chrome webrtc requirements which is making it I compatible with chrome 57, Digium is yet to fix it and unlikely to do so on 11, I'm possibly going to attempt to make vicidial compatible with 13 as 11 is reaching eol

Re: ViciPhone - Our WebRTC Phone

PostPosted: Fri Apr 07, 2017 3:29 pm
by thirdhatch
This thread is nearly a year old now. Had any progress been made on the viciphone?

Re: ViciPhone - Our WebRTC Phone

PostPosted: Fri Apr 07, 2017 3:57 pm
by mcargile
Very little interest was received in beta testing it until Firefox and Chrome both stopped supporting the Zoiper Web phone. As such it is still in beta. Also the only version of Asterisk that supports it at present is Asterisk 11 which in recent months has had some stability issues. We have a few clients beta testing it right now. None of them have had issues with ViciPhone, but a few have had issues with Asterisk 11 locking up.

Re: ViciPhone - Our WebRTC Phone

PostPosted: Sat Apr 08, 2017 4:52 am
by chornyi_taras
AFAIK latest Firefox does not work with asterisk 11 that ships with Vicibox.
http://forums.asterisk.org/viewtopic.php?f=1&t=95417

Re: ViciPhone - Our WebRTC Phone

PostPosted: Mon May 15, 2017 1:37 pm
by thirdhatch
Michael, would it be possible for us to test the vicidial webphone? We were able to implement the PBXWEBPHONE early on with version 7.0.3, but have not been able to get it to work since the new version. I would be happy to help with documentation and bug testing if this were a possibility.

Re: ViciPhone - Our WebRTC Phone

PostPosted: Thu May 25, 2017 5:26 pm
by chornyi_taras
Hi thirdhatch. Can you please describe what issues you are facing with PbxWebPhone?

Re: ViciPhone - Our WebRTC Phone

PostPosted: Mon Jun 12, 2017 9:49 am
by thirdhatch
We figured out the issues with PBXWebPhone. But we are having trouble getting it to work with Firefox. It only works with Chrome.

Re: ViciPhone - Our WebRTC Phone

PostPosted: Mon Jun 12, 2017 3:30 pm
by chornyi_taras

Re: ViciPhone - Our WebRTC Phone

PostPosted: Sat Aug 05, 2017 9:49 pm
by ngtechnologies
thirdhatch wrote:We figured out the issues with PBXWebPhone. But we are having trouble getting it to work with Firefox. It only works with Chrome.


We upgraded to PHP7 in our web server (actually tried to upgrade PHP5 to PHP7 and broke Vicidial, was new install with PHP7 installed before any Vicidial or prerequisites were added) and works Chrome and Firefox, but not IE or Edge. So far we have had 70 agents logged in and working with no issues.


Scratch install Vicidial on Centos6
1 database server
1 webserver PHP7
4 asterisk boxes
1 admin server/database slave

Re: ViciPhone - Our WebRTC Phone

PostPosted: Mon Aug 07, 2017 3:11 am
by chornyi_taras
ngtechnologies wrote:
thirdhatch wrote:We figured out the issues with PBXWebPhone. But we are having trouble getting it to work with Firefox. It only works with Chrome.


We upgraded to PHP7 in our web server (actually tried to upgrade PHP5 to PHP7 and broke Vicidial, was new install with PHP7 installed before any Vicidial or prerequisites were added) and works Chrome and Firefox, but not IE or Edge. So far we have had 70 agents logged in and working with no issues.


Scratch install Vicidial on Centos6
1 database server
1 webserver PHP7
4 asterisk boxes
1 admin server/database slave


so you have patched asterisk to have webphone working in Firefox?
regarding Edge support- sipJs supposed to support it in nearest future https://github.com/onsip/SIP.js/issues/432

Re: ViciPhone - Our WebRTC Phone

PostPosted: Sat Sep 02, 2017 11:35 pm
by ngtechnologies
chornyi_taras wrote:
ngtechnologies wrote:
thirdhatch wrote:We figured out the issues with PBXWebPhone. But we are having trouble getting it to work with Firefox. It only works with Chrome.


We upgraded to PHP7 in our web server (actually tried to upgrade PHP5 to PHP7 and broke Vicidial, was new install with PHP7 installed before any Vicidial or prerequisites were added) and works Chrome and Firefox, but not IE or Edge. So far we have had 70 agents logged in and working with no issues.


Scratch install Vicidial on Centos6
1 database server
1 webserver PHP7
4 asterisk boxes
1 admin server/database slave


so you have patched asterisk to have webphone working in Firefox?
regarding Edge support- sipJs supposed to support it in nearest future https://github.com/onsip/SIP.js/issues/432


No patching, actually we told agents to use Chrome and a few didn't listen and were using Firefox without issues.

Re: ViciPhone - Our WebRTC Phone

PostPosted: Sat Sep 02, 2017 11:39 pm
by ngtechnologies
Any update when the actual ViciPhone will be available for production use?

Re: ViciPhone - Our WebRTC Phone

PostPosted: Wed Oct 11, 2017 1:14 pm
by mcargile
We are getting ready to fully release ViciPhone. Currently doing some code clean up and finishing up the documentation.

If you have been beta testing ViciPhone, please read this topic:

viewtopic.php?f=3&t=37729

Re: ViciPhone - Our WebRTC Phone

PostPosted: Thu Nov 02, 2017 9:28 pm
by rrb555
You able to finish all the documentation? We will be deploying ViciPhone once it is out.

Re: ViciPhone - Our WebRTC Phone

PostPosted: Fri Nov 03, 2017 9:25 am
by mcargile
Documentation is basically done. All that is left is to finish the code clean up and release candidate testing. Hoping for a formal release within the next 2 weeks.

Re: ViciPhone - Our WebRTC Phone

PostPosted: Mon Nov 13, 2017 12:52 pm
by mcargile
Found one bug in the Release Candidate which was fixed. Now it is a matter of finishing the installation documentation.

Re: ViciPhone - Our WebRTC Phone

PostPosted: Sat Dec 09, 2017 4:50 pm
by thephaseusa
Version: 2.14b0.5
SVN Version: 2872
DB Schema Version: 1527
ViciBox v.7.0.4| Asterisk 11.25.1-vici |
4 Box Cluster of 1 Database, 1 Asterisk, 1 Web, & 1 Archive Server.

The new viciphone sounds exciting. Is it included in vicidial now? Do you have to install vicibox 8.0.1 to use it, or will a current svn provide it?

Will call quality be as good and reliable with viciphone as with say ekiga and zoiper?

Also is the idea behind it to only have to configure the soft phone on the server, and not have to install on every work station?


John Merritt

Re: ViciPhone - Our WebRTC Phone

PostPosted: Tue Jan 02, 2018 7:21 pm
by rrb555
Any update on this?

Re: ViciPhone - Our WebRTC Phone

PostPosted: Wed Jan 24, 2018 12:40 pm
by dreedy
This looks like a great item to add to vicidial. It looks like the code is completed or almost complete. How do we go about getting this or is this not available still ?

Re: ViciPhone - Our WebRTC Phone

PostPosted: Wed Jan 24, 2018 1:24 pm
by williamconley
You could try this until they answer:

https://github.com/chornyitaras/PBXWebPhone

Re: ViciPhone - Our WebRTC Phone

PostPosted: Wed Jan 24, 2018 1:29 pm
by dreedy
I have tried that and got it to work in my test sever. I got it to work from and external connection, but i ran into an issue with getting it to work on site.

Re: ViciPhone - Our WebRTC Phone

PostPosted: Wed Jan 24, 2018 2:12 pm
by williamconley
Did you try upgrading to Vicibox latest (8.X)? That will likely be required with ViciPhone as well.

Re: ViciPhone - Our WebRTC Phone

PostPosted: Wed Jan 24, 2018 2:16 pm
by dreedy
Atm my test server is on version 7.0.3. I have redo it and make it an 8.x version and that should be no problem. Is the viciphone included with the 8.x version now?

Re: ViciPhone - Our WebRTC Phone

PostPosted: Wed Jan 24, 2018 3:46 pm
by williamconley
Not yet AFAIK

Re: ViciPhone - Our WebRTC Phone

PostPosted: Wed Jan 24, 2018 5:18 pm
by mflorell
Just send in an email to support@vicidial.com to get the draft instructions for how to use the beta vicidial webrtc phone.

Since WebRTC is not yet a finalized standard, Google has decided to muck around with requirements for it, so soon in Google Chrome you won't be able to use a WebRTC phone with an Asterisk 11 server, due to changes in "requirements" which are not supported in Asterisk 11. So, you will need to use Asterisk 13 instead. We have clients running it now in production, but these recent changes have thrown a wrench into our official release plans until we make a few changes to our code and the instructions on the Asterisk side.

Re: ViciPhone - Our WebRTC Phone

PostPosted: Fri Feb 16, 2018 10:26 am
by frequency
Code: Select all
https://sites.google.com/a/chromium.org/dev/Home/chromium-security/deprecating-permissions-in-cross-origin-iframes#TOC-To-continue-to-use-permissions-from-iframes-on-your-website...


Getting WebRTC error on the servers for last one month. Is this related to Google Chrome? Any change made for AST11? Because we failed to used AST 13 as well and haven't succeeded updating to AST13.

Re: ViciPhone - Our WebRTC Phone

PostPosted: Fri Feb 16, 2018 11:54 am
by mflorell
Asterisk 13 is going to be required with new versions of Chrome if you want to use WebRTC.

In addition to this, I also added the microphone permissions flag to the webphone IFRAME in the vicidial.php svn/trunk codebase, so if you are getting the permissions error, you will want to upgrade to a more recent svn/trunk revision.

Re: ViciPhone - Our WebRTC Phone

PostPosted: Fri Feb 16, 2018 1:14 pm
by frequency
mflorell wrote:Asterisk 13 is going to be required with new versions of Chrome if you want to use WebRTC.

In addition to this, I also added the microphone permissions flag to the webphone IFRAME in the vicidial.php svn/trunk codebase, so if you are getting the permissions error, you will want to upgrade to a more recent svn/trunk revision.


Running on 2866. Upgrading to latest SVN would not work with AST11? will it work on Firefox or Opera?

AST13 upgrade is failing, i tried on two demo servers. asterisk reload is almost empty. Followed exactly the same path, but it wont start correctly. what could be the issue?

Image

Re: ViciPhone - Our WebRTC Phone

PostPosted: Fri Feb 16, 2018 6:11 pm
by mflorell
How did you install Asterisk 13?

We do have a package within OpenSuSE, but here are the last working from-source instructions I used:
http://vicidial.org/docs/ASTERISK_13.txt

Re: ViciPhone - Our WebRTC Phone

PostPosted: Fri Feb 16, 2018 6:43 pm
by frequency
mflorell wrote:How did you install Asterisk 13?

We do have a package within OpenSuSE, but here are the last working from-source instructions I used:
http://vicidial.org/docs/ASTERISK_13.txt


via Kumba's post. viewtopic.php?f=8&t=37864

I did try via the link you provided back, like two months ago and that did not work either.

Image

Re: ViciPhone - Our WebRTC Phone

PostPosted: Thu Feb 22, 2018 12:18 pm
by yass_rules
mflorell wrote:Just send in an email to support@vicidial.com to get the draft instructions for how to use the beta vicidial webrtc phone.

Since WebRTC is not yet a finalized standard, Google has decided to muck around with requirements for it, so soon in Google Chrome you won't be able to use a WebRTC phone with an Asterisk 11 server, due to changes in "requirements" which are not supported in Asterisk 11. So, you will need to use Asterisk 13 instead. We have clients running it now in production, but these recent changes have thrown a wrench into our official release plans until we make a few changes to our code and the instructions on the Asterisk side.


Hello Matt, can you tell where you I can find which will be requirements that Chrome will change in the future so I can have a reference of it?, I tried to google it but I couldn't find anything related

Re: ViciPhone - Our WebRTC Phone

PostPosted: Thu Mar 08, 2018 12:30 pm
by Nefariousparity
Hi guys!
I am also trying to get the WebRTC phone working. I can get it to actually register. I followed the above tutorial. I spun up a test instance of latest Vicibox ISO (Specs in the bottom) I am getting this error. I have for funsies done chmod 777 ahd chown root:asterisk on certs generatedusing lets encrypt getting this error.

ERROR[29991][C-000007fa]: res_rtp_asterisk.c:1375 ast_rtp_dtls_set_configuration: Specified certificate file '/etc/letsencrypt/live/viciphone.funurlhere.com/cert.pem' for RTP instance '0x7f76d0010a98' could not be used
[Mar 8 09:27:20] ERROR[29991][C-000007fa]: chan_sip.c:5758 dialog_initialize_dtls_srtp: Attempted to set an invalid DTLS-SRTP configuration on RTP instance '0x7f76d0010a 98'
[Mar 8 09:27:20] NOTICE[29991][C-000007fa]: channel.c:5690 __ast_request_and_dial: Unable to request channel SIP/5000


ISO Vicibox 8.01
Asterisk: 11-25-1
Vicidial:
VERSION: 2.14-662a
BUILD: 180306-1718

Thank you for years of help!

Re: ViciPhone - Our WebRTC Phone

PostPosted: Thu Mar 08, 2018 12:42 pm
by williamconley
To be clear:

Confirm /etc/letsencrypt/live/viciphone.funurlhere.com/cert.pem is actually on the server and is in fact a valid SSL cert for that domain. Don't decide, prove both statements are true.

Then, of course, verfify that viciphone.funurlhere.com is the domain you are using to access the vicidial agent screen and post the relevant web phone settings from Vicidial while you're at it.