1 Benutzer 2 Telefone

tjonest

Neuer User
Mitglied seit
28 Feb 2006
Beiträge
43
Punkte für Reaktionen
0
Punkte
0
Hallo,

vielleicht habt ihr eine Idee für folgendes:
Mein Chef will 2 Telefone, 1 Snom 320 wenn er im Büro ist und ein Siemens SL75 wenn er im Betrieb unterwegs ist. Wenn er über die externe Nummer angerufen wird sollen beide Telefone klingeln. Ist er im Gespräch an einem der Telefone und es kommt ein weiteres Gespräch rein, soll das 2. Telefon nicht mehr klingeln, sondern ein Besetz soll signalisiert werden. Die alternative dazu wäre das er am Snom jedesmal eine weiterleitung aufs SL75 macht wenn er mit diesem unterwegs ist. Daran, und ans ausschalten der selbigen, muss er allerdings denken....

Gruß
 
Du könntest das ganze wie folgt lösen:

Sobald ein Anruf entgegen genommen wir, setzt Du mit
Goto, Dialstatus und DBput im dialplan, einen gewissen Wert, z.B. 2 in die interne
DB von Asterisk. Wenn der Anruf beendet wird, löscht Du diesen Wert mit DBdel
wieder.
Wenn ein neuer Anruf reinkommt, prüfst Du mit DBget einfach die entsprechende DB
von Asterisk. Mit GotoIf bestimmst Du; Ist der Wert 2 gehts z.B. weiter auf dieVoiceBox, ansonstern Dial...

MfG
toldap
 
Hi
Er braucht natürliche einen Adapter von Analog auf Voip.
Oder er kauft sich ein W-Lan Handy.
 
Hallo,
@Andrej : das SL 75 ist ein WLan Sip Handy.

@toldap: Danke, ich schau mal ob ich das hinbekomme. Wenn jemand, der hier mitliest, sowas schonmal gemacht hat ... :-)

Danke schonmal für die Antworten.

Gruß
 
Hallo,

nochmal eine Nachfrage dazu:
der DIALSTATUS wird ja nur nach dem Beenden der Dial Anwendung gesetzt. Gibt es eine Möglichkeit den Status eines beliebigen SIP Benutzers vor dem Wählen abzufragen?

Gruß
 
Status eines beliebigen SIP Benutzers vor dem Wählen abzufragen
Das würde ich auch gerne wissen.
O.T.
Ich habe das Problem, dass ich je nach Verfügbarkeit eines SIP-Clients jeweils verschiedene SIP-Clients klingeln lassen möchte, die dann auch noch je nach Verfügbarkeit umgeleitet werden sollen (Parallelcall).
Ich mache es im Moment so, dass ich einen Dummy-loopback-SIP-Client® am Asterisk selbst anmelde. Den kann ich zusammen mit anderen Clients in den Dial-Befehl einbauen. An diesem Dummy funktioniert die Dialstatusabfrage, weil ihm nur ein SIP-Client zugeordnet ist.
Das Problem ist, dass Loop Detected kommt, weil der SIP-Client lokal an dem Asterisk mit gleicher IP angemeldet werden muß. Es funktioniert aber trotzdem.
Außerdem wird es damit leider unübersichtlich.
 
tjonest schrieb:
Hallo,
der DIALSTATUS wird ja nur nach dem Beenden der Dial Anwendung gesetzt. Gibt es eine Möglichkeit den Status eines beliebigen SIP Benutzers vor dem Wählen abzufragen?

Naja, vor dem Dial Befehl gibts ntürlich auch keinen DIALSTATUS...

Aber unabhängig davon, könnten doch die wesentlichen Teile deiner Lösung doch "vereinfacht" etwa so aussehen:

[TN10]
exten => 10,1DBget(status=linestat/10)
exten => 10,n,GotoIf($[${status} = 1]?10)
exten => 10,n,GotoIf($[${status} = 2]?20)

exten => 10,10,DBput(linestat/10=2)
exten => 10,11,Dial(wasauchimmer)
exten => 10,12,Goto(s-${DIALSTATUS},1)
exten => s-ANSWERED,1,DBput(linestat/10=1)
...
exten => 10,20,Voicemail(10)
...
 
Wie wärs damit:
http://www.voip-info.org/wiki/index.php?page=Asterisk+cmd+ChanIsAvail
The following variables will be set by this application:
  • ${AVAILCHAN} - the name of the available channel, if one exists
  • ${AVAILORIGCHAN} - the canonical channel name that was used to create the channel
  • ${AVAILSTATUS} - the status code for the available channel (see "devicestate.c")
    • 0 AST_DEVICE_UNKNOWN - "Unknown"; channel is valid, but unknown state.
    • 1 AST_DEVICE_NOT_INUSE - "Not in use"
    • 2 AST_DEVICE IN USE - "In use"; channel is in use.
    • 3 AST_DEVICE_BUSY - "Busy"; channel is busy.
    • 4 AST_DEVICE_INVALID - "Invalid", not known to Asterisk.
    • 5 AST_DEVICE_UNAVAILABLE - "Unavailable"; channel is unavailable (not registred)
    • 6 AST_DEVICE_RINGING - "Ringing"; ring, ring, ring.

Wenn ich das richtig verstehe, ist es das, was ihr sucht.

Gruss hotroot
 
Hallo,

das "ChanIsAvail" ist genau das wonach ich gesucht habe. Mal ausprobieren obs so funktioniert wie ich das will. Vielen Dank für den Hinweis!

Gruß
 
Hallo zusammen, ich habe jetzt genau das gleiche Problem, wie oben beschrieben, mich würde jetzt einmal interessieren ob und wie das mit dem chanisavail geklappt hat!
Hoffe auf eine Antwort, auch wenns schon lange her ist...;-)
MFG
henk469
 
Ich benutze Chanisavail(), für mich das das genau das, was ich gesucht hatte.
 
Ok, dankeschön, dann werd ich das einfach mal durchprobieren...
Wenns nicht klappt weiß ich ja an wen ich mich wenden kann ;)
Danke nochmals!
henk469
 
So folgendes Problem, ich hab das jetzt mal ausprobiert, aber ich bekomm immer zurück, das der Channel unknown ist, also immer "0", egal ob busy oder nicht.
ich hab das ganz einfach mal mit einem channel erstmal ausprobiert, und zwar folgendermaßen:

exten => _***,1,NoOp(chanisavail test)
exten => _***,n,Chanisavail(SIP/01234)
exten => _***,n,NoOp(${AVAILSTATUS})

Bestimmt ein dummer fehler irgendwie, aber ich komm nicht drauf...
Danke schonmal!
 
Du mußt auch einen Alternativchannel angeben, schau am besten mal die Doku genau an.
 
Du meinst das der einfach mehrere channel überprüft?

exten => _***,1,NoOp(chanisavail test)
exten => _***,n,ChanIsAvail(SIP/01234&SIP/12345)
exten => _***,n,NoOp(${AVAILSTATUS})

gesagt getan...gleiches Problem!:(
 
Was willst Du denn überhaupt machen? Ich sehe immer nur noop.
Warum machst Du kein ... Dial,availorigchan(), ... ?
 
Ich will zwei telefone gleichzeitig klingeln lassen. Wenn an einem der telefone jemand spricht, soll für einen anrufer besetzt signalisiert werden.
Um das zu realisieren, würde ich gern den status von den beiden channeln überprüfen, und danach dann entscheiden ob busy oder nicht.
das mit noop mach ich halt um das auszutesten....
Nunja, denke ich werde das dann über die funktion group irgendwie lösen müssen!
Trotzdem danke, und ein charmantes Wochenende noch!
MFG
henk469
 
Kostenlos!

Statistik des Forums

Themen
248,437
Beiträge
2,291,491
Mitglieder
377,848
Neuestes Mitglied
NeloRuben