ipbx Technical Overview Version 1.2

Similar documents
SoLink-Lite IP-PBX. Administrator Guide. (Version 1.0)

Sipdex M200s IPPBX. Embedded. Support Any IP Phone. Softphone and SIP Client App

VoIP TECHNOLOGY WITH EXISTING COMPONENTS

Understanding Cisco Unified Communications Manager Voice Gateways

GHX GHX 5000 GHX IP-based Call Center platform. Up to 256 ports per shelf. Up to 12 ports per shelf. Powerfull processor up to 5000 extensions

EP502/EP504 IP PBX 1.1 Overview

4 Port IP-PBX + SIP Gateway System

Configure Gateways. Gateway Overview. Gateway Overview, page 1 Gateway Setup Prerequisites, page 3 Gateway Configuration Task Flow, page 4

IPNext NGN IP-PBX High-performance Next Generation IP-PBX Solution

UCM6102/6104/6108/6116 Configuration

Call Transfer Options

CCNA VOICE. Course Catalog

SAPEX. The All in One Embedded IP PBX Server

Webinar Training Series NetBorder Express Version 4.0. May 5, 2011

INTRODUCTION. BridgeWay. Headquarters

EPYGI QX IP PBXs & GATEWAYS

THE KEY BUILDING BLOCKS OF THE SHORETEL CONNECT PLATFORM

An Overview of Cisco MobilityManager

Communications Transformations 2: Steps to Integrate SIP Trunk into the Enterprise

What you need today is Essence IPBX for tomorrow s productivity

Configuring Phones to Make Basic Calls

Yeastar TA Series Analog VoIP Gateways

Grandstream Networks, Inc. UCM6200 Basic Configuration Guide

It's only software. Mark Spencer

Webinar Training Series NetBorder Express Version 4.0. March 29, 2011

Implementing Cisco Voice Communications & QoS (CVOICE) 8.0 COURSE OVERVIEW: WHO SHOULD ATTEND: PREREQUISITES: Running on UC 9.

IPNext 187 Hybrid IP-PBX System High-performance Hybrid IP-PBX Solution

Voice Mail Integration

Configuring Phones to Make Basic Calls

Cisco Unified Survivable Remote Site Telephony Version 4.2

Configuration Guide for Integration of Spectralink PIVOT with UNIVERGE 3C

Small & Medium Office Business IP PBX UTT-1000 series

Internet Telephony PBX System

Cisco Survivable Remote Site Telephony Version 4.2

Phonologies The Voice of Technology


Release Note for N412

Unified Communications Manager Express Toll Fraud Prevention

Virtual PBX Product Guide MODEL: SP-250 SP-500 SP-1000 SP-1500 SP-3000

Call Transfer Options

Manual PBX IP Version: 1.0

Dial Peer Configuration on Voice Gateway Routers Configuration Guide

Application Notes for Presence OpenGate with Avaya IP Office 9.0 Issue 1.0

Introduction. H.323 Basics CHAPTER

AT&T Collaborate glossary

Digital Advisory Services Professional Service Description SIP IP Trunk with Field Trial for Legacy PBX Model

Cisco Unified Survivable Remote Site Telephony Version 7.1

VoIP with Channel Associated Signaling (CAS)

Epygi Technologies, LTD Lee Road, Suite 201 Winter Park, Florida USA

Syntel2 by Syntel Solutions Features

Enterprise Voice and Online Services with Microsoft Lync Server 2013

Analog Voice Network Interface Modules for Cisco 4000 Series ISRs

CONNECTION ELECTRONICS LTD.

Digital Advisory Services Professional Service Description SIP Centralized IP Trunk with Field Trial Model

Cisco Unified CME Commands: P

A Sample Configuration for Computer Instruments e-ivr Automated Attendant and Voic 3.0 with Avaya IP Office System Issue 1.

IPitomy IP PBX User Guide

VIRTUAL VIRTUAL IP PBX VP-1500

Cisco Unified Mobility

ANALOG GATEWAY (4,8 & 16 Ports)

Figure: ATCOM IPPBX IP04. ATCOM IPPBX IP04 Product Guide Version:

Redundancy: Supported Addons: Billing, Auto Recording

OFFICE FEATURES. (800)

LocaPhone VoIP PBX System. Enterprise Business Telephony Solution. LocaNet ohg Tel Fax

Voice Gateways CHAPTER

ATCOM IPPBX IP01 Product Guide Version: VoIPon Tel: +44 (0) Fax: +44 (0)

CME with LPCOR Configuration Example

AT&T IP Flexible Reach And IP Toll Free Cisco Unified Communication Manager H.323 Configuration Guide. Issue /3/2008

VG224 Voice Gateway SCCP Registration with CME Configuration Example

Switchvox/Digium Hardware Interface Lab

Managing your PBX- Administrator

Six Questions to Answer When Buying a Phone System

Big Capability For Small Business

Allworx Family of Products

Feature List Q4 2016

The Complete Communication System for Medium Enterprises

ICX Features for Users

The Designing & Implementing a Voice-Enabled IP Network course has been designed with three primary goals:

Troubleshooting No Ringback Tone on ISDN VoIP (H.323) Calls

Version 1.2, 28 February Far South Networks

mpbx-100 User Manual Version

ScopTEL TM IP PBX Software. Basic Installation Hierarchy for Telephony Server

You wanted it...you ve got it.

Epygi Technologies, LLC 2233 Lee Road, Suite 201 Winter Park, Florida USA

Introduction to VoIP. Cisco Networking Academy Program Cisco Systems, Inc. All rights reserved. Cisco Public. IP Telephony

IMPLEMENTING CISCO VOICE COMMUNICATIONS AND QOS

Release Note for N412

Desktop Reference Guide

Implementing Cisco IP Telephony & Video, Part 1 (CIPTV1) 1.0

Information About Single Number Reach, on page 1 Configure Single Number Reach, on page 4 Feature Information for Single Number Reach, on page 16

Spectrum Enterprise SIP Trunking Service AastraLink Pro 160 Firmware build 1005 IP PBX Configuration Guide

IPitomy System IP1000v2 IP1200 IP2000 IP5000 Extensions Extension Capacity

Customer Guide to Passive VoIP Recording. March

Chapter 1 Introduction

Gateway Trunk and Carrier Based Routing Enhancements

Innovating Communications

Energy Efficient. & out. Award Winning Design. Seamless Scalability 10-10,000 users

CALL FEATURES USER GUIDE. Houston Dallas Austin San Antonio Oklahoma City

Configuring FXS Ports for Basic Calls

IPNext180 Hybrid IP-PBX. AddPac Technology. Sales and Marketing. AP-NR1500 IP Voice Recording Server.

Transcription:

ipbx Technical Overview Version 1.2

Table of Contents 1. Introduction...1 2. ipbx Architecture Overview...2 2.1 Detailed ipbx Architecture...2 2.1.1 High Density IVR and Conferencing...4 2.1.2 Naming Channels...4 2.1.2.1 Zap: Zaptel TDM Channels...4 2.1.2.2 SIP: Session Initiation Protocol Channels...5 2.1.3 Dialplan...6 2.1.3.1 Extension Context Uses...6 2.1.3.2 Dialplan Concepts...7 2.1.3.2.1 Basic Extension Context...7 2.1.3.2.2 Pattern Matching...8 2.1.3.2.3 Context Inclusion...8 2.1.3.2.4 Complete Set of Contexts...9 Call Features...10 Features Summary...11 Computer-Telephony Integration...12 Scalability...12 Codecs...13 Protocols...13 Traditional Telephony Interoperability...13 PRI Protocols...13

1. Introduction ipbx is a hybrid TDM and packet voice PBX, and a IVR platform with ACD functionality. ipbx is possibly the most powerful, flexible, and extensible piece of integrated telecommunications software available. ipbx is designed to interface between any piece of telephony hardware or software, and any telephony application, seamlessly and consistently. Traditionally, telephony products are designed to meet a specific technical need in a network. However, many applications using telephony share a great deal of technology. ipbx takes advantage of this synergy to create a single environment that can be molded to fit any particular application, or collection of applications, as the user sees fit. ipbx can, among other things, be used in any of these applications: Heterogeneous Voice over IP gateway (MGCP, SIP, IAX, H.323) Heterogeneous Voice over IP gateway (MGCP, SIP, IAX, H.323) Private Branch exchange (PBX) Custom Interactive Voice Response (IVR) server Softswitch Conferencing server Number translation Calling card application Predictive dialer Call queuing with remote agents Remote offices for existing PBX More importantly, it can fill all of those roles, simultaneously and seamlessly, between interfaces. ipbx is designed to allow new interfaces and technologies to be added easily. Its lofty goal is to support every kind of telephony technology available. In general, interfaces are divided into three categories, Zaptel hardware, non- Zaptel hardware, and packet voice. These interfaces provide integration with traditional and legacy digital and analog telephone interfaces (including connection to the public phone network itself). In addition, Zaptel compatible interfaces support Pseudo-TDM switching between them, to keep latency nearly nonexistent on strictly TDM calls, conferences, etc. 1

Zaptel provides connectivity for a variety of network interfaces including PSTN, POTS, T1, E1, PRI, PRA, E&M, Wink, and Feature Group D interfaces among others. Examples of available hardware: 0-24 FXS/FXO (in any configuration) analog PSTN connection Single span T1/E1 or PRI connection (mixed data/voice permitted) Dual span T1/E1 or PRI connection (mixed data/voice permitted) Quad span T1/E1 or PRI connection (mixed data/voice permitted) 8 ports T1/E1 or PRI connection (mixed data/voice permitted) T3/E3 connection These are standard protocols, for communication over packet (IP and Frame Relay) networks, and are the only interfaces that do not require any kind of specialized hardware. Session Initiation Protocol (SIP) Inter-Asterisk exchange (IAX) Media Gateway Control Protocol (MGCP) ITU H.323 Voice over Frame Relay (VOFR) 2. ipbx Architecture Overview ipbx architecture is simple, and different than most telephony products. ipbx acts as middleware, connecting bottom tier telephony technologies with top tier telephony applications, creating a consistent environment for deploying a mixed telephony environment. Telephony technologies can include VoIP services like SIP, H.323, IAX, and MGCP (both gateways and phones), as well as more traditional TDM technologies like T1, ISDN PRI, analog POTS and PSTN services, Basic Rate ISDN (BRI), and more. Telephone applications include services such as, call bridging, conferencing, voicemail, auto attendant, custom IVR scripting, call parking, intercom, and more. 2.1 Detailed ipbx Architecture ipbx core contains several engines, that each play a critical role in the software s operation. When the ipbx starts, the Dynamic Module Loader loads and initializes each of the drivers which provide channel drivers, file formats, call detail record backends, codecs, applications and more, linking them with the appropriate internal APIs. 2

Then, the ipbx Switching Core begins accepting calls from interfaces and handling them according to the dialplan, using the Application Launcher for ringing phones, connecting to voicemail, dialing out outbound trunks, etc. The core also provides a standard Scheduler and I/O Manager that applications and drivers can use. The ipbx Codec Translator permits channels which are compressed with different codecs to deamlessly communicate. Most of ipbx usefulness and flexibility come from the applications, codecs, channel drivers, file formats, and more, which plug into the ipbx's various programming interfaces. SME with Remote Offices One of ipbx most powerful features is its ability to link remote offices of a SME (Small to Medium Enterprise) together. The above diagram shows how you can build individual small PBXs for multiple offices using ipbx, and then link them together transparently into a single network. 3

2.1.1 High Density IVR and Conferencing ipbx can be used as a high density IVR and conferencing platform, with traditional PRI/E1 interfaces, providing redundancy, scalability, and intercommunication using TDM over Ethernet, which permits ipbx to extend to TDM bus across the Ethernet network, while retaining minimal latency. 2.1.2 Naming Channels Understanding ipbx channel naming convention is critical to using it effectively. Outgoing channel names used, for example, with the Dial application are named in the format: <technology>/<dialstring> The <technology> parameter represents which type of interface, you are trying to create or reference to (e.g. SIP, Zap, MGCP, IAX, etc). The<dialstring> is a driver-specific string, representing the required destination. This following section describes the naming convention for each channel type. 2.1.2.1 Zap: Zaptel TDM Channels Outgoing The basic formats of a Zap channel name are: Zap/[g]<identifier>[c]r<cadence>] Where <identifier> is a numerical identifier for the physical channel number of the required channel. If the identifier is prefixed by the letter g, then the number is interpreted as a group number instead of as a channel. The identifier may be followed by one or more options. If the letter r and a number follow, that number is used as a distinctive ring for this dial command (valid numbers are 1-4). If the letter c follows, then "Answer Confirmation" is requested, in which the call is not considered answered until the called user presses '#'. Zap/1 TDM Channel 1 Zap/g1 First available channel in group 1 Zap/3r2 TDM Channel 3 with 2nd distinctive ring Zap/g2c First available channel in group 2 with confirmation 4

Incoming Incoming Zap channels are labeled simply: Where <channel> is the channel number and <instance> is a number from 1 to 3 representing which of up to 3 logical channels associated with a single physical channel this is. Zap/1-1 First call appearance on TDM channel 1 Zap/3-2 Second call appears on TDM channel 3 2.1.2.2 SIP: Session Initiation Protocol Channels Outgoing Outgoing channels typically take the form: SIP/[<exten>@]<peer>[:<portno>] Where <peer> is the name of the peer (or hostname/ip of the remote server), <portno> is an optional port number (the default is the SIP standard port 5060), and <exten> is an optional extension. SIP/ipphone SIP peer ipphone SIP/8500@sip.com:5060 Extension 8500 at sip.com, port 5060 Incoming Incoming SIP channels are of the form: SIP/<peer>-<id> Where <peer> is the identified peer and <id> is a random identifier that uniquely identifies multiple calls from a single peer. SIP/192.168.0.1-01fb34d6 - A SIP call from 192.168.0.1 SIP/sipphone-45ed721c - A SIP call from peer sipphone 5

2.1.3 Dialplan The most important part of comprehending ipbx is understanding how the dialplan works. Dialplan routes every call in the system from its source through various applications, to its final destination. Everything from voicemail, to conferencing, to auto attendant voice menus is done through a consistent concept and logic. 2.1.3.1 Extension Context Uses The dialplan is composed of one or more extension contexts. Each extension context is a collection of extensions. Each extension context in a dialplan has a unique name associated with it. The use of contexts can be used to implement a number of important features including: Security - Permit long distance calls from certain phones only Routing - Route calls based on extension Auto attendant - Greet callers and ask them to enter extensions Multilevel menus - Menus for sales, support, etc. Authentication - Ask for passwords for certain extensions Callback - Reduce long distance changes Privacy - Blacklist annoying callers from contacting you PBX Multihosting - Yes, you can have.virtual hosts. on your PBX Daytime/Nighttime - You can vary behavior after hours Macros - Create scripts for commonly used functions 6

2.1.3.2 Dialplan Concepts The goal of this section is to familiarize you with the concepts behind the dialplan, show some examples, and empower you with the knowledge you need to perform neat tricks and impress friends, co-workers, and competitors with your ipbx-foo, like a pro. 2.1.3.2.1 Basic Extension Context Extension context example 1:default Extension 101 102 103 104 105 0 Mark Spencer Will Meadows Greg Vance Check voicemail Conference Room Operator default Description In this context example, the first three extensions (101 to 103) all would be associated with ringing phones belonging to various employees. The fourth extension (104) would be associated with allowing someone to check their voicemail. The fifth extension (105) would be associated with a conference room. Finally, the.0.extension would be associated with the operator. Extension context example 2: mainmenu Extension s 1 2 3 9 # mainmenu Description Welcome message and instructions Sales Support Accounting Directory Hangup Example 2, only has single digit extensions. The.S. extension is the start extension, where the caller begins. This extension would play a message along the lines of "Thank you for calling Our Company> Press 1 for sales, 2 for support, 3 for accounting, 9 for a company directory, or # to hang-up". Each menu option is an extension and could either, for example, dial someone's real extension, or send someone to another menu. 7

2.1.3.2.2 Pattern Matching Extensions can also match patterns, instead of being single digits. Patterns to be pattern matched must start with the underscore character (._.) and may use any of the following special characters: X. Any digit from 0-9 N. Any digit from 2-9 [14-6]. Any a 1,4, 5, or 6.. Matches anything For example, consider the following context: Extension _61XX _62XX _63XX _7[1-3]XX _7[04-9]XX routing Description Rome Office Paris Office London Office New-York Office India Office This context splits calls according to their extension to be sent to various servers. In this example, it is assumed that all extensions are four digits long (ipbx has no such requirement, nor is there a requirement that all extensions be the same length). Anything starting with 61, would be sent to the Rome office, 62 would go to the Paris office, 71, 72, or 73 would go to New-York and so on. 2.1.3.2.3 Context Inclusion One extension context can include the contents of another. For example, consider the following contexts: longdistance Extension Description _91NXXNXXXXXX Long distance calls Extension _9NXXXXXX local Description Local calls Here, a context called local provides a single extension for dialing local calls, and includes the default extension as well. Then, there is a longdistance context 8

which includes an extension for long distance calling, and includes the local context. Phones which are in the longdistance context would be able to make long distance calling. Those in "local" could only make 7 digit local calls, and those in the default context would not have outside line access at all. Thus, using extension contexts, you can carefully control who has access to toll services. 2.1.3.2.4 Complete Set of Contexts S5 daytime Ring Operator Goto Main S5 afterhours Say Hours Goto Main dialout 9 Outside Line default mainmenu 610 Rick Stalman main Announce 611 Miguel de lcaza 1 Sales 612 Alan Cox 2 Support 613 Eric Raymond 3 Accounting 614 Linda Smith t i Operator Invalid S 1 2 3 support Announce Compiler GUI Kernel 620 621 622 623 624 625 Voicmail Conference #1 Conference # 2 ISDN RAS Music DISA t Back to Main 626 Intercom i Invalid 0 Operator A more complete example of a dialplan may be helpful. Here is a dialplan for a fictional Computer company. Several contexts are listed with familiar names. Thick black lines indicate an extension context being included in another. A slim gray line indicates one extension sending you into another extension or 9

extension context. In general, extensions that are local to you company should be listed under default context since they should be accessible by anyone at more-or less anytime. Typically, no actual phones would be associated with the default context alone, but it could be associated with a VoIP guest account, for example. A local context, in this case dialout, can include the default context as well as either local only or long distance dialing. It is important that access to the local context no be permitted from guest accounts, unless it is you intention to let people use your local phone resources. Next we have a couple of menu contexts, mainmenu and support. Both of these present menus while including the default context, so that direct extensions may be dialed at any time. The mainmenu context includes both daytime and after hours so that an incoming call rings to an operator first during the day, and directly to a company announcement after working hours. Call Features ADSI On-Screen Menu System Alarm Receiver Append Message Authentication Automated Attendant Blacklists Call F/T Blind Transfer Call Forward on Busy Call Forward on No Answer Call Forward Variable Call Transfer Call Detail Records Call Options Call Monitoring Call Parking Call Queuing Call Recording Call Retrieval Call Routing (DID & ANI) Call Snooping Call Waiting 10

Dial by Name Remote Call Pickup Route by Caller ID Call ID Options Caller ID Caller ID Blocking Caller ID on Call Waiting Calling Cards (Pre/Post paid) Conference Bridging Database Store / Retrieve Database Integration Direct Inward System Access Distinctive Ring Do Not Disturb E911 ENUM Fax Transmit and Receive (3rd Party OSS Package) Flexible Extension Logic Interactive Directory Listing Features Summary Interactive Voice Response (IVR) Local and Remote Call Agents Macros Music On Hold Music On Transfer Flexible Mp3-based System Random or Linear Play Volume Control Predictive Dialer Privacy Open Settlement Protocol (OSP) Overhead Paging Protocol Conversion Remote Call Pickup Remote Office Support Roaming Extensions Route by Caller ID SMS Messaging 11

Spell / Say Streaming Media Access Supervised Transfer Talk Detection Text-to-Speech (via Festival) Three-way Calling Time and Date Transcoding Trunking VoIP Gateways Voicemail Visual Indicator for Message Waiting Stutter Dialtone for Message Waiting Voicemail to email Voicemail Groups Web Voicemail Interface Country Specify Tones Computer-Telephony Integration TAPI (Telephony Application Programming Interface) An API for connecting a PC running Windows to telephone services The standard supports connections by individual computers as well as LAN connections serving many computers. Within each connection type, TAPI defines standards for simple call control and for manipulating call content. JTAPI (JAVA Telephony Application Programming Interface) The Java Telephony API supports telephony call control. It is an extensible API designed to scale for use in a range of domains, from first-party call control in a consumer device to third-party call control in large distributed call centers. Graphical Call Manager Outbound Call Spooling Predictive Dialer TCP/IP Management Interface Scalability TDMoE (Time Division Multiplex over Ethernet) Allows direct connection of Asterisk PBX Zero latency Uses commodity Ethernet hardware Voice-over IP Allows for integration of physically separate installations Uses commonly deployed data connections Allows a unified dialplan across multiple offices 12

Codecs ADPCM G.711 (A-Law & µ-law) G.723.1 (pass through) G.726 G.729 GSM ilbc Linear LPC-10 Speex Protocols IAX (Inter-Asterisk Exchange) H.323 SIP (Session Initiation Protocol) MGCP (Media Gateway Control Protocol SCCP (Cisco Skinny ) Traditional Telephony Interoperability E&M E&M Wink Feature Group D FXS FXO GR-303 Loopstart Groundstart Kewlstart MF and DTMF support Robbed-bit Signaling (RBS) Types MFC-R2 PRI Protocols 4ESS BRI (ISDN4Linux) DMS100 EuroISDN Lucent 5E National ISDN2 NFAS For more information please contact : sales@10levels.com 13