Listen to and learn from Asterisk professionals!
Menu
Astricon Europe
· Register today!
· Conference agenda
· Tutorials
· Hotel information
· Call for Speakers
· dCAP@Astricon
· Sponsors
 
AstriCon Homepage
AstriCon Training
Contact us
Arranged by:
Diamond partner:
Digium - the company behind Asterisk - the Open Source PBX
Platinum sponsors:
Aheeva.com


Voop

Gold sponsors :
Signate.com

Silver sponsors :
Xorcom.com

Media partners :
The User's guide to the VoIP revolution

Spanish partner:


[*]The tutorial day agenda

 

Track 1: Asterisk and VOIP for beginners Track 2: Asterisk for Call and Contact Centers Track 3: Asterisk Advanced classes
Asterisk en Español: Introducción, posibilidades e integración con sistemas tradicionales
Sergio Serrano Revuelto
How to develop Asterisk applications for a call
center

Francois Lambert
The Zaptel architecture and PRI library overview
Matthew Fredricksson, Digium
Do's and don'ts when implementing Asterisk in your Network
Erik Wieling ("Manxpower")
Building a carrier class hosted contact center platform with Asterisk
Eric Werkhoven and Serge Kruppa
Introduction to res_perl
James Jones, Signate
Intro to Telecom Mediation, Rating, and Billing
Kindy Conley Flyholm
Cancelled
  Asterisk Security
ZOA
Beyond extensions.conf: Extending Asterisk with AMI and AGI
Matthew Nicholson, Digium
Using C# to Interface Windows Applications to Asterisk
Matt Ridell
So you want to be an Asterisk developer?
Kevin P. Fleming, Digium

 

 

Tutorial schedule

Track 1: Newbie introductions to Asterisk and VoIP
1:1 9-10.30

Sergio Serrano RevueltoAsterisk en Español: Introducción, posibilidades e integración con sistemas tradicionales

Brief introduction to Asterisk. Possibilities of communication with analog and digital telephony systems, as well as communications across Voice IP (Problematic found in Spain). Integration with traditional Switchboards. Using Asterisk to provide advanced features (IVR, VoiceMail, etc.) to traditional switchboards.

Breve introducción a Asterisk. Posibilidades de comunicación con sistemas de telefonía analógicos, digitales, así como comunicaciones a través de Voz IP (Problemáticas encontradas en España). Integración con Centralitas tradicionales. Utilizar Asterisk para dotar de mayor capacidad a centralitas tradicionales.

Mr. Sergio Serrano Revuelto, R&D Manager at Avanzada 7, S.L. (CTO)

1:2
11.00-12.30

Sergio Serrano RevueltoDo's and don'ts when implementing Asterisk in your network

A tutorial based on experiences of Eric's own installations as well as countless of hours spent on the IRC, helping new Asterisk users to get it right and avoid the common mistakes.

Eric Wieling ("Manxpower")

1:3
13.30-15.00

Intro to Telecom Mediation, Rating, and Billing

We're sorry, but this tutorial is cancelled due to unforeseen circumstances.

This overview tutorial will explain the fundamentals necessary for creating your own billing systems (or evaluating billing systems for lease or sale). Explained in some depth will be:

  • Overall Metadata - Carrier, Trunk, Switch, A,B, and C numbers, Outgoing PRI relationships, Dial Plan
  • CDR information - fundamental information on a CDR needed for mediation and rating (A, B, and C number concepts explained)
  • Warehousing of CDR information - the why's and what for's
  • Mediation - when and why mediation is necessary
  • Types of Billing
  • Wholesale - Bill reconciliation and Dial Plan mapping (how to 'Cherry Pick')
  • Prepaid and Postpaid Billing
  • Reseller Billing
  • Rating - basic rates plans, special features (volume discounts, first XX minutes free), credit rating
  • Credit Control

Kindy Conley Flyvholm - CEO, We-IP, Inc.

