Programmable Telecoms inside a Telco by Jesus Cruz Manjavacas, VAS Development Expert at PLAY
TADSummit EMEA Americas 2020
API Review:
Messaging (SMS, USSD, RCS);
Network Status (Location, Subscriber Status, etc.);
Device Capabilities;
Third Party Call Control;
Identity (OAuth2, Mobile Connect GW);
WebRTC (deprecated, will explain why);
Subscription Management and Direct Billing.
Services example: VirtualPBX service built on top of our Call Control API.
Technology review: Java, Spring Boot, and Erlang.
Partner / supplier review: Jtendo and OVOO.
The importance of open source: Kamailio, FreeSwitch,
Prometheus, Grafana, ELK, and Ansible.
Learning and next steps: developer portal, cloud native but not yet public cloud.
2. Agenda
PlayAPI Review (Platform)
Call Control API (API Case Study)
VirtualPBX Solution (Service Example)
Related topics:
o The importance of open source
o Technology used
o Supplier experience
o Lessons learnt
o Next steps
3. About Play
o Play (P4 Sp.z.o.o.)
o Polish mobile telecommunications provider
o Born in 2007
o In 2017 up to 27% market share
o IPO: July 2017 on the Warsaw stock exchange
o https://www.play.pl/
o https://www.linkedin.com/company/p4/
4. About Our Team
o Value Added Services
o Voice & Messaging services
o Play NOW TV Platform
o Partners Integration
o Direct Billing
o Mobile Identity GW
o Mobile Applications
o And more ☺
… and about me ☺
5. PlayAPI Review
PlayAPI is a set of APIs:
o Messaging
o Network Status
o Device Capabilities
o Third Party Call Control
o Identity
o WebRTC
o Subscription Management
o Direct Billing
o Other Internal APIs
Advantages:
o Easier integration of telco capabilities into
applications: SMS, calls, USSD, …
o No need for telco knowledge when building
apps
o Programming language agnostic at the
application layer
o Wholesale: easier and faster Partner
integration
o Reduces Time to Market
o Internal use
7. PlayAPI Review
Operation & Manteinance:
o Logs, CDRs and TroubleShooting: ELK Stack
o Metrics: Prometheus
o Metrics Visualization: Grafana
8. Call Control API
What was the need?
o Replacement for the voice platform based on
Open Source Sailfin project as a SIP Server (SIP
Servlets)
o New business requirements: VirtualPBX
Solution
Which were the options?
o Legacy SIP Servlets products: Oracle OCCAS,
Rhino OpenCloud, Telestax*
o Open Source: FreeSwitch, Asterisk
9. Call Control API
Call Control Node
SIP Proxy - Kamailio
Core Network (CS & IMS)
SIP
Call Control GW
Call Control FreeSwitch Adapter
Media Server - FreeSwitch
Media Server - FreeSwitch
Media Server - FreeSwitch
SIP
Erlang
Erlang
RTP
SIP Proxy
Call Control Node
SIP Proxy - Kamailio
Core Network (CS & IMS)
Call Control GW
Call Control FreeSwitch Adapter
Media Server - FreeSwitch
Media Server - FreeSwitch
Media Server - FreeSwitch
SIP
Erlang
Erlang
SIP
RTP
10. Call Control API
PlayAPI Call Control API
CC-GW-1 CC-GW-2 CC-GW-3 CC-GW-4
WSEL-1 WSEL-2
...PVB VirtualPBX RBT MCN
WSGW
(Web Services
Gateway)
WSEL
(Web Service
Exposition Layer)
Application Layer
HTTP(S)
HTTP
Core Network &
Messaging
SIP/RTP
Voice Application Platform
domain-pvb
domain-
vpbx
domain-rbt domain-mcn
Sailfin SIP Server
SIP Servlets
Core Network &
Messaging
SIP/RTP
11. VirtualPBX Solution
o Mobile only: SIM card based
o Small and Medium B2B Customers
o Intiuitive
o User Friendly
o Multitenant
o Features:
o IVR
o Recording
o DTMF redirections
o VPN Short Numbers
o Parallel ringing
o Hunting list
o Roaming filter
o White/Black list
o Queues
o Virtual queues
o Statistics
o Reporting & Statistics
o Reception
o more
12. VirtualPBX Solution
o Akka Tookit: actor model communication
o Open Source with vivid community behind
o Stateless, ashynchronous, non blocking
o Horizontal scalability
o Resiliency and elasticity
o Small JVM footprint: Java or Scala
o High performance & fault tolerance
o Cloud-Native ready
13. Lessons Learnt and Next Steps
Lessons learnt:
o APIs facilitates R&D and new services ideas
o Having our own solution provides us with
elasticity, adding more functionalities
depending on business needs.
o If there are no standards, better to design
your own API model
o Confirmation that the Open Source is worth it,
we have to support the community back
o Experienced suppliers, specially in telco, is a
blessing
Next Steps:
o Upgrade some of our APIs, providing a
layer on top simplifying their use, SDKs
o Work on a developer portal and better user
interface for developers and partners
o 5G: new opportunities
o Cloud Native 100% (only when 100%
needed!)
14. Thank you ☺
Jesus Cruz Manjavacas
jesus.cruz@play.pl
@JesCruMan
https://www.linkedin.com/in/jesuscruz/
Q&A