[Gelöst] SIP-Geräte automatisch bei VPN-Einwahl "umschalten"

tomster

Mitglied
Mitglied seit
6 Dez 2004
Beiträge
238
Punkte für Reaktionen
0
Punkte
0
Servus zusammen!

Nachdem unser * nun mehr oder weniger einwandfrei rennt, kommen mir schon die nächsten Ideen...

Wir haben vor 2 Heimarbeitsplätze zu realisieren, und wollen dafür VMware auf unserem Linux-Server einrichten. Damit soll man von zu Hause via Remote Desktop/VPN kommod auf dem Server arbeiten ohne Unmengen an Daten hin und her zu schieben. Es steht zwar (jetzt bereits) bei den Mitarbeitern zu Hause auch je ein SIP-Telefon, das an unseren * connectet, aber man muss natürlich immer wissen, ob die eben gerade eingewählt sind, wenn man ein Gespräch an diese weiterverbinden möchte.

Weiss jemand wie man es realisieren kann, dass der * quasi automatisch erkennt wenn jemand von zu Hause (mit dem Rechner!) eingewählt ist und somit dessen Büro-SIP-Anschluß entweder umleitet, oder eben abmeldet und den Heimanschluß dafür an. Der Mitarbeiter soll, egal wo er sitzt, über die gleiche Extension erreichbar sein. Ist er von zu Hause eingewählt, dann sollen die Gespräche eben auf dem SIP-Client dort landen, ist er ausgewählt landet alles auf seinem Telefon im Büro. Das soll natürlich bei Log-out des Remote-Rechners wieder anders rum passieren.

Klar, man könnte den * so konfigurieren, dass immer beide Telefone läuten, aber das nervt sicherlich die daheim schuftende Ehefrau, wenn der Mann im Büro ist und es trotzdem zu Hause dauernd bimmelt.

Bislang hab ich hier im Forum nix darüber gefunden (Teil-Lösungen Mal ausgenommen). Hat jemand eine Idee?
 
Zuletzt bearbeitet:
Möglichkeit 1
Du prüfst die Registrierung der phones mit der function ChanIsAvail und entscheidest dann im Dialplan wie Du die Anrufe zustellst.

Möglichkeit 2
Der Benutzer ruft eine bestimmte Extension an und gibt einen PIN ein. Asterisk stellt dann alle Anrufe zu diesem phone durch.
Da die Leute das immer vergessen sollte man eine Kontrolle einbauen oder es nachts immer grundsätzlich reseten.
 
Servus Thomas!

Zu1:
Wär ja zugegeben eine einfache Möglichkeit, ABER der SIP-Client zu Hause ist ja in aller Regel auch permanent eingewählt (dank DSL) und somit ist der Channel auch permanent available, ausser der Kollege kappt die DSL-Leitung oder meldet den SIP-Client manuell ab. => geht also ned, wegen "Kollege-muss-das-selber-manuell-machen".

Zu2:
Da wäre dann aber das manuelle Ab-/ Anmelden in Verbindung mit ChanIsAvail ebenso geeignet.


Im Großen und Ganzen wollte ich eben diese Methoden stärker automatisieren. Ich hab ja schon an sowas wie ein kleines Script gedacht, das bei Einwahl/ Öffnen einer VM dem Asterisk für die Dauer der Session ein Parameter übergibt. So was geht sicherlich durch eine Flag in einer Datenbank. Dazu müsste ich zwar den * erst auf Realtime umstellen (ob das von Betateilchen auch noch Mal erklärt wird...) und ihm (dem *, nicht Betateilchen) dann noch beibringen, dass er bestimmte Dialplans eben nur bei gesetztem Flag ausführt. Soweit die Theorie...
Wenn nun noch wer eine Idee/ Erfahrungsbericht für die Praxis hätte, war's wohl die Bombe.
 
Dazu müsste ich zwar den * erst auf Realtime umstellen

mußt Du nicht - der Asterisk hat von Haus aus eine eingebaute Datenbank, die Du dafür verwenden kannst :wink:
 
tomster schrieb:
Servus Thomas!

