bbbird1
7th July 2009, 04:05 PM
Hi all,
I'd like to try the option LINECALLPARAMFLAGS_NOHOLDCONFERENCE to establish a no-hold conference call.
When I do a standard conference call, everything works fine, but when I add the LINECALLPARAMFLAGS_NOHOLDCONFERENCE flag lineSetupConference() returns: LINEERR_INVALCALLPARAMS, this is my code:
ZeroMemory(plineParams, sizeof(pLineBuf)); // Points to a buffer big sizeof(LINECALLPARAMS) + 300
plineParams->dwTotalSize = sizeof(pLineBuf);
plineParams->dwTargetAddressSize = wcslen(L"+xxxxxx") * sizeof(WCHAR); // My number
plineParams->dwTargetAddressOffset = sizeof(LINECALLPARAMS);
plineParams->dwCallParamFlags = LINECALLPARAMFLAGS_NOHOLDCONFERENCE;
CopyMemory(((PBYTE)plineParams + sizeof(LINECALLPARAMS)), L"+xxxxxx", plineParams->dwTargetAddressSize);
dwMessageId = lineSetupConference(hCall, NULL, &hConfCall, &hConsultCall, 3, (const LPLINECALLPARAMS)plineParams);
dwMessageId is always equal to LINEERR_INVALCALLPARAMS. Anyway if I just remove the LINECALLPARAMFLAGS_NOHOLDCONFERENCE flag, everythings works fine. Of course I've negotiated a mininum TAPI version of 0x00020000 that should be enough to get support for this call (I've altso tried using a CHAR string instead of a WCHAR, a number with "00" instead of "+"... with no luck). Can you help me? :(
Thanx so much.
I'd like to try the option LINECALLPARAMFLAGS_NOHOLDCONFERENCE to establish a no-hold conference call.
When I do a standard conference call, everything works fine, but when I add the LINECALLPARAMFLAGS_NOHOLDCONFERENCE flag lineSetupConference() returns: LINEERR_INVALCALLPARAMS, this is my code:
ZeroMemory(plineParams, sizeof(pLineBuf)); // Points to a buffer big sizeof(LINECALLPARAMS) + 300
plineParams->dwTotalSize = sizeof(pLineBuf);
plineParams->dwTargetAddressSize = wcslen(L"+xxxxxx") * sizeof(WCHAR); // My number
plineParams->dwTargetAddressOffset = sizeof(LINECALLPARAMS);
plineParams->dwCallParamFlags = LINECALLPARAMFLAGS_NOHOLDCONFERENCE;
CopyMemory(((PBYTE)plineParams + sizeof(LINECALLPARAMS)), L"+xxxxxx", plineParams->dwTargetAddressSize);
dwMessageId = lineSetupConference(hCall, NULL, &hConfCall, &hConsultCall, 3, (const LPLINECALLPARAMS)plineParams);
dwMessageId is always equal to LINEERR_INVALCALLPARAMS. Anyway if I just remove the LINECALLPARAMFLAGS_NOHOLDCONFERENCE flag, everythings works fine. Of course I've negotiated a mininum TAPI version of 0x00020000 that should be enough to get support for this call (I've altso tried using a CHAR string instead of a WCHAR, a number with "00" instead of "+"... with no luck). Can you help me? :(
Thanx so much.