TApdTapiDevice
has an OnTapiCallerID
event you can hook onto to get the CallerID
string and CallerIDName
.
It also provides a CopyCallInfo
method which provides an ITCallInfo
interface (see : MSDN ITCallInfo). This exposes a method get_CallInfo
(MSDN : get_CallInfo) which can retrieve information strings enumerated by the CALLINFO_STRING
enum (MSDN : CALLINFO_STRING).
The TApdVoIP
component also provides a CallInfo
property which contains an extended record of information about a call.
TApdVoIPCallInfo = record
InfoAvailable : Boolean; { True if we get the info, False if the }
{ ITCallInfo interface isn't available }
{ string type fields }
CallerIDName, { the name of the caller }
CallerIDNumber, { the number of the caller }
CalledIDName, { the name of the called location }
CalledIDNumber, { the number of the called location }
ConnectedIDName, { the name of the connected location }
ConnectedIDNumber, { the number of the connected location }
CalledPartyFriendlyName, { the called party friendly name }
Comment, { a comment about the call provided by the originator }
DisplayableAddress, { a displayable version of the called or calling address }
CallingPartyID : string; { the identifier of the calling party }
{ DWORD types }
MediaTypesAvailable, { the media types available on the call (TAPIMEDIATYPE_*) }
CallerIDAddressType, { the address types (LINEADDRESSTYPE_*) }
CalledIDAddressType,
ConnectedIDAddressType,
Origin, { the origin of the call (LINECALLORIGIN_*) }
Reason, { the reason for the call (LINECALLREASON_*) }
MinRate, { the minimun data rate in bps }
MaxRate, { the maximum data rate in bps }
Rate : DWORD; { the current rate of the call in bps }
end;
If you're doing serious development with AsyncPro, it is well worth it to keep a copy of the reference manual handy.