Run RingCentral Phone on Raspberry Pi

Embbnux Ji
RingCentral Developers
2 min readNov 18, 2021

Raspberry Pi is a small single board computer, it can act as a cheap mini personal computer, or as a control center of IoT devices. In this article, I will introduce how to run the RingCentral phone service inside Raspberry Pi, so we can connect Raspberry Pi with Cloud Communications.

RingCentral Embeddable in Raspberry Pi

In the previous article, we introduce how to build a desktop app with RingCentral Embeddable and Electron. Since it works for Linux, so we can also make it work with Raspberry Pi. Raspberry Pi’s default OS Raspberry Pi OS is based on Debian (a Linux distribution). But we need to rebuild the app with the ARMv7 platform. When we build the electron app in our local computer, it builds for i386 or amd64 platform by default.

Build for ARMv7

First we clone the project and install dependencies:

$ git clone https://github.com/ringcentral/ringcentral-embeddable-electron-app.git
$ cd ringcentral-embeddable-electron-app
$ yarn

Then we will build for the ARMv7

$ yarn package --dir --armv7l --linux deb

After building, we can get deb package for ARMv7 in the release folder.

Copy the package and install in Raspberry Pi. Then we can get the app from the Start Menu.

You can get the precompiled package here. It is recommended to use it with Raspberry Pi 3B or Raspberry Pi 4B.

RingCentral Embeddable with Raspberry Pi

Since the app is based on the RingCentral Embeddable and Electron, it allows us to use Electron JS to transfer data between RingCentral Embeddable and Raspberry Pi.

You can get how to interact with RingCentral Embeddable in electron from this article , such as incoming call or SMS notifications.

Electron.js is run on the System. So wen can use Electron.js to call the system API directly.

Other solutions

In this article, we use Electron and RingCentral Embeddable to run RingCentral services in Raspberry Pi. In this solution, it supports UI and voice transmission.

If you only need voice transmission such as real time translation service, we can use RingCentral Softphone JS SDK. It can run on node.js.

If you don’t need UI and voice transmission, only want to control your RingCentral service and get event notification from RingCentral, we can just build app based on RingCentral RESTful API. Go here to get official SDKs. Please let us know what you think by leaving your questions and comments below. To learn even more about other features we have make sure to visit our developer site and if you’re ever stuck make sure to go to our developer forum.

Want to stay up to date and in the know about new APIs and features? Join our Game Changer Program and earn great rewards for building your skills and learning more about RingCentral!

--

--