Problem von chan_capi_cm mit dem Abweisen von anrufen?

Hupe

Aktives Mitglied
Mitglied seit
8 Apr 2004
Beiträge
2,586
Punkte für Reaktionen
0
Punkte
0
Aufbau:

Mein Asterisk hängt am internen S0 der Tk-Anlage mit einer FritzCard. Ich nutze chan_capi_cm 0.5.4.
Wenn ich das System als ISDN-Gateway nutze und einen eingehenden Anruf abweise (der Client ist diax) dann ist bei mir Asterisk in 4 von 5 Fällen in die Binsen gegangen. Das ist natürlich auch mal ne Art Asterisk zu beenden, aber irgendwie kommt da bei mir keine Begeisterung auf :) .

für die, die davon was Verstehen, hier ein Capi-Debug:

Code:
CAPI Debugging Enabled
CONNECT_IND ID=001 #0x7cae LEN=0035
  Controller/PLCI/NCCI            = 0x101
  CIPValue                        = 0x4
  CalledPartyNumber               = <81>14
  CallingPartyNumber              = <01 80 2a 2a>13
  CalledPartySubaddress           = default
  CallingPartySubaddress          = default
  BC                              = <90 90 a3>
  LLC                             = default
  HLC                             = default
  AdditionalInfo                  = default

  == CONNECT_IND (PLCI=0x101,DID=14,CID=**13,CIP=0x4,CONTROLLER=0x1)
    -- creating pipe for PLCI=0x101
ALERT_REQ ID=001 #0x7cae LEN=0017
  Controller/PLCI/NCCI            = 0x101
  AdditionalInfo
   BChannelinformation            = default
   Keypadfacility                 = default
   Useruserdata                   = default
   Facilitydataarray              = default

    -- started pbx on channel (callgroup=0)!
INFO_IND ID=001 #0x7caf LEN=0017
  Controller/PLCI/NCCI            = 0x101
  InfoNumber                      = 0x1e
  InfoElement                     = <85 83>

INFO_RESP ID=001 #0x7caf LEN=0012
  Controller/PLCI/NCCI            = 0x101

  == info element PI 85 83
 Origination is non ISDN
INFO_IND ID=001 #0x7cb0 LEN=0018
  Controller/PLCI/NCCI            = 0x101
  InfoNumber                      = 0x70
  InfoElement                     = <81>14

INFO_RESP ID=001 #0x7cb0 LEN=0012
  Controller/PLCI/NCCI            = 0x101

  == info element CALLED PARTY NUMBER
       > INFO_IND DID digits in non PtP mode
INFO_IND ID=001 #0x7cb1 LEN=0016
  Controller/PLCI/NCCI            = 0x101
  InfoNumber                      = 0x18
  InfoElement                     = <89>

INFO_RESP ID=001 #0x7cb1 LEN=0012
  Controller/PLCI/NCCI            = 0x101

  == info element CHANNEL IDENTIFIKATION 89
ALERT_CONF ID=001 #0x7cae LEN=0014
  Controller/PLCI/NCCI            = 0x101
  Info                            = 0x0

    -- Executing Set("CAPI/contr1/14-2", "LANGUAGE()=de") in new stack
    -- Executing Dial("CAPI/contr1/14-2", "IAX2/andreas|120") in new stack
    -- Called andreas
    -- Call accepted by 192.168.123.2 (format alaw)
    -- Format for call is alaw
    -- IAX2/andreas-4 is ringing
  == Requested RINGING-Indication for CAPI/contr1/14-2
Aug 30 19:47:27 WARNING[11454]: chan_iax2.c:6808 socket_read: Call rejected by 192.168.123.2: Call rejected manually.
    -- Hungup 'IAX2/andreas-4'
  == No one is available to answer at this time (1:0/0/0)
  == Requested Indication-STOP for CAPI/contr1/14-2
    -- Executing Congestion("CAPI/contr1/14-2", "") in new stack
  == Requested CONGESTION-Indication for CAPI/contr1/14-2
CONNECT_RESP ID=001 #0x7cae LEN=0032
  Controller/PLCI/NCCI            = 0x101
  Reject                          = 0x4
  BProtocol
   B1protocol                     = 0x0
   B2protocol                     = 0x0
   B3protocol                     = 0x0
   B1configuration                = default
   B2configuration                = default
   B3configuration                = default
  ConnectedNumber                 = default
  ConnectedSubaddress             = default
  LLC                             = default
  AdditionalInfo
   BChannelinformation            = default
   Keypadfacility                 = default
   Useruserdata                   = default
   Facilitydataarray              = default

DISCONNECT_IND ID=001 #0x7cb2 LEN=0014
  Controller/PLCI/NCCI            = 0x101
  Reason                          = 0x3400

DISCONNECT_RESP ID=001 #0x7cb2 LEN=0012
  Controller/PLCI/NCCI            = 0x101

    -- Executing Hangup("CAPI/contr1/14-2", "") in new stack
    -- CAPI Hangingup
    -- removed pipe for PLCI = 0x101
CONNECT_IND ID=001 #0x7cb3 LEN=0035
  Controller/PLCI/NCCI            = 0x101
  CIPValue                        = 0x4
  CalledPartyNumber               = <81>14
  CallingPartyNumber              = <01 80 2a 2a>13
  CalledPartySubaddress           = default
  CallingPartySubaddress          = default
  BC                              = <90 90 a3>
  LLC                             = default
  HLC                             = default
  AdditionalInfo                  = default

  == CONNECT_IND (PLCI=0x101,DID=14,CID=**13,CIP=0x4,CONTROLLER=0x1)
    -- creating pipe for PLCI=0x101
ALERT_REQ ID=001 #0x7cb3 LEN=0017
  Controller/PLCI/NCCI            = 0x101
  AdditionalInfo
   BChannelinformation            = default
   Keypadfacility                 = default
   Useruserdata                   = default
   Facilitydataarray              = default

    -- started pbx on channel (callgroup=0)!
INFO_IND ID=001 #0x7cb4 LEN=0017
  Controller/PLCI/NCCI            = 0x101
  InfoNumber                      = 0x1e
  InfoElement                     = <85 83>

INFO_RESP ID=001 #0x7cb4 LEN=0012
  Controller/PLCI/NCCI            = 0x101

  == info element PI 85 83
 Origination is non ISDN
INFO_IND ID=001 #0x7cb5 LEN=0018
  Controller/PLCI/NCCI            = 0x101
  InfoNumber                      = 0x70
  InfoElement                     = <81>14

INFO_RESP ID=001 #0x7cb5 LEN=0012
  Controller/PLCI/NCCI            = 0x101

  == info element CALLED PARTY NUMBER
       > INFO_IND DID digits in non PtP mode
INFO_IND ID=001 #0x7cb6 LEN=0016
  Controller/PLCI/NCCI            = 0x101
  InfoNumber                      = 0x18
  InfoElement                     = <89>

INFO_RESP ID=001 #0x7cb6 LEN=0012
  Controller/PLCI/NCCI            = 0x101

  == info element CHANNEL IDENTIFIKATION 89
ALERT_CONF ID=001 #0x7cb3 LEN=0014
  Controller/PLCI/NCCI            = 0x101
  Info                            = 0x0

    -- Executing Set("CAPI/contr1/14-3", "LANGUAGE()=de") in new stack
    -- Executing Dial("CAPI/contr1/14-3", "IAX2/andreas|120") in new stack
    -- Called andreas
    -- Call accepted by 192.168.123.2 (format alaw)
    -- Format for call is alaw
    -- IAX2/andreas-5 is ringing
  == Requested RINGING-Indication for CAPI/contr1/14-3
    -- IAX2/andreas-5 answered CAPI/contr1/14-3
  == Requested Indication-STOP for CAPI/contr1/14-3
    -- CAPI Answering for MSN 14
CONNECT_RESP ID=001 #0x7cb3 LEN=0036
  Controller/PLCI/NCCI            = 0x101
  Reject                          = 0x0
  BProtocol
   B1protocol                     = 0x1
   B2protocol                     = 0x1
   B3protocol                     = 0x0
   B1configuration                = default
   B2configuration                = default
   B3configuration                = default
  ConnectedNumber                 = <00 80>14
  ConnectedSubaddress             = default
  LLC                             = default
  AdditionalInfo
   BChannelinformation            = default
   Keypadfacility                 = default
   Useruserdata                   = default
   Facilitydataarray              = default

Aug 30 19:47:43 WARNING[11454]: chan_iax2.c:6808 socket_read: Call rejected by 192.168.123.2: Call rejected manually.
    -- Hungup 'IAX2/andreas-5'
    -- Executing Hangup("CAPI/contr1/14-3", "") in new stack
    -- CAPI Hangingup
       > activehangingup
INFO_IND ID=001 #0x7cb7 LEN=0016
  Controller/PLCI/NCCI            = 0x101
  InfoNumber                      = 0x18
  InfoElement                     = <89>

INFO_RESP ID=001 #0x7cb7 LEN=0012
  Controller/PLCI/NCCI            = 0x101

  == info element CHANNEL IDENTIFIKATION 89
CONNECT_ACTIVE_IND ID=001 #0x7cb8 LEN=0015
  Controller/PLCI/NCCI            = 0x101
  ConnectedNumber                 = default
  ConnectedSubaddress             = default
  LLC                             = default

CONNECT_ACTIVE_RESP ID=001 #0x7cb8 LEN=0012
  Controller/PLCI/NCCI            = 0x101

CONNECT_B3_IND ID=001 #0x7cb9 LEN=0013
  Controller/PLCI/NCCI            = 0x10101
  NCPI                            = default

CONNECT_B3_RESP ID=001 #0x7cb9 LEN=0015
  Controller/PLCI/NCCI            = 0x10101
  Reject                          = 0x0
  NCPI                            = default

CONNECT_B3_ACTIVE_IND ID=001 #0x7cba LEN=0013
  Controller/PLCI/NCCI            = 0x10101
  NCPI                            = default

CONNECT_B3_ACTIVE_RESP ID=001 #0x7cba LEN=0012
  Controller/PLCI/NCCI            = 0x10101

server*CLI>
Disconnected from Asterisk server
Asterisk ending (0).

Vielleicht könnte das von Euch mal jemand Testen, ob das Problem nicht nur auf mein System beschränkt ist.
 
Hier hast du offensichtlich einen weiteren Fehler im Call-handling von chan_capi-cm 0.5.x gefunden. Dies sollte schon laenger im CVS (demnaechst 0.6) gefixt sein.
Koenntest Du das mal testen?

Armin
 
armincm schrieb:
Hier hast du offensichtlich einen weiteren Fehler im Call-handling von chan_capi-cm 0.5.x gefunden. Dies sollte schon laenger im CVS (demnaechst 0.6) gefixt sein.
Koenntest Du das mal testen?

Armin

Ach mann! Ich dachte ich hätte jetzt was neues gefunden :(

Nee, aber mal i ernst. Klar kann ich das testen. Braucht nur etwas zeit, da ich noch ein paar meter config-Dateien mitändern muss....

Melde mich dann hier wieder.
 
1. Versuch: CAPI nimmt nicht ab!

Code:
CAPI Debugging Enabled
CONNECT_IND ID=001 #0x8c9d LEN=0033
  Controller/PLCI/NCCI            = 0x101
  CIPValue                        = 0x4
  CalledPartyNumber               = <81>22
  CallingPartyNumber              = <01 80>13
  CalledPartySubaddress           = default
  CallingPartySubaddress          = default
  BC                              = <90 90 a3>
  LLC                             = default
  HLC                             = default
  AdditionalInfo                  = default

    -- CONNECT_IND (PLCI=0x101,DID=22,CID=13,CIP=0x4,CONTROLLER=0x1)
       > ISDN1: msn='14' DNID='22' MSN
       > ISDN1: msn='15' DNID='22' MSN
       > ISDN1: msn='20' DNID='22' MSN
       > ISDN1: msn='22' DNID='22' MSN
  == ISDN1: Incoming call '13' -> '22'
INFO_IND ID=001 #0x8c9e LEN=0017
  Controller/PLCI/NCCI            = 0x101
  InfoNumber                      = 0x1e
  InfoElement                     = <85 83>

INFO_RESP ID=001 #0x8c9e LEN=0012
  Controller/PLCI/NCCI            = 0x101

    -- ISDN1: info element PI 85 83
       > ISDN1: Origination is non ISDN
INFO_IND ID=001 #0x8c9f LEN=0018
  Controller/PLCI/NCCI            = 0x101
  InfoNumber                      = 0x70
  InfoElement                     = <81>22

INFO_RESP ID=001 #0x8c9f LEN=0012
  Controller/PLCI/NCCI            = 0x101

    -- ISDN1: info element CALLED PARTY NUMBER
       > ISDN1: INFO_IND DID digits not used in this state.
INFO_IND ID=001 #0x8ca0 LEN=0016
  Controller/PLCI/NCCI            = 0x101
  InfoNumber                      = 0x18
  InfoElement                     = <89>

INFO_RESP ID=001 #0x8ca0 LEN=0012
  Controller/PLCI/NCCI            = 0x101

    -- ISDN1: info element CHANNEL IDENTIFICATION 89
INFO_IND ID=001 #0x8ca1 LEN=0016
  Controller/PLCI/NCCI            = 0x101
  InfoNumber                      = 0xa1
  InfoElement                     = <a1>

INFO_RESP ID=001 #0x8ca1 LEN=0012
  Controller/PLCI/NCCI            = 0x101

    -- ISDN1: unhandled INFO_IND 0xa1 (PLCI=0x101)
INFO_IND ID=001 #0x8ca2 LEN=0017
  Controller/PLCI/NCCI            = 0x101
  InfoNumber                      = 0x1e
  InfoElement                     = <85 83>

INFO_RESP ID=001 #0x8ca2 LEN=0012
  Controller/PLCI/NCCI            = 0x101

    -- ISDN1: info element PI 85 83
       > ISDN1: Origination is non ISDN
INFO_IND ID=001 #0x8ca3 LEN=0018
  Controller/PLCI/NCCI            = 0x101
  InfoNumber                      = 0x70
  InfoElement                     = <81>22

INFO_RESP ID=001 #0x8ca3 LEN=0012
  Controller/PLCI/NCCI            = 0x101

    -- ISDN1: info element CALLED PARTY NUMBER
       > ISDN1: INFO_IND DID digits not used in this state.
INFO_IND ID=001 #0x8ca4 LEN=0016
  Controller/PLCI/NCCI            = 0x101
  InfoNumber                      = 0x18
  InfoElement                     = <89>

INFO_RESP ID=001 #0x8ca4 LEN=0012
  Controller/PLCI/NCCI            = 0x101

    -- ISDN1: info element CHANNEL IDENTIFICATION 89
INFO_IND ID=001 #0x8ca5 LEN=0016
  Controller/PLCI/NCCI            = 0x101
  InfoNumber                      = 0xa1
  InfoElement                     = <a1>

INFO_RESP ID=001 #0x8ca5 LEN=0012
  Controller/PLCI/NCCI            = 0x101

    -- ISDN1: unhandled INFO_IND 0xa1 (PLCI=0x101)
DISCONNECT_IND ID=001 #0x8ca6 LEN=0014
  Controller/PLCI/NCCI            = 0x101
  Reason                          = 0x0

DISCONNECT_RESP ID=001 #0x8ca6 LEN=0012
  Controller/PLCI/NCCI            = 0x101
Begreife ich nicht. Der Kontext ist auf jeden Fall existent.

Außerdem scheint es so zu sein, dass capi nichtmehr mit "conrt1" im Dial-Befehl arbeitet. Dafür tut es "ISDN1". Oder es klingelt, man nimmt ab, aber am Hörer ist stille, und am Client klingelt es weiter.

Fall 1:
Code:
-- Accepting AUTHENTICATED call from 192.168.123.2:
       > requested format = alaw,
       > requested prefs = (),
       > actual format = alaw,
       > host prefs = (ulaw|alaw|ilbc|gsm),
       > priority = mine
    -- Executing SetMusicOnHold("IAX2/andreas@andreas-1", "default") in new stack
    -- Executing NoOp("IAX2/andreas@andreas-1", "") in new stack
    -- Executing SetLanguage("IAX2/andreas@andreas-1", "de") in new stack
    -- Executing NoOp("IAX2/andreas@andreas-1", "") in new stack
    -- Executing Set("IAX2/andreas@andreas-1", "CALLERID(number)=14") in new stack
    -- Executing Dial("IAX2/andreas@andreas-1", "CAPI/contr1/**13|45|tTm") in new stack
       > data = contr1/**13
       > parsed dialstring: 'contr1' '**13' ''
       > capi request controller = 1
    -- didn't find capi device for interface 'contr1'
Aug 30 22:44:02 NOTICE[12221]: app_dial.c:1092 dial_exec_full: Unable to create channel of type 'CAPI' (cause 44 - Requested channel not available)
  == Everyone is busy/congested at this time (1:0/0/1)
    -- Executing Hangup("IAX2/andreas@andreas-1", "") in new stack
  == Spawn extension (allnet, **13, 107) exited non-zero on 'IAX2/andreas@andreas-1'
    -- Executing Hangup("IAX2/andreas@andreas-1", "") in new stack
  == Spawn extension (allnet, h, 1) exited non-zero on 'IAX2/andreas@andreas-1'
    -- Hungup 'IAX2/andreas@andreas-1'

Fall2:
Ok, kann ich jetzt nicht liefern. Hatte Asterisk neu gestartet. Jetzt geht es auch mit "contr1". Hatte allerdings nichts geändert. Muss sowas wie "die Hand Gottes" gewesen sein...
Ich teste das Morgen mal weiter. Vielleicht geht es ja morgen (nicht) :)
 
Danke, deine Logs helfen mir schon mal weiter. Das mit dem 'contr1' kann ich mir nicht so einfach erklaeren, denn der controller wird gefunden. Es aber wohl kein Interface (Kanal) frei... Hmm, vieleicht ein Folgefehler...

Aber das mit dem ankommenden Ruf liegt daran, dass deine Telefonanlage keine SETUP Message schickt und ohne diese wird der Call nicht in Asterisk signalisiert (das ist neu in chan_capi). Das muss ich mal genauer untersuchen.

Armin
 
Anstelle von SETUP wird bei der Anlage ein 'Sending Complete' geschickt. Ich habe es nun auch in chan_capi eingebaut. Falls das anonymous-CVS noch nicht in sync ist, hier der Patch:
Code:
diff -u -r1.82 chan_capi.c
--- chan_capi.c 30 Aug 2005 11:21:58 -0000      1.82
+++ chan_capi.c 31 Aug 2005 07:21:21 -0000
@@ -2056,6 +2056,11 @@
                        pbx_builtin_setvar_helper(i->owner, "REDIRECTREASON", reasonbuf);
                }
                break;
+       case 0x00a1:    /* Sending Complete */
+               cc_ast_verbose(3, 1, VERBOSE_PREFIX_3 "%s: info element Sending Complete\n",
+                       i->name);
+               handle_setup_element(CMSG, PLCI, i);
+               break;
        case 0x4000:    /* CHARGE in UNITS */
                cc_ast_verbose(3, 1, VERBOSE_PREFIX_3 "%s: info element CHARGE in UNITS\n",
                        i->name);

Armin
 
Hab das File mal gepatcht. Die Debug-Ausgabe sieht auch schon irgendwie besser aus. Es macht sich alerdings am hörer nur Stille breit (sprich, es passiert nix).

Code:
CONNECT_IND ID=001 #0x001e LEN=0033
  Controller/PLCI/NCCI            = 0x101
  CIPValue                        = 0x4
  CalledPartyNumber               = <81>22
  CallingPartyNumber              = <01 80>13
  CalledPartySubaddress           = default
  CallingPartySubaddress          = default
  BC                              = <90 90 a3>
  LLC                             = default
  HLC                             = default
  AdditionalInfo                  = default

    -- CONNECT_IND (PLCI=0x101,DID=22,CID=13,CIP=0x4,CONTROLLER=0x1)
       > ISDN1: msn='14' DNID='22' MSN
       > ISDN1: msn='15' DNID='22' MSN
       > ISDN1: msn='20' DNID='22' MSN
       > ISDN1: msn='22' DNID='22' MSN
  == ISDN1: Incoming call '13' -> '22'
INFO_IND ID=001 #0x001f LEN=0017
  Controller/PLCI/NCCI            = 0x101
  InfoNumber                      = 0x1e
  InfoElement                     = <85 83>

INFO_RESP ID=001 #0x001f LEN=0012
  Controller/PLCI/NCCI            = 0x101

    -- ISDN1: info element PI 85 83
       > ISDN1: Origination is non ISDN
INFO_IND ID=001 #0x0020 LEN=0018
  Controller/PLCI/NCCI            = 0x101
  InfoNumber                      = 0x70
  InfoElement                     = <81>22

INFO_RESP ID=001 #0x0020 LEN=0012
  Controller/PLCI/NCCI            = 0x101

    -- ISDN1: info element CALLED PARTY NUMBER
       > ISDN1: INFO_IND DID digits not used in this state.
INFO_IND ID=001 #0x0021 LEN=0016
  Controller/PLCI/NCCI            = 0x101
  InfoNumber                      = 0x18
  InfoElement                     = <89>

INFO_RESP ID=001 #0x0021 LEN=0012
  Controller/PLCI/NCCI            = 0x101

    -- ISDN1: info element CHANNEL IDENTIFICATION 89
INFO_IND ID=001 #0x0022 LEN=0016
  Controller/PLCI/NCCI            = 0x101
  InfoNumber                      = 0xa1
  InfoElement                     = <a1>

INFO_RESP ID=001 #0x0022 LEN=0012
  Controller/PLCI/NCCI            = 0x101

    -- ISDN1: info element Sending Complete
  == Started pbx on channel CAPI/ISDN1/22-1
    -- Executing Goto("CAPI/ISDN1/22-1", "capi22|22|1") in new stack
    -- Goto (capi22,22,1)
    -- Executing Set("CAPI/ISDN1/22-1", "LANGUAGE()=de") in new stack
    -- Executing DISA("CAPI/ISDN1/22-1", "no-password|outcalling") in new stack
INFO_IND ID=001 #0x0023 LEN=0017
  Controller/PLCI/NCCI            = 0x101
  InfoNumber                      = 0x1e
  InfoElement                     = <85 83>

INFO_RESP ID=001 #0x0023 LEN=0012
  Controller/PLCI/NCCI            = 0x101

    -- ISDN1: info element PI 85 83
       > ISDN1: Origination is non ISDN
INFO_IND ID=001 #0x0024 LEN=0018
  Controller/PLCI/NCCI            = 0x101
  InfoNumber                      = 0x70
  InfoElement                     = <81>22

INFO_RESP ID=001 #0x0024 LEN=0012
  Controller/PLCI/NCCI            = 0x101

    -- ISDN1: info element CALLED PARTY NUMBER
       > ISDN1: INFO_IND DID digits not used in this state.
INFO_IND ID=001 #0x0025 LEN=0016
  Controller/PLCI/NCCI            = 0x101
  InfoNumber                      = 0x18
  InfoElement                     = <89>

INFO_RESP ID=001 #0x0025 LEN=0012
  Controller/PLCI/NCCI            = 0x101

    -- ISDN1: info element CHANNEL IDENTIFICATION 89
INFO_IND ID=001 #0x0026 LEN=0016
  Controller/PLCI/NCCI            = 0x101
  InfoNumber                      = 0xa1
  InfoElement                     = <a1>

INFO_RESP ID=001 #0x0026 LEN=0012
  Controller/PLCI/NCCI            = 0x101

    -- ISDN1: info element Sending Complete
       > ISDN1: IE SETUP already received.
DISCONNECT_IND ID=001 #0x0027 LEN=0014
  Controller/PLCI/NCCI            = 0x101
  Reason                          = 0x0

DISCONNECT_RESP ID=001 #0x0027 LEN=0012
  Controller/PLCI/NCCI            = 0x101

  == Spawn extension (capi22, 22, 2) exited non-zero on 'CAPI/ISDN1/22-1'
    -- Executing Hangup("CAPI/ISDN1/22-1", "") in new stack
  == Spawn extension (capi22, h, 1) exited non-zero on 'CAPI/ISDN1/22-1'
  == ISDN1: CAPI Hangingup
  == ISDN1: Interface cleanup PLCI=0x101
 
Das liegt an DISA(), denn DISA macht zwar ein Answer(), aber Asterisk schickt dieses Answer() nicht weiter (an CAPI), da der Kanal noch nicht im RING-mode ist.
Ich bin zwar der Meinung, dass Asterisk hier nicht korrekt arbeitet, denn Answer() sollte auch ohne Ring-mode gehen... aber egal. Setze einfach ein
exten => xxx,y,Ringing()
vor das DISA()

Armin
 
Ok, so scheint es zu klappen: Beim abweisen von Anrufen hängt sich Asterisk nichtmehr auf. Anrufe über Capi werden angenommen, und der fehler mit "contr1" ist auch nichtmehr aufgetreten. war wohl wirklich irgendwie ein Folgefehler).
Vielen Dank erstmal. Wenn ich noch irgendwo einen Fehler finde, dan Melde ich mich wieder (was ich aber nicht hoffe).
 
Kostenlos!

Statistik des Forums

Themen
248,109
Beiträge
2,281,654
Mitglieder
377,325
Neuestes Mitglied
Boeckmann