Zu1:
Wär ja zugegeben eine einfache Möglichkeit, ABER der SIP-Client zu Hause ist ja in aller Regel auch permanent eingewählt (dank DSL) und somit ist der Channel auch permanent available

Client A zu Hause immer Online
Client B gelegentlich

Wenn B registriert dann schicke Anrufe zu B, sonst zu A.

Du kannst auch noch verfeinern, wenn B nicht innerhalb von 30 Sekunden abnimmt signalisierst Du den Anruf zusätzlich noch bei A, aber nur für 5 Sekunden damit das läuten nicht stört.

So merkt A wenn B nicht an das Telefon geht!

Wenn B zwei mal nicht abgenommen hat wird die Signalisierung auf A zugeschaltet.

1001 Möglichkeiten, Du musst nur wissen was Du willst.
 
Schön gedacht, aber in aller Regel sind A und B permanent registriert. A wegen DSL und B weil ja lokal im Office-Netz.

Die zeitliche Separation scheitert wohl daran, dass wohl jeder Kunde einfach auflegt, wenn er es 20 oder 30 Sekunden klingeln lassen muss.

Und nachdem ja VM und Asterisk im gleichen (lokalen) Office-Netz stehen, wär's ja nur opportun, wenn die eine Kiste weiss, dass auf der anderen jemand eingewählt ist. Ich geb aber zu, dass ich kein einfacher Zeitgenosse bin, wenn es um die Erfindung von hausgemachten Spezial-Problemen geht ;-)

--edit--
Hab betateilchens Posting ja total übersehen. "Eingebaute Datenbank" hab ich schon gehört, weiss aber nix darüber und kenne daher auch deren Funktionsumfang nicht. Gehen da connections von einem anderen Rechner?
Nachdem ich es aber bislang so verstanden habe, dass man seinen Asterisk nicht als "vollwertig" ansehen darf, bevor man ihn auf RealTime umgestellt hat (mag auch ein falscher Eindruck sein), wollte ich eben auch meinen dahin bringen (so einer der nächsten Fortgeschrittenenkurse mir selbiges beibringen kann). Und dabei hab ich halt vermutet, dass das setzen einer Flag nebst Auswertung wohl das "Einfachste" sein dürfte. Aber ich bin auch hier höchst lernfähig :-D
 
Zuletzt bearbeitet:
OK, Du benötigst einen Sensor der feststellt wo der Mensch ist.

Da RFID leider noch nicht so weit verbreitet ist wäre das eine Lösung:

Bluetooth Proximity Detection
 
tomster schrieb:
Nachdem ich es aber bislang so verstanden habe, dass man seinen Asterisk nicht als "vollwertig" ansehen darf, bevor man ihn auf RealTime umgestellt hat (mag auch ein falscher Eindruck sein),

Das ist definitiv ein falscher Eindruck. Wer auch immer Dir das eingeredet haben mag.
 
Auch wenn mich die RFID/ Bluetooth Proximity Sensing Device schon wieder auf eine (andere) Idee bringt, sehe ich etwas Probleme die Mitarbeiter arbeitsvertraglich zum ganztäglichen Tragen eines solchen Geräts zu verpflichten.

Was anderes könnte es natürlich sein, wenn man auf die Stand-alone SIP-Clients verzichten würde, und dafür ein Bluetooth Handy einsetzt. Dann würde es halt immer da eingeloggt sein, wo es sich eben befindet. Vorausgesetzt es lässt sich ein "Bluetooth-to-SIP-via-VPN-to-Virtual-Machine-Stack" ergooglen...

Bis dahin werde ich wohl aber eine Lösung mittels RealTime oder "eingebauter" DB finden müssen.

@Betateilchen
Kannst du mir sagen, ob Connections "von außerhalb" auf die eingebaute DB funzen?
 
Kann ich - sie funktionieren nicht. Ist aber auch gar nicht nötig, da der Asterisk ferngesteuert Daten da reinschreiben kann.

Du solltest mal ein bißchen auf www.voip-info.org stöbern :wink:
 
Hab ich selbstverfreilich bereits. Inzwischen kenne ich ja deine Vorliebe für den Verweis auf diese Seite (oder die SuFu) aus diversen Threads ;-) No offense!

Da sind ja einige PHP-Scripte angegeben, über die man soetwas wohl realisieren könnte. Ist zwar ganz schön von-hinten-durch-die-Beine-an-den-Busen, aber wenn's Ergebnis stimmt (im Sinne des Idioms, eben der Busen) soll's mir Recht sein.

Nix desto Trotz, bin ich natürlich weiterhin offen für fertige Vorschläge ;-)
 
du kannst auch einfach mit
Code:
asterisk -rx "blabla"
beliebige Befehle von der Shell aus an den Asterisk schicken. Damit kannst Du z.B. in einem Startscript für die VM Session einen Wert in die Asterisk-DB schreiben :wink:
 
Niente di più facile

So etwas in der Art habe ich gesucht, in erster Linie, weil es am Simplizität nicht zu überbieten ist. Nur noch einen Weg finden wie der VM-Rechner dann auf dem * executen kann.

Also doch noch schauen, wie man Abhängigkeiten im Dialplan mit der DB realisiert. Mist, betateilchen fragen bedeutet immer selber lesen müssen, das hätt ich doch wissen müssen ;-)

Ist die eingebaute DB standardmäßig dabei, oder muss die explizit miteinkompiliert werden?
 
@TinTin

Dieser ADM ist ja echt was G'wandtes. Auch wenn er eigentlich nicht direkt das mitbringt, was ich suche. Ich lass ihn auf alle Fälle installiert.

Aber eventuell könnte man die Bluetooth Proximity tatsächlich dafür verwenden. Muss doch tatsächlich Mal einen BT Stack installieren und Probieren. Vielen Dank dafür!
 
Bau den Leuten doch eine Warteschleife mit Agentenanmeldung - so kann man sich den Anschluss ja selber zuweisen an dem man gerade arbeitet.

- I.
 
Das wär aber wieder "manuell", und gerade das möchte ich ja vermeiden.

Ich hab mir deshalb Mal den ADM angeschaut. Auch wenn die dabei verwendete Bluetooth Proximity Detection in der Theorie funktionieren dürfte, stellen sich in der Praxis einige Fragen.
Die Detection funktioniert ja nur wenn in der Proximity (bluetooth-bedingt ~ 10-15m) ein Handy/ BT-Device ist. Wenn ich aber im Büro bin, das BT-Handy in der Hosentasche habe und an den Empfang (> 20m) gehe, dann würde ADM eine Abwesenheit erkennen und inzwischen eingehende Anrufe auf den Anschluß zu Hause umleiten. Plöd!

Um Asterisk eine (mehr oder weniger) eindeutige Info zu geben, wo der Mitarbeiter gerade sitzt, fände ich die Auswertung von wo (Büro oder daheim) er am System angemeldet ist prinzipiell die Einfachste. Nur fragt sich, wie man diese Info an * übergeben kann...
Eventuell könnte ich mir sogar noch vorstellen, die Startseite im Browser mit entsprechender URL zu versehen. Der Browser ruft dann eine bestimmte Seite auf und auf diesem Weg weiss * von wo der Mitarbeiter gerade eingewählt ist und leitet eben an diese Extension weiter.

Alles nur Theorie, mit wenig Chancen von mir umgesetzt werden zu können. Drum die Nachfrage hier im Forum. Evtl. hat jemand eine Idee, samt "HowTo"
 
@Tomster

Vielleicht hilft Dir das hier weiter :)

Gruß,
Tin
 
@TinTin

Bingo! Das ist schon zu 99% das was ich suche, und kann eigentlich schon mehr als ich brauche. Damit kann man ja dann eine beliebige Rufumleitung von jedem Internetzugang schalten.
Und wenn man eine entsprechende Startseite in den heimischen/ büroischen Browser einträgt, dann weiss der * ja auch gleich wo man denn erreichbar ist.
Vielen Dank.
 
Kostenlos!

Neueste Beiträge

Statistik des Forums

Themen
248,904
Beiträge
2,304,588
Mitglieder
378,604
Neuestes Mitglied
Duggy