Project:VOIP
A few members had been interested in playing with VOIP/SIP things, mostly involving connecting the space phone line to the internet and doing voice menus, sip accounts for members, group chat, joining the Hackerspaces Call in, getting linked up to other hackspaces, etc.
Functional features:
- Internal dialing between floors (really easy rather than going back and forth back and forth to talk with someone / do something)
- External calls get prompts for general and travel information.
Doorbell-style ringtone on phone rings when back-gate visitors call ('doorbell ringer' zombie-phone is located above Electronics lab)Conference room function (mainly extension 4225)- Weather-Resistant Outdoor Phones - GAI-Tronics Titan for Rail and Commander User and Installation Guide
Back Door phone now with Robonaut integration - IRC users informed when a delivery call is made and also when not answered.- Toll-Free Outgoing dialing (0800 style numbers) / Banned dialing for others
- DUE TO DUMB CALLERS DIALING FOR LENNY WHEN THEY ABSOLULUTELY SHOULDN'T HAVE AND STILL COMPLAINING ABOUT IT, WE HAD TO REMOVE THE LENNY FUNCTIONALITY. RIP LENNY.
- Easy networking to other Hackspaces
- Dialing of Emergency numbers (101/111/112/999) (Please be aware that in the event of a power cut, hardware issue etc the phones will not work. Please use a mobile, or the payphone situated on High Road)
PBX System details:
- System Platform: Hosted on Bell, a managed Virtual Machine running on Landin
- Inbound and Outbound Connectivity to the PSTN is provided by Andrews & Arnold
- Internal phones are Cisco 79XX SIP handsets.
- Outside phones are GAI-Tronics ruggedised telephones, both attached to a single Cisco ATA186 being powered over PoE using an Avaya 1603 700415607 PoE power splitter/injector.
- OS: Debian Linux with tftpd-hpa service enabled for phones that need to boot and load config files over tftp, LHS logo screen graphics, etc.
- PHONE SW: Asterisk 13.14.1 - no longer needing DAHDI as we've stopped using the TDM400 Digium FXO ports.
- EXTERNAL VOICE GENERATION: Voice prompt files are currently manually generated using AWS Polly text to speech API.
- CONFIG NOTE: Custom configs/scripts to be shared confidentially as they contain passwords.
Asterisk Configuration
The asterisk configuration files can be found in /etc/asterisk
. To make reading / managing the files easier they've been split up, and are "included" from the base config files.
PJSIP
The SIP stack's core functionality, as well as endpoint definitions for endpoints such as phones and VoIP providers are managed by the chan_pjsip module. The syntax is somewhat different to Asterisks former chan_sip module, so ensure you're using the correct documentation when making changes.
Filename | Description |
---|---|
pjsip.conf | The default pjsip config template that ships with Asterisk. You shouldn't need to edit this file too much. |
pjsip_transports.conf | Defines the various "transports", ie the IPs, ports and protocols Asterisk listens on. |
pjsip_peers.conf | Defines "peers", E.G VoIP providers and other Hackspace's phone systems. |
pjsip_extensions.conf | Defines "extensions", I.E Phones registering to the PBX |
Extensions
Call routing and features are configured in the extensions files.
Filename | Description |
---|---|
extensions.conf | The default extensions.conf template that ships with Asterisk. You shouldn't need to edit this file too much. |
extensions_globals.conf | Defines various global variables such as ring groups, to make editing them easier. |
extensions_internal.conf | Internal calls, i.e those originating from the various phones and ATAs in the Hackspace end up here. |
extensions_external.conf | External calls, i.e those originating from the PSTN end up here. |
extensions_barrier.conf | A temporary, experimental context, to facilitate opening the barrier from the phones. |
extensions_utils.conf | Various utilities and functions are defined here. |
Provisioning Notes
We should document the various provisioning files required for our collection of phones and ensure they're backed up somewhere.
To assist, I've upgraded two of the phones to the latest firmware and captured what files they requested from the TFTP server:
Cisco 7942
CTLSEP3CCE73ACD229.tlv ITLSEP3CCE73ACD229.tlv ITLFile.tlv SEP3CCE73ACD229.cnf.xml XMLDefault.cnf.xml SIP42.9-4-2SR3-1S.loads jar42sip.9-4-2ES26.sbn cnu42.9-4-2ES26.sbn apps42.9-4-2ES26.sbn dsp42.9-4-2ES26.sbn
Cisco 7970
CTLSEP00070E5706BE.tlv ITLSEP00070E5706BE.tlv ITLFile.tlv SEP00070E5706BE.cnf.xml XMLDefault.cnf.xml SIP70.9-4-2-1S.loads jar70sip.9-4-2TH1-1.sbn cnu70.9-4-2TH1-1.sbn apps70.9-4-2TH1-1.sbn dsp70.9-4-2TH1-1.sbn cvm70sip.9-4-2TH1-1.sbn
Infrastructure needs/Future uses:
- Mini-XML applications for the phones (weather, IRC info, relevant member info)
- Enable emergency all-page public address functionality
- Connect with other Hackspaces
Please use it, play with it, and hack on it to make it better!
Dial 020 3422 0547 to call the LHS phone system, please contact Marrold or email the london-hack-space-infrastructure mailing list.