cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Announcements
Walkthrough Wednesdays

LINE_DEVSPECIFIC with hCall

297
Views
0
Helpful
0
Comments
This document was generated from CDN thread

Created by: Virinchi Garimella on 10-03-2009 05:08:33 AM
Hi,
 
I am trying to monitor LINE_DEVSPECIFIC events with respective hCall, for that I am calling
lineDevSpecific(hLine,0,hCall,CiscoSetStatusMsgs.lpParams(),CiscoSetStatusMsgs.dwSize());
after receiving LINECALLSTATE_CONNECTED event. but the LINE_DEVSPECIFIC is gibing hLine instead of hCall.
 
What steps should I follow to receive hCall in LINE_DEVSPECIFIC event.
 
Thanks in advance

Subject: RE: LINE_DEVSPECIFIC with hCall
Replied by: David Staudt on 10-03-2009 12:33:46 PM
Can you elaborate more on what you are trying to accomplish and the exact nature of the problem?  What specific parameter values are you passing in and what are you expecting to happen?

Subject: RE: LINE_DEVSPECIFIC with hCall
Replied by: Virinchi Garimella on 11-03-2009 09:52:33 AM
Hi David,
 
I am follwing the below steps make tapi receiLINE_DEVSPECIFIC events.
 
lineInitializeEx(&hLineApp, NULL, lineCallbackFunc, szAppName, &dwNumDevs, &dwTAPIVersion,&hEvent)
 
for (index = 0;index < dwNumDevs;index++)
{
LineNegotiateAPIVersion()
LineNegotiateEXTVersion()
CCiscoLineDevSpecificSetStatusMsgs CiscoSetStatusMsgs;                
 CiscoSetStatusMsgs.m_DevSpecificStatusMsgsFlag = CALL_DEVSPECIFIC_RTP_EVENTS;
 lineDevSpecific(hLine,0,0,CiscoSetStatusMsgs.lpParams(),CiscoSetStatusMsgs.dwSize());
lineOpen()
}
for the above code sample I am calling lineDevspecific() with no hCall param.
so TAPI is receving LINE_DEVSPECIFIC in lpMessage with hDevice for hLine.
I can use hLine to find for which extension the event has come.(By this  i cannot know for which call and what is the call_id of that call)
 
But what i want to know is for which call the event has received.
for this I am calling lineDevspecific() after receiving LINECALLSATTE_CONNECTED.
case LINECALLSTATE_CONNECTED:
{
hCall = (HCALL) lpMessage->hDevice;
lineDevspecific(hLine,0,hCall,CiscoSetStatusMsgs.lpParams(),CiscoSetStatusMsgs.dwSize());
}
here I am passing the hCall in lineDevspecific so that i can receive hCall in lpMessage for LINE_DEVSPECIFIC event.
Event then I am not able to get hCall in hDevice of lpMessage structure returned by lineGetMessage(). Instead I am finding hLine in Hdevice.
 
Could you please now tell me what I should do to get hCall in LineDevspecific Events.
 
Thanks,
 
 
 
 
 

Subject: RE: LINE_DEVSPECIFIC with hCall
Replied by: David Staudt on 11-03-2009 01:31:30 PM
Setting status messages step should only need to be done once per line, typically when the line is opened.
 
The contents of the RTP Start/Stop events is different depending on the Ext version negotiated for the line.  For your needs, I believe you will need to negotiate 0x00040000:
 
-------------------------
*  hCall ¿ The call of the Start Transmission event
*  dwParam1:from highest order bit to lowest
      ¿ First two bits blank
      ¿ Precedence value 3 bits
      ¿ Maximum frames per packet 8 bits
      ¿ G723 bit rate 2 bits
      ¿ Silence suppression value 1 bit
       ¿ Compression type 8 bits
       ¿ Message type 8 bits
*   dwParam2 contains the IP address of the remote machine
*  dwParam3 contains the network byte order IP port of the remote machine to which the RTP stream should be directed in the high-order word and the packet size in milliseconds in the low-order word.
Content for Community-Ad