[Eisfair] E1: capi2text / fbrcapi

Stephan Sanders Stephan at genlog.de
Sa Feb 4 22:20:43 CET 2012


Hallo Jürgen

> Am 01.02.2012 11:00, schrieb Juergen Edner:
>>
>> Stephan, Du scheinst Dich diesbezüglich gut aus zu kennen. Hast Du
>> Erfahrung wie dies programmiertechnisch umgesetzt werden müsste bzw.
>> meinst Du du könntest den Fehler im Sourcecode von capi2text finden?
>

nachdem wir ja einige Experimente per PN besprochen haben, will ich ein 
paar Ergebnisse hier veröffentlichen.

CAPI auf dem Eisfair funktioniert soweit ich es sehen kann korrekt!
Die wichtigen Oktette in der Setup Message kommen bei Capi2Text an.

Auch Capi2text gibt im Debugmodus alles korrekt aus.

In der Übergabe zwischen capi2text und capi2text.sh wird aktuell
die Vorwahl und Rufnummer oder führende Null übergeben.
Wenn jetzt aber eine "CLIP screened" Nummer kommt, wird hier auch eine 0 
an Anfang übergeben (CLIP: 08003301000).

Daher folgende Möglichkeiten:

- Bei "CLIP no screening" in capitotext die führende "0" entfernen
- Nummerierungsplan (und Zusatzinfos) 3 Oktetts zusammen auch an 
capitotext.sh übergen. inkl Flag, wenn CLIP screening ausgewählt wurde.
Bringt auch den Vorteil, dass gewisse Fehlerfälle aus dem Ausland evt. 
beseitigt werden.


Syslog:
20:02:45 kernel capidrv-1: incoming call 170XXXASDF,1,1,6900000

isdnlog:
Feb 04 20:02:45 * Call to tei 127 from +49 170/XXXASDF, on +49 221/6900000,

capi2text mit -d (debug option):

capitotext: Debug: contr 1: listenconf Info=0x0000 (No additional 
information) infomask=0x144 cipmask=0x1fff03ff capimask2=0x0
capitotext: Debug: controller 1: listen_change_state 1 -> 2
capitotext: Debug: <<< CONNECT_IND                ID=003 #0x010c LEN=0048
   Controller/PLCI/NCCI            = 0x101
   CIPValue                        = 0x10
   CalledPartyNumber               = <c1>6900000
   CallingPartyNumber              = <21 83>170XXXASDF
   CalledPartySubaddress           = default
   CallingPartySubaddress          = default
   BC                              = <80 90 a3>
   LLC                             = default
   HLC                             = <91 81>
   AdditionalInfo                  = default


Bei der Zeile CallingPartyNumber
21 --> Nationale Nummer; ISDN/Telefonnummernplan (Es muss also eine 0 
davor!)
83 --> Rufnummer anzeigen; Spare ; Screening...

Wenn die Informationen capi2text.sh bekommt, kann dort eine "0" bzw. 
"+49" hinzugefügt werden.

Leider fehlen mir jetzt noch Logs für eine Screened Number.
Hier gibt es auch Fälle, wo Provider vielleicht "unnormale" Werte 
reinschreiben. Das kann durch capi2text debugging verifiziert werden.

Kann mich mal irgendwer mit einer Screened Nummer anrufen :-D (Sonst 
muss ich meine Bank um einen Rückruf bemühen... Die machen das... ^^)

Übrigens:
Die Fritzbox zeigt am internen S0 Bus auch ggf. Namen aus dem eigenen 
Telefonbuch an. Diese erkennt sogar Capi2Text. Das funktioniert aber 
anders als es via CLIP no Screening gemacht wird.
Information Element:

capitotext: Debug: <<< INFO_IND                   ID=003 #0x010d LEN=0028
   Controller/PLCI/NCCI            = 0x101
   InfoNumber                      = 0x28
   InfoElement                     = Stephan Handy




Soviel für heute Abend!

Viele Grüße
Stephan


Mehr Informationen über die Mailingliste Eisfair