Unitymedia

german

#1

Hallo,

ich möchte MobyDick mit Unitymedia verbinden. Der einzige brauchbare Hinweis ist ein Post im ip-phone-forum, der allerdings nur für Asterisk allgemein gilt:

http://www.ip-phone-forum.de/showthread.php?t=216622&

Ich habe versucht, die gleichen Einstellungen wie im 2. Post in der MobyDick-Konfiguration vorzunehmen, aber bislang ohne Erfolg. Nun sind einige der dort genannten Parameter in der Web-Konfiguration verfügbar, andere nicht.

Vielleicht kann mir ja jemand helfen.


#2

Hallo,

das muss man genauer debuggen sonst ist das wie Kaffeesatzlesen :). Der richtige Ansatz ist mal ein Amt (manuell) anzulegen (hier nur die relevanten Felder):

Protokoll: SIP
Typ: friend
Benutzername: <um_login>
Passwort: <um_passwd>
Host: ssl31.telefon.unitymedia.de
Registrierung: ja
Auth im Dial: nein
Option:
insecure=very
fromuser=<um_login>

Dann speichern, anwenden. MobyDick per ssh, asterisk -r für die Asterisk CLI. Dann “sip show registry” hier siehst Du ob der sich anmelden konnte. “sip show peers” dort solltest Du das Peer sehen und ob es erreichbar ist. Dann einen “sip debug peer PEERNAME” und eine Call absetzten, dann kann man stehen was SIP-Seitig nicht klappt.

Alles posten ;).

LG
Mathias


#3

Hallo,

bin neu hier im Forum und auch noch blutiger Anfänger in Sachen Asterisk und Mobydick. Mal ein dickes Lob an eure Firma und die Software. Soweit ist alles gut und Verständlich und geht recht leicht von der Hand.

Nun zu meinem Problem:

Auch ich habe einen Unitymedia Business Anschluss in BW mit ner Fritzbox Cable 6490 und möchte die Mobydick künftig als TK Anlage anstelle der Fritzbox verwenden. Auf der Fritzbox selbst habe ich die Config Datei schon umgeschrieben, dass die Ports und Rufnummern nicht mehr aktiv sind. Dazu habe ich mich hier orientiert. Mit dem Provider Sipgate konnte ich bereits ein Snom D375 erfolgreich testen. Nun suche ich eine Möglichkeit, die bestehenden UM Nummern einzubinden und zu nutzen.

Was ich nun nicht verstehe: Muss ich jetzt als Amtsvorlage immer noch die Fritzbox nehmen oder mir selber eine basteln? Vllt. könnte man das am meinem Beispiel gleich für die Software zur Verfügung stellen.

Muss diese dann dann über Gateways -> Ämter -> Hinzufügen -> Aktion hochgeladen werden? Im .tar Format?

Hab da leider den Durchblick verloren und komme hier nicht weiter.


#4

Hallo @Spitzbube,

vorne Weg, wenn eine Fritzbox im Einsatz ist, können wir dir nur empfehlen sich bei der Fritzbox zu registrieren, da wie du schon festgestellt hast von SIP ALG bis redirekt auf sich selbst alles möglich ist und die von dir verlinkten Schritte von AVM nicht untersützt sind und bei einem Update u.U. wieder verloren gehen.
Wenn man die Fritzbox mal außer acht lässt:
Für sipgate haben wir ja funktionierende Vorlagen, da du aber im Unitymedia Thread schreibst vermute ich mal das du Unitymedia einsetzt. Leider ist mir hier noch keine funktionierende Vorlage bekannt aber du brauchst keine um deine Versuche zu starten. Du legst einfach ein generisches SIP-Amt an und orientierst dich beispielsweise an dem Thread:


leider gab es hier noch keine Rückmeldung ob der Vorschlag von Markus zu erfolg verholfen hat.

Grüße,
Steve


#5

Hi,

hab mal auf meinen beitrag geantwortet.
das SIP 200 Forbidden Problem konnte ich dadurch lösen das ich das ich im Feld CID Nummer nichts eintrage.

Ich habe an meinem Unitymedia Anschluss allerdings keine FritzBox. Vor einiger Zeit habe ich ein Arris euroDOCSIS Modem bekommen können das die Spezifikation erfüllt.


#6

Hallo Grokef,

also die Fritzbox ist hier nur noch reines Modem. Um so ein Produkt wie Mobydick zu integrieren, muss ja zwangsläufig die Fritzbox kastriert werden, da die Nummern und die Ports ja sonst alles blocokieren. Kann halt nur einer im Netzwerk der Chef sein. Dass das hier von Pascom Seite sicherlich nicht gewünscht ist bzw. es hierfür keinen Support gibt, kann ich irgendwie schon nachvollziehen, nur wenn ich als Vorlage die Fritzbox verwende, was für eine Aufgabe hat dann die Mobydick noch? Irgendwie kann ich mir auch nicht vorstellen, dass Pascom hier über die Vorlage Fritzbox als Gateway, die Fritzbox Cable für einen Unitymedia Business anschluss unterstützt. Klar kann man sagen, mach einen Account bei Sipgate und Co und die Kacke rennt. Mit Deutschlandflat + 2 Rufnummern und ggf. Rufnummernerweiterung -1 und -2 ist man bei über 20 € im Monat. Dafür kann ich mir nen 1und1 Anschluss mit DSL und Telefonie holen und kann den dann noch als Fallbackleitung nutzen.

Kannst du mir den sagen, wie du da genau vorgegangen bist bei der Einrichtung von UM. Brauch da echt Hilfe Step by Step.


#7

@Steve @Mathias

Guten Morgen,

konnte am Wochenende die Fritzbox wieder Resetten und somit die Funktion > Fritzbox als Gateway verwenden. Leider kann ich lediglich raustelefonieren aber erreicht werden kann die Nummer nicht.

Das hat leider nicht so ganz hingehauen:

sip show registry hat bei mir den Status registered also ist davon auszugehen, dass Mobydick erfolgreich mit der Fritzbox bzw. dem eingerichteten IP Client Telefon verbunden ist.

sip show peers hat auch den Status OK bei beiden.

Anbei mal der Screenshot der CLI. Es würde mir ja zunächst schon reichen, die Fritzbox als GW zu verwenden, um zu sehen wie alles funktioniert. Kompliziert wirds erst, wenn Mobydick hinter einer Firewall in einem VLAN Platz nehmen darf.


#8

Hi,

wenn du registriert bist solltest du die eingehenden Anrufe schon sehen. Erscheint in der Asterisk CLI irgendeine Meldung beim eingehenden Anruf? Falls nicht ist auf der Fritbox das Gerät bzw der Account nicht richtig konfiguriert um für diese nummer zu klingeln. Wenn du in der CLI etwas siehst es aber nicht klappt, dann liegt es vermutlich daran, das keine einegehende Regel für die gerufene nummer greift. “Fritzbox intern” wird dann ja nicht mehr die externe Nummer gerufen sondern meist 620, 621 usw…

Beste Grüße,
Steve


#9

@Steve

Ja in Asterisk kommt was an, nur kann ich das leider nicht deuten, was genau der Fehler hier ist.

Anbei mal die eingehende Regel. Diese ist doch schon intern an die 620 weitergegeben:

== Using SIP RTP TOS bits 184
  == Using SIP RTP CoS mark 5
    -- Executing [620@mdc_incoming-15:1] Set("SIP/mdc_trunk_conf-15-0000001c", "MDC_CALLER_NUM_TRUNK=Meine Nummer330") in new stack
    -- Executing [620@mdc_incoming-15:2] Set("SIP/mdc_trunk_conf-15-0000001c", "MDC_CALLEE_NUM_TRUNK=620") in new stack
    -- Executing [620@mdc_incoming-15:3] Goto("SIP/mdc_trunk_conf-15-0000001c", "mdc_trunk-13,s,1") in new stack
    -- Goto (mdc_trunk-13,s,1)
    -- Executing [s@mdc_trunk-13:1] Verbose("SIP/mdc_trunk_conf-15-0000001c", "1,callee number: 620 caller number: Meine Nummer330") in new stack
 callee number: 620 caller number: Meine Nummer330
    -- Executing [s@mdc_trunk-13:2] Gosub("SIP/mdc_trunk_conf-15-0000001c", "sub_nat2int,s,1(MDC_CALLER_NUM_INTERNAT,Meine Nummer330,00,49,0,7161,1)") in new stack
    -- Executing [s@sub_nat2int:1] Verbose("SIP/mdc_trunk_conf-15-0000001c", "1,sub_nat2int:: variable: MDC_CALLER_NUM_INTERNAT - number: Meine Nummer330 - intVAZ: 00 - lkz: 49 - natVAZ: 0 - onKz: 7161 - incoming: 1") in new stack
 sub_nat2int:: variable: MDC_CALLER_NUM_INTERNAT - number: Meine Nummer330 - intVAZ: 00 - lkz: 49 - natVAZ: 0 - onKz: 7161 - incoming: 1
    -- Executing [s@sub_nat2int:2] GotoIf("SIP/mdc_trunk_conf-15-0000001c", "0?s-emergency,1") in new stack
    -- Executing [s@sub_nat2int:3] GotoIf("SIP/mdc_trunk_conf-15-0000001c", "0?s-int,1") in new stack
    -- Executing [s@sub_nat2int:4] GotoIf("SIP/mdc_trunk_conf-15-0000001c", "0?s-int,1") in new stack
    -- Executing [s@sub_nat2int:5] GotoIf("SIP/mdc_trunk_conf-15-0000001c", "0?s-convert,1") in new stack
    -- Executing [s@sub_nat2int:6] GotoIf("SIP/mdc_trunk_conf-15-0000001c", "0?s-int,1") in new stack
    -- Executing [s@sub_nat2int:7] GotoIf("SIP/mdc_trunk_conf-15-0000001c", "0?s-intshort,1") in new stack
    -- Executing [s@sub_nat2int:8] GotoIf("SIP/mdc_trunk_conf-15-0000001c", "0?s-natshort,1") in new stack
    -- Executing [s@sub_nat2int:9] GotoIf("SIP/mdc_trunk_conf-15-0000001c", "1?s-nat,1") in new stack
    -- Goto (sub_nat2int,s-nat,1)
    -- Executing [s-nat@sub_nat2int:1] Verbose("SIP/mdc_trunk_conf-15-0000001c", "1,national") in new stack
 national
    -- Executing [s-nat@sub_nat2int:2] Set("SIP/mdc_trunk_conf-15-0000001c", "MDC_CALLER_NUM_INTERNAT=0049xxx330") in new stack
    -- Executing [s-nat@sub_nat2int:3] Return("SIP/mdc_trunk_conf-15-0000001c", "") in new stack
    -- Executing [s@mdc_trunk-13:3] Set("SIP/mdc_trunk_conf-15-0000001c", "CALLERID(num)=0049xxx330") in new stack
    -- Executing [s@mdc_trunk-13:4] Gosub("SIP/mdc_trunk_conf-15-0000001c", "sub_int2nat,s,1(MDC_CALLER_NUM_NAT,0049xxx330,00,49,0,7161,1)") in new stack
    -- Executing [s@sub_int2nat:1] Verbose("SIP/mdc_trunk_conf-15-0000001c", "1,sub_int2nat:: variable: MDC_CALLER_NUM_NAT - exten: 0049xxx330 - intVAZ: 00 - lkz: 49 - natVAZ: 0 - onKz: 7161 - incoming: 1") in new stack
 sub_int2nat:: variable: MDC_CALLER_NUM_NAT - exten: 0049xxx330 - intVAZ: 00 - lkz: 49 - natVAZ: 0 - onKz: 7161 - incoming: 1
    -- Executing [s@sub_int2nat:2] GotoIf("SIP/mdc_trunk_conf-15-0000001c", "0?s-emergency,1") in new stack
    -- Executing [s@sub_int2nat:3] GotoIf("SIP/mdc_trunk_conf-15-0000001c", "0?nat") in new stack
    -- Executing [s@sub_int2nat:4] GotoIf("SIP/mdc_trunk_conf-15-0000001c", "1?s-internat,1") in new stack
    -- Goto (sub_int2nat,s-internat,1)
    -- Executing [s-internat@sub_int2nat:1] Set("SIP/mdc_trunk_conf-15-0000001c", "MDC_CALLER_NUM_NAT=Meine Nummer330") in new stack
    -- Executing [s-internat@sub_int2nat:2] Return("SIP/mdc_trunk_conf-15-0000001c", "") in new stack
    -- Executing [s@mdc_trunk-13:5] Set("SIP/mdc_trunk_conf-15-0000001c", "CALLERID(num)=Meine Nummer330") in new stack
    -- Executing [s@mdc_trunk-13:6] UserEvent("SIP/mdc_trunk_conf-15-0000001c", "ResolveCallerName,Strategy: system,Outbound: 0,Channel: SIP/mdc_trunk_conf-15-0000001c") in new stack
    -- Executing [s@mdc_trunk-13:7] Wait("SIP/mdc_trunk_conf-15-0000001c", "0.25") in new stack
    -- Executing [s@mdc_trunk-13:8] Verbose("SIP/mdc_trunk_conf-15-0000001c", "1,MDC_RESOLVENAME_HITS = 0") in new stack
 MDC_RESOLVENAME_HITS = 0
    -- Executing [s@mdc_trunk-13:9] Verbose("SIP/mdc_trunk_conf-15-0000001c", "1,CALLERID(name) = ") in new stack
 CALLERID(name) =
    -- Executing [s@mdc_trunk-13:10] Set("SIP/mdc_trunk_conf-15-0000001c", "MDC_NUMPREFIX_TRUNK=0") in new stack
    -- Executing [s@mdc_trunk-13:11] ExecIf("SIP/mdc_trunk_conf-15-0000001c", "1?Set(CALLERID(num)=0Meine Nummer330)") in new stack
    -- Executing [s@mdc_trunk-13:12] Goto("SIP/mdc_trunk_conf-15-0000001c", "mdc_mapping-13,620,1") in new stack
    -- Goto (mdc_mapping-13,620,1)
    -- Executing [620@mdc_mapping-13:1] Set("SIP/mdc_trunk_conf-15-0000001c", "CHANNEL(language)=de") in new stack
    -- Executing [620@mdc_mapping-13:2] Verbose("SIP/mdc_trunk_conf-15-0000001c", "1,invalid from _[+*%#a-zA-Z0-9]. to 620") in new stack
 invalid from _[+*%#a-zA-Z0-9]. to 620
    -- Executing [620@mdc_mapping-13:3] Set("SIP/mdc_trunk_conf-15-0000001c", "MDC_FALLBACK_TRUNK=") in new stack
    -- Executing [620@mdc_mapping-13:4] Goto("SIP/mdc_trunk_conf-15-0000001c", "exceptions,620,1") in new stack
    -- Goto (exceptions,620,1)
    -- Channel 'SIP/mdc_trunk_conf-15-0000001c' sent to invalid extension: context,exten,priority=exceptions,620,1
    -- Executing [i@exceptions:1] Goto("SIP/mdc_trunk_conf-15-0000001c", "mdc_exception,s,1") in new stack
    -- Goto (mdc_exception,s,1)
    -- Executing [s@mdc_exception:1] Gosub("SIP/mdc_trunk_conf-15-0000001c", "def_exception,s,1") in new stack
    -- Executing [s@def_exception:1] GotoIf("SIP/mdc_trunk_conf-15-0000001c", "0?main,,1") in new stack
    -- Executing [s@def_exception:2] Answer("SIP/mdc_trunk_conf-15-0000001c", "") in new stack
    -- Executing [s@def_exception:3] Playback("SIP/mdc_trunk_conf-15-0000001c", "pbx-invalid") in new stack
    -- <SIP/mdc_trunk_conf-15-0000001c> Playing 'pbx-invalid.alaw' (language 'de')
  == Spawn extension (def_exception, s, 3) exited non-zero on 'SIP/mdc_trunk_conf-15-0000001c'

#10

Hallo @Spitzbube,

ich war mal so frei und habe deine Handynummer anonymisiert. Wenn du im Amt einen Fallback konfigurierst, dann sollte es zumindest funktionieren, wenn auch nicht die einzelnen Nummern unterschiedne werden können. Einen internen Benutzer mit Durchwahl 620 gibt es? ansonsten müsstest du für Ziel 620 unter Durchwahl die eines gültigen Benutzers eintragen.
Ich sehe neben der regulären CALLERID(num) (=Anrufernummer) manchmal CALLERID(num)=Meine Nummer330, war das dein Versuch die Nummer zu anonymisieren oder hattest du bei den eingehenden Regeln mal die CIDNummer geändert oder einen eigenen context für das Amt in Verwendung? Sollte das nicht von dir nachträglich anepasst worden sein, macht vermutlich das Leerzeichen hier Probleme (u.U. auch die Buchstaben).

Unter Accounts ist für die Rufnummer-Ermittlung jeweils Request-URI eingetragen oder?

Grüße,
Steve


#11

Ja das war der Versuch, die Nummer zu anonymisieren xD!Ich hab halt lediglich ein Entgerät IP-Telefonie mit der Nummer konfiguriert. Einen Benutzer speziell dafür nicht. Ich hab halt bei der Entgeräte Einnrichtung meinen Benutzernamen und mein Passwort angegeben, welche zu der Rufnummer gehören, welche ich von Unitymedia bekommen habe. Angeleget habe ich zum Test nur mal ein IP-Telefon mit der Nummer 24 am Ende.


#12


#13

Hi,

der pascom User hat die Durchwahl 620?
Ich kann dir leider nur sagen das es im Default funktioniert, ohne den SIP Invite und die Config direkt zu debuggen kann ich leider nicht weiterhelfen. Und das wäre leider auch nur über gekauften Support möglich.

Grüße,
Steve


#14

Meinst du das mit debuggen? Den Befehl findet er nicht in der CLI.

Was genau meinst du damit? Den Asterist Admin ? Der User dem das Telefon zugeordnet ist? Den User auf der Fritzbox?


#15

Hi,

mit debuggen meine ich z.b. via sngrep oder tcpdump (außerhalt der CLI als root user) sich den Invite und zugehörige asterisklog plus configurationsdateien, netzwerkkonfig usw. in Zusammenhang betrachten, wie erwähnt kann ich das in diesem Rahmen jedoch nicht durchführen.

Die Fritzbox ruft für deine Nummer die 620 auf der pascom PBX an. Deine eingehende Regeln weiderum versucht es der 620 intern zuzustellen. Also sollte einer deiner Benutzer dort (egal ob admin oder regulärer User) der ein registiertes Telefon zugewiesen hat die Durchwahl 620 besitzen.

Wie erwähnt würde ich einfach mal im Amt als Fallback einen Benutzer konfigurieren, dann wird zumindest dieser angerufen.

Grüße,
Steve