asterisk #1

Supports: xenial

Description

Asterisk is an Open Source PBX and telephony toolkit. It is, in a sense, middleware between Internet and telephony channels on the bottom, and Internet and telephony applications at the top. Asterisk can be used with Voice over IP (SIP, H.323, IAX and more) standards, or the Public Switched Telephone Network (PSTN) through supported hardware. Supported hardware: * All Wildcard (tm) ISDN PRI cards from Digium (http://www.digium.com) * HFC-S/HFC-4S-based ISDN BRI cards (Junghanns.NET, beroNet, Digium etc.) * All TDM (FXO/FXS) cards from Digium * Various clones of Digium cards such as those by OpenVox Xorcom Astribank USB telephony adapter (http://www.xorcom.com) Voicetronix OpenPCI, OpenLine and OpenSwitch cards * CAPI-compatible ISDN cards (using the add-on package chan-capi) * Full Duplex Sound Card (ALSA or OSS) supported by Linux * Tormenta T1/E1 card (http://www.zapatatelephony.org) * QuickNet Internet PhoneJack and LineJack (http://www.quicknet.net) This is the main package that includes the Asterisk daemon and most channel drivers and applications.


Overview

This is a work-in-progress charm to deploy and operate Asterisk as a virtualized network service (VNF), currently focusing on SIP functionality.

This has been successfully tested on LXD and Amazon EC2.

Once the asterisk charm has been deployed, configured, and a user added, you can test it out by using a SIP phone, configured with the new users credentials, and call extension 100. If successful, you should here a brief message.

Usage

juju deploy cs:~aisrael/asterisk
juju expose asterisk

If you are deploying to Amazon EC2 or other cloud that uses NAT, you'll need to enable this functionality:

juju set asterisk sip-nat='yes'

By default, no users have been added. To do that, run the add-user action, specifying the username and password.

juju run-action asterisk/0 add-user username=demo password=demo

Scale out Usage

None yet.

Known Limitations and Issues

The charm is pretty limited at the moment.

  • The pjsip module is disabled, due to a bug in the Ubuntu 16.04 asterisk package. The package will need to be fixed in order for that module to be enabled.
  • Does not auto-detect NAT
  • Configuration options are limited.
  • dialpans are not configurable yet.

Configuration

  • sip-nat: 'yes', 'no', 'force_rport', or 'comedia'. Please note that only 'yes' has been tested.
  • sip-port: The SIP port to listen on.

Contact Information

Please submit issues or pull requests against this charm on its github repository.

Upstream Project Name

Asterisk - a free and open source framework for building communications applications, sponsored by Digium.


Configuration

sip-nat
(string) Enable NAT support
no
sip-port
(int)
5060