Difference between revisions of "Phone:+31979922"

From Hackerspace ACKspace
Jump to: navigation, search
m (added offline + GitHub information)
m (Made the reinstated message less in-your-face)
 
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
{{InfoBox
 
{{InfoBox
|Type=alert
+
|Type=normal
 
|Title=NOTE:
 
|Title=NOTE:
|Text=[https://spacephone.org spacephone.org] is currently offline; the domain name was released and '''[[User:Xopr|xopr]] bought it''' to make sure it is kept in the hackerspace scene.
+
|Text=[http://spacephone.org spacephone.org] was reinstated by [[User:Xopr|xopr]] in 2016 to make sure the domain name was kept in the hackerspace scene.
:Contact [[User:Xopr|xopr]] if you have spare time and want to pick up this project, and he might just give you the domain name.
+
:Contact [[User:Xopr|xopr]] if you have spare time and want to join this project.
 
}}
 
}}
 
=== synopsis ===
 
=== synopsis ===
This telephone number ([[Phone::+31979922]]) is part of the [https://spacephone.org/ SpacePhone ENUM project], and works in two ways:
+
<onlyinclude>
* Be accessible to other people having only a numeric keypad, without additional costs.
+
The telephone number ([[Phone::+31979922]]) is part of the [https://spacephone.org/ SpacePhone ENUM project], and works in two ways:
* Call other spaces with a short-hand number, in our case: 922 for ACKspace
+
* Be accessible to other people having only a numeric keypad, '''without any costs'''.
 
+
* Call other in-country spaces with a short-hand number, in our case: ''922'' for ACKspace
The latter has some impact in our internal and Cisco dial plan (and extensions what would have started with a '9', the former is just allowing [[SIP::+31979922@ackspace.nl]] to be reached from our external dial plan.
+
</onlyinclude>
 +
The latter is for Dutch hackerspaces; it needs the full country and area code if one wants to call a hackerspace from another country, the former is just allowing tel:+31979922 to be translated to [[SIP::+31979922@ackspace.nl]] that can be reached publicly.
  
 
This number consists of the following parts:
 
This number consists of the following parts:
Line 26: Line 27:
 
|short hand number (note that 9 is not used in domestic dial plans)
 
|short hand number (note that 9 is not used in domestic dial plans)
 
|}
 
|}
 +
 +
Other country phone numbers are:
 +
* North America: '''+1 101 0000 xxx'''
 +
* Belgium: '''+32 99 19xx'''
 +
* United Kingdom: '''+44 8990 190xx'''
 +
* Denmark: '''+45 379 xx'''
 +
* Germany: '''+49 199 119xx'''
 +
  
 
The spacephone configs are available on [[GitHub::https://github.com/SpacePhone/|GitHub]]
 
The spacephone configs are available on [[GitHub::https://github.com/SpacePhone/|GitHub]]
 
=== Listing ===
 
=== Listing ===
This is a non-exhaustive Spacephone directory. Not all numbers are tested, but they are assigned by SpacePhone at the time of writing (14:42, 1 May 2015 (CEST)).
+
This is a non-exhaustive Spacephone directory. Not all numbers are tested, but they are assigned by SpacePhone at the time of writing (15:02, 26 November 2019 (CET)).
 
{| class="wikitable"
 
{| class="wikitable"
 
! scope="col" | short hand number
 
! scope="col" | short hand number
Line 37: Line 46:
 
| [http://spacephone.org/ SpacePhone support]
 
| [http://spacephone.org/ SpacePhone support]
 
|-
 
|-
| 922
+
| [http://spacephone.org/lookup/31979922 922]
 
| ACKspace (that's us!)
 
| ACKspace (that's us!)
 
|-
 
|-
| 923
+
| [http://spacephone.org/lookup/31979923 923]
 
| [https://bitlair.nl/ Bitlair]
 
| [https://bitlair.nl/ Bitlair]
 
|-
 
|-
| 942
+
| [http://spacephone.org/lookup/31979940 940]
 +
| [https://hackalot.nl/ Hackalot]
 +
|-
 +
| [http://spacephone.org/lookup/31979942 942]
 
| [https://hack42.nl/ Hack42]
 
| [https://hack42.nl/ Hack42]
 
|-
 
|-
| 966
+
| [http://spacephone.org/lookup/31979966 966]
 
| [http://mononoke.nl/ MoNoNoKe]
 
| [http://mononoke.nl/ MoNoNoKe]
 
|-
 
|-
| 968
+
| [http://spacephone.org/lookup/31979968 968]
 
| [https://nurdspace.nl/ NURDspace]
 
| [https://nurdspace.nl/ NURDspace]
 
|-
 
|-
| 973
+
| [http://spacephone.org/lookup/31979973 973]
 
| [http://project073.nl/ Project073]
 
| [http://project073.nl/ Project073]
 
|-
 
|-
| 974
+
| [http://spacephone.org/lookup/31979974 974]
 
| [https://wiki.pixelbar.nl/ PiXelBar]
 
| [https://wiki.pixelbar.nl/ PiXelBar]
 
|-
 
|-
| 975
+
| [http://spacephone.org/lookup/31979975 975]
 
| [http://sk1llz.nl/ Sk1llz]
 
| [http://sk1llz.nl/ Sk1llz]
 
|}
 
|}
Line 67: Line 79:
  
 
  <extension name="SpacePhone ENUM">
 
  <extension name="SpacePhone ENUM">
     <condition field="destination_number" expression="^(\+31|0031|0)(9799\d\d)(\d*)$">
+
     <condition regex="any">
 +
        <regex field="destination_number" expression="^(11010000\d\d\d)$"/><!-- US +1  101 0000 xxx -->
 +
        <regex field="destination_number" expression="^(319799\d\d)$"/>    <!-- NL +31 979  9xx  -->
 +
        <regex field="destination_number" expression="^(329919\d\d)$"/>    <!-- BE +32 99  19xx  -->
 +
        <regex field="destination_number" expression="^(448990190\d\d)$"/> <!-- UK +44 8990 190xx -->
 +
        <regex field="destination_number" expression="^(45379\d\d)$"/>    <!-- DA +45 19xx -->
 +
        <regex field="destination_number" expression="^(49199119\d\d)$"/>  <!-- DE +49 199  119xx -->
 
         <action application="set" data="continue_on_fail=true"/>
 
         <action application="set" data="continue_on_fail=true"/>
         <action application="enum" data="sip:+31$2 e164.spacephone.org"/>
+
        <action application="set" data="hangup_after_bridge=true"/>
 +
         <action application="enum" data="31979$1 e164.spacephone.org"/>
 
         <action application="bridge" data="${enum_auto_route}"/>
 
         <action application="bridge" data="${enum_auto_route}"/>
 
         <action application="playback" data="tone_stream://%(330,15,950);%(330,15,1400);%(330,1000,1800);loops=2"/>
 
         <action application="playback" data="tone_stream://%(330,15,950);%(330,15,1400);%(330,1000,1800);loops=2"/>
Line 76: Line 95:
 
     </condition>
 
     </condition>
 
  </extension>
 
  </extension>
 +
 +
Note; you could also change <code><condition regex="any"></code> into <code><condition></code> and remove all the <code><regex .../></code> nodes to try and match every number
 +
 +
Also note that the numbers must be formatted in the [https://en.wikipedia.org/wiki/E.164 ITU-T E.164] standard. For the Dutch dialplan, you can do this by adding the following snippets at the beginning of the default dialplan:
 +
    <extension name="local to international" continue="true">
 +
      <!-- include unroutable 9 used for local spacephone -->
 +
      <condition field="destination_number" expression="^([2-89]\d+)$">
 +
        <action inline="true" application="set" data="destination_number=${default_countrycode}${default_areacode}$1"/>
 +
      </condition>
 +
    </extension>
 +
 +
    <extension name="domestic to international" continue="true">
 +
      <condition field="destination_number" expression="^0([1-9]\d+)$">
 +
        <action inline="true" application="set" data="destination_number=${default_countrycode}$1"/>
 +
      </condition>
 +
    </extension>
 +
 +
    <extension name="international cleaned" continue="true">
 +
      <condition field="destination_number" expression="^(?:00|\+)([1-9]\d+)$">
 +
        <action inline="true" application="set" data="destination_number=$1"/>
 +
      </condition>
 +
    </extension>
 +
 +
  
 
   
 
   
Line 107: Line 150:
 
ACKspace also has an [http://www.e164.org/ e164.org] ENUM registration which will translate {{#show: Hackerspace_ACKspace:Communication | ?Phone}} into {{#show: Hackerspace_ACKspace:Communication | ?SIP}}, our <abbr title="direct inward dialing">DID</abbr> (or <abbr title="direct dial-in">DDI</abbr>) service provider.
 
ACKspace also has an [http://www.e164.org/ e164.org] ENUM registration which will translate {{#show: Hackerspace_ACKspace:Communication | ?Phone}} into {{#show: Hackerspace_ACKspace:Communication | ?SIP}}, our <abbr title="direct inward dialing">DID</abbr> (or <abbr title="direct dial-in">DDI</abbr>) service provider.
  
 
+
[[Category:Telephony]][[Category:Telephone snippet]][[Category:FreeSWITCH]]
[[Category:Telephony]]
 

Latest revision as of 20:38, 26 March 2022

NOTE:
spacephone.org was reinstated by xopr in 2016 to make sure the domain name was kept in the hackerspace scene.
Contact xopr if you have spare time and want to join this project.

synopsis

The telephone number (+31979922) is part of the SpacePhone ENUM project, and works in two ways:

  • Be accessible to other people having only a numeric keypad, without any costs.
  • Call other in-country spaces with a short-hand number, in our case: 922 for ACKspace

The latter is for Dutch hackerspaces; it needs the full country and area code if one wants to call a hackerspace from another country, the former is just allowing tel:+31979922 to be translated to +31979922@ackspace.nl that can be reached publicly.

This number consists of the following parts:

number function
+31 international country code
979 area code (zone/net number), reserved by defined by Ministry of Economic affairs for internal use
922 short hand number (note that 9 is not used in domestic dial plans)

Other country phone numbers are:

  • North America: +1 101 0000 xxx
  • Belgium: +32 99 19xx
  • United Kingdom: +44 8990 190xx
  • Denmark: +45 379 xx
  • Germany: +49 199 119xx


The spacephone configs are available on GitHub

Listing

This is a non-exhaustive Spacephone directory. Not all numbers are tested, but they are assigned by SpacePhone at the time of writing (15:02, 26 November 2019 (CET)).

short hand number who?
9HELP (94357) SpacePhone support
922 ACKspace (that's us!)
923 Bitlair
940 Hackalot
942 Hack42
966 MoNoNoKe
968 NURDspace
973 Project073
974 PiXelBar
975 Sk1llz

Enabling spacephone on other FreeSWITCH instances

To route calls to its correct destination using the SpacePhone ENUM, one needs to add the following dial plan snippet. This script will try and resolve the number, or send the SIT, followed by the message that the number is unallocated.

<extension name="SpacePhone ENUM">
    <condition regex="any">
        <regex field="destination_number" expression="^(11010000\d\d\d)$"/>
        <regex field="destination_number" expression="^(319799\d\d)$"/>    
        <regex field="destination_number" expression="^(329919\d\d)$"/>    
        <regex field="destination_number" expression="^(448990190\d\d)$"/> 
        <regex field="destination_number" expression="^(45379\d\d)$"/>     
        <regex field="destination_number" expression="^(49199119\d\d)$"/>  
        <action application="set" data="continue_on_fail=true"/>
        <action application="set" data="hangup_after_bridge=true"/>
        <action application="enum" data="31979$1 e164.spacephone.org"/>
        <action application="bridge" data="${enum_auto_route}"/>
        <action application="playback" data="tone_stream://%(330,15,950);%(330,15,1400);%(330,1000,1800);loops=2"/>
        <action application="playback" data="ivr/ivr-unallocated_number.wav"/>
        <action application="playback" data="tone_stream://%(330,15,950);%(330,15,1400);%(330,1000,1800);loops=2"/>
    </condition>
</extension>

Note; you could also change <condition regex="any"> into <condition> and remove all the <regex .../> nodes to try and match every number

Also note that the numbers must be formatted in the ITU-T E.164 standard. For the Dutch dialplan, you can do this by adding the following snippets at the beginning of the default dialplan:

   <extension name="local to international" continue="true">
     <condition field="destination_number" expression="^([2-89]\d+)$">
       <action inline="true" application="set" data="destination_number=${default_countrycode}${default_areacode}$1"/>
     </condition>
   </extension>
   <extension name="domestic to international" continue="true">
     <condition field="destination_number" expression="^0([1-9]\d+)$">
       <action inline="true" application="set" data="destination_number=${default_countrycode}$1"/>
     </condition>
   </extension>
   <extension name="international cleaned" continue="true">
     <condition field="destination_number" expression="^(?:00|\+)([1-9]\d+)$">
       <action inline="true" application="set" data="destination_number=$1"/>
     </condition>
   </extension>



extra information

A nice and quick way to see if a number is part of an ENUM system, one can go to sipbroker.com's ENUM lookup page. Note that for checking the spacephone numbers, you need to include e164.spacephone.org as additional ENUM root.

SpacePhone lookup does this automatically

You can also lookup 31979922 from the command line (remember to reverse the number, and forget about nslookup, it won't work):

$ dig 2.2.9.9.7.9.1.3.e164.spacephone.org -t NAPTR

; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> 2.2.9.9.7.9.1.3.e164.spacephone.org -t NAPTR
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 49677
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;2.2.9.9.7.9.1.3.e164.spacephone.org. IN        NAPTR

;; ANSWER SECTION:
2.2.9.9.7.9.1.3.e164.spacephone.org. 300 IN NAPTR 10 10 "u" "E2U+web:http" "!^(.*)$!https://ackspace.nl/wiki/Phone:\\1!" .
2.2.9.9.7.9.1.3.e164.spacephone.org. 300 IN NAPTR 10 10 "u" "E2U+cnam" "!^.*$!data:,ACKSpace!" .
2.2.9.9.7.9.1.3.e164.spacephone.org. 300 IN NAPTR 10 10 "u" "E2U+sip" "!^(.*)$!sip:\\1@ackspace.nl!" .

;; Query time: 512 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Fri May  1 15:59:02 2015
;; MSG SIZE  rcvd: 233

ACKspace also has an e164.org ENUM registration which will translate +31-45-71-12345 into sip:31457112345@sip1.budgetphone.nl, our DID (or DDI) service provider.