BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
Â
DIY Telephony and Messaging Services with FOSS
1. Do It Yourself
Telephony and Messaging Services
With FOSS
Anton Raharja
antonrd@gmail.com
twitter.com/antonrd
antonraharja.com
GNOME Asia Summit 2015
May 9th
, 2015
2015.gnome.asia
3. Anton Raharja 2015.gnome.asia 3
Services
â
Telephony and messaging services you can provide
â Voice call
â
Mimic conventional telephony services (PSTN, GSM)
â
Make calls using multiple devices not just a plain analog phone
â Use IP Phone
â Use Softphone on desktop or smartphone
â Video call
â Voice call with face to face video
â Voice and video conference
â
Virtual meeting
â Multiple video stream from all participants
â Online lecture or busines presentation
â Single video stream broadcasts to all other participants
â Messaging
â Texting, chatting and notification
â Instant Messaging
â SMS
â Value Added Services
â SMS polling, quiz, subscribe, auto-reply, etc
4. Anton Raharja 2015.gnome.asia 4
Known Providers
â Some providers you might know
â Skype, Google Hangouts, etc
â Whatsapp, Telegram, etc
â Wechat, Line, Viber, etc
â VoIP service providers
â Bulk SMS service providers
â Nexmo, Twilio, Clickatell, Infobip, etc
â Carriers
5. Anton Raharja 2015.gnome.asia 5
Do It Yourself Possibilities
â Let see, can we DIY telephony and messaging services ?
â Googling
â Keyword: open source telephony
â Keyword: open source SMS
â You'll know that most of search results are promising
â How mature ? Are they production ready ?
â Asterisk has been installed in many places to replace conventional IP PBX and SIP gateway
â Hundreds of paid Asterisk installation, serious jobs, have been done by several System Integrators companies
in Indonesia, not to mention in the world
â Asterisk has been pre-installed in a box as an appliance ready to be shipped since more than 5 years ago
â Some of those appliances have gain POSTEL certification (Indonesia telecommunication devices certification if
the box to be sold in Indonesia)
â Some VoIP service providers are using Asterisk, Kamailio or OpenSIPS to power all or some of their SIP gateway
and softswitch
â There are installation services, supports and maintenances, free or paid, online or offline services available
â Speaking of SMS, playSMS has been implemented by many companies to provide SMS services to support their
businesses
â Scan conversations in http://bit.ly/playsmsusergroup
6. Anton Raharja 2015.gnome.asia 6
Today's Workshop Menu
â Free and open source software projects
â Telephony and Instant Messaging
â VoIP ID
â VoIP ID References
â Additional VoIP ID References
â VoIP ID Installation
â OpenSIPS for VoIP ID
â OpenSIPS Installation
â VoIP ID Installation Summary
â SMS
â playSMS
â Kannel
â PlaySMS with Kannel
8. Anton Raharja 2015.gnome.asia 8
VoIP ID
â About VoIP ID
â Free and open source software
â Project website: http://antonraharja.github.io/voip-id
â Facebook group: https://www.facebook.com/groups/voipid
â A suite of tools to build hosted or cloud VoIP server
â Web based user interface written in PHP (Laravel)
â Back-end VoIP server provided by OpenSIPS
â Capable of managing multiple domains and multiple phone
numbers in a single installation
â Supported and maintained by local team (Indonesian)
9. Anton Raharja 2015.gnome.asia 9
VoIP ID References
â VoIP ID book project
â URL: http://antonraharja.github.io/book-voip-id
â Just created, so far contains 2 sub-chapters only, they are:
â How to install web user interface
â How to install back-end SIP server
â The web user interface part is the VoIP ID
â The back-end SIP server is OpenSIPS
â Real-world demo (working demo):
â Telepon Rakyat, free hosted VoIP server
â You can literally provides VoIP services to your community without building,
owning, managing your own server
â URL: https://teleponrakyat.id
10. Anton Raharja 2015.gnome.asia 10
Additional VoIP ID References
â OpenSIPS 101:
â URL: http://github.com/antonraharja/book-opensips-101
â You might want to know more about OpenSIPS before
starting VoIP ID
â Knowing basic is always recommended
â Laravel Introduction
â URL: http://laravel.com/docs/4.2/introduction
â Knowing how to operate development tools would be a plus
â You might want to join local communities so that you can
advance your knowledge on this
11. Anton Raharja 2015.gnome.asia 11
VoIP ID Installation
â Follow installation instructions
â Things to remember before starting
â There are 12 steps that need to be followed correctly and in order
â The manual is for Ubuntu server 14.04 or 15.04 so you need to prepare one of
them. I suggest not to waste your time by asking the manual for other distro, you
can always try them on your own once you have experience completing this
manual
â I was using VirtualBox when writing the manual, you might consider using it too
(vs install on real server)
â You need to connect to the Internet, you will download lots of packages
â Again, follow the manual correctly and in order. Stop if you don't understand or
need to discuss something or experiencing errors. Join the VoIP ID Facebook
group and discuss your problem there
â Bookmark below URL, visit the URL for the installation instructions when you're
ready: http://bit.ly/installvoipid
12. Anton Raharja 2015.gnome.asia 12
OpenSIPS for VoIP ID
â About OpenSIPS
â Free and open source software
â Project website: http://www.opensips.org
â Sophisticated and powerful SIP server
â Capable of switching thousands of VoIP calls in a second
â Requires relatively low CPU and memory resources
â Capable of hosting multiple domains, routing multiple
gateways and registering lots of users or phone numbers
13. Anton Raharja 2015.gnome.asia 13
OpenSIPS Installation
â Follow installation instructions
â Things to remember before starting
â There are 9 steps that need to be followed correctly and in order
â You must first do the VoIP ID Installation
â This manual is using OpenSIPS version 1.9.1-tls
â You need to connect to the Internet, you will download lots of packages
â Follow the manual correctly and in order. Stop if you don't understand or need to
discuss something or experiencing errors. Join the VoIP ID Facebook group and
discuss your problem there
â Bookmark below URL, visit the URL for the installation instructions when you're
ready: http://bit.ly/installopensipsforvoipid
14. Anton Raharja 2015.gnome.asia 14
VoIP ID Installation Summary
â There are 2 FOSS projects that you need to install
â VoIP ID
â OpenSIPS
â VoIP ID installation instructions available at this shortcut: http://bit.ly/installvoipid
â OpenSIPS installation instructions available at this shortcut:
http://bit.ly/installopensipsforvoipid
â Both shortcuts above are linked to the VoIP ID Book Project
â What you'll get after installation is a website just like Telepon Rakyat
â Some information about Telepon Rakyat:
â How to start utilizing Telepon Rakyat: http://bit.ly/voipiddocs
â This could be your VoIP ID user manual (currently in Bahasa Indonesia only)
â My blog post introducing Telepon Rakyat: http://wp.me/p7SJ-9s
16. Anton Raharja 2015.gnome.asia 16
playSMS
â
About playSMS
â 10 years old free and open source software project
â Project website: http://www.playsms.org
â User group or mailing list: http://bit.ly/playsmsusergroup
â A user interface for multiple SMS software-based gateway, hardware and bulk providers
â Web based user interface written in PHP (own framework)
â Capable of hosting multiple domain in a single installation
â Complete with SMS routing, credit system and value added services
â
SMS polling, quiz, subscribe, auto-reply, etc
â Supported and maintained local team (Indonesian)
â Additional FOSS project playSMS client software for Android
â playSMS Android app project
â Project website: https://github.com/artivisi/playsms-android
â Listed in Google Play:
https://play.google.com/store/apps/details?id=com.artivisi.android.playsms
17. Anton Raharja 2015.gnome.asia 17
Kannel
â About Kannel
â Free and open source software
â Project website: http://www.kannel.org
â Super flexible SMS gateway that can interact with GSM
modems and SMPP providers
â Capable of handling hundreds of thousand SMS per
day
18. Anton Raharja 2015.gnome.asia 18
playSMS with Kannel
â playSMS and Kannel installation instructions, configuration
and case study are available from playSMS Book Project
â URL: http://antonraharja.github.io/book-playsms/
â The book content will be added one content at a time
19. Anton Raharja 2015.gnome.asia 19
playSMS Installation Summary
â There are 2 FOSS projects that you need to install
â playSMS
â Kannel
â Both playSMS and Kannel installation instructions are available from
playSMS Book Project URL
â How to configure playSMS and Kannel to work together also can be
found at the playSMS Book Project URL
â What you'll get after installation is a website just like playSMS ID
â URL: http://playsms.id
â Demo information can be found here:
â URL: http://playsms.org/demo