so - ich hab mich nochmal intensiv damit beschäftigt und dank vieler weiterer Tipps und Hin- und Verweise hier im Forum eine Möglichkeit gebastelt
Also:
nochmal zusammengefasst....
Voraussetzungen:
PC mit:
- Notes (ich hier R5/PE 5.0.1 ,höhere Versionen gehen sicher auch)
- installierte TELES-ISDN-Karte (ab Win2000 nur noch die PCI- oder PCMCIA-Varianten unterstützt!)
- CAPI 3.38
- installiertes TELES.RVS-PowerPack 1.70
- Tool AutoIt (
http://www.autoitscript.com/autoit3/) zur Scriptprogrammierung
1.) zur Rufnummernermittlung habe ich zwei Verweise hier aus dem Forum genutzt.
Einmal bediene ich mich der Geschichte mit der Rufnummernkonvertierung im Adressbuch, damit alle Nummern möglichst Dialer-konform abgelegt werden (siehe auch
http://www.sns1.de/partner/flamme/wflamme.nsf/Shortcut/TelKorrektur).
2.) zur Übergabe modifiziere ich die TAPI-Routine (siehe auch
http://www.sns1.de/partner/flamme/wflamme.nsf/Shortcut/PABDialer) in der Form, dass ich nicht die Windows-TAPI-Routine aufrufe, sondern zuerst die ermittelte Telefonnummer in eine Datei ausgebe (landet standardmäßig im Lotus\Notes-Verzeichnis) und diese Datei dann mit einem eigenen Programm (compiliertes AutoIt-Script) wieder auslese und an den Teles-Dialer via SendKeys übergebe.
Nun im Detail:
zu 1.) könnt ihr alles auf der Webpage lesen (das als Voraussetzung, um möglichst viele Eingabevarianten der Telefonnummern abzufangen)
zu 2.) das Aktions-Script wurde folgendermaßen modifiziert:
im Deklarationsteil wurde ergänzt:
Type PersonRecord
empName As String * 20 'ggf. mehr als 20 für lange Rufnummern !
End Type
im Click-Sub-Teil wurde eingefügt - einmal eine weitere Variable:
Dim test As String 'für Aufruf des externen Programmes
dann der eigentliche TAPI-Aufruf ersetzt durch folgende Code
'original TAPI-Request
'Call tapiRequestMakeCall(strPhoneNumber,strAppName,strCallParty,strComment)
'ersetzt durch neue Aufrufparameter für Teles.fon
'Telnr. in Datei pndata.txt ausgeben
Dim fileNum As Integer
Dim fileName As String
Dim rec As PersonRecord
fileNum% = Freefile()
fileName$ = "pndata.txt"
' First, open a random file with a record length equal to
' the size of the records to be stored.
Open fileName$ For Random As fileNum% Len = Len(rec)
rec.empName$ = strPhoneNumber
Put #fileNum%, 1, rec ' Write this record at position 1.
Seek fileNum%, 1 ' Rewind file to beginning.
Close fileNum% ' Close the file
'Teles-Dialer-Tool aufrufen
test=Shell("C:\Lotus\Notes\telesfon.exe",1)
(Den gesamten/modifizierten Code findet ihr im angehängten Archiv!)
Zuerst gebe ich die ermittelte Tel.Nr in eine Datei 'pndata.txt' aus und rufe danach ein Programm namens 'telesfon.exe' auf.
Das ist ein compiliertes AutoIt-Script, welches die Weiterbearbeitung der Rufnummer übernimmt.
Diese Script liest die Datei 'pndata.txt' wieder aus, startet den TELES-Dialer (dialer32.exe) und übergibt die ausgelesene Rufnummer per SendKey an den Dialer.
Zuletzt sendet das Script noch ein ENTER, was den Dialer dazu veranlasst, über den S0-Bus zu wählen und nach Annahme des Rufes an der Gegenstelle mein TELES.fon klingeln zu lassen....klappt perfekt und genau, wie ich es wollte.
Der Umweg über die 'pndata'-Datei war notwendig, da ich einerseits mit der Bibliothek zur Nutzung der Zwischenablage irgendwie keinen Erfolg hatte (lag sicher an meiner alten Notes-Version oder meiner Dummheit...), andererseits damit natürlich auch die Gefahr besteht, dass andere Aktionen am PC das ClipBoard überscheiben und der Dialer dann irgendwelchen Quatsch übergeben bekommt. Somit vielleicht gar nicht so doof!..
Die Nutzung eines externen Tools (AutoIt, Freeware!) konnte auch nicht umgangen werden, da Notes keine SendKey-Unterstützung (mehr?) aufweist und ich nicht weiß, wie ich sonst zum richtigen Zeitpunkt an den TELES-Dialer die Rufnummern-Daten 'senden' soll (keine Ahnung, ob und wie der Dialer vielleicht mit Parametern o.ä. zu füttern sei...Rechercheversuche dazu blieben erfolglos!).
Im felesfon.exe (AutoIt-)-Script habe ich versucht, noch das eine oder andere Problem abzufangen....wen's interessiert - die Datei 'telesfon.au3' ist ebenso im Archiv und kann im Editor betrachtet werden. Eine solche au3-Datei kann dann mit den AutoIt-Editor/Compiler zur exe gewandelt werden - und die ruft ja das LotusScript letztlich auf.
Das LotusScript habe ich im Adressbuch dann als gemeinsame Aktion in den entsprechenden Ansichten eingefügt und kann nun ganz bequem aus der Kontaktübersicht per PC wählen (auch OHNE TAPI-Unterstützung!
)
Danke für dieses Forum an alle - bisher habe ich für alle Probleme irgendwann- und wie - meist HIER eine Lösung gefunden - RESPEKT !
Und nun viel Spaß mit diesem - zugegebenermaßen 'wilden' 'TELES-Dialer.....
Viele Grüße
Highnuu