Asterisk (PBX)

From Infogalactic: the planetary knowledge core
Jump to: navigation, search
Asterisk
Asterisk Logo.svg
Developer(s) Digium
Stable release 13.9.0 (9 May 2016; 7 years ago (2016-05-09)) [±] 11.22.0 (29 March 2016; 7 years ago (2016-03-29)) [±]
Preview release 13.9.0-rc2 (May 3, 2016; 7 years ago (2016-05-03)) [±] 11.22.0-rc1 (March 22, 2016; 7 years ago (2016-03-22)) [±]
Written in C
Operating system Cross-platform
Type Voice over Internet Protocol
License GNU General Public License / Proprietary
Website www.asterisk.org

Asterisk is a software implementation of a telephone private branch exchange (PBX); it allows attached telephones to make calls to one another, and to connect to other telephone services, such as the public switched telephone network (PSTN) and Voice over Internet Protocol (VoIP) services. Its name comes from the asterisk symbol, *.

Asterisk is released with a dual license model, using the GNU General Public License (GPL) as a free software license and a proprietary software license to permit licensees to distribute proprietary, unpublished system components.

Asterisk was created in 1999 by Mark Spencer of Digium.[1][2] Originally designed for Linux[citation needed], Asterisk runs on a variety of operating systems, including NetBSD, OpenBSD, FreeBSD, Mac OS X, and Solaris. Asterisk is small enough to run in an embedded environment such as Customer-premises equipment-hardware running OpenWrt.[3] There are complete self-contained versions that can boot from a storage device such as a flash drive or external disk drive (preferably IDE/PATA, SATA or mSATA; a USB-connected device can be used, but is often not recommended).[4] A live CD or virtual machine can also be used.

Features

The Asterisk software includes many features available in proprietary PBX systems: voice mail, conference calling, interactive voice response (phone menus), and automatic call distribution. Users can create new functionality by writing dial plan scripts in several of Asterisk's own extensions languages, by adding custom loadable modules written in C, or by implementing Asterisk Gateway Interface (AGI) programs using any programming language capable of communicating via the standard streams system (stdin and stdout) or by network TCP sockets.

Asterisk supports several standard voice over IP protocols, including the Session Initiation Protocol (SIP), the Media Gateway Control Protocol (MGCP), and H.323. Asterisk supports most SIP telephones, acting both as registrar and back-to-back user agent, and can serve as a gateway between IP phones and the public switched telephone network (PSTN) via T- or E-carrier interfaces or analog FXO cards. The Inter-Asterisk eXchange (IAX) protocol, RFC 5456, native to Asterisk, provides efficient trunking of calls among Asterisk PBXes, in addition to distributing some configuration logic. Many VoIP service providers support it for call completion into the PSTN, often because they themselves have deployed Asterisk or offer it as a hosted application. Some telephones also support the IAX protocol.

By supporting a variety of traditional and VoIP telephony services, Asterisk allows deployers to build telephone systems, or migrate existing systems to new technologies. Some sites are using Asterisk to replace proprietary PBXes, others provide additional features, such as voice mail or voice response menus, or virtual call shops, or to reduce cost by carrying long-distance calls over the Internet (toll bypass).

Asterisk was one of the first open source PBX software packages.[5]

In addition to VoIP protocols, Asterisk supports traditional circuit-switching protocols such as ISDN and SS7. This requires appropriate hardware interface cards, marketed by third-party vendors. Each protocol requires the installation of software modules.

Internationalization

While initially developed in the United States, Asterisk has become a popular VoIP PBX worldwide because it is freely available under open-source licensing, and has a modular, extensible design. The American English, French, Persian (Farsi) and Mexican Spanish female voices along with other prompts, such as Australian English, for the interactive voice response and voice mail features are frequently updated with submissions from developers in many languages and dialects. A few novelty prompts are offered, such as jokes[6] and a themed "zombie apocalypse" message for Halloween.[7] Additionally, voice sets are offered for commercial sale in various languages, dialects, and genders.

The default set of English-language Asterisk prompts, included with the package, are recorded by professional telephone voice Allison Smith in Calgary, Alberta.[8]

Derived products

Asterisk is a core component in many commercial products and open-source projects. Some of the commercial products are hardware and software bundles, for which the manufacturer supports and releases the software with an open-source distribution model.

There are also various add-on products, often commercial, which extend Asterisk in some manner.

As one example, the standard voice prompts included with the system are free. A business can purchase matching voice announcements of its company name, IVR menu options and employee or department names (as a library of live recordings of common names[10] or a set of fully customised prompts recorded by the same professional voice talent) at additional cost for seamless integration into the system.

Other add-ons provide fax support, text-to-speech, additional codecs and new features.[11] Some third-party add-ons are free;[12] a few even support embedded platforms such as the Raspberry Pi.[13]

See also

References

  1. Lua error in package.lua at line 80: module 'strict' not found.
  2. Lua error in package.lua at line 80: module 'strict' not found.
  3. Lua error in package.lua at line 80: module 'strict' not found.
  4. AstLinux: Boot via USB Flash Storage. "For production AstLinux installations, it is recommended to use flash storage connected off IDE, SATA or mSATA controllers ... it takes longer for USB storage devices to be recognized ... AstLinux may fail ... followed by the USB drive mounting a few seconds later."
  5. Lua error in package.lua at line 80: module 'strict' not found.
  6. "You are not the next caller in line", parody on-hold message where a pre-recorded Allison Smith sheepishly confesses (at 0:00:45) that the caller is actually *not* next in queue and would be lucky to get a response at 11:30pm from the cleaning lady after other workers had left for the day.
  7. Lua error in package.lua at line 80: module 'strict' not found.
  8. Lua error in package.lua at line 80: module 'strict' not found.
  9. Lua error in package.lua at line 80: module 'strict' not found.
  10. Lua error in package.lua at line 80: module 'strict' not found.
  11. Lua error in package.lua at line 80: module 'strict' not found.
  12. Lua error in package.lua at line 80: module 'strict' not found.
  13. Lua error in package.lua at line 80: module 'strict' not found.

External links