playSMS 1.4.3 on VirtualBox

This article is about playSMS 1.4.3 installation on VirtualBox. What you need is a computer that is connected to the internet and capable of running VirtualBox properly.

To actually send and/or receive SMS you will need another piece that is not part of this article. You can discuss that in playSMS Forum.

I will be using Ubuntu 18.04 on my VirtualBox. That means you can compare this article with previous article playSMS 1.4.3 on Ubuntu 18.04. There should be similarities, but of course the previous article focus on cloud installation and this one is more like local installation.

Since the installation is local you will need to download Ubuntu Server 18.04 ISO file from Ubuntu websites, save it somewhere in your computer.

Continue reading “playSMS 1.4.3 on VirtualBox”

playSMS 1.4.3 on Ubuntu 18.04

playSMS version 1.4.3 has been released, and it is the recommended version as it contains fixes to several bugs and critical security vulnerability. This article is howto install playSMS 1.4.3 on Ubuntu 18.04.

I’m using DigitalOcean (DO) service to test the configuration and commands. Create new Droplet in DO account. Click here to register on DO if you don’t have an account.

Choose Ubuntu 18.0.4 (currently 18.04.3 LTS) and select at least the cheapest service (USD 5). Create and wait for a minute or two for the SSH to be ready. You can then login via SSH and start playSMS installation.

Login to your CentOS droplet (later we will call droplet as server) using SSH and follow instructions below step by step. Read carefully why you need to do each step correctly. Please pay attention to details.

Continue reading “playSMS 1.4.3 on Ubuntu 18.04”

playSMS 1.4 on Ubuntu 16.04 with PHP 7.0

This is the tutorial of howto install playSMS 1.4 on Ubuntu 16.04 with PHP 7.0. I’m using DigitalOcean to write this tutorial. I choose Nginx as the web server and MySQL as the database server.

There are 9 steps that you need to do correctly and in order. It seems complicated and looks like a long tutorial, but its relatively easy to follow and straightforward. Post your question in playSMS user forum should you encountered any problem following this tutorial.

In this tutorial the password is not secure and I’m logged in as root. If you know what you’re doing then you should know that you can always use any Ubuntu 16.04 server, not just on DigitalOcean. And you can always use your own secure password and use non-root login.

Let’s start.

Step 1

Login to your DigitalOcean account, create a Ubuntu 16.04 x64 droplet. In about 2 minutes you’ll have a working Ubuntu 16.04 server. Use SSH to access your server.

If you haven’t got the account, register and I think you’ll get a chance to create a free droplet.

Continue reading “playSMS 1.4 on Ubuntu 16.04 with PHP 7.0”

OpenSIPS on Ubuntu Part 3

Let’s add authentication on this part. Yes, that is the main focus of this article, to add an authentication mechanism so that SIP User Agent (SIP UA) can be authenticated by OpenSIPS.

Upon giving the username and password, UA will send a SIP REGISTER request to OpenSIPS. On 2 previous articles (part 1 and part 2) those SIP REGISTERs were ignored, all UA were just saved on user location by OpenSIPS regardless of what username or password they sent.

Of course we don’t want that for a production server, we want UAs to be authenticated with correct username and password. The username and password that admin set on OpenSIPS for each UA.

Please note that this article is the 3rd part of OpenSIPS on Ubuntu howto series. In order to successfully understood the content of this part you must previously followed article part 1 and part 2:

  • Part 1 talks about OpenSIPS installation and basic configuration.
  • Part 2 talks about how MediaProxy can be used to help OpenSIPS overcome certain NAT issues.

Let’s start part 3: all about authentication.

Continue reading “OpenSIPS on Ubuntu Part 3”

OpenSIPS on Ubuntu Part 1

OpenSIPS 1.11.6 LTS installation on Ubuntu Server 14.04 LTS Part 1.

This article is divided into three sections:

  1. Preparation
  2. Installation
  3. Basic Configuration

The focus on this part is only the installation and a very basic configuration just to see if the OpenSIPS installed properly.

Warning, you have to also follow and do the next part to finalize setups and to secure the OpenSIPS installation on Ubuntu.

