⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vaxsipuseragentocxlib_tlb.pas

📁 VaxSIPUserAgentSDK
💻 PAS
📖 第 1 页 / 共 3 页
字号:
    FOnSuccessToConnect: TVaxSIPUserAgentOCXOnSuccessToConnect;
    FOnIncomingCall: TVaxSIPUserAgentOCXOnIncomingCall;
    FOnVoiceMailMsg: TVaxSIPUserAgentOCXOnVoiceMailMsg;
    FOnTryingToReRegister: TNotifyEvent;
    FOnFailToReRegister: TNotifyEvent;
    FOnSuccessToReRegister: TNotifyEvent;
    FIntf: _DVaxSIPUserAgentOCX;
    function  GetControlInterface: _DVaxSIPUserAgentOCX;
  protected
    procedure CreateControl;
    procedure InitControlData; override;
  public
    procedure UnInitialize;
    function SetLicenceKey(const LicenceKey: WideString): WordBool;
    function GetVaxObjectError: Integer;
    function CloseLine(LineNo: Integer): WordBool;
    function Connect(LineNo: Integer; const ToURI: WideString; InputDeviceId: Integer; 
                     OutputDeviceId: Integer): WordBool;
    function Disconnect(LineNo: Integer): WordBool;
    function AcceptCall(LineNo: Integer; const CallId: WideString; InputDeviceId: Integer; 
                        OutputDeviceId: Integer): WordBool;
    function RejectCall(const CallId: WideString): WordBool;
    function TransferCall(LineNo: Integer; const ToURI: WideString): WordBool;
    function HoldLine(LineNo: Integer): WordBool;
    function UnHoldLine(LineNo: Integer): WordBool;
    function RegisterToProxy(Expire: Integer): WordBool;
    function UnRegisterToProxy: WordBool;
    function IsLineOpen(LineNo: Integer): WordBool;
    function IsLineHold(LineNo: Integer): WordBool;
    function IsLineBusy(LineNo: Integer): WordBool;
    function EnableKeepAlive(Seconds: Integer): WordBool;
    procedure DisableKeepAlive;
    procedure DeselectAllVoiceCodec;
    procedure SelectAllVoiceCodec;
    function SelectVoiceCodec(CodecNo: Integer): WordBool;
    function DeselectVoiceCodec(CodecNo: Integer): WordBool;
    function GetMyIP: WideString;
    function DigitDTMF(LineNo: Integer; const Digit: WideString): WordBool;
    function MuteMic(Mute: WordBool): WordBool;
    function MuteSpk(Mute: WordBool): WordBool;
    function GetMicVolume: Integer;
    function SetMicVolume(Volume: Integer): WordBool;
    function GetSpkVolume: Integer;
    function SetSpkVolume(Volume: Integer): WordBool;
    function EnableMicBoost: WordBool;
    function DisableMicBoost: WordBool;
    function IsMicBoostEnable: WordBool;
    function EnableAGC(Level: Integer): WordBool;
    function DisableAGC: WordBool;
    function EnableEchoNoiseCancellation: WordBool;
    function DisableEchoNoiseCancellation: WordBool;
    function IsRecording(LineNo: Integer): WordBool;
    function StopRecording(LineNo: Integer): WordBool;
    function ResetRecording(LineNo: Integer): WordBool;
    function SaveRecordingToWaveFile(LineNo: Integer; const FileName: WideString): WordBool;
    function IsWaveFilePlaying(LineNo: Integer): WordBool;
    function PlayWaveOpen(LineNo: Integer; const FileName: WideString): WordBool;
    function PlayWaveSkipTo(LineNo: Integer; Seconds: Integer): WordBool;
    function PlayWaveTotalTime(LineNo: Integer): Integer;
    function PlayWavePause(LineNo: Integer): WordBool;
    function PlayWaveStart(LineNo: Integer; Listen: WordBool): WordBool;
    function PlayWaveStop(LineNo: Integer): WordBool;
    function PlayWavePosition(LineNo: Integer): Integer;
    procedure EnableDonotDisturb;
    procedure DisableDonotDisturb;
    function SetTOS(LineNo: Integer; Value: Integer): WordBool;
    function GetTOS(LineNo: Integer): Integer;
    function EnableForceInbandDTMF(LineNo: Integer): WordBool;
    function DisableForceInbandDTMF(LineNo: Integer): WordBool;
    function SetDTMFVolume(Volume: Integer): WordBool;
    function GetDTMFVolume: Integer;
    function Initialize(BindToListenIP: WordBool; const ListenIP: WideString; ListenPort: Integer; 
                        const FromURI: WideString; const SIPOutBoundProxy: WideString; 
                        const SIPProxy: WideString; const LoginId: WideString; 
                        const LoginPwd: WideString; UseSoundDevice: WordBool; TotalLine: Integer): WordBool;
    function StartRecording(LineNo: Integer; RecordVoice: Integer; RecordCompress: WordBool): WordBool;
    function GetMicSoundLevel: Integer;
    function GetSpkSoundLevel: Integer;
    function GetOutboundCodec(LineNo: Integer): Integer;
    function GetInboundCodec(LineNo: Integer): Integer;
    function OpenLine(LineNo: Integer; BindToRTPRxIP: WordBool; const RTPRxIP: WideString; 
                      RTPRxPort: Integer): WordBool;
    function GetAudioInDevTotal: Integer;
    function GetAudioOutDevTotal: Integer;
    function GetAudioOutDevName(DeviceId: Integer): WideString;
    function GetAudioInDevName(DeviceId: Integer): WideString;
    function GetVersionSDK: WideString;
    function GetVersionFile: WideString;
    function JoinTwoLine(LineNoA: Integer; LineNoB: Integer): WordBool;
    property  ControlInterface: _DVaxSIPUserAgentOCX read GetControlInterface;
    property  DefaultInterface: _DVaxSIPUserAgentOCX read GetControlInterface;
  published
    property Anchors;
    property  TabStop;
    property  Align;
    property  DragCursor;
    property  DragMode;
    property  ParentShowHint;
    property  PopupMenu;
    property  ShowHint;
    property  TabOrder;
    property  Visible;
    property  OnDragDrop;
    property  OnDragOver;
    property  OnEndDrag;
    property  OnEnter;
    property  OnExit;
    property  OnStartDrag;
    property OnIncomingDiagnostic: TVaxSIPUserAgentOCXOnIncomingDiagnostic read FOnIncomingDiagnostic write FOnIncomingDiagnostic;
    property OnOutgoingDiagnostic: TVaxSIPUserAgentOCXOnOutgoingDiagnostic read FOnOutgoingDiagnostic write FOnOutgoingDiagnostic;
    property OnDTMFDigit: TVaxSIPUserAgentOCXOnDTMFDigit read FOnDTMFDigit write FOnDTMFDigit;
    property OnPlayWaveDone: TVaxSIPUserAgentOCXOnPlayWaveDone read FOnPlayWaveDone write FOnPlayWaveDone;
    property OnMsgNOTIFY: TVaxSIPUserAgentOCXOnMsgNOTIFY read FOnMsgNOTIFY write FOnMsgNOTIFY;
    property OnTryingToUnRegister: TNotifyEvent read FOnTryingToUnRegister write FOnTryingToUnRegister;
    property OnFailToUnRegister: TNotifyEvent read FOnFailToUnRegister write FOnFailToUnRegister;
    property OnSuccessToUnRegister: TNotifyEvent read FOnSuccessToUnRegister write FOnSuccessToUnRegister;
    property OnTryingToRegister: TNotifyEvent read FOnTryingToRegister write FOnTryingToRegister;
    property OnFailToRegister: TNotifyEvent read FOnFailToRegister write FOnFailToRegister;
    property OnSuccessToRegister: TNotifyEvent read FOnSuccessToRegister write FOnSuccessToRegister;
    property OnFailToConnect: TVaxSIPUserAgentOCXOnFailToConnect read FOnFailToConnect write FOnFailToConnect;
    property OnConnecting: TVaxSIPUserAgentOCXOnConnecting read FOnConnecting write FOnConnecting;
    property OnIncomingCallRingingStart: TVaxSIPUserAgentOCXOnIncomingCallRingingStart read FOnIncomingCallRingingStart write FOnIncomingCallRingingStart;
    property OnIncomingCallRingingStop: TVaxSIPUserAgentOCXOnIncomingCallRingingStop read FOnIncomingCallRingingStop write FOnIncomingCallRingingStop;
    property OnDisconnectCall: TVaxSIPUserAgentOCXOnDisconnectCall read FOnDisconnectCall write FOnDisconnectCall;
    property OnCallTransferAccepted: TVaxSIPUserAgentOCXOnCallTransferAccepted read FOnCallTransferAccepted write FOnCallTransferAccepted;
    property OnProvisionalResponse: TVaxSIPUserAgentOCXOnProvisionalResponse read FOnProvisionalResponse write FOnProvisionalResponse;
    property OnRedirectionResponse: TVaxSIPUserAgentOCXOnRedirectionResponse read FOnRedirectionResponse write FOnRedirectionResponse;
    property OnRequestFailureResponse: TVaxSIPUserAgentOCXOnRequestFailureResponse read FOnRequestFailureResponse write FOnRequestFailureResponse;
    property OnServerFailureResponse: TVaxSIPUserAgentOCXOnServerFailureResponse read FOnServerFailureResponse write FOnServerFailureResponse;
    property OnGeneralFailureResponse: TVaxSIPUserAgentOCXOnGeneralFailureResponse read FOnGeneralFailureResponse write FOnGeneralFailureResponse;
    property OnSuccessToConnect: TVaxSIPUserAgentOCXOnSuccessToConnect read FOnSuccessToConnect write FOnSuccessToConnect;
    property OnIncomingCall: TVaxSIPUserAgentOCXOnIncomingCall read FOnIncomingCall write FOnIncomingCall;
    property OnVoiceMailMsg: TVaxSIPUserAgentOCXOnVoiceMailMsg read FOnVoiceMailMsg write FOnVoiceMailMsg;
    property OnTryingToReRegister: TNotifyEvent read FOnTryingToReRegister write FOnTryingToReRegister;
    property OnFailToReRegister: TNotifyEvent read FOnFailToReRegister write FOnFailToReRegister;
    property OnSuccessToReRegister: TNotifyEvent read FOnSuccessToReRegister write FOnSuccessToReRegister;
  end;

procedure Register;

resourcestring
  dtlServerPage = 'ActiveX';

  dtlOcxPage = 'ActiveX';

implementation

uses ComObj;

procedure TVaxSIPUserAgentOCX.InitControlData;
const
  CEventDispIDs: array [0..27] of DWORD = (
    $00000001, $00000002, $00000003, $00000004, $00000005, $00000006,
    $00000007, $00000008, $00000009, $0000000A, $0000000B, $0000000C,
    $0000000D, $0000000E, $0000000F, $00000010, $00000011, $00000012,
    $00000013, $00000014, $00000015, $00000016, $00000017, $00000018,
    $00000019, $0000001A, $0000001B, $0000001C);
  CControlData: TControlData2 = (
    ClassID: '{2935849A-3F6A-4DF8-8395-CF9AB3BE1835}';
    EventIID: '{747FAA95-5D00-4EA1-9F1F-035D2A88FDA4}';
    EventCount: 28;
    EventDispIDs: @CEventDispIDs;
    LicenseKey: nil (*HR:$80004005*);
    Flags: $00000000;
    Version: 401);
begin
  ControlData := @CControlData;
  TControlData2(CControlData).FirstEventOfs := Cardinal(@@FOnIncomingDiagnostic) - Cardinal(Self);
end;

procedure TVaxSIPUserAgentOCX.CreateControl;

  procedure DoCreate;
  begin
    FIntf := IUnknown(OleObject) as _DVaxSIPUserAgentOCX;
  end;

begin
  if FIntf = nil then DoCreate;
end;

function TVaxSIPUserAgentOCX.GetControlInterface: _DVaxSIPUserAgentOCX;
begin
  CreateControl;
  Result := FIntf;
end;

procedure TVaxSIPUserAgentOCX.UnInitialize;
begin
  DefaultInterface.UnInitialize;
end;

function TVaxSIPUserAgentOCX.SetLicenceKey(const LicenceKey: WideString): WordBool;
begin
  Result := DefaultInterface.SetLicenceKey(LicenceKey);
end;

function TVaxSIPUserAgentOCX.GetVaxObjectError: Integer;
begin
  Result := DefaultInterface.GetVaxObjectError;
end;

function TVaxSIPUserAgentOCX.CloseLine(LineNo: Integer): WordBool;
begin
  Result := DefaultInterface.CloseLine(LineNo);
end;

function TVaxSIPUserAgentOCX.Connect(LineNo: Integer; const ToURI: WideString; 
                                     InputDeviceId: Integer; OutputDeviceId: Integer): WordBool;
begin
  Result := DefaultInterface.Connect(LineNo, ToURI, InputDeviceId, OutputDeviceId);
end;

function TVaxSIPUserAgentOCX.Disconnect(LineNo: Integer): WordBool;
begin
  Result := DefaultInterface.Disconnect(LineNo);
end;

function TVaxSIPUserAgentOCX.AcceptCall(LineNo: Integer; const CallId: WideString; 
                                        InputDeviceId: Integer; OutputDeviceId: Integer): WordBool;
begin
  Result := DefaultInterface.AcceptCall(LineNo, CallId, InputDeviceId, OutputDeviceId);
end;

function TVaxSIPUserAgentOCX.RejectCall(const CallId: WideString): WordBool;
begin
  Result := DefaultInterface.RejectCall(CallId);
end;

function TVaxSIPUserAgentOCX.TransferCall(LineNo: Integer; const ToURI: WideString): WordBool;
begin
  Result := DefaultInterface.TransferCall(LineNo, ToURI);
end;

function TVaxSIPUserAgentOCX.HoldLine(LineNo: Integer): WordBool;
begin
  Result := DefaultInterface.HoldLine(LineNo);
end;

function TVaxSIPUserAgentOCX.UnHoldLine(LineNo: Integer): WordBool;
begin
  Result := DefaultInterface.UnHoldLine(LineNo);
end;

function TVaxSIPUserAgentOCX.RegisterToProxy(Expire: Integer): WordBool;
begin
  Result := DefaultInterface.RegisterToProxy(Expire);
end;

function TVaxSIPUserAgentOCX.UnRegisterToProxy: WordBool;
begin
  Result := DefaultInterface.UnRegisterToProxy;
end;

function TVaxSIPUserAgentOCX.IsLineOpen(LineNo: Integer): WordBool;
begin
  Result := DefaultInterface.IsLineOpen(LineNo);
end;

function TVaxSIPUserAgentOCX.IsLineHold(LineNo: Integer): WordBool;
begin
  Result := DefaultInterface.IsLineHold(LineNo);
end;

function TVaxSIPUserAgentOCX.IsLineBusy(LineNo: Integer): WordBool;
begin
  Result := DefaultInterface.IsLineBusy(LineNo);
end;

function TVaxSIPUserAgentOCX.EnableKeepAlive(Seconds: Integer): WordBool;
begin
  Result := DefaultInterface.EnableKeepAlive(Seconds);
end;

procedure TVaxSIPUserAgentOCX.DisableKeepAlive;
begin
  DefaultInterface.DisableKeepAlive;
end;

procedure TVaxSIPUserAgentOCX.DeselectAllVoiceCodec;
begin

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -