6.0.0-git
2024-10-06
Last Modified 2014-11-27 by Jan Schneider

Astral

Astral is a telephone dialler module for use with the Asterisk PBX. Astral provides the telephony/dial service, making it possible to dial directly from phone numbers listed in your Turba address book, or anywhere else where Horde Form elements of the type 'phone' or 'cellphone' are used.

Bugs

Astral can not cope with being passed numbers which include an extension number, eg "01234 56789 ext 654"

People

Astral is being developed by Chris Hastie: chris at raggedstaff dot net

Description

Astral provides a way to set up a phone call by clicking on a link within Horde - most commonly associated with phone numbers listed in Turba. It achieves this by providing the telephony/dial service through an API. Astral interacts with Asterisk's Manager interface over a TCP connection, using the Originate action to set up a call between the configured source extension and the phone number to be dialled. When a dial link is clicked, the configured source extension rings. When that is picked up, Asterisk dials the required number and connects it to the extension.

Astral is primarily useful in a corporate context where telephony is provided by Asterisk and all Horde users have access to the same Asterisk server.

Astral has no displayable pages. It attempts to set up the call, pushes a message about the response to the $notification object then redirects to the calling page.

API

Astral provides a single api call, dial, through the function _astral_dial. This is intended to provide the telephony/dial service.

_astral_dial expects a phone number as argument. It returns a URL. The URL can be used to form a click-to-dial link.

The phone number is cleaned before incorporating in the URL (QUESTION: should we include the raw number in the URL and clean it in the page called?). The following transformations are performed on the number:

  • A leading '+' is replaced with the configured international dialling prefix (a configuration parameter of Astral).
  • All remaining characters other than 0-9,#,* are removed.

Resources

Astral homepage
Astral development on Github
Asterisk Manager API
Asterisk Manager Originate action
CustomizeApis


Back to the Project List