A free and open source self-hosted Skype/Zoom alternative that respects your freedom and privacy !
License: GNU Affero General Public License Version 3

Version: 1.0.0
Release date: 2021-9-18
Git repository


A fully featured browser phone that connects to an Asterisk server and implements audio/video calls, text messaging and video conferencing by using SIP over WebSocket and WebRTC.

Roundpin allows video, audio and text conversations with other extensions configured on the same Asterisk server. It can be also used to make and receive audio phone calls to/from any phone number in the world, if you connect your Asterisk server to a SIP provider, such as Telnyx or Localphone. If you use a SIP account with an attached real phone number, you can have very cheap phone calls (prices per minute starting from $0.005 in the US and $1/phone number/month). We recommend Telnyx and Localphone for the quality of their services and very low prices (Cover Tower has no affiliation with the two providers). In the installation instructions mentioned below, we describe in detail how to configure Asterisk and how to connect it to a Telnyx or Localphone account. However, any SIP provider that allows external Asterisk servers to connect to their servers, should work.

Roundpin also implements video conferencing. Users can initiate video conferences with other extensions configured in Asterisk but also with external users who don’t have Roundpin accounts. To participate in a conference, an external user only needs a device with a video camera (laptop, tablet, phone, etc.), a browser, and the link to the conference.

Roundpin logs recent phone calls and their duration, it allows pausing/muting and transferring phone calls as well as in-browser call recording for one-to-one audio/video calls. The underlying Asterisk server can be used to implement advanced PBX features, such as Interactive Voice Response (IVR or voice menu), voicemail, queue management, music on hold, number blacklisting, call recording, etc. All these can be done independently of your SIP provider. You only need an account and a real phone number from the SIP provider, to be able to interface with the Public Switched Telephone Network (PSTN), all the rest is done on your own server, including the IVR, the voicemail, the call recording, etc. This allows you to have total control over your communications and more privacy than if you were using the SIP provider’s voicemail, call recording, etc.

This application includes large parts of “Browser Phone”, developed by Conrad de Wet and licensed under GNU AGPL v3.0 and of “Cyber Mega Phone 2k” developed by Digium, Inc. and licensed under the MIT License. We thank them for their amazing work and for licensing their software in a way that promotes user freedom and collaboration. To interact with WebRTC, Roundpin uses two versatile JavaScript libraries: SIP.js (v0.11.6) for regular calls, and JsSIP (v3.7.0) for video conferences. All due copyright notices are listed in the LICENSE.txt file located in the root directory.

Main Features

  • SIP audio calling
  • SIP video calling
  • SIP video conferences with unlimited number of participants
  • Call transfer
  • Call statistics
  • In-browser call recording for one-to-one audio/video calls
  • Screen sharing during video calls and video conferences
  • Link-based access to video conferences (for external users)
  • SIP messaging with double encryption (end-to-end RSA encryption, plus TLS)
  • File transfer during text chat
  • Roundcube email integration
  • Responsive, mobile friendly interface

Audio conversation

Video conversation

Text conversation

Incoming call and onscreen notifications

Call transfer

User menu

Main dialpad

Settings

Edit contact

Check emails

Compose email

Video conference

Video conference with buttons

Call graphs

Browsers

Firefox is recommended. It also works with the other major browsers.

Programming Languages

Roundpin only uses PHP, SQL, jQuery, pure JavaScript, CSS and HTML. This means it’s robust, efficient, light-weight and easy to maintain and debug.

Minimum Requirements

  • VPS or dedicated server with 1 CPU core and 1 GB RAM. The size on disk is about 24 MB. It can work on machines with much lower specifications, but if you want to host video conferences with many participants, it’s recommended to have at least 1 GB RAM. Some of the best quality VPSs at the lowest prices are offered by Linode and OVH (Cover Tower doesn’t have any affiliation with the two providers).

  • The LEMP stack. It may work with Apache but it has been exclusively tested with Nginx. We recommend Nginx and all the installation instructions mentioned below are for Nginx. Recommended operating system: Debian 10 or newer.

  • Asterisk v18.0.0 or newer (with chan_pjsip enabled) and Coturn v4.5.1.1 or newer (although it will also work with older versions of Asterisk and Coturn).

Note: Roundpin is a component of RED SCARF Suite. You can install and use Roundpin alone, but if you install Roundpin together with the other applications that make up RED SCARF Suite, you will need a VPS or dedicated server with higher specifications: 1 CPU core, 2 GB RAM and 40 GB storage.

Installation

Coturn can be used as a STUN server to assist Roundpin in connecting users who are behind routers. Therefore, a complete installation of Roundpin implies the installation of Asterisk + Coturn + Roundpin. Complete and detailed instructions on how to install these 3 applications can be found at the following links:

Please note that the installation instructions for Asterisk are quite long, but you don’t need to follow all of them. The article presents in detail how to implement 4 classes of dial plans. You should choose just the one that is the closest to your situation.

If you want to integrate Roundcube with Roundpin, to be able to open a new email window with one click, to easily send emails to your Roundpin contacts, and to be able to check incoming emails from inside Roundpin, you will need to install a complete mail server by following the detailed instructions presented at the following link:

Contribute

The GitHub Roundpin repository is just a pointer to the official Roundpin repository. We refused to use GitHub for development because of GitHub’s new owner and because centralized services create autonomy and privacy issues, in spite of all the benefits.

If you want to contribute code to this project, please send a message to tech [at] covertower [dot] com, stating your intended improvements. We’ll send you the credentials needed to push code to the “contrib” branch of the official repository. After we review the changes, we can include them in the project. We’ll list the name of all the contributors who made substantial contributions, in the Contributors.txt file located in the root directory.

Please post any bugs that are not security related, or feature requests, on the issue tracker. If you notice bugs related to security, don’t post them on the issue tracker; instead, send them to manager [at] covertower [dot] com .

License

Roundpin as a whole is licensed under the GNU Affero General Public License Version 3 (See the file COPYING.txt located in the root directory, for the text of the license). If you use Roundpin or distribute it in modified or unmodified form, you will need to comply with the terms of the GNU Affero General Public License Version 3.

Roundpin includes parts from other programs/libraries licensed under different free software licenses. We listed these programs/libraries and their respective copyright notices in the LICENSE.txt file located in the root directory.

If you have any questions, you can send them to: