class OpalIxJDevice |
This class describes the xJack line interface device
![]() | OpalIxJDevice () Create a new, closed, device for a xJack card |
![]() | ~OpalIxJDevice () Destroy line interface device. |
![]() | Open ( const PString & device ) Open the xJack device. |
![]() | Close () Close the xJack device |
![]() | GetName () const Get the device name |
![]() | GetLineCount () Get the total number of lines supported by this device |
![]() | IsLineTerminal ( unsigned line ) Get the type of the line. |
![]() | IsLinePresent ( unsigned line, BOOL force = FALSE ) Determine if a physical line is present on the logical line. |
![]() | IsLineOffHook ( unsigned line ) Determine if line is currently off hook. |
![]() | SetLineOffHook ( unsigned line, BOOL newState = TRUE ) Set the state of the line. |
![]() | IsLineRinging ( unsigned line, DWORD* cadence = NULL ) Determine if line is ringing. |
![]() | RingLine ( unsigned line, DWORD cadence ) Begin ringing local phone set with specified cadence. |
![]() | RingLine ( unsigned line, PINDEX nCadence, unsigned* pattern ) Begin ringing local phone set with specified cadence. |
![]() | IsLineDisconnected ( unsigned line, BOOL checkForWink = TRUE ) Determine if line has been disconnected from a call. |
![]() | SetLineToLineDirect ( unsigned line1, unsigned line2, BOOL connect ) Directly connect the two lines. |
![]() | IsLineToLineDirect ( unsigned line1, unsigned line2 ) Determine if the two lines are directly connected. |
![]() | GetMediaFormats () const Get the media formats this device is capable of using |
![]() | SetReadFormat ( unsigned line, const OpalMediaFormat & mediaFormat ) Set the xJack codec for reading. |
![]() | SetWriteFormat ( unsigned line, const OpalMediaFormat & mediaFormat ) Set the xJack codec for writing. |
![]() | GetReadFormat ( unsigned line ) Get the media format (codec) for reading on the specified line. |
![]() | GetWriteFormat ( unsigned line ) Get the media format (codec) for writing on the specified line. |
![]() | SetRawCodec ( unsigned line ) Set the line codec for reading/writing raw PCM data. |
![]() | StopRawCodec ( unsigned line ) Stop the raw PCM mode codec. |
![]() | StopReadCodec ( unsigned line ) Stop the read codec. |
![]() | StopWriteCodec ( unsigned line ) Stop the write codec. |
![]() | GetReadFrameSize ( unsigned line ) Get the read frame size in bytes. |
![]() | GetWriteFrameSize ( unsigned line ) Get the write frame size in bytes. |
![]() | ReadFrame ( unsigned line, void* buf, PINDEX & count ) Low level read of a frame from the device. |
![]() | WriteFrame ( unsigned line, const void* buf, PINDEX count, PINDEX & written ) Low level write frame to the device. |
![]() | GetAverageSignalLevel ( unsigned line, BOOL playback ) Get average signal level in last frame. |
![]() | EnableAudio ( unsigned line, BOOL enable = TRUE ) Enable audio for the line. |
![]() | IsAudioEnabled ( unsigned line ) Determine if audio for the line is enabled. |
![]() | SetRecordVolume ( unsigned line, unsigned volume ) Set volume level for recording. |
![]() | SetPlayVolume ( unsigned line, unsigned volume ) Set volume level for playing. |
![]() | GetRecordVolume ( unsigned line, unsigned & volume ) Get volume level for recording. |
![]() | GetPlayVolume ( unsigned line, unsigned & volume ) Set volume level for playing. |
![]() | GetAEC ( unsigned line ) Get acoustic echo cancellation. |
![]() | SetAEC ( unsigned line, AECLevels level ) Set acoustic echo cancellation. |
![]() | GetWinkDuration ( unsigned line ) Get wink detect minimum duration. |
![]() | SetWinkDuration ( unsigned line, unsigned winkDuration ) Set wink detect minimum duration. |
![]() | GetVAD ( unsigned line ) Get voice activity detection. |
![]() | SetVAD ( unsigned line, BOOL enable ) Set voice activity detection. |
![]() | GetCallerID ( unsigned line, PString & idString, BOOL full = FALSE ) Get Caller ID from the last incoming ring. |
![]() | SetCallerID ( unsigned line, const PString & idString ) Set Caller ID for use in next RingLine() call. |
![]() | SendCallerIDOnCallWaiting ( unsigned line, const PString & idString ) Send Caller ID during call |
![]() | SendVisualMessageWaitingIndicator ( unsigned line, BOOL on ) Send a Visual Message Waiting Indicator |
![]() | PlayDTMF ( unsigned line, const char* digits, DWORD onTime = DefaultDTMFOnTime, DWORD offTime = DefaultDTMFOffTime ) Play a DTMF digit. |
![]() | ReadDTMF ( unsigned line ) Read a DTMF digit detected. |
![]() | GetRemoveDTMF ( unsigned line ) Get DTMF removal mode. |
![]() | SetRemoveDTMF ( unsigned line, BOOL removeTones ) Set DTMF removal mode. |
![]() | IsToneDetected ( unsigned line ) See if a tone is detected. |
![]() | SetToneFilterParameters ( unsigned line, CallProgressTones tone, unsigned lowFrequency, unsigned highFrequency, PINDEX numCadences, const unsigned* onTimes, const unsigned* offTimes ) Set a tones filter parameters. |
![]() | PlayTone ( unsigned line, CallProgressTones tone ) Play a tone. |
![]() | IsTonePlaying ( unsigned line ) Determine if a tone is still playing |
![]() | StopTone ( unsigned line ) Stop playing a tone. |
![]() | HasHookFlash (unsigned line) Return TRUE if a hook flash has been detected |
![]() | SetCountryCode ( T35CountryCodes country ) Set the country code set for the device. |
![]() | GetSerialNumber () Get the serial number for the xJACK card |
![]() | GetCardType () const Get the serial number for the xJACK card |
![]() | GetDeviceNames () Get all the xJack devices |
This class describes the xJack line interface device
Note that not be possible on a given line, for example on a PSTN line the ring state is determined by external hardware and cannot be changed by the software.
Also note that the cadence may be ignored by particular hardware driver so that only the zero or non-zero values are significant.
The ring pattern is an array of millisecond times for on and off parts of the cadence. Thus the Australian ring cadence would be represented by the array unsigned AusRing[] = { 400, 200, 400, 2000 }
The default behaviour simply does a SetReadCodec and SetWriteCodec for PCM data.
The full data of the caller ID string consists of the number field, the time/date and the name field separated by tabs ('\t').
If the date field is missing (two consecutive tabs) then the current time and date is used. Using an empty string will clear the caller ID so that no caller ID is sent on the next RingLine() call.
The times are in centi-seconds. Thus, to have a 1 second delay, 100 is required.
Alphabetic index HTML hierarchy of classes or Java