Let’s do the part 1.

Continue reading “OpenSIPS on Ubuntu Part 1”

Setting Up STUN/TURN Server on

This article is about how I setup a STUN/TURN service server on my domain, so I do not forget how to do it again later :) You can then use the STUN and/or TURN server on from anywhere, any application that requires one or both of them. is a service server that I setup to test and learn the current IP communication technologies such as WebRTC, SIP and XMPP/Jabber. I also try to seriously setup and maintain it so that it can actually be useful to anyone for actual usages on a long-term.


Actual deployment of STUN/TURN server on is different than this manual. Current implementation the STUN/TURN server on are using different port than the default setup.

Public STUN server address :

Public TURN server address : (UDP/TCP)
Public TURN credential     : public
Public TURN username       : public

This article is divided into three parts:

  • Part 1: Installation
  • Part 2: Basic Configuration
  • Part 3: The Test

The server is using Ubuntu Server 14.04 and the STUN/TURN server software is Coturn.

Just in case you’re wondering why you should need to even use a STUN and/or TURN service server, here are some pages to start with:

Ready ? Let’s begin.

Continue reading “Setting Up STUN/TURN Server on”

Dead Simple Prosody Chat Server

Prosody is a free and open source software that provides XMPP/Jabber server service for chat or instant messaging. It has multi-domain supports and other XMPP/Jabber features.

Let’s install it, configure it and use it. I’ll be using Ubuntu server 14.04 and Prosody from apt-get.

Upgrade the server and reboot:

sudo apt-get -y update
sudo apt-get -y upgrade
sudo reboot

Please note that you may skip above steps if you know what you’re doing.

Install Prosody:

sudo apt-get -y install prosody

That’s it. Installation is finished. Next is to create SSL certificates and do some basic configuration.

Continue reading “Dead Simple Prosody Chat Server”

Convert Nikon D7000 MOV to MP4

I shot several videos during our family trip to Universal Studio Singapore and Legoland on my D7000. Nikon D7000 saves video on MOV format file, but I would like to keep them as MP4 files to match our smartphones videos from Note 2 and LG G2.

Here is how I converted Nikon D7000 MOV to MP4 on my Ubuntu 15.04:

apt-get install ffmpeg
ffmpeg -i DSC_2041.MOV -vcodec libx264 -strict -2 -pix_fmt yuv420p result.mp4

Continue reading “Convert Nikon D7000 MOV to MP4”

Install darktable from source on Ubuntu 14.10

darktable is an amazing software to deal with raw files taken from various camera.

Here is the description I get from file inside the source directory:

darktable is an open source photography workflow application and RAW developer. A virtual lighttable and darkroom for photographers. It manages your digital negatives in a database, lets you view them through a zoomable lighttable and enables you to develop raw images and enhance them.

Certainly there is a simple way to install darktable that is by using apt-get once you added the PPA. More information about that can be read from here.

Currently the PPA will give you darktable 1.4.2 which I found to be OK but I simply need to test the latest, hoping for some fixes or UI changes and new feature. The version 1.4.2 was working fine with some hiccups here and there. The latest one seems faster with no hiccups, couldn’t notice any UI changes though. At the moment, compiling from source get me darktable 1.5.1+68~ge99de72.

Continue reading “Install darktable from source on Ubuntu 14.10”

My slow slow Ubuntu 14.10

My newly updated Ubuntu seemed lagging -_-

Nothing really concerned me on my top but I knew something was wrong. So I installed iotop (used apt-get) to see what was causing lags. From iotop I knew that mediascanner-service-2.0 that was trying to scan my encrypted folder causing the IO almost always 90%++ all the time.

I’m sure there were things you can do about this, but whatever, I didn’t have time to explore them.

So, I did this:

mv /usr/bin/mediascanner-service-2.0 /usr/bin/mediascanner-service-2.0.dist
echo 'exit 0' > /usr/bin/mediascanner-service-2.0
chmod 755 /usr/bin/mediascanner-service-2.0
killall -9 mediascanner-service-2.0

That, fixed the lagging issue.