SlideShare una empresa de Scribd logo
1 de 13
Asterisk SCF
A developer’s view
  Tim Panton - PhoneFromHere.com
       twitter.com/steely_glint
Asterisk SCF recap

• Scalability
• Fault tolerant
• Extensible
• Performance
Developer Ecosystem

• Tip of the hat to Digium Inc
• Developers involved throughout
• Requirements from ecosystem
• Open development process
What I wanted

• Extensibility
• Modern Language support
• Dynamic
• Cloud friendly
The Experiment
• Git snapshot of current code
• Not a release !
• Not a routing engine
• Help from asterisk-scf-dev IRC
• Used Groovy (via JVM)
Live code demo

• Code at github
• https://github.com/steely-glint/ascf-groovy-
  demo
Auto
 generated
                   Static code un-demo
  java classes
                                                                                        Initialize
                   import AsteriskSCF.Configuration.SipSessionManager.V1.*;            ICE RPC
                   import AsteriskSCF.Core.Discovery.V1.*;                              protocol
                   import AsteriskSCF.System.Configuration.V1.*;
 Connect to
Ser viceLocator
 Ser vice          ic = Ice.Util.initialize(null);
                   sloc = ServiceLocatorPrxHelper.checkedCast(ic.stringToProxy("LocatorService:tcp -p 4411"));              List all
                   services = Arrays.asList(sloc.locateAll(new SipConfigurationParams()));                                  ser vices

                   sipconf = services.findAll { item -> ConfigurationServicePrxHelper.checkedCast(item) != null}
 Find the SIP      sc = ConfigurationServicePrxHelper.checkedCast(sipconf[0]);
Session              cgrps = [                                                                                           Pick the   first
 Manager(s)            { g = new SipGeneralGroup(); g.configurationItems = [:] ; return g} ,                             one
                       { u = new SipUDPTransportGroup();
                         u.name = "h-udp";
                         u.configurationItems = [ "host" : new SipHostItem(1,"127.0.0.1",5081)];
  Define a                return u},
 couple of local       { u = new SipUDPTransportGroup();                                                          Convert to
                         u.name = "h-udp1";                                                                      ICE friendly
  endpoints
                         u.configurationItems = [ "host" : new SipHostItem(2,"127.0.0.1",5080)];                  format
                         return u}];

                   grps = cgrps.collect{item -> item.call()}
                   sc.setConfiguration((ConfigurationGroup[])grps.toArray());                 Send the
                                                                                             request to
                                                                                              ASCF
What have I proved ?

• Dynamic configuration
• Cloud friendly
• JVM language support (java, scala, javascript)
• Components independently managable
Voice 3.0 ready

• Adornment
• Session Cookies
• webRTC
• Hooks
Conclusions
• Still a work in progress
• Much to be done
• Much to be documented
• Fundamentals are right
• Future-proofing is in place
Thanks

• Comments or questions @steely_glint
• My blog at babyis60.wordpress.com
Asterisk SCF Developer's View

Más contenido relacionado

La actualidad más candente

Anatomy of an action
Anatomy of an actionAnatomy of an action
Anatomy of an actionGordon Chung
 
Elasticsearch (R)Evolution — You Know, for Search… by Philipp Krenn at Big Da...
Elasticsearch (R)Evolution — You Know, for Search… by Philipp Krenn at Big Da...Elasticsearch (R)Evolution — You Know, for Search… by Philipp Krenn at Big Da...
Elasticsearch (R)Evolution — You Know, for Search… by Philipp Krenn at Big Da...Big Data Spain
 
人間では判定できない101すくみじゃんけんをコンピュータに判定させたい for Keras.js
人間では判定できない101すくみじゃんけんをコンピュータに判定させたい for Keras.js人間では判定できない101すくみじゃんけんをコンピュータに判定させたい for Keras.js
人間では判定できない101すくみじゃんけんをコンピュータに判定させたい for Keras.jsKatsuyaENDOH
 
Gnocchi v3 brownbag
Gnocchi v3 brownbagGnocchi v3 brownbag
Gnocchi v3 brownbagGordon Chung
 
Nginx monitoring with graphite
Nginx monitoring with graphiteNginx monitoring with graphite
Nginx monitoring with graphitedamaex17
 
Devoxx france 2015 influx db
Devoxx france 2015 influx dbDevoxx france 2015 influx db
Devoxx france 2015 influx dbNicolas Muller
 
Gnocchi v4 - past and present
Gnocchi v4 - past and presentGnocchi v4 - past and present
Gnocchi v4 - past and presentGordon Chung
 
Terraforming the Kubernetes Land
Terraforming the Kubernetes LandTerraforming the Kubernetes Land
Terraforming the Kubernetes LandRadek Simko
 
Cncf k8s_network_part1
Cncf k8s_network_part1Cncf k8s_network_part1
Cncf k8s_network_part1Erhwen Kuo
 
Keynote: Scaling Sensu Go
Keynote: Scaling Sensu GoKeynote: Scaling Sensu Go
Keynote: Scaling Sensu GoSensu Inc.
 
CDK Meetup: Rule the World through IaC
CDK Meetup: Rule the World through IaCCDK Meetup: Rule the World through IaC
CDK Meetup: Rule the World through IaCsmalltown
 
Virtual training Intro to Kapacitor
Virtual training  Intro to Kapacitor Virtual training  Intro to Kapacitor
Virtual training Intro to Kapacitor InfluxData
 
Time Series Database and Tick Stack
Time Series Database and Tick StackTime Series Database and Tick Stack
Time Series Database and Tick StackGianluca Arbezzano
 
Infrastructure as Code in Google Cloud
Infrastructure as Code in Google CloudInfrastructure as Code in Google Cloud
Infrastructure as Code in Google CloudRadek Simko
 
CNCF explore k8s api using java client
CNCF explore k8s api using java clientCNCF explore k8s api using java client
CNCF explore k8s api using java clientErhwen Kuo
 
Herding cats & catching fire: Workday's telemetry & middleware
Herding cats & catching fire: Workday's telemetry & middlewareHerding cats & catching fire: Workday's telemetry & middleware
Herding cats & catching fire: Workday's telemetry & middlewareSensu Inc.
 
The Practice of Alluxio in Near Real-Time Data Platform at VIPShop [Chinese]
The Practice of Alluxio in Near Real-Time Data Platform at VIPShop [Chinese]The Practice of Alluxio in Near Real-Time Data Platform at VIPShop [Chinese]
The Practice of Alluxio in Near Real-Time Data Platform at VIPShop [Chinese]Alluxio, Inc.
 

La actualidad más candente (20)

Anatomy of an action
Anatomy of an actionAnatomy of an action
Anatomy of an action
 
The Monitoring Playground
The Monitoring PlaygroundThe Monitoring Playground
The Monitoring Playground
 
Elasticsearch (R)Evolution — You Know, for Search… by Philipp Krenn at Big Da...
Elasticsearch (R)Evolution — You Know, for Search… by Philipp Krenn at Big Da...Elasticsearch (R)Evolution — You Know, for Search… by Philipp Krenn at Big Da...
Elasticsearch (R)Evolution — You Know, for Search… by Philipp Krenn at Big Da...
 
人間では判定できない101すくみじゃんけんをコンピュータに判定させたい for Keras.js
人間では判定できない101すくみじゃんけんをコンピュータに判定させたい for Keras.js人間では判定できない101すくみじゃんけんをコンピュータに判定させたい for Keras.js
人間では判定できない101すくみじゃんけんをコンピュータに判定させたい for Keras.js
 
Gnocchi v3 brownbag
Gnocchi v3 brownbagGnocchi v3 brownbag
Gnocchi v3 brownbag
 
Nginx monitoring with graphite
Nginx monitoring with graphiteNginx monitoring with graphite
Nginx monitoring with graphite
 
Devoxx france 2015 influx db
Devoxx france 2015 influx dbDevoxx france 2015 influx db
Devoxx france 2015 influx db
 
Gnocchi v4 - past and present
Gnocchi v4 - past and presentGnocchi v4 - past and present
Gnocchi v4 - past and present
 
Terraforming the Kubernetes Land
Terraforming the Kubernetes LandTerraforming the Kubernetes Land
Terraforming the Kubernetes Land
 
Cncf k8s_network_part1
Cncf k8s_network_part1Cncf k8s_network_part1
Cncf k8s_network_part1
 
Keynote: Scaling Sensu Go
Keynote: Scaling Sensu GoKeynote: Scaling Sensu Go
Keynote: Scaling Sensu Go
 
Run Node Run
Run Node RunRun Node Run
Run Node Run
 
CDK Meetup: Rule the World through IaC
CDK Meetup: Rule the World through IaCCDK Meetup: Rule the World through IaC
CDK Meetup: Rule the World through IaC
 
Virtual training Intro to Kapacitor
Virtual training  Intro to Kapacitor Virtual training  Intro to Kapacitor
Virtual training Intro to Kapacitor
 
Time Series Database and Tick Stack
Time Series Database and Tick StackTime Series Database and Tick Stack
Time Series Database and Tick Stack
 
Infrastructure as Code in Google Cloud
Infrastructure as Code in Google CloudInfrastructure as Code in Google Cloud
Infrastructure as Code in Google Cloud
 
CNCF explore k8s api using java client
CNCF explore k8s api using java clientCNCF explore k8s api using java client
CNCF explore k8s api using java client
 
Herding cats & catching fire: Workday's telemetry & middleware
Herding cats & catching fire: Workday's telemetry & middlewareHerding cats & catching fire: Workday's telemetry & middleware
Herding cats & catching fire: Workday's telemetry & middleware
 
Alluxio in MOMO
Alluxio in MOMOAlluxio in MOMO
Alluxio in MOMO
 
The Practice of Alluxio in Near Real-Time Data Platform at VIPShop [Chinese]
The Practice of Alluxio in Near Real-Time Data Platform at VIPShop [Chinese]The Practice of Alluxio in Near Real-Time Data Platform at VIPShop [Chinese]
The Practice of Alluxio in Near Real-Time Data Platform at VIPShop [Chinese]
 

Destacado

WebRTC Standards from Tim Panton
WebRTC Standards from Tim PantonWebRTC Standards from Tim Panton
WebRTC Standards from Tim PantonAlan Quayle
 
WebRTC Integration from Tim Panton
WebRTC Integration from Tim PantonWebRTC Integration from Tim Panton
WebRTC Integration from Tim PantonAlan Quayle
 
Pamela Rutledge - Presentation at Emerging Communications Conference & Awards...
Pamela Rutledge - Presentation at Emerging Communications Conference & Awards...Pamela Rutledge - Presentation at Emerging Communications Conference & Awards...
Pamela Rutledge - Presentation at Emerging Communications Conference & Awards...eCommConf
 
Bryan Johns - Presentation at Emerging Communications Conference & Awards (eC...
Bryan Johns - Presentation at Emerging Communications Conference & Awards (eC...Bryan Johns - Presentation at Emerging Communications Conference & Awards (eC...
Bryan Johns - Presentation at Emerging Communications Conference & Awards (eC...eCommConf
 
Ryan Gallagher - Presentation at Emerging Communications Conference & Awards ...
Ryan Gallagher - Presentation at Emerging Communications Conference & Awards ...Ryan Gallagher - Presentation at Emerging Communications Conference & Awards ...
Ryan Gallagher - Presentation at Emerging Communications Conference & Awards ...eCommConf
 
Clark Dodsworth - Presentation at Emerging Communications Conference & Awards...
Clark Dodsworth - Presentation at Emerging Communications Conference & Awards...Clark Dodsworth - Presentation at Emerging Communications Conference & Awards...
Clark Dodsworth - Presentation at Emerging Communications Conference & Awards...eCommConf
 

Destacado (6)

WebRTC Standards from Tim Panton
WebRTC Standards from Tim PantonWebRTC Standards from Tim Panton
WebRTC Standards from Tim Panton
 
WebRTC Integration from Tim Panton
WebRTC Integration from Tim PantonWebRTC Integration from Tim Panton
WebRTC Integration from Tim Panton
 
Pamela Rutledge - Presentation at Emerging Communications Conference & Awards...
Pamela Rutledge - Presentation at Emerging Communications Conference & Awards...Pamela Rutledge - Presentation at Emerging Communications Conference & Awards...
Pamela Rutledge - Presentation at Emerging Communications Conference & Awards...
 
Bryan Johns - Presentation at Emerging Communications Conference & Awards (eC...
Bryan Johns - Presentation at Emerging Communications Conference & Awards (eC...Bryan Johns - Presentation at Emerging Communications Conference & Awards (eC...
Bryan Johns - Presentation at Emerging Communications Conference & Awards (eC...
 
Ryan Gallagher - Presentation at Emerging Communications Conference & Awards ...
Ryan Gallagher - Presentation at Emerging Communications Conference & Awards ...Ryan Gallagher - Presentation at Emerging Communications Conference & Awards ...
Ryan Gallagher - Presentation at Emerging Communications Conference & Awards ...
 
Clark Dodsworth - Presentation at Emerging Communications Conference & Awards...
Clark Dodsworth - Presentation at Emerging Communications Conference & Awards...Clark Dodsworth - Presentation at Emerging Communications Conference & Awards...
Clark Dodsworth - Presentation at Emerging Communications Conference & Awards...
 

Similar a Asterisk SCF Developer's View

Make BDD great again
Make BDD great againMake BDD great again
Make BDD great againYana Gusti
 
introduction to node.js
introduction to node.jsintroduction to node.js
introduction to node.jsorkaplan
 
Javascript Everywhere
Javascript EverywhereJavascript Everywhere
Javascript EverywherePascal Rettig
 
OpenStack API's and WSGI
OpenStack API's and WSGIOpenStack API's and WSGI
OpenStack API's and WSGIMike Pittaro
 
Containerd Project Update: FOSDEM 2018
Containerd Project Update: FOSDEM 2018Containerd Project Update: FOSDEM 2018
Containerd Project Update: FOSDEM 2018Phil Estes
 
Docker & ECS: Secure Nearline Execution
Docker & ECS: Secure Nearline ExecutionDocker & ECS: Secure Nearline Execution
Docker & ECS: Secure Nearline ExecutionBrennan Saeta
 
How to Write Node.js Module
How to Write Node.js ModuleHow to Write Node.js Module
How to Write Node.js ModuleFred Chien
 
Unit testing in iOS featuring OCUnit, GHUnit & OCMock
Unit testing in iOS featuring OCUnit, GHUnit & OCMockUnit testing in iOS featuring OCUnit, GHUnit & OCMock
Unit testing in iOS featuring OCUnit, GHUnit & OCMockRobot Media
 
Akka Cluster in Java - JCConf 2015
Akka Cluster in Java - JCConf 2015Akka Cluster in Java - JCConf 2015
Akka Cluster in Java - JCConf 2015Jiayun Zhou
 
CDI Telco Framework & Arquillian presentation at Mobicents Summit, Sochi 2011
CDI Telco Framework & Arquillian presentation at Mobicents Summit, Sochi 2011CDI Telco Framework & Arquillian presentation at Mobicents Summit, Sochi 2011
CDI Telco Framework & Arquillian presentation at Mobicents Summit, Sochi 2011telestax
 
What to expect from Java 9
What to expect from Java 9What to expect from Java 9
What to expect from Java 9Ivan Krylov
 
Introduction to Vert.x
Introduction to Vert.xIntroduction to Vert.x
Introduction to Vert.xYiguang Hu
 
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...Codemotion
 
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...Codemotion
 
openATTIC using grafana and prometheus
openATTIC using  grafana and prometheusopenATTIC using  grafana and prometheus
openATTIC using grafana and prometheusAlex Lau
 
Make Testing Groovy
Make Testing GroovyMake Testing Groovy
Make Testing GroovyPaul King
 
Immutable Deployments with AWS CloudFormation and AWS Lambda
Immutable Deployments with AWS CloudFormation and AWS LambdaImmutable Deployments with AWS CloudFormation and AWS Lambda
Immutable Deployments with AWS CloudFormation and AWS LambdaAOE
 
Real World Lessons on the Pain Points of Node.js Applications
Real World Lessons on the Pain Points of Node.js ApplicationsReal World Lessons on the Pain Points of Node.js Applications
Real World Lessons on the Pain Points of Node.js ApplicationsBen Hall
 

Similar a Asterisk SCF Developer's View (20)

Make BDD great again
Make BDD great againMake BDD great again
Make BDD great again
 
introduction to node.js
introduction to node.jsintroduction to node.js
introduction to node.js
 
Javascript Everywhere
Javascript EverywhereJavascript Everywhere
Javascript Everywhere
 
Nodejs - A quick tour (v4)
Nodejs - A quick tour (v4)Nodejs - A quick tour (v4)
Nodejs - A quick tour (v4)
 
OpenStack API's and WSGI
OpenStack API's and WSGIOpenStack API's and WSGI
OpenStack API's and WSGI
 
Nodejs - A quick tour (v6)
Nodejs - A quick tour (v6)Nodejs - A quick tour (v6)
Nodejs - A quick tour (v6)
 
Containerd Project Update: FOSDEM 2018
Containerd Project Update: FOSDEM 2018Containerd Project Update: FOSDEM 2018
Containerd Project Update: FOSDEM 2018
 
Docker & ECS: Secure Nearline Execution
Docker & ECS: Secure Nearline ExecutionDocker & ECS: Secure Nearline Execution
Docker & ECS: Secure Nearline Execution
 
How to Write Node.js Module
How to Write Node.js ModuleHow to Write Node.js Module
How to Write Node.js Module
 
Unit testing in iOS featuring OCUnit, GHUnit & OCMock
Unit testing in iOS featuring OCUnit, GHUnit & OCMockUnit testing in iOS featuring OCUnit, GHUnit & OCMock
Unit testing in iOS featuring OCUnit, GHUnit & OCMock
 
Akka Cluster in Java - JCConf 2015
Akka Cluster in Java - JCConf 2015Akka Cluster in Java - JCConf 2015
Akka Cluster in Java - JCConf 2015
 
CDI Telco Framework & Arquillian presentation at Mobicents Summit, Sochi 2011
CDI Telco Framework & Arquillian presentation at Mobicents Summit, Sochi 2011CDI Telco Framework & Arquillian presentation at Mobicents Summit, Sochi 2011
CDI Telco Framework & Arquillian presentation at Mobicents Summit, Sochi 2011
 
What to expect from Java 9
What to expect from Java 9What to expect from Java 9
What to expect from Java 9
 
Introduction to Vert.x
Introduction to Vert.xIntroduction to Vert.x
Introduction to Vert.x
 
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
 
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
 
openATTIC using grafana and prometheus
openATTIC using  grafana and prometheusopenATTIC using  grafana and prometheus
openATTIC using grafana and prometheus
 
Make Testing Groovy
Make Testing GroovyMake Testing Groovy
Make Testing Groovy
 
Immutable Deployments with AWS CloudFormation and AWS Lambda
Immutable Deployments with AWS CloudFormation and AWS LambdaImmutable Deployments with AWS CloudFormation and AWS Lambda
Immutable Deployments with AWS CloudFormation and AWS Lambda
 
Real World Lessons on the Pain Points of Node.js Applications
Real World Lessons on the Pain Points of Node.js ApplicationsReal World Lessons on the Pain Points of Node.js Applications
Real World Lessons on the Pain Points of Node.js Applications
 

Más de eCommConf

Ronald Azuma - Presentation at Emerging Communications Conference & Awards (e...
Ronald Azuma - Presentation at Emerging Communications Conference & Awards (e...Ronald Azuma - Presentation at Emerging Communications Conference & Awards (e...
Ronald Azuma - Presentation at Emerging Communications Conference & Awards (e...eCommConf
 
David Troy - Presentation at Emerging Communications Conference & Awards (eCo...
David Troy - Presentation at Emerging Communications Conference & Awards (eCo...David Troy - Presentation at Emerging Communications Conference & Awards (eCo...
David Troy - Presentation at Emerging Communications Conference & Awards (eCo...eCommConf
 
Bhaskar Krishnamachari - Presentation at Emerging Communications Conference &...
Bhaskar Krishnamachari - Presentation at Emerging Communications Conference &...Bhaskar Krishnamachari - Presentation at Emerging Communications Conference &...
Bhaskar Krishnamachari - Presentation at Emerging Communications Conference &...eCommConf
 
Darren Schreiber - Presentation at Emerging Communications Conference & Award...
Darren Schreiber - Presentation at Emerging Communications Conference & Award...Darren Schreiber - Presentation at Emerging Communications Conference & Award...
Darren Schreiber - Presentation at Emerging Communications Conference & Award...eCommConf
 
Peter Ecclesine - Presentation at Emerging Communications Conference & Awards...
Peter Ecclesine - Presentation at Emerging Communications Conference & Awards...Peter Ecclesine - Presentation at Emerging Communications Conference & Awards...
Peter Ecclesine - Presentation at Emerging Communications Conference & Awards...eCommConf
 
John Harmon - Presentation at Emerging Communications Conference & Awards (eC...
John Harmon - Presentation at Emerging Communications Conference & Awards (eC...John Harmon - Presentation at Emerging Communications Conference & Awards (eC...
John Harmon - Presentation at Emerging Communications Conference & Awards (eC...eCommConf
 
Eladio Martin - Presentation at Emerging Communications Conference & Awards (...
Eladio Martin - Presentation at Emerging Communications Conference & Awards (...Eladio Martin - Presentation at Emerging Communications Conference & Awards (...
Eladio Martin - Presentation at Emerging Communications Conference & Awards (...eCommConf
 
Adrian Avendano - Presentation at Emerging Communications Conference & Awards...
Adrian Avendano - Presentation at Emerging Communications Conference & Awards...Adrian Avendano - Presentation at Emerging Communications Conference & Awards...
Adrian Avendano - Presentation at Emerging Communications Conference & Awards...eCommConf
 
Rob Lewis - Presentation at Emerging Communications Conference & Awards (eCom...
Rob Lewis - Presentation at Emerging Communications Conference & Awards (eCom...Rob Lewis - Presentation at Emerging Communications Conference & Awards (eCom...
Rob Lewis - Presentation at Emerging Communications Conference & Awards (eCom...eCommConf
 
Christophe Ramstein - Presentation at Emerging Communications Conference & Aw...
Christophe Ramstein - Presentation at Emerging Communications Conference & Aw...Christophe Ramstein - Presentation at Emerging Communications Conference & Aw...
Christophe Ramstein - Presentation at Emerging Communications Conference & Aw...eCommConf
 
Richard Whitt - Presentation at Emerging Communications Conference & Awards (...
Richard Whitt - Presentation at Emerging Communications Conference & Awards (...Richard Whitt - Presentation at Emerging Communications Conference & Awards (...
Richard Whitt - Presentation at Emerging Communications Conference & Awards (...eCommConf
 
Susan Crawford - Presentation at Emerging Communications Conference & Awards ...
Susan Crawford - Presentation at Emerging Communications Conference & Awards ...Susan Crawford - Presentation at Emerging Communications Conference & Awards ...
Susan Crawford - Presentation at Emerging Communications Conference & Awards ...eCommConf
 
Larry Downes - Presentation at Emerging Communications Conference & Awards (e...
Larry Downes - Presentation at Emerging Communications Conference & Awards (e...Larry Downes - Presentation at Emerging Communications Conference & Awards (e...
Larry Downes - Presentation at Emerging Communications Conference & Awards (e...eCommConf
 
Brough Turner - Presentation at Emerging Communications Conference & Awards (...
Brough Turner - Presentation at Emerging Communications Conference & Awards (...Brough Turner - Presentation at Emerging Communications Conference & Awards (...
Brough Turner - Presentation at Emerging Communications Conference & Awards (...eCommConf
 
Chris Mairs - Presentation at Emerging Communications Conference & Awards (eC...
Chris Mairs - Presentation at Emerging Communications Conference & Awards (eC...Chris Mairs - Presentation at Emerging Communications Conference & Awards (eC...
Chris Mairs - Presentation at Emerging Communications Conference & Awards (eC...eCommConf
 
Tomaz Stolfa - Presentation at Emerging Communications Conference & Awards (e...
Tomaz Stolfa - Presentation at Emerging Communications Conference & Awards (e...Tomaz Stolfa - Presentation at Emerging Communications Conference & Awards (e...
Tomaz Stolfa - Presentation at Emerging Communications Conference & Awards (e...eCommConf
 
Alan Duric - Presentation at Emerging Communications Conference & Awards (eCo...
Alan Duric - Presentation at Emerging Communications Conference & Awards (eCo...Alan Duric - Presentation at Emerging Communications Conference & Awards (eCo...
Alan Duric - Presentation at Emerging Communications Conference & Awards (eCo...eCommConf
 
Jose De Castro - Presentation at Emerging Communications Conference & Awards ...
Jose De Castro - Presentation at Emerging Communications Conference & Awards ...Jose De Castro - Presentation at Emerging Communications Conference & Awards ...
Jose De Castro - Presentation at Emerging Communications Conference & Awards ...eCommConf
 
Gordon Cook - Presentation at Emerging Communications Conference & Awards (eC...
Gordon Cook - Presentation at Emerging Communications Conference & Awards (eC...Gordon Cook - Presentation at Emerging Communications Conference & Awards (eC...
Gordon Cook - Presentation at Emerging Communications Conference & Awards (eC...eCommConf
 
Ian Small - Presentation at Emerging Communications Conference & Awards (eCom...
Ian Small - Presentation at Emerging Communications Conference & Awards (eCom...Ian Small - Presentation at Emerging Communications Conference & Awards (eCom...
Ian Small - Presentation at Emerging Communications Conference & Awards (eCom...eCommConf
 

Más de eCommConf (20)

Ronald Azuma - Presentation at Emerging Communications Conference & Awards (e...
Ronald Azuma - Presentation at Emerging Communications Conference & Awards (e...Ronald Azuma - Presentation at Emerging Communications Conference & Awards (e...
Ronald Azuma - Presentation at Emerging Communications Conference & Awards (e...
 
David Troy - Presentation at Emerging Communications Conference & Awards (eCo...
David Troy - Presentation at Emerging Communications Conference & Awards (eCo...David Troy - Presentation at Emerging Communications Conference & Awards (eCo...
David Troy - Presentation at Emerging Communications Conference & Awards (eCo...
 
Bhaskar Krishnamachari - Presentation at Emerging Communications Conference &...
Bhaskar Krishnamachari - Presentation at Emerging Communications Conference &...Bhaskar Krishnamachari - Presentation at Emerging Communications Conference &...
Bhaskar Krishnamachari - Presentation at Emerging Communications Conference &...
 
Darren Schreiber - Presentation at Emerging Communications Conference & Award...
Darren Schreiber - Presentation at Emerging Communications Conference & Award...Darren Schreiber - Presentation at Emerging Communications Conference & Award...
Darren Schreiber - Presentation at Emerging Communications Conference & Award...
 
Peter Ecclesine - Presentation at Emerging Communications Conference & Awards...
Peter Ecclesine - Presentation at Emerging Communications Conference & Awards...Peter Ecclesine - Presentation at Emerging Communications Conference & Awards...
Peter Ecclesine - Presentation at Emerging Communications Conference & Awards...
 
John Harmon - Presentation at Emerging Communications Conference & Awards (eC...
John Harmon - Presentation at Emerging Communications Conference & Awards (eC...John Harmon - Presentation at Emerging Communications Conference & Awards (eC...
John Harmon - Presentation at Emerging Communications Conference & Awards (eC...
 
Eladio Martin - Presentation at Emerging Communications Conference & Awards (...
Eladio Martin - Presentation at Emerging Communications Conference & Awards (...Eladio Martin - Presentation at Emerging Communications Conference & Awards (...
Eladio Martin - Presentation at Emerging Communications Conference & Awards (...
 
Adrian Avendano - Presentation at Emerging Communications Conference & Awards...
Adrian Avendano - Presentation at Emerging Communications Conference & Awards...Adrian Avendano - Presentation at Emerging Communications Conference & Awards...
Adrian Avendano - Presentation at Emerging Communications Conference & Awards...
 
Rob Lewis - Presentation at Emerging Communications Conference & Awards (eCom...
Rob Lewis - Presentation at Emerging Communications Conference & Awards (eCom...Rob Lewis - Presentation at Emerging Communications Conference & Awards (eCom...
Rob Lewis - Presentation at Emerging Communications Conference & Awards (eCom...
 
Christophe Ramstein - Presentation at Emerging Communications Conference & Aw...
Christophe Ramstein - Presentation at Emerging Communications Conference & Aw...Christophe Ramstein - Presentation at Emerging Communications Conference & Aw...
Christophe Ramstein - Presentation at Emerging Communications Conference & Aw...
 
Richard Whitt - Presentation at Emerging Communications Conference & Awards (...
Richard Whitt - Presentation at Emerging Communications Conference & Awards (...Richard Whitt - Presentation at Emerging Communications Conference & Awards (...
Richard Whitt - Presentation at Emerging Communications Conference & Awards (...
 
Susan Crawford - Presentation at Emerging Communications Conference & Awards ...
Susan Crawford - Presentation at Emerging Communications Conference & Awards ...Susan Crawford - Presentation at Emerging Communications Conference & Awards ...
Susan Crawford - Presentation at Emerging Communications Conference & Awards ...
 
Larry Downes - Presentation at Emerging Communications Conference & Awards (e...
Larry Downes - Presentation at Emerging Communications Conference & Awards (e...Larry Downes - Presentation at Emerging Communications Conference & Awards (e...
Larry Downes - Presentation at Emerging Communications Conference & Awards (e...
 
Brough Turner - Presentation at Emerging Communications Conference & Awards (...
Brough Turner - Presentation at Emerging Communications Conference & Awards (...Brough Turner - Presentation at Emerging Communications Conference & Awards (...
Brough Turner - Presentation at Emerging Communications Conference & Awards (...
 
Chris Mairs - Presentation at Emerging Communications Conference & Awards (eC...
Chris Mairs - Presentation at Emerging Communications Conference & Awards (eC...Chris Mairs - Presentation at Emerging Communications Conference & Awards (eC...
Chris Mairs - Presentation at Emerging Communications Conference & Awards (eC...
 
Tomaz Stolfa - Presentation at Emerging Communications Conference & Awards (e...
Tomaz Stolfa - Presentation at Emerging Communications Conference & Awards (e...Tomaz Stolfa - Presentation at Emerging Communications Conference & Awards (e...
Tomaz Stolfa - Presentation at Emerging Communications Conference & Awards (e...
 
Alan Duric - Presentation at Emerging Communications Conference & Awards (eCo...
Alan Duric - Presentation at Emerging Communications Conference & Awards (eCo...Alan Duric - Presentation at Emerging Communications Conference & Awards (eCo...
Alan Duric - Presentation at Emerging Communications Conference & Awards (eCo...
 
Jose De Castro - Presentation at Emerging Communications Conference & Awards ...
Jose De Castro - Presentation at Emerging Communications Conference & Awards ...Jose De Castro - Presentation at Emerging Communications Conference & Awards ...
Jose De Castro - Presentation at Emerging Communications Conference & Awards ...
 
Gordon Cook - Presentation at Emerging Communications Conference & Awards (eC...
Gordon Cook - Presentation at Emerging Communications Conference & Awards (eC...Gordon Cook - Presentation at Emerging Communications Conference & Awards (eC...
Gordon Cook - Presentation at Emerging Communications Conference & Awards (eC...
 
Ian Small - Presentation at Emerging Communications Conference & Awards (eCom...
Ian Small - Presentation at Emerging Communications Conference & Awards (eCom...Ian Small - Presentation at Emerging Communications Conference & Awards (eCom...
Ian Small - Presentation at Emerging Communications Conference & Awards (eCom...
 

Último

So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Scott Andery
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 

Último (20)

So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 

Asterisk SCF Developer's View

  • 1.
  • 2. Asterisk SCF A developer’s view Tim Panton - PhoneFromHere.com twitter.com/steely_glint
  • 3. Asterisk SCF recap • Scalability • Fault tolerant • Extensible • Performance
  • 4. Developer Ecosystem • Tip of the hat to Digium Inc • Developers involved throughout • Requirements from ecosystem • Open development process
  • 5. What I wanted • Extensibility • Modern Language support • Dynamic • Cloud friendly
  • 6. The Experiment • Git snapshot of current code • Not a release ! • Not a routing engine • Help from asterisk-scf-dev IRC • Used Groovy (via JVM)
  • 7. Live code demo • Code at github • https://github.com/steely-glint/ascf-groovy- demo
  • 8. Auto generated Static code un-demo java classes Initialize import AsteriskSCF.Configuration.SipSessionManager.V1.*; ICE RPC import AsteriskSCF.Core.Discovery.V1.*; protocol import AsteriskSCF.System.Configuration.V1.*; Connect to Ser viceLocator Ser vice ic = Ice.Util.initialize(null); sloc = ServiceLocatorPrxHelper.checkedCast(ic.stringToProxy("LocatorService:tcp -p 4411")); List all services = Arrays.asList(sloc.locateAll(new SipConfigurationParams())); ser vices sipconf = services.findAll { item -> ConfigurationServicePrxHelper.checkedCast(item) != null} Find the SIP sc = ConfigurationServicePrxHelper.checkedCast(sipconf[0]); Session   cgrps = [ Pick the first Manager(s)     { g = new SipGeneralGroup(); g.configurationItems = [:] ; return g} , one     { u = new SipUDPTransportGroup();       u.name = "h-udp";       u.configurationItems = [ "host" : new SipHostItem(1,"127.0.0.1",5081)]; Define a       return u}, couple of local     { u = new SipUDPTransportGroup(); Convert to       u.name = "h-udp1"; ICE friendly endpoints       u.configurationItems = [ "host" : new SipHostItem(2,"127.0.0.1",5080)]; format       return u}]; grps = cgrps.collect{item -> item.call()} sc.setConfiguration((ConfigurationGroup[])grps.toArray()); Send the request to ASCF
  • 9. What have I proved ? • Dynamic configuration • Cloud friendly • JVM language support (java, scala, javascript) • Components independently managable
  • 10. Voice 3.0 ready • Adornment • Session Cookies • webRTC • Hooks
  • 11. Conclusions • Still a work in progress • Much to be done • Much to be documented • Fundamentals are right • Future-proofing is in place
  • 12. Thanks • Comments or questions @steely_glint • My blog at babyis60.wordpress.com

Notas del editor

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n