Experienced in billing, mediation, fraud control, data warehousing and telecom abitration software for telecoms all over the world including WorldCom, Wiltel, TeleDanmark, Matav, etc. Kindy has successfully exited several ISV's and played key roles in partnership programs for IBM and HP across EMEA.

1:4
15.30-17.00

Matthew NicholsonBeyond extensions.conf:
Extending Asterisk with AGI and AMI

This tutorial is targeted at advanced asterisk users and consist of describing the AGI interface to Asterisk as well as the AMI interface. The AGI is used to extend the dial plan with your own scripting logic in almost any programming or scripting language, locally or on another machine in the network. The AMI is the Asterisk Management Interface that is used to manage your Asterisk server, but also for interfacing with third party systems, like contact center platforms..

 

  • I. Introduction to AGI
    • Existing Methods for Using Extenstions.conf
    • Where AGI fits in
  • II. Overview of AGI
    • The AGI "Protocol"
    • AGI Basics
    • AGI APIs in C, C++, PHP, and Perl
  • III. Special Uses for AGI (in Python)
    • AGI in Python
    • AGI to Access a Database
    • AGI to Collect Information
  • IV. Conclusion
    • Short Review
    • Other Possible Uses of AGI
    • Questions from Audience

Matthew A. Nicholson, Digium

Matthew A. Nicholson is from Villa Rica, Georgia and is currently attending Oakwood College in Huntsville, Alabama studing Computer Science. Matt works as a Support Technician and Software Developer at Digium.

 

 

Track 2: Asterisk configuration, implementation and deployment

2:1
9 -10.30

 

Serge KruppaBuilding a carrier class hosted contact center platform with Asterisk

This tutorial will take you through various real-life technical challenges faced when designing and deploying Asterisk as a hosted contact center platform within a VoIP carrier’s network.

• What is a hosted contact center? IVR, ACD and dialer
• A hosted contact center for whom – profiling the client
• Asterisk CTI – The Manager Interface
• Why build an ACD on Asterisk instead of a SIP Proxy?
• The IVR dilemma: Asterisk or VoiceXML?
• Quality of Service issues – how Linux can help
• Carrier network integration: provisioning, billing, alarms
• Partitioning the service for multiple customers
• Inter-working with existing hosted VoIP services
• Scalability and load balancing
• SIP load testing tools usage – proving it works and scales
• Firewall and NAT traversal problems… and solutions!
• Web user interfaces for configuration, reporting, etc.

Serge Kruppa, CTO, Simitel
Eric Werkhoven, Head of Development, Simitel

Simitel was founded in 2001 in Mexico City to provide speech recognition ASP services to businesses. The company quickly grew to become a leading developer of software-based contact center solutions, winning in 2004 the prestigious Intel award for a competitive Mexico thanks to its IceCAP hosted contact center project, now being installed with various national carriers. Serge Kruppa is the co-founder and CTO of Simitel; with over 13 years experience in call center systems, speech recognition, networked (IN) IVRs, he has managed carrier projects on three continents. Eric Werkhoven is Simitel’s lead developer and a veteran Java programmer who authored the core of the IceCAP code.

 

2:2
11.00-12.30

Francois LambertHow to develop Asterisk applications for a call
center

 

• Bandwidth VS Voice quality, codec’s : g729, speex and ulaw or GSM
• How to ensure quality of service (QOS) and measure latency
• Reduce the CPU used for Music On Hold with a raw player.
• Configure some IVR, dial plan, AGI and application
• Some application we've added in Asterisk.
• Softphone on Windows, Linux, LTSP
o Explain problems and advantages/disavantages of differents OS
• Choice on Windows Driver for Softphone (WMME, DirectSound or ASIO)
• Uses of chan_local
o Why to use it, problems with it and how to get around
• Recordings
o Where to do the recordings?
• How Aheeva has managed to develop a solution for Contact Center interfacing with Asterisk
o Communication with Asterisk: app_akEventsProxy.so
o Redefine the queuing of Asterisk: app_akqueue.so
o Answering machine detection: app_amd.so
? Different methods to detect answering machine
o Load balance for the logged in agent and for the outbound call (multi-site...physically or virtually)
o Managing Timezonefor Outbound calls

François Lambert, Aheeva

François Lambert is a founding member of Aheeva. As COO, Mr. Lambert is responsible for the company’s operational activities and direction. Following a clear vision, his mission is to ensure the delivery of state-of-the-art telecommunication products.

Prior to the creation of Aheeva, Mr. Lambert held key positions such as Director of Products and Director of Integration at Elix; a company specialized in the computer telephony technology.

He brought to Elix 11 years of experience in the field of telecommunications and contact centers.

François holds a Bachelor’s degree from the University of Quebec in Hull in Finance and Economics.

2:3
13.30-15.00

To be decided

 

 

2:4
15.30-17.00

Matt RidellUsing C# to Interface Windows Applications to Asterisk

A half hour description of the tasks needed to write programs in C# which can communicate with Asterisk. This will cover the whole process from creating sockets for Asterisk Manager Interface, through parsing of various events and commands to building applications which can monitor and adjust your Asterisk servers/routing based on fuzzy logic principles. Also included is a brief demonstration of using C# to create a predictive dialler which alters its speed based on call response.

  • Opening a connection to the Asterisk Manager from C#
  • Parsing output from the Manager
  • Generating Calls via the Manager
  • Building statistics from Manager Info
  • Bringing it all together: SineDialer
  • Bringing it all together: SineAsterPanel (Personal Panel for call transfers, hold, speed dials etc with drag and drop of contacts from OE, Outlook)
  • Creating a program from scratch
  • Adding a nice GUI (Something I feel is important).
  • Quick run through of the manager commands.
  • Where to for the future (automated self management systems, predictive load management etc).

Matt Riddell, CEO, Sineapps

Matt Riddell has been working with large companies developing a range of software solutions with clients ranging from British American Tobacco to Fiat to VNU Publications to the New Zealand Government and Police Force. Over the last 6 or 7 years his focus has moved to telephony. This began with creating interfaces between PABXs and Domino applications for call centers and has grown to large scale implementations of 400,000+ user systems built from Asterisk and SER. He now works mainly developing IP for worldwide distribution and of course is the Editor of the Daily Asterisk News. This has been going for over 2 years with daily news on the Asterisk software and community. It receives between 6000 and 8000 unique visitors per day.

Track 3: Asterisk in depth (advanced users)
3:1 9-10.30

