Author |
|
hermes Junior
Joined: October 27 2006 Posts: 64
|
Posted: November 29 2006 at 9:02am | IP Logged
|
|
|
Hello,
I need to record phone calls. It´s easy with StartPhoneLineRecording and StopPhoneLineRecording but when I use StartPhoneLineRecording function I can´t decide the filename (only the directory). If this cannot be, can I know the random filename?
Thanks.
|
Back to Top |
|
|
support Administrator
Joined: January 26 2005 Location: United States Posts: 1666
|
Posted: November 29 2006 at 9:26am | IP Logged
|
|
|
Hi hermes,
In the Software Developer’s Reference, see the SipCallRecordActive event.
Here is the information you want:
When recording to a file:
When an application receives this event, the media engine event callback procedure SIPCALLBACKPROC will have a non zero value assigned for the pEventData parameter. This value is a pointer to the filename that will be used to record phone line audio data.
Support
|
Back to Top |
|
|
Pete Intermediate
Joined: December 05 2006 Posts: 12
|
Posted: February 06 2007 at 1:56pm | IP Logged
|
|
|
Hello,
I tried looking for the SipCallRecordActive event when running the SingleLinePhone example but I never see this event (or any other associated with recording to a file!). I am able to successfully record data to a .wav file so I know I have recording set up correctly.
To debug this, I added a few traces to the EventThreadCallback() routine in PhoneBase.cpp to print the TELEPHONY_RETURN_VALUE enumerated type index of all events. I never saw any of the SipCallRecordXXXX event numbers (152-159 I believe). Ideas?
Pete
|
Back to Top |
|
|
support Administrator
Joined: January 26 2005 Location: United States Posts: 1666
|
Posted: February 06 2007 at 3:35pm | IP Logged
|
|
|
Hi Pete,
There is an easy way to see the events you want to see – to prove they are generated.
1)
Go to the PhoneBase.cpp module. Somewhere around like 1260, you will see the following coded lines:
Code:
// enable this if you want "man readable" events to be sent to a
// log server. Useful while debugging and to become familiar with
// media engine event behavior.
StartupParams.EnableEventLogServer = FALSE;
StartupParams.pEventLogServer = "";
StartupParams.EventLogServerPort = 0;
|
|
|
Change it to the following:
Code:
// enable this if you want "man readable" events to be sent to a
// log server. Useful while debugging and to become familiar with
// media engine event behavior.
StartupParams.EnableEventLogServer = TRUE;
StartupParams.pEventLogServer = "192.168.1.100";
StartupParams.EventLogServerPort = 19000;
|
|
|
Where the IP address 192.168.1.100 represents the IP address of your test machine and 19000 is the server port we will use for the EventLogD server app you are going to use.
Rebuild the single line phone app now.
2)
Start an instance of the EventLogD.exe server. It will be in your “install utilities” directory. Open a “DOS box” and start an instance of EventLogD so it will use server port 19000. It’s a command line utility so it will be pretty simple to figure out how to start this utility.
3)
Start your single line phone app now. On the EventLogD server, you should see some startup events that were generated by the media engine.
4)
Go to the phone’s main config dialog: See Options->Configure from the main menu.
5)
Enable call recording by checking the “Enable Call Recording” check box. Also select a call record directory. Close the config dialog when you are done. The phone will restart.
6)
In the GUI of the single line phone, you should now be able to press he “Record” button to activate call recording.
7)
Make a call to another test phone. Call recording will kick in automatically when the call starts and will terminate when that call ends. A wave file should be created for the recorded call.
8)
Exit out of the single line phone.
9)
Go to the EventLogD command window and you will see events similar to the following:
Code:
GLOBAL_NOTIFICATION, SipCallEngineReady
GLOBAL_NOTIFICATION, SipRegisterTrying
IMMEDIATE_NOTIFICATION, SipModifySipMessage
IMMEDIATE_NOTIFICATION, SipModifySipMessage
IMMEDIATE_NOTIFICATION, SipModifySipMessage
IMMEDIATE_NOTIFICATION, SipIncomingAuthentication
IMMEDIATE_NOTIFICATION, SipEventNotifyReceived
IMMEDIATE_NOTIFICATION, SipModifySipMessage
GLOBAL_NOTIFICATION, SipRegisterSuccess
IMMEDIATE_NOTIFICATION, Phone Line 0, SipOutgoingCallInitializing
PHONE_LINE_NOTIFICATION, Phone Line 0: SipOutgoingCallStart
PHONE_LINE_NOTIFICATION, Phone Line 0: SipDialTone
PHONE_LINE_NOTIFICATION, Phone Line 0: SipDialing
PHONE_LINE_NOTIFICATION, Phone Line 0: SipSendInvite
IMMEDIATE_NOTIFICATION, SipModifySipMessage
IMMEDIATE_NOTIFICATION, SipModifySipMessage
PHONE_LINE_NOTIFICATION, Phone Line 0: SipStartOutgoingRing
IMMEDIATE_NOTIFICATION, SipModifySipMessage
PHONE_LINE_NOTIFICATION, Phone Line 0: SipIncomingCallStart
PHONE_LINE_NOTIFICATION, Phone Line 0: SipReceivedProvisionalResponse
PHONE_LINE_NOTIFICATION, Phone Line 0: SipReceived100Trying
PHONE_LINE_NOTIFICATION, Phone Line 0: SipWaitForInviteOk
IMMEDIATE_NOTIFICATION, Phone Line 0, SipIncomingCallInitialized
PHONE_LINE_NOTIFICATION, Phone Line 0: SipSendTrying
IMMEDIATE_NOTIFICATION, SipModifySipMessage
PHONE_LINE_NOTIFICATION, Phone Line 0: SipSendRinging
IMMEDIATE_NOTIFICATION, SipModifySipMessage
PHONE_LINE_NOTIFICATION, Phone Line 0: SipStartIncomingRing
IMMEDIATE_NOTIFICATION, SipModifySipMessage
PHONE_LINE_NOTIFICATION, Phone Line 0: SipReceived180Ringing
PHONE_LINE_NOTIFICATION, Phone Line 0: SipOkToAnswerCall
PHONE_LINE_NOTIFICATION, Phone Line 0: SipAnsweringCall
PHONE_LINE_NOTIFICATION, Phone Line 0: SipSend200Ok
IMMEDIATE_NOTIFICATION, SipModifySipMessage
IMMEDIATE_NOTIFICATION, SipModifySipMessage
PHONE_LINE_NOTIFICATION, Phone Line 0: SipInviteOkReceived
PHONE_LINE_NOTIFICATION, Phone Line 0: SipSendInviteAck
IMMEDIATE_NOTIFICATION, SipModifySipMessage
PHONE_LINE_NOTIFICATION, Phone Line 0: SipOutgoingCallConnected
IMMEDIATE_NOTIFICATION, SipModifySipMessage
PHONE_LINE_NOTIFICATION, Phone Line 0: SipInCall
PHONE_LINE_NOTIFICATION, Phone Line 0: SipReceivedInviteAck
PHONE_LINE_NOTIFICATION, Phone Line 0: SipIncomingCallConnected
IMMEDIATE_NOTIFICATION, Phone Line 0, SipCallRecordActive
PHONE_LINE_NOTIFICATION, Phone Line 0: SipInCall
PHONE_LINE_NOTIFICATION, Phone Line 0: SipSendBye
IMMEDIATE_NOTIFICATION, SipModifySipMessage
IMMEDIATE_NOTIFICATION, SipModifySipMessage
IMMEDIATE_NOTIFICATION, SipIncomingAuthentication
PHONE_LINE_NOTIFICATION, Phone Line 0: SipByeReceived
IMMEDIATE_NOTIFICATION, SipModifySipMessage
PHONE_LINE_NOTIFICATION, Phone Line 0: SipSendByeAck
PHONE_LINE_NOTIFICATION, Phone Line 0: SipCallComplete
PHONE_LINE_NOTIFICATION, Phone Line 0: SipOnHook
IMMEDIATE_NOTIFICATION, SipModifySipMessage
PHONE_LINE_NOTIFICATION, Phone Line 0: SipReceivedByeAck
PHONE_LINE_NOTIFICATION, Phone Line 0: SipCallComplete
IMMEDIATE_NOTIFICATION, Phone Line 0, SipCallRecordComplete
PHONE_LINE_NOTIFICATION, Phone Line 0: SipOnHook
GLOBAL_NOTIFICATION, SipRegisterTrying
IMMEDIATE_NOTIFICATION, SipModifySipMessage
IMMEDIATE_NOTIFICATION, SipModifySipMessage
IMMEDIATE_NOTIFICATION, SipModifySipMessage
IMMEDIATE_NOTIFICATION, SipIncomingAuthentication
IMMEDIATE_NOTIFICATION, SipEventNotifyReceived
IMMEDIATE_NOTIFICATION, SipModifySipMessage
GLOBAL_NOTIFICATION, SipRegisterSuccess
GLOBAL_NOTIFICATION, SipCallEngineTerminated
GLOBAL_NOTIFICATION, SipCallEngineReady
GLOBAL_NOTIFICATION, SipRegisterTrying
IMMEDIATE_NOTIFICATION, SipModifySipMessage
IMMEDIATE_NOTIFICATION, SipModifySipMessage
IMMEDIATE_NOTIFICATION, SipModifySipMessage
IMMEDIATE_NOTIFICATION, SipIncomingAuthentication
IMMEDIATE_NOTIFICATION, SipEventNotifyReceived
IMMEDIATE_NOTIFICATION, SipModifySipMessage
GLOBAL_NOTIFICATION, SipRegisterSuccess
|
|
|
You should see the SipCallRecordActive and the SipCallRecordComplete events being fired back to the app.
If all this did not help, repost as needed.
Support
|
Back to Top |
|
|
Pete Intermediate
Joined: December 05 2006 Posts: 12
|
Posted: February 07 2007 at 9:49am | IP Logged
|
|
|
Thanks folks. Works as advertized. Silly me - I was looking in the wrong place for the event! I totally missed the "Immediate Notification" branch since I thought the SipCallRecordActive event would be a "Phone Line Notification" type. It's nice to know how to use the event log server now though... :-)
|
Back to Top |
|
|
|
|