
Description | Termination Events | Cautions | Example | Errors | See Also
Name: |
int cl_PeekCalling(hDevice, idTransaction, pszCalling, iCallingSize) | |
Inputs: |
long hDevice |
|
long idTransaction |
| |
char* pszCalling |
| |
int iCallingSize |
| |
Returns: |
0 on success -2 if call logging transaction already released | |
Includes: |
cllib.h | |
Mode: |
synchronous | |
The cl_PeekCalling( ) function gets the calling party number as it was observed at the time the function was called. The cl_PeekCalling( ) function returns the value of the semantics-defined CALLING variable.
Parameter |
Description |
hDevice: |
The device handle of the call logging device. |
idTransaction: |
The call logging transaction ID. |
pszCalling: |
The pointer to the buffer into which the calling party number is returned. The calling party number is returned as an ASCIIZ string. If the calling party number is not available, the function returns with an empty string. |
iCallingSize: |
The size of the buffer into which the calling party number is returned, where maximum size includes the terminating NUL of the returned ASCIIZ string. |
None
The Call Logging API is not multi-thread safe. Call logging functions must be called within the same thread.
#include <srllib.h>
#include <cllib.h>
#include <stdio.h>
/* The Call Logging Device Handle */
extern long g_hDevice;
void PeekCalling(long idTransaction)
{
int iRet;
char szCalling[32];
if (g_hDevice != EV_ANYDEV)
{
iRet = cl_PeekCalling(g_hDevice, idTransaction, szCalling, sizeof(szCalling));
if (iRet != 0)
{
if (iRet == -2)
{
printf("PeekCalling - Transaction already released\n");
}
else
{
printf("PeekCalling - cl_PeekCalling() failed\n");
}
return;
}
printf("Calling party number is: \"%s\"\n", szCalling);
}
}
If the function returns a value < 0, use the SRL Standard Attribute function ATDV_LASTERR( ) to obtain the error code or use ATDV_ERRMSGP( ) to obtain a descriptive error message. The error codes that can be returned by ATDV_LASTERR( ) are:
Error Code Value |
Returned When |
ECL_NULLPARAMETER |
invalid NULL parameter |
ECL_TRANSACTIONRELEASED |
transaction already released |
ECL_NOMEM |
out of memory |
ECL_INTERNAL |
internal Call Logging error; cause unknown |
See 2.2 Error Handling for more information about what kinds of errors can cause these codes to be returned
Click here to contact Dialogic Customer Engineering
Copyright 2001, Dialogic Corporation