Hallo
Ich habe da mal ne Frage, im Moment habe ich folgenden Code..
Delphi-Quellcode:
//--------------------------------------------------------------------------
// User 1
//--------------------------------------------------------------------------
try
JvMemo1.Lines.Add('Recording User Anmeldung läuft');
JvMemo1.Refresh;
Randomize;
v7Session1.Logon(frmUser.Edit4.Text,frmUser.Edit1.Text,frmUser.Edit3.Text,StrToInt(frmUser.Edit2.Text),tvApplicationTypeClient,32100,tvServerConnectionLevelFull,FALSE,tvStationUsageOwner);
oCallFolder1 := v7Session1.GetDefaultFolder(tvFolderCalls);
oCallItems1 := oCallFolder1.Items;
oSystemTargetFolder1 := v7Session1.GetDefaultFolder(tvFolderSystemTarget);
oTarget1 := _SystemTarget(oSystemTargetFolder1.Items.Item(frmUser.Edit1.Text,tvSearchkey));
V7Session1.OnCallStatusChange := V7Session1CallStatusChange;
sOwnerName1 := oCallFolder1.Name;
JvMemo1.Lines.Add('Recording User wurde angemeldet');
JvMemo1.Refresh;
except
//bFehler := True;
JvMemo1.Lines.Add('Fehler bei der Anmeldung von Recordinguser');
forms.Application.Terminate;
//frmSetup.ShowModal;
end;
und folgenden Code auch noch
Delphi-Quellcode:
procedure TfrmMain.v7Session1CallStatusChange(ASender: TObject; const ID: WideString; Status, OldStatus: TOleEnum);
begin
//--------------------------------------------------------------------------
// ID des Calls zuweisen
//--------------------------------------------------------------------------
oCurrentCall1 := _Call(v7Session1.GetItem(ID,''));
sHistoryCall1 := oCurrentCall1.CallHistoryID;
sCallID1 := ID;
//--------------------------------------------------------------------------
// Satus des Anrufes auswerten und darauf reagieren
//--------------------------------------------------------------------------
case Status of
tvPartyStatusUnknown:
JvMemo1.Lines.Add('unknown ' + sUser1Name);
tvPartyStatusNone:
JvMemo1.Lines.Add('none ' + sUser1Name);
tvPartyStatusActive:
begin
JvMemo1.Lines.Add('ringing ' + sUser1Name);
// usw......
da ich das aber nun sehr oft brauche wollte ich das in Funktionen und Prozeduren umbauen und mit Arrays arbeiten (wenn das geht ?)
Dabei habe ich folgendes gemacht
Delphi-Quellcode:
function LogOn(const sServer: string;const sUser, sPass, sID: string;var iCount:integer): boolean;
var
v7Session : Array[0..5] of Tv7Session;
begin
v7Session[1] := Tv7Session.Create(Application);
v7Session[1].Logon(sServer,sUser,sPass,StrToInt(sID),tvApplicationTypeClient,32100,tvServerConnectionLevelFull,FALSE,tvStationUsageOwner);
oCallFolder[1] := v7Session[1].GetDefaultFolder(tvFolderCalls);
oCallItems[1] := oCallFolder[1].Items;
oSystemTargetFolder[1] := v7Session[1].GetDefaultFolder(tvFolderSystemTarget);
oTarget[1] := _SystemTarget(oSystemTargetFolder[1].Items.Item(sUser,tvSearchkey));
// diese zeile geht nicht warum bzw wie muss ich es machen ???
V7Session[1].OnCallStatusChange := V7Session[1]CallStatusChange;
sOwnerName[1] := oCallFolder[1].Name;
end;
procedure TfrmMain.v7Session[1]CallStatusChange(ASender: TObject; const ID: WideString; Status, OldStatus: TOleEnum);
begin
end;
[Fehler] Main.pas(110): ';' erwartet, aber '[' gefunden
[Fehler] Main.pas(110): '=' erwartet, aber ';' gefunden
[Fehler] Main.pas(127): Inkompatible Typen: 'Tv7Session[1]CallStatusChange' und 'Tv7Session'
usw...
Nun bekomme ich bei der markierten Zeile einen Fehler, wie muss ich es Umbauen das es geht?
Martin