Roundpin

License: GNU Affero General Public License v3+

Version: 1.0.5
Release date: 2024-11-30

Git repository





Roundpin is a multifunctional browser phone that implements audio/video calling, video conferencing and encrypted text messaging using SIP over WebSocket and WebRTC. It can connect to SIP providers via Asterisk or directly.

Roundpin is intended to be used in conjunction with Asterisk, to benefit from the control, autonomy and advanced PBX features offered by Asterisk. However, it can be used without Asterisk, if you connect it directly to the SIP provider (this implies that the SIP provider allows direct connections from web applications that use SIP over WebSocket).

If Asterisk is used, you can have free video, audio and text conversations with other extensions configured on the same Asterisk server. By connecting your Asterisk server to a SIP provider like Telnyx, Localphone, etc. you can also make and receive audio phone calls to/from any phone number in the world, using a real phone number attached to your SIP account. In the documentation mentioned in the Installation section from 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, will work.

Roundpin also implements video conferencing. Users can participate in video conferences with other extensions configured in Asterisk but also with external users who don’t have Roundpin accounts. If they have a device with a video camera, to participate in a conference, external users only need 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., as we describe in detail in the documentation mentioned below. All these can be done independently of your SIP provider. You need a SIP provider only to attach a regular phone number to your SIP account and be able to interface with the Public Switched Telephone Network (PSTN); all the rest can be done on your own server, including the IVR, voicemail, call recording, etc. This allows you to have total control over your communications and more privacy than if you were using your SIP provider’s voicemail, call recording, etc.

If you connect Roundpin to a SIP provider like Telnyx via Asterisk, you can make very cheap phone calls at prices starting from $0.005 per minute in the US. Phone numbers in various countries cost around $1/phone number/month. Double Bastion is not affiliated with Telnyx or Localphone.

Main Features

  • SIP audio calls
  • SIP video calls
  • SIP video conferences
  • Call transfer/mute/hold
  • In-browser call recording for video conferences and one-to-one audio/video calls
  • Screen sharing during video calls and video conferences
  • Link-based access to video conferences for external users
  • Encrypted text messaging (AES + RSA encryption, in addition to TLS)
  • File transfer during text chat
  • Public and private text messaging during video conferences
  • Roundcube email integration
  • Responsive interface

Audio conversation

Video conversation

Text conversation

Send media files

Text conference

Incoming call and onscreen notifications

Call transfer

User menu

Main dialpad

Settings

Edit contact

Check emails

Compose email

Video conference

Send public messages during video conference

Call graphs

Browsers

All major browsers are supported. Firefox is recommended.

Programming Languages

Roundpin only uses PHP, SQL, JavaScript / jQuery, CSS and HTML. This means it’s 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 function on machines with much lower specifications. Yet, for video conferences with a large number of participants, it’s recommended to use 1 GB of RAM or more.
  • The LEMP stack. It should also work with Apache but we recommend Nginx.

If you decide to connect Roundpin to your SIP provider via Asterisk, you will need Asterisk version 18.0.0 LTS (with chan_pjsip enabled) or newer, installed on a VPS or dedicated server. If you want to use a STUN server, we recommend Coturn (version 4.5.1.1 or newer).

Note: Roundpin is a component of RED SCARF Suite. You can install and use Roundpin alone, but if you want to install all the applications that make up RED SCARF Suite, you will need a VPS or dedicated server with 2 GB RAM.

Installation

Complete and detailed instructions on how to install and use Roundpin can be found here. That documentation also contains the links to the instructions for installing Asterisk and Coturn (Coturn can be used as a STUN server to assist Roundpin in connecting users who are behind routers).

Please note that the installation instructions for Asterisk presents in detail how to implement 4 classes of dial plans, but you should choose only the one that is the closest to your situation.

Asterisk version 18.0.0 is coded such as by default it allows a maximum of 15 video conference participants. However, this number can be increased to around 100 by changing the code before compiling, as we explain in detail in the above mentioned documentation.

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 here.

Contribute

The GitHub Roundpin repository is just a pointer to the official Roundpin repository. We don’t use GitHub for developing Roundpin because GitHub is owned by one of the companies that proved their disrespect for digital freedom over the years 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 submit this form, mentioning your intended changes. 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 names of all the contributors, 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] doublebastion [dot] com .

License

Roundpin as a whole is licensed under the GNU Affero General Public License, version 3 or any later version (See the file COPYING.txt located in the root directory, for the text of the license).

Roundpin includes large parts of “Browser Phone”, licensed under GNU AGPL v3.0 and of “Cyber Mega Phone 2k” licensed under the MIT License. It also 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: