.titleBar { margin-bottom: 5px!important; }

Notrufnummern bei eingewählten VPN Clients

Dieses Thema im Forum "Asterisk Rufnummernplan" wurde erstellt von thepontifex, 31 Mai 2005.

  1. thepontifex

    thepontifex Neuer User

    Registriert seit:
    2 März 2005
    Beiträge:
    141
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hi,

    folgendes Szenario:

    Asterisk als Firmentelfonanlage. Firmenintern telefoniert jeder über voip, nach extern über ISDN. Nun gibt es 2 Mitarbeiter, die loggen sich von zuhause aus per vpn in der Firma ein. Dabei sind sie mit ihren Telefonen auch eingeloggt um unter Ihrer normalen Durchwahl erreichbar zu sein, wie wenn sie im Büro sitzen würden.

    Wenn jetzt einer von denen einen Notfall hat, und die 110 oder 112 wählt landet er ja in der zuständigen Notruf-Zentrale für das Ortsnetz des Asterisk und nicht in der für sein Ortsnetz zuständigen.

    Wie könnte ich das realisieren das da die richtige zentrale angerufen wird?
    Gibts da schon eine fertige Lösung?

    Was die Sache etwas erleichtert:
    Die 2 Mitarbeiter wählen sich nur von daheim aus ein, d.h. das Ortsnetz ist bekannt.

    Any ideas?

    Gruss
    Frank
     
  2. MatthiasK

    MatthiasK Neuer User

    Registriert seit:
    9 Mai 2005
    Beiträge:
    20
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    ...lokale vorwahl vorranstellen (müsste doch eigentlich gehen)
    oder noch besser/einfacher: Hanby benutzen ;)
     
  3. thepontifex

    thepontifex Neuer User

    Registriert seit:
    2 März 2005
    Beiträge:
    141
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hmm is halt echt die Frage! Wenn der Mitarbeiter mit seinem Headset vorm Laptop daheim auf dem Balkon sitzt, sein normales Festnetztelefon in der Ladeschale im Wohnzimmer liegt und sein Handy vielleicht auf dem Wohnzimmertisch liegt und er dann einen Herzinfarkt oder Atemnot oder sowas bekommt und nicht mehr aufstehen kann und das einzige was er auf die Reihe krigt ist die 110 zu wählen.....

    Noch jemand Ideen wie man die Sache lösen könnte?

    Gruss
    Frank
     
  4. betateilchen

    betateilchen Grandstream-Guru

    Registriert seit:
    30 Juni 2004
    Beiträge:
    12,882
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    am Letzenberg
    Wenn das Ortstnetz bekannt ist, hast Du da auch die "zuständigen" Festnetznummern der Leitstellen für 110 und 112 ? Ich hab da ne Lösung, die diese beiden "echten" Festnetznummern allerdings voraussetzt. Kann ich Dir heute abend mal posten.
     
  5. thepontifex

    thepontifex Neuer User

    Registriert seit:
    2 März 2005
    Beiträge:
    141
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    j
    ja das ist glaub kein Problem diese rauszubekommen. Das müssten die sein die auch im Radio genannt werden wenn der Notruf 110 / 112 in einem Gebiet ausfällt.

    Das wär supi wenn Du Deine Lösung mal posten könntest!

    Gruss
    Frank
     
  6. betateilchen

    betateilchen Grandstream-Guru

    Registriert seit:
    30 Juni 2004
    Beiträge:
    12,882
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    am Letzenberg
    Here we go ...

    Schritt 1:
    Eine Tabelle in der Datenbank für die Asterisk Konfiguration anlegen.
    Bei mir ist heißt die DB "asteriskconfig"

    Code:
    -- phpMyAdmin SQL Dump
    -- version 2.6.0-pl1
    -- http://www.phpmyadmin.net
    -- 
    -- Host: localhost
    -- Erstellungszeit: 01. Juni 2005 um 18:44
    -- Server Version: 3.23.49
    -- PHP-Version: 4.1.2
    -- 
    -- Datenbank: `asteriskconfig`
    -- 
    
    -- --------------------------------------------------------
    
    -- 
    -- Tabellenstruktur für Tabelle `notruf`
    -- 
    
    CREATE TABLE `notruf` (
      `id` int(11) NOT NULL auto_increment,
      `region_vorwahl` varchar(6) default NULL,
      `rufnummer_110` varchar(30) NOT NULL default '',
      PRIMARY KEY  (`id`)
    ) TYPE=MyISAM AUTO_INCREMENT=2 ;
    
    Schritt 2:
    Die Datenbank mit den richtigen Werten füllen. In das Feld "region_vorwahl" die Ortsvorwahl, in das Feld "rufnummer_110" die echte Festnetznummer der Leitstelle eintragen.

    Schritt 3:
    3a) Den folgenden Kontext [notruf] in die extensions.conf packen.

    Code:
    [notruf]
    exten => _*110.,1,NoOp(Notrufsetzen)
    exten => _*110.,n,DBput(notruf/${CALLERIDNUM}=${EXTEN:4})
    exten => _*110.,n,Playback(auth-thankyou)
    exten => _*110.,n,HangUp
    
    ; Beschreibung siehe 2a)
    exten => 110,1,NoOp(Notruf wird ausgefuehrt)
    exten => 110,n,DBget(region=notruf/${CALLERIDNUM})
    
    ; Beschreibung siehe 2b)
    exten => 110,n,MySQL(Connect connid localhost db-user db-password asteriskconfig)
    exten => 110,n,MySQL(Query resultid ${connid} SELECT\ rufnummer_110\ from\ notruf\ where\ region_vorwahl=${region})
    exten => 110,n,MySQL(Fetch fetchid ${resultid} notruf)
    exten => 110,n,MySQL(Clear ${resultid})
    exten => 110,n,MySQL(Disconnect ${connid})
    
    ;Beschreibung siehe 2c)
    exten => 110,n,NoOp(Dial(SIP/${notruf}@sipprovider))
    exten => 110,n,HangUp
    
    ;Beschreibung siehe 3)
    exten => **110,1,NoOp(Region abfragen)
    exten => **110,n,Wait(1)
    exten => **110,n,DBget(region=notruf/${CALLERIDNUM})
    exten => **110,n,SayDigits(${region})
    exten => **110,n,Wait(1)
    exten => **110,n,SayDigits(${region})
    exten => **110,n,Wait(1)
    exten => **110,n,HangUp
    
    
    
    3b) Diesen Kontext mit include => notruf den Benutzerkontexten zuweisen, die diese Funktion benutzen dürfen.

    Ab sofort kann dann der VoIP-Nutzer folgendes tun:

    1.) mit *11009721 teilt er dem System mit, daß er sich ab sofort im Vorwahlbereich 09721 aufhält.

    2.) mit 110 kann dann ein Notruf abgesetzt werden. Asterisk arbeitet dabei in 3 Schritten:
    2a) mit DBget wird aus der Asterisk-internen DB ausgelesen, in welchem Vorwahlbereich sich CALLERIDNUM aufhält.
    2b) danach wird anhand dieser Vorwahlnummer in der MySQL Datenbank nachgesehen, wie die Leitstellennummer lautet
    2c) und nun wird die Nummer der Leitstelle angewählt. Im Beispiel über SIP

    3) mit **110 kann sich der VoIP Nutzer ansagen lassen, für welche Vorwahl er sich aktuell registriert hat. Die Ansage wird 2 Mal abgespielt, danach wird aufgelegt.

    Das Ganze ist noch sehr rudimentär - es wird z.B. noch keine Fehlerbehandlung durchgeführt, falls es für die CALLERIDNUM noch keinen Eintrag in der AsteriskDB oder keinen passenden Eintrag für die Vorwahl in der MySQL Datenbank gibt.

    Es ging mir erstmal darum, die prinzipielle Vorgehensweise darzustellen.

    Im Moment fehlt mir eine vollständige Datenbanktabelle, anhand derer aufgrund der Vorwahl eine echte Notrufnummer herausfinden kann.
     
  7. Odysseus

    Odysseus Aktives Mitglied

    Registriert seit:
    7 Sep. 2004
    Beiträge:
    1,421
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Die Ortsvorwahl voranstellen funktioniert NICHT! Also diesen Vorschlag gleich wieder vergessen :)
     
  8. betateilchen

    betateilchen Grandstream-Guru

    Registriert seit:
    30 Juni 2004
    Beiträge:
    12,882
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    am Letzenberg
    @Odysseus - das wußten wir aber schon ... :wink:
     
  9. thepontifex

    thepontifex Neuer User

    Registriert seit:
    2 März 2005
    Beiträge:
    141
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hi,

    hab heute mal die Konfig von betateilchen probiert! Funktioniert schon recht gut. Geht es denn auch, dass die Vorwahl, die der Teilnehmer über sein Telefon eingibt auch in der MySQL DB gespeichert wird und nicht nur in der Asterisk-internen-DB?

    Gruss
    Frank
     
  10. betateilchen

    betateilchen Grandstream-Guru

    Registriert seit:
    30 Juni 2004
    Beiträge:
    12,882
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    am Letzenberg
    Ja, das geht auch. Aber da Du ja nur eine begrenzte Anzahl von Usern hast, die das nutzen werden, hab ich das einfach in die Asterisk-DB eingetragen, was mir außerdem die Möglichkeit gibt, bei Nichterreichbarkeit des MySQL-Servers dem notrufenden Teilnehmer sofort eine Fehlermeldung anzusagen. Das würde nicht so einfach funktionieren, wenn die "userbezogene Vorwahl" auch auf der MySQL DB liegen würde, weil * dann nicht wüßte, ob der User überhaupt eine Vorwahl eingetragen hat.
     
  11. thepontifex

    thepontifex Neuer User

    Registriert seit:
    2 März 2005
    Beiträge:
    141
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ja, ok ist ja auch ein guter Weg die Lösung! :D

    Problem ist nur das ich den Leuts beibringen muss dann die Nummer per Telefon zu "pflegen". In 98% aller Fälle brauchen Sie gar nix tun da sie ja immer von zuhause aus arbeiten und somit die einmal eingestellte Vorwahl stimmt. Sind sie aber unterwegs, dann müssen Sie 1. daran denken dass sie die Vorwahl anpassen und 2. müssen sie dann auch noch wissen wie sie das machen müssen. Da wäre es einfache sie bräuchten dann nur ins Webinterface gehen, welches auf die MySQL DB zugreift und da in ein Feld den aktuell gültigen Vorwahlbereich eintragen.

    Oder was meinste?

    Gruss
    Frank