Matthew FredrickssonThe Zaptel Architecture and PRI Library Overview

 

  • Background of Zaptel - where it came from, what motivated it, etc.
  • What Zaptel is and what it does: DTMF/MF generation, Echo Can, Analog/Digital line signaling framework, internationalization - tones, etc, hooks into HDLC, Timing - 1000hz telephony timing - good for mixing audio streams, Conferencing and of course Pulse dialing/detection
  • What it doesn't do: support for cards w/ dsps that do things such as DTMF detection, codecs, etc.
  • Where it could go: Hooks for DTMF detection hardware hardware..
  • A bit about Zaptel Drivers: What kind of hardware can be zaptel hardware? Anything that you can pull an audio stream from. Asterisk/Zaptel does the rest - Ex. USB phone,
  • Hooks into framework: Data Tx/Rx, Signal Bits - hookstate information, etc
  • What exactly is a PRI? 23 bchannels (voice) and 1 dchannel (data/signalling). Where does libpri fit in? What is Q.921 protocol implementation and the higher Q.931 messaging layer.
  • What kinds of switches does it support? NI2, NI1, AT&T 5ESS, 4ESS, DMS100, EuroISDN, GR303 (Not quite PRI, but similar in signalling), Q.SIG - PRI on steroids
  • What direction is it taking? Supplementary Services - Q.SIG features, Two B-channel Transfer (passing a locally bridged call back into the network)m Calling name over facility IE, Advice of Charge - CDR support(?) (Cost of call data)m Call Diversion Metadata (redirecting name, number, reason, originally called name, number, etc), Message Waiting Indication (Yep, there's a version for PRI too :-) )
  • What's the Next Step for Zaptel and LibPRI? There is a LOT of call related information that is passed over facility IEs in Q.SIG and other protocols. Support for these routines would give libpri better grounds

Other ideas to be further developed if time permits:
Zaptel/libpri/chan_zap profiling and performance testing (How many SETUPs per second, etc )

Matthew Fredricksson, Digium

3:2
11.00-12.30

John ToddIntroduction to Res_perl: Perl Magic within Asterisk

This tutorial will cover basics of res_perl and will show the benefit of using res_perl over using perl in an agi script. Basics that will be covered are installation, the Perl dialplan command and basic subroutines. If time will allow I will show an example of how to build a dynamic dialplan using res_perl and Real Time Asterisk.

  • What is res_perl and why is it used
  • - How to install res_perl
  • - CLI> perl commands
  • - Difference between using asterisk_init.pm and LoadFile
  • - Dialplan command Perl
  • - Basic Functions of Perl subfunctions of res_perl
  • - Some useful, fun or just groovy examples
  • - Q&A

James Jones, Support Engineer, Signate LLC

James has over a decade of experience with Linux and telecommunications. James started his career in telecommunications in high school where he was a head computer technician for a research and development company. He has worked for RCN and was the Asterisk contact for Broadvoice. James currently works for Signate as a Support Engineer where he assists clients with the installation, support and development of VOIP solutions using Asterisk.

 

3:3
13.30-15.00

ZOAAsterisk Security and stability

Running Asterisk as the main PBX or as a PSTN gateway in a large carrier network requires stability and security. Where do you start looking into this, what advice is there to help you and how much traffic can Asterisk handle? What happens when you are using Asterisk to the maximum level possible?

  • Dialplan Security
  • Advice on Linux installation
  • Firewall configuration
  • Stress-testing your system
  • Asterisk VoIP Protocols from a security/stability standpoint
  • The AsterTest testbed

What you will learn from this tutorial - one sentence, two lines

Joachim "ZOA"

 

3:4
15.30-17.00

Kevin P. FlemingSo you want to be an Asterisk developer?

An introduction to development with Asterisk

  • The overall code architecture
  • What is a channel anyway - how Asterisk handle calls
  • Channels basics- the interface
  • Applications, functions, resources and features
  • The ARA - Realtime Architecture
  • AOM - The Asterisk Object Model
  • Programmer documentation with doxygen
  • The code guidelines
  • The Asterisk CVS and branches
  • The bug tracker

 

Kevin P Fleming, Senior Software Engineer, Digium

Kevin Fleming is a Senior Software Engineer at Digium, Inc., the primary developer of Asterisk. His responsibilities include managing Digium's interaction with the Asterisk development community and providing direction for Asterisk's future.

Kevin has been involved in operating systems design and network development since the early 1980's, and has implemented and supported all manner of telephony/communications networks. In June of 2004 he and a partner decided to start a small, service-oriented ITSP in the Phoenix, Arizona area and chose Asterisk as their platform. The start-up and growth of that company allowed Kevin to become intimately involved with the Asterisk development community and to begin actively improving the product as his clients' needs demanded. Since that time he has used his years of experience in dealing with real-world telephony installations to further extend Asterisk's abilities and compatibility with other telephony platforms and systems.

 

 

 

 

© Copyright 2004-2005, Edvina AB, Sollentuna, Sweden
and Sokol & Associates, Missouri, USA

Asterisk™ is a tradmark of Digium, inc. All other trademarks mentioned within this site are the propety of their respective owners.