[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