Difference between revisions of "Telephone System"

From Hackerspace ACKspace
Jump to: navigation, search
(update service numbers)
m (fixed wrong date)
 
(30 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
{{Project
 
{{Project
 +
|Featured=No
 
|State=Active
 
|State=Active
|Members=xopr
+
|Members=xopr, Stuiterveer,
 
|Description=Telephone Communication System
 
|Description=Telephone Communication System
 +
|Picture=Cisco 7940.jpg
 
}}
 
}}
[[File:Cisco 7940.jpg|335px|thumb|right|Cisco IP Phone 7940 series]]
+
<onlyinclude>{{#ifeq:{{{transcludesection|telephony_vps_maintenance}}}|telephony_vps_maintenance|
 
+
{{InfoBox
 +
|Type=alert
 +
|Title=Intermittent/offline internal VoIP due to planned power outage
 +
|Text=Due to planned power outage on November 14-16, all internal services will be shutdown and might come back partially. See [[Maintenance]] for more details.
 +
|Float=right
 +
|Clear=both
 +
|Width=24em
 +
|Background=#f7f7ff
 +
|Expire=1732492799
 +
}}
 +
}}</onlyinclude>
 
__TOC__
 
__TOC__
  
 
== synopsis ==
 
== synopsis ==
Create and/or implement a telephone communication system for fun and automation. It can provide conference rooms, reach key people from a central number, quickly notify if the space is closed and provide a quick and cheap way of communication.
+
<onlyinclude>{{#ifeq:{{{transcludesection|synopsis}}}|synopsis|
 +
Create and/or implement a telephone communication system for fun and automation. It can provide conference and congress rooms, quickly notify if the space is closed and provide a quick and cheap way of communication.
 +
}}</onlyinclude>
  
Be aware that <abbr title="FreeSWITCH">FS</abbr> has a very steep learning curve, but once you get the point, you'll never want to go back (hint: regular expressions ftw)
+
{{InfoBox
 +
|Type=featured
 +
|Title=
 +
|Text=[[User:Xopr|xopr]] 16:35, 24 January 2022 (CET) The VoIP VM had a downtime from July 16 2017 until somewhere november 2021, the [[VM server|SpaceNode]] was down; the new server's configuration is yet to be completed, but the [[hackspace]] extension is already connected to it.
 +
|Float=
 +
|Clear=both
 +
|Width=50%
 +
|Background=#f7fff7
 +
}}
  
My ([[User:Xopr|Xopr]]) personal interest is pulling the all types of communication into a central point and thereby link them.
+
[[Image:VoIP_diagram.png|300px|thumb|VoIP system with its involved servers]]
 +
== new system ==
 +
The current system is being rebuilt. It should be possible to call to the space and have internal calls without requiring the internet.
 +
{{File:VoIP_diagram.png}}
  
== implementation ==
+
=== current status ===
 +
* [[Phone:+31979922|SpacePhone ENUM number]]
 +
* Dutch language for IVR
 +
* possible to dial ackspace.nl sip addresses (info, conf, [username])
  
Current setup consists of the following:
+
There is a caller id connected in the [[stACKspace]] to fuse group [[Fuse group::A]], and a phone in the [[hACKspace]] fuse group [[Fuse group::A]].
* a public accessible number (+31 45 71 12345)
+
=== todo ===
* permanent space phone's (two [[Cisco 79xx|Cisco 7940]] (ext. 1000 and 1001)
+
* spacestate information logic
* several [[ATA|ATA's]] (not permanently connected, yet)
+
* install phone in every room
* Customized [[dialplan]]
+
* update/extend IVR menu
** simple IVR menu (with space state notification built-in)
+
** mention the space state before actually answering (183:progress)
** conference rooms (1331)
+
** start with a brief menu, but give more info on demand
** central point for reaching [[key people]] (1333)
+
* add support for Cisco 7900 phones ([[Cisco phone deployment]])
** simple intercom service
+
** need to put an interface on a different VLAN
** [[Telephone_scripts|number lookup script]]
+
** update all switches to offer the same VLAN
** various participant registrations (see [[#extensions]])
+
** add TFTP and add the firmware + configs
 +
** update the DHCP (option 66 or 150)
 +
** update dialstring to both signal SCCP and SIP
 +
* update public SIP addressing (dedicated public IP or a VPS redirect)
 +
 
 +
=== wishlist ===
 +
* multilingual IVR
 +
* enable fax/modem detect
 +
* enable 2600 toying option
 +
* Add a [[FreeSWITCH autopatch|HAM autopatch]] system to the telephony system so sip phones and amateur radio are interconnected
 +
* simple intercom service
 +
* [[Telephone_scripts|number lookup script]]
 +
* various participant registrations (see [[#extensions]])
 
* some [[Telephone_scripts|scripting]] to ease life and add some nifty features
 
* some [[Telephone_scripts|scripting]] to ease life and add some nifty features
 
+
* trunking over VPN
For details on the Cisco phones, see [[Cisco phone deployment]].
+
* install PoE blade or smaller PoE switch (might want to choose for regular power supplies)
  
 
=== extensions ===
 
=== extensions ===
Line 45: Line 85:
 
|mainlabel=-
 
|mainlabel=-
 
|sort=Extension
 
|sort=Extension
|order=asc
+
|order=ascending
 
|offset=0
 
|offset=0
 
}}
 
}}
Line 51: Line 91:
 
=== dialplan ===
 
=== dialplan ===
 
The current [[dialplan]] expectation is defined as followed:
 
The current [[dialplan]] expectation is defined as followed:
{| class="wikitable"
+
{{:dialplan}}
! scope="col" | dialplan
 
! scope="col" | destination
 
|-
 
| 10xx
 
| Onsite (ACKspace) extensions
 
|-
 
| 19xx
 
| Offsite extensions
 
|-
 
| 1200
 
| Customer service
 
|-
 
| 1233
 
| Mailbox
 
|-
 
| 1244
 
| Calling credits
 
|-
 
| 1300
 
| ACKspace portal (external IVR)
 
|-
 
| 1301-1303
 
| listen-in event conference rooms 1-3
 
|-
 
| 1304
 
| hold music (default)
 
|-
 
| 1305
 
| trance channel
 
|-
 
| 1306
 
| [http://www.liveatc.net/search/?icao=eham air traffic control] (currently b0rken)
 
|-
 
| 1307
 
| lover's theme
 
|-
 
| 1308
 
| [http://www.di.fm/chiptunes chipmod channel]
 
|-
 
| 1309, signal
 
| [http://signal.hackerspaces.org/ hackerpaces signal]
 
|-
 
| 1310
 
| gpljihad
 
|-
 
| 1311
 
| troll & meme music
 
|-
 
| 1312
 
| opus codec test (b0rken)
 
|-
 
| 1331
 
| Conference rooms
 
|-
 
| 1333
 
| key holders (cell forward)
 
|-
 
| 1334, echo
 
| echo test
 
|-
 
| 1335
 
| delayed echo test
 
|-
 
| 1345
 
| group intercept
 
|-
 
| 1364, 1doh
 
| [http://dukesofhackers.org/ Dukes of Hackers]
 
|-
 
| 1366(3), 1food
 
| ACKspace pizza service (currently not in use)
 
|-
 
| 1372
 
| return call
 
|-
 
| 1373, redial
 
| redial
 
|-
 
| 1374, park
 
| park
 
|-
 
| 1376, unpark
 
| unpark
 
|-
 
| 1380-1389
 
| valet park
 
|-
 
| 1390
 
| group ACKspace main+local
 
|-
 
| 1391
 
| group ACKspace main
 
|-
 
| 1392
 
| group ACKspace local
 
|-
 
| 1393
 
| group ACKspace remote
 
|-
 
| 1398, closure
 
| closing announcement
 
|-
 
| 1399
 
| ACKspace paging
 
|-
 
| 1525, 1kak
 
| 'kakhoofd' extension for [[User:PsychiC|PsychiC]]
 
|-
 
| *<extension number>
 
| simple intercom (cisco 7940 phones only)
 
|-
 
| 2222
 
| Emergency (as described on the sticker in each room)
 
|}
 
  
0611|069500|0906*
+
=== Interactive Voice Response ===
 +
The concept for the new IVR menu will have something like this:
  
{| class="wikitable"
+
'''ack_main''' and '''ack_info''' (are the same, but with different spoken texts)
|+ Almost exhaustive dialplan, compatible with Dutch <abbr title="Public Switched Telephone Network">PSTN</abbr> as [http://wetten.overheid.nl/BWBR0010198/ defined by Ministry of Economic affairs] and monitored/policed by [http://opta.nl Opta]
+
* 1[0579]\d: direct dial extensions
! scope="col" | dialplan regex
+
* 2 switch to English language
! scope="col" | type
+
* 3 switch to Dutch language
! scope="col" | remark
+
* 7 go to conference rooms (1331)
|-
+
* 8 go to menu '''ack_extra'''
| 01[12356789][\d]{7}
+
* 9 go to menu '''ack_info'''
| Geographical numbers
+
* 0 go to menu '''ack_directory''' (1800)
|
 
|-
 
| 014\d\d+
 
| Internal network service
 
|
 
|-
 
| 0[2357][\d]{8}
 
| Geographical numbers
 
|
 
|-
 
| 044\d{3,11}
 
| European routing
 
| only 0444 seems available
 
|-
 
| 06[123458][\d]{7}
 
| cell numbers
 
|
 
|-
 
| 066[\d]{7}
 
| Pager
 
|
 
|-
 
| |067([0-5]{3}|[0-5]{7}
 
| ISP access
 
|
 
|-
 
| 0676[12345789]
 
| [UNREGISTERED]
 
|
 
|-
 
| 06760[\d]{7}
 
| ISP access
 
|
 
|-
 
| 067[7-9]\d\d
 
| [UNREGISTERED]
 
|
 
|-
 
| 069
 
| [UNREGISTERED]
 
|
 
|-
 
| |0800(\d{4}|\d{7})
 
| Toll free information numbers
 
|
 
|-
 
| 081
 
| [UNREGISTERED]
 
|
 
|-
 
| 082\d+
 
| VPN
 
|
 
|-
 
| 083
 
| [UNREGISTERED]
 
|
 
|-
 
| 08[47][\d]{7}
 
| Personal assistant services
 
|
 
|-
 
| |0(85|91)\d{7}
 
| General Electronic communications
 
|
 
|-
 
| 086
 
| [UNREGISTERED]
 
|
 
|-
 
| 088[\d]{7}
 
| Business numbers
 
|
 
|-
 
| 089
 
| [UNREGISTERED]
 
|
 
|-
 
| |090[069](\d{4}|\d{7})
 
| Paid information numbers
 
|
 
|-
 
| 09[2345689]
 
| [UNREGISTERED]
 
|
 
|-
 
| 0970[\d]{8}
 
| available?
 
|
 
|-
 
| 097[1-9]
 
| [UNREGISTERED]
 
|
 
|-
 
| 10\d{3}
 
| Carrier select
 
| ACKspace main (10xx)
 
|-
 
| 112
 
| European harmonized
 
|
 
|-
 
| |116\d{3}
 
| European harmonized
 
|
 
|-
 
| 120[0-4]
 
| Harmonized for own network
 
| Customer service
 
|-
 
| 1233
 
| Direct voicemail
 
| Voicemail
 
|-
 
| 1234
 
| Voice dial
 
|
 
|-
 
| 1244
 
| Pre paid service menu
 
|
 
|-
 
| 13[03-9]\d
 
| Local network facilities
 
| special services
 
|-
 
| 131
 
| Hide caller ID
 
|
 
|-
 
| 132
 
| Show caller ID
 
|
 
|-
 
| 14\d{2,3}
 
| Harmonised services of social value
 
| General Affairs Department
 
|-
 
| 15[\d]{3}
 
| [UNREGISTERED]
 
| TBD.
 
|-
 
| 16\d\d
 
| Carrier select
 
|
 
|-
 
| 17[0-8][\d]
 
| [UNREGISTERED]
 
| TBD.
 
|-
 
| |18([02-9]\d|1[0-79])
 
| Subscriber information service (except 1818)
 
|
 
|-
 
| 19[\d]{3}
 
| [UNREGISTERED]
 
| Registered users external
 
  
|-
+
'''ack_extra'''
| (045) 2201000-2299999
+
* 1 more info on space state (time of toggle) (1340)
| [AVAILABLE]
+
* 2 speak out telephone number and/or IP address (1354)
| Local emergency call
+
* 3 listening rooms (1300)
 +
* 4 extended time service (1380)
 +
* 5 contact remote location (when online) (150)
 +
* 6 echo test (1353)
 +
* 8 call test setup (1388)
 +
* 9 repeat this menu
 +
* 0 go back
 +
* * go to main menu
  
|-
+
'''ack_directory'''
| (045) 4200000-4299999
+
: To be determined
| [AVAILABLE]
+
* 9 repeat this menu
| [[User:Xopr|Xopr]](?)
+
* 0 go back
 
+
* * go to main menu
|-
 
| (045) 4400000-4499999
 
| [AVAILABLE]
 
| Local emergency call
 
 
 
|-
 
| (045) 9[\d]*
 
| [UNREGISTERED]
 
| (Local) emergency call, 911, 999
 
 
 
|-
 
| |2222|4444|112|911|999
 
|
 
| (Local) emergency call
 
|}
 
Also note that 085 can have a special tariff
 
 
 
=== todo ===
 
* display dialplan for reference
 
* implement optional moderated conference rooms
 
* customer service IVR (1200)
 
* call forwarding
 
* pizza/food IVR (1366)
 
* trunking over VPN
 
* install PoE blade
 
* add other extensions (other residents)
 
* Dutch grammar logic
 
* English menus
 
  
 
== history ==
 
== history ==
  
=== CCC ===
+
=== Chaos Communication Camp 2011 ===
 
The CCC Binary Voice Radio telephony server was a mixed success.
 
The CCC Binary Voice Radio telephony server was a mixed success.
 
Actually, it was a disaster:
 
Actually, it was a disaster:
-The visual ring indicator circuit didn't trigger the optocouplers so that was the first thing to fail.
+
* The visual ring indicator circuit didn't trigger the optocouplers so that was the first thing to fail.
-a lot of power failures which caused a lot of downtime and eventually database corruption
+
* a lot of power failures which caused a lot of downtime and eventually database corruption
-the DECT system was getting too complex for the simple phones we've modded for field reporting (Technical clarification came from one of the Eventphone key people who explained that the antenna register on cheap phones was too small to identify them all).  Besides that, it looked like the cabling had short-circuited because the 9v battery didn't have any oomph left to generate amplified audio.
+
* the DECT system was getting too complex for the simple phones we've modded for field reporting (Technical clarification came from one of the Eventphone key people who explained that the antenna register on cheap phones was too small to identify them all).  Besides that, it looked like the cabling had short-circuited because the 9v battery didn't have any oomph left to generate amplified audio.
-wifi had a hard time maintaining the links and coverage wasn't 100% so the wifi field reporter wasn't a good alternative
+
* wifi had a hard time maintaining the links and coverage wasn't 100% so the wifi field reporter wasn't a good alternative
-last but not least: the public ip addressing threw a spanner in the works and the server went limbo.
+
* last but not least: the public IP addressing threw a spanner in the works and the server went limbo.
 
The server's database went corrupt, and after a restore, it didn't match the regular config files. I got it semi-working after it was far too late to make it useful to the studio.
 
The server's database went corrupt, and after a restore, it didn't match the regular config files. I got it semi-working after it was far too late to make it useful to the studio.
 
Also, after I got it to work, it wouldn't register correctly to the Eventphone trunk and we only got to call the editorial room (2781|BVR1) via DECT twice or so.
 
Also, after I got it to work, it wouldn't register correctly to the Eventphone trunk and we only got to call the editorial room (2781|BVR1) via DECT twice or so.
Line 389: Line 138:
  
  
=== Open door day ===
+
=== Open door day 2011 ===
 
+
For the [[Open Door Day 26-11-2011|open door day]], I set up a stand-alone test system with two Cisco 7940s, a FxS/FxO and dual FxS ATA, which included some softclients.
For the open day, I set up a stand-alone test system with two Cisco 7940s, a FxS/FxO and dual FxS ATA, which included some softclients.
 
  
The phones were successful in a rough field test on the open day, connected to a FreeSWITCH exchange and two ATAs which provided connections to two additional analog handsets. The field test proved reliable enough and a great platform for some hilarious phone pranks.
+
The phones were successful in a rough field test on the open door day, connected to a FreeSWITCH exchange and two ATAs which provided connections to two additional analog handsets. The field test proved reliable enough and a great platform for some hilarious phone pranks.
  
 
The Cisco phones had a menu where you could view a 2 bit grayscale snapshot of the two space cams, and you were able to switch some outlets.
 
The Cisco phones had a menu where you could view a 2 bit grayscale snapshot of the two space cams, and you were able to switch some outlets.
 
People were allowed to navigate the configs and exploit functionality and [[User:LuckY|LuckY]] sniffed and replayed audio over a wifi link.
 
People were allowed to navigate the configs and exploit functionality and [[User:LuckY|LuckY]] sniffed and replayed audio over a wifi link.
  
== future ==
+
=== Other events ===
* Move the current setup to the SAN server and release the current setup as a ACKspace FS playground.
+
* Moving to the [[Putgraaf]]: Used a (wrong) [https://en.wikipedia.org/wiki/Yagi%E2%80%93Uda_antenna Yagi antenna], connected to HeerlenLive, [[VPN|tunneling]] to the server in the [[xCBS]] building, making it ACKspace's first offsite VoIP phone in a place where there wasn't even carpet or ventilation
* Create a larger deployment of the VOIP network as a testing ground for a more high-traffic environment.
+
* [[Open_Door_Day_30-3-2013|Open door day 2013]]: Experimented with a cluster of [[Raspberry Pi]]s and put some phones on various locations on the ground floor
* [[User:Stoney3K|Stoney]] would like to build a visual ring indicator which flashes once somebody calls a specific number.
+
* [http://illegaleshow.nl/ illegale show 2013(?)]: Provided power, [[Guerilla_VoIP|uplink and DECT]] in a location about 80m away from any utility facilities
* Add a [[FreeSWITCH autopatch|HAM autopatch]] system to the telephony system so sip phones and amateur radio are interconnected
+
* [[Open_Door_Day_28-3-2015|Open door day 2015]]: probably one of the largest setups counting physical phones; no features whatsoever
 +
* [[Open_Door_Day_26-3-2016|Open door day 2016]]: lot's of lag on the skinny protocol (controlled by a Raspberry Pi
 +
 
  
== notes ==
+
== connecting various devices to ACKspace VoIP ==
 +
{{:Fritz!Box|transcludesection=connecting_Fritz!Box}}
 +
{{:Telephone_system:Analog_Telephone_Adapter|transcludesection=connecting_PAP2T}}
 +
{{:Siemens_Gigaset|transcludesection=connecting_N510_IP_PRO}}
 +
{{:Telephone_system:Analog_Telephone_Adapter|transcludesection=connecting_SPA3000}}
 +
{{:Thomson_ST2030|transcludesection=connecting_ST2030}}
  
[http://www.voip-info.org/wiki/view/Cisco+POE Here's some information on how to power the Cisco 7940's through standard PoE switches. As featured on CampZone 2011.] Thanks, [[User:Stoney3K|Stoney]]
+
[[Category:Telephony]]

Latest revision as of 20:10, 28 October 2024

Project: Telephone System
Featured: No
State Active
Members xopr, Stuiterveer
GitHub No GitHub project defined. Add your project here.
Description Telephone Communication System
Picture
Cisco 7940.jpg


synopsis

Create and/or implement a telephone communication system for fun and automation. It can provide conference and congress rooms, quickly notify if the space is closed and provide a quick and cheap way of communication.

xopr 16:35, 24 January 2022 (CET) The VoIP VM had a downtime from July 16 2017 until somewhere november 2021, the SpaceNode was down; the new server's configuration is yet to be completed, but the hackspace extension is already connected to it.
VoIP system with its involved servers

new system

The current system is being rebuilt. It should be possible to call to the space and have internal calls without requiring the internet.

The current VoIP setup consists essentially of three servers ('nodes')

  • NLnode (primary public system, sip.ackspace.nl)
  • DEnode (fallback public system, sip1.ackspace.nl)
  • SpaceNode (internal system handling IVR and internal extensions)

The public servers are tied with SRV records as a semi-high availability setup with the primary service having high priority and weight (10 20), while the backup server has it the other way around. All (correctly implemented) services connect to the servers in the given order.

Note that currently, it is not yet possible for an extension on the primary server to call another extension on the fallback server. xopr has seen it happen that a third-party Fritz!Box falls back to the secondary server and never reconnects to the primary server without editing the credentials and reapplying the registration.

This is the SRV output:

$ dig -t srv _sip._tcp.ackspace.nl

; <<>> DiG 9.10.3-P4-Ubuntu <<>> -t srv _sip._tcp.ackspace.nl
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 783
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;_sip._tcp.ackspace.nl.		IN	SRV

;; ANSWER SECTION:
_sip._tcp.ackspace.nl.	384	IN	SRV	10 20 5060 sip.ackspace.nl.
_sip._tcp.ackspace.nl.	384	IN	SRV	20 10 5060 sip1.ackspace.nl.

;; Query time: 8 msec
;; SERVER: 127.0.1.1#53(127.0.1.1)
;; WHEN: Wed May 03 20:15:15 CEST 2017
;; MSG SIZE  rcvd: 110

All nodes connect to the BudgetPhone PSTN trunk for incoming calls, both public nodes connect to CheapConnect for the conference (and backup) number, to VoipBuster for outgoing calls and to Speakup for Limesco cell phone services. The SpaceNode connects to VoipBuster for an alternative PSTN trunk and landline services and to InterVoip for cell phone services.

When a call comes in, both public nodes try to route the call within 3 seconds: they try to call the SpaceNode user/trunk. When this fails, they try to call each other in case one of the nodes wasn't connected to BudgetPhone. If this fails, a tape will be played after 10 seconds stating that "currently, we're not reachable", whereafter the user will be placed in the (public) conference room.

If both public nodes weren't connected to BudgetPhone, the SpaceNode will answer within 10 seconds with the IVR.


current status

  • SpacePhone ENUM number
  • Dutch language for IVR
  • possible to dial ackspace.nl sip addresses (info, conf, [username])

There is a caller id connected in the stACKspace to fuse group A, and a phone in the hACKspace fuse group A.

todo

  • spacestate information logic
  • install phone in every room
  • update/extend IVR menu
    • mention the space state before actually answering (183:progress)
    • start with a brief menu, but give more info on demand
  • add support for Cisco 7900 phones (Cisco phone deployment)
    • need to put an interface on a different VLAN
    • update all switches to offer the same VLAN
    • add TFTP and add the firmware + configs
    • update the DHCP (option 66 or 150)
    • update dialstring to both signal SCCP and SIP
  • update public SIP addressing (dedicated public IP or a VPS redirect)

wishlist

  • multilingual IVR
  • enable fax/modem detect
  • enable 2600 toying option
  • Add a HAM autopatch system to the telephony system so sip phones and amateur radio are interconnected
  • simple intercom service
  • number lookup script
  • various participant registrations (see #extensions)
  • some scripting to ease life and add some nifty features
  • trunking over VPN
  • install PoE blade or smaller PoE switch (might want to choose for regular power supplies)

extensions

This is the list of registered extensions. If you want to register your own extension, let Xopr know. For available extensions, refer to the #dialplan

(refresh table)

ExtensionReference
100
150
170
176
177
Reserved extension numbers
101slACKspace
102hACKspace
103stACKspace
109DECT
150
151
152
153
154
MCH2022
150WHY2025
172Coolepascal
191Stuiterveer
196User:xopr
199Vicarious

dialplan

The current dialplan expectation is defined as followed:


Dialplan changed as of 2022/01/24
The dialplan has changed which impact a couple of the existing services. See following table for the changed numbers
number becomes was
1333 External Echo test "key people", deprecated since 2013
1334 External Identification local echo test, moved
1335 External Late echo test local delayed echo test, moved
1357 (deprecated) local ident, moved
1377 (deprecated) remote ident, moved
1354 Local Ident (new number)
1374 Remote Ident (new number)

used numbers

dialplan destination VPS status
(\+|00)([1-9]\d+) international 2024-03: unknown
0[1-9]\d+ long distance 2024-03: working
100 ring all onsite (ACKspace) extensions 2024-03: unknown
10[1-9] onsite (ACKspace) extensions 2024-03: unknown
112 European harmonized (emergency)1 2024-03: unknown
116\d{3} European harmonized (social interest)1 2024-03: unknown
1200 ACKspace portal (external IVR) 2024-03: conference
1201 alternate IVR (events) 2024-03: unknown
1233 mailbox1 2024-03: unknown
1244 prepaid calling credits2 2024-03: unknown
1300 listen-in event conference rooms IVR 2024-03: KINK radio
130[1-9] listen-in event conference rooms 1-9 2024-03: temporarily disabled (SIT)
1331 External conference room 2024-03: working
1332, 13ec External Conference room 2024-03: unknown
1333, 13ee External Echo test 2024-03: unknown
1334, 13ei External server Identification and ANAC 2024-03: echo service
1335, 13el External Late echo test 2024-03: working
1336, 13em External "Motivationals": 1 motivational per call 2024-03: working
1337, 13er, bergeijk External Radio Bergeijk 2024-03: not working
1340 Hackerspace state 2024-03: not working
1351 Local conference room 2024-03: not working
1352, 13lc Local Conference room 2024-03: not working
1353, 13le, echo Local Echo test 2024-03: not working
1354, 13li Local server Identification and ANAC 2024-03: not working
1355, 13ll Local Late echo test 2024-03: not working
1356, 13lm Local "Motivationals"3 2024-03: not working
1357, 13lr (Local Radio)3 2024-03: Local ident
1371 Remote conference room 2024-03: not working
1372, 13rc Remote Conference room 2024-03: not working
1373, 13re Remote Echo test 2024-03: not working
1374, 13ri Remote server Identification and ANAC 2024-03: not working
1375, 13rl Remote Late echo test 2024-03: not working
1376, 13rp, 13po, poetry Remote Motivational, '76 poetry; 1 poem per call 2024-03: working
1377 (Remote Radio)3 2024-03: not working
1380 Time service 2024-03: not working
1388 Forward to Test setup 2024-03: time service
139[1-9] party-line event conference rooms 1-9 2024-03: not working/disabled
140\d\d+ government services1 2024-03: unknown
150 ring all offsite extensions 2024-03: unknown
15[1-9] offsite extensions 2024-03: unknown
16\d\d carrier select1 2024-03: unknown
170\d+ reserved for future (expanding) purposes 2024-03: unknown
17[1-9] participants extensions 2024-03: unknown
18\d\d subscriber information service 2024-03: unknown
19\d participants extensions 2024-03: unknown
[2-8]\d{6} local numbers (Heerlen, 045) 2024-03: unknown
9\d\d SpacePhone (interhackerspace enum extensions) 2024-03: unknown
1) currently not in use
2) not available due to IP restrictions
3) reserved/cool down; might become available

Note that numbers for remote and external network services behave differently:

  • Local services are called on the server itself (where the user is calling to)
  • Remote services are either upstream (parent) if it is a private server (typically behind NAT),
    or a fallback (sibling) server in case of a public server
  • External might be of several things:
    • alternative upstream (fallback server)
    • alternative sibling (fallback or 2nd fallback server)
    • 3rd party service

One can make the assumption that remote services within the space are forwarded to it's local service upstream (public VPS) with a few minor exceptions: Motivationals and Radio can be serviced anywhere; see it as Bergeijk being external and Poetry comes via (emulated) Citizens band radio and thus is remote


Interactive Voice Response

The concept for the new IVR menu will have something like this:

ack_main and ack_info (are the same, but with different spoken texts)

  • 1[0579]\d: direct dial extensions
  • 2 switch to English language
  • 3 switch to Dutch language
  • 7 go to conference rooms (1331)
  • 8 go to menu ack_extra
  • 9 go to menu ack_info
  • 0 go to menu ack_directory (1800)

ack_extra

  • 1 more info on space state (time of toggle) (1340)
  • 2 speak out telephone number and/or IP address (1354)
  • 3 listening rooms (1300)
  • 4 extended time service (1380)
  • 5 contact remote location (when online) (150)
  • 6 echo test (1353)
  • 8 call test setup (1388)
  • 9 repeat this menu
  • 0 go back
  • * go to main menu

ack_directory

To be determined
  • 9 repeat this menu
  • 0 go back
  • * go to main menu

history

Chaos Communication Camp 2011

The CCC Binary Voice Radio telephony server was a mixed success. Actually, it was a disaster:

  • The visual ring indicator circuit didn't trigger the optocouplers so that was the first thing to fail.
  • a lot of power failures which caused a lot of downtime and eventually database corruption
  • the DECT system was getting too complex for the simple phones we've modded for field reporting (Technical clarification came from one of the Eventphone key people who explained that the antenna register on cheap phones was too small to identify them all). Besides that, it looked like the cabling had short-circuited because the 9v battery didn't have any oomph left to generate amplified audio.
  • wifi had a hard time maintaining the links and coverage wasn't 100% so the wifi field reporter wasn't a good alternative
  • last but not least: the public IP addressing threw a spanner in the works and the server went limbo.

The server's database went corrupt, and after a restore, it didn't match the regular config files. I got it semi-working after it was far too late to make it useful to the studio. Also, after I got it to work, it wouldn't register correctly to the Eventphone trunk and we only got to call the editorial room (2781|BVR1) via DECT twice or so. Despite all that stress, it was promising, so better luck next time.


Open door day 2011

For the open door day, I set up a stand-alone test system with two Cisco 7940s, a FxS/FxO and dual FxS ATA, which included some softclients.

The phones were successful in a rough field test on the open door day, connected to a FreeSWITCH exchange and two ATAs which provided connections to two additional analog handsets. The field test proved reliable enough and a great platform for some hilarious phone pranks.

The Cisco phones had a menu where you could view a 2 bit grayscale snapshot of the two space cams, and you were able to switch some outlets. People were allowed to navigate the configs and exploit functionality and LuckY sniffed and replayed audio over a wifi link.

Other events


connecting various devices to ACKspace VoIP

connecting the Fritz!Box

  • Note that the Fritz!Box is pretty quirky regarding SIP: it can't handle a 407-unauthorized correctly when in router mode (which is needed to differentiate between public and internal calls). xopr had more success setting the device as a flat switch and putting it behind a generic router (tested with a ZyXel).
  • It also doesn't like usernames; you have to start with a number and change it afterwards.
  • It does seem to have more ring power than the tested ZyXel, though.

connecting the Linksys PAP2T

The following settiings are needed:

  • TBD

connecting the N510 IP PRO

Under Settings » Telephony » Connection, the following settings are needed:

  • Connection name or number: <anything>
  • Provider: Other provider
  • Authentication name: <username>
  • Authentication password: <password>
  • Username: <username>
  • Display name: <anything>
  • Lookup Enabled (if available, version ≥ 240): yes
  • Domain: ackspace.nl
  • Registration server: <leave empty>
  • Proxy server address: <leave empty>
  • Proxy server port: <leave empty to trigger SRV lookup>
  • Registration server: <leave empty>
  • Registration server port: <leave empty to trigger SRV lookup>
  • Registration refresh time: 110
  • STUN enabled: Yes
  • STUN server address: stun.ekiga.net
  • STUN server port: 3478
  • STUN refresh time: 240
  • Outbound proxy mode: Automatic
  • Outbound proxy port: <leave empty to trigger SRV lookup>
  • Select network protocol: Automatic
Note that these settings take a while for the Gigaset to connecto to the right server.
Also, make sure that under Settings » Telephony » Advanced VoIP settings, SIP port: (or its random range) does not conflict with other SIP devices behind the same NAT.

connecting the Sipura SPA3000

Under Admin Login » Advanced » Line 1, the following settings are needed:

  • SIP Port: <make sure this port does not conflict with other SIP devices behind the same NAT>
  • Proxy: ackspace.nl
  • Register Expires: 110
  • Use DNS SRV: yes1
  • DNS SRV Auto Prefix: yes1
  • Display Name: <anything>
  • User ID: <username>
  • Password: <password>
  • Dial Plan: (1[01579]xS0|1[23]xxS0|5000S0|2xxS0|00x.|0[1234567]xxxxxxxxS0|088xxxxxxxS0|0800xxxx.|090[069]xxxx.)

1) or use: Use Outbound Proxy: yes and Outbound Proxy: sip.ackspace.nl

connecting the Thomson ST2030

Under SETUP » VoIP Service » Basic Setup, the following settings are needed:

  • Profile Name: <anything>
  • SIP Unregister: unchecked
  • URI Type: SIP
  • SIP Transport: UDP
  • Connect Reuse: checked
  • Service Domain: ackspace.nl
  • Registrar Server Address: ackspace.nl
  • Port: 5060
  • Proxy Server Address: ackspace.nl
  • Port: 5060
  • SIP Local Port: <make sure this port does not conflict with other SIP devices behind the same NAT>
  • TLS Local Port: <make sure this port does not conflict with other SIP devices behind the same NAT>
  • Registration Timer: 110
  • Registration Frequency: 110

At the bottom, User Accounts, set the following:

  • Phone number: <username>
  • Phone Name: <anything>
  • Authentication ID: <username or number>
  • Password: <password>

Under ADVANCED » Networking » Outbound Proxy, check the following setting:

  • Outbound Proxy Flag: disabled

Under ADVANCED » Voice Settings » Codec Setup, set all codec settings to:

  • Fixed

For the dial plan go to ADVANCED » Voice Settings » Advanced, VoIP Dial Plan: |1[01579]x|1[23]xx|5000|2xx|00x.T|0[1234567]xxxxxxxx|088xxxxxxx|0800xxxx.T|090[069]xxxx.T|

Note: if you switch profile on the phone (that switches from or to behind-NAT), you have to reboot/powercycle the device for audio to work correctly.