#include <exception>
#include <string>
#include <vector>
#include <stdint.h>
#include <vt_deprecated.h>


Classes | |
| struct | VPB_CARD_INFO |
Container type for data returned by vpb_get_card_info(). More... | |
| struct | VPB_EVENT |
| Container for VPB event data. More... | |
| struct | VPB_PLAY |
| Port playback parameters. More... | |
| struct | VPB_RECORD |
| Port recording parameters. More... | |
| class | VpbException |
| VPB api runtime exception type. More... | |
| struct | VPB_TONE_MAP |
| struct | VPB_CALL |
| struct | VPB_TONE |
| Tone definition structure. More... | |
| struct | VPB_STRAN |
Cadence state transition data for VPB_DETECT. More... | |
| struct | VPB_DETECT |
| Container for programmable tone detector parameters. More... | |
| struct | Country |
| Container type for country specific data. More... | |
| struct | VPB_VOX |
| struct | VPB_VLOG |
| Additional data that may be included in a wav file. More... | |
| struct | VPB_DIGITS |
| Digit collection parameters. More... | |
| struct | VPB_CID |
| Container type for caller id data. More... | |
| struct | VPB_CID_JP |
| struct | VPB_CALL_INFO |
Defines | |
| #define | WINAPI |
| #define | VPB_OK 0 |
| #define | VPB_NO_EVENTS -1 |
| #define | VPB_TIME_OUT -2 |
| #define | VPB_MAX_STR 256 |
| #define | VPB_RING_STATION_ON -1 |
| Ring station port with default cadence. | |
| #define | VPB_RING_STATION_OFF 0 |
| Stop station port ringing. | |
| #define | VPB_CONF_JOIN 1 |
| #define | VPB_CONF_LEAVE 0 |
| #define | VPB_FINISH 1 |
return code for vpb_play_buf_sync() and vpb_record_buf_sync(). | |
| #define | VPB_RECORD_DIGIT 1 |
| #define | VPB_RECORD_TIMEOUT 2 |
| #define | VPB_RECORD_ENDOFDATA 3 |
| #define | VPB_RECORD_MAXDIGIT 4 |
| #define | VPB_CALL_DISCONNECT 0 |
| #define | VPB_CALL_DIALTONE 1 |
| #define | VPB_CALL_RINGBACK 2 |
| #define | VPB_CALL_BUSY 3 |
| #define | VPB_CALL_GRUNT 4 |
| #define | VPB_MAX_TONE_MAP 10 |
| #define | VPB_CALL_CONNECTED 0 |
| #define | VPB_CALL_NO_DIAL_TONE 1 |
| #define | VPB_CALL_NO_RING_BACK 2 |
| #define | VPB_CALL_NO_ANSWER 4 |
| #define | VPB_CALL_DISCONNECTED 5 |
| #define | VPB_VLOG_CHUNK 0x4000 |
May be added to the Wave file mode to include a VPB_VLOG chunk when recording. | |
| #define | VPB_CID_MAX_BUF 20400 |
| Maximum size of CID wav data. | |
| #define | VPB_CID_MAX_DLP 256 |
| Maximum size of CID dlp data. | |
| #define | VPB_DID_OTN 2 |
| #define | VPB_DID_OTNRA 4 |
| #define | VPB_DID_OTNEXP 0x21 |
| #define | VPB_DID_CND 9 |
| #define | VPB_DID_CNDEXP 0x22 |
Event mask values | |
| #define | VPB_MRING (1<<VPB_RING) |
| #define | VPB_MDIGIT (1<<VPB_DIGIT) |
| #define | VPB_MDTMF (1<<VPB_DTMF) |
| #define | VPB_MTONEDETECT (1<<VPB_TONEDETECT) |
| #define | VPB_MTIMEREXP (1<<VPB_TIMEREXP) |
| #define | VPB_MVOXON (1<<VPB_VOXON) |
| #define | VPB_MVOXOFF (1<<VPB_VOXOFF) |
| #define | VPB_MSTATION_OFFHOOK (1<<VPB_STATION_OFFHOOK) |
| #define | VPB_MSTATION_ONHOOK (1<<VPB_STATION_ONHOOK) |
| #define | VPB_MRING_OFF (1<<VPB_RING_OFF) |
| #define | VPB_MDROP (1<<VPB_DROP) |
| #define | VPB_MSTATION_FLASH (1<<VPB_STATION_FLASH) |
| #define | VPB_MLOOP_OFFHOOK (1<<VPB_LOOP_OFFHOOK) |
| #define | VPB_MLOOP_ONHOOK (1<<VPB_LOOP_ONHOOK) |
| #define | VPB_MLOOP_POLARITY (1<<VPB_LOOP_POLARITY) |
| #define | VPB_MDTMF_DOWN (1<<VPB_DTMF_DOWN) |
| #define | VPB_MALL_EVENTS ((unsigned long)-1) |
General limits | |
| #define | VPB_MD 10 |
| The maximum number of tone detectors per device. | |
| #define | VPB_MS 10 |
| The maximum number of cadence states to match. | |
Built in tone dectector ID's | |
| #define | VPB_DIAL 0 |
| dial tone detected (US/Aust/sudio308) | |
| #define | VPB_RINGBACK 1 |
| ringback detected (US) | |
| #define | VPB_BUSY 2 |
| busy tone detected (US) | |
| #define | VPB_GRUNT 3 |
| grunt detected | |
| #define | VPB_RINGBACK_308 4 |
| ringback detected (studio 308) | |
| #define | VPB_BUSY_308 5 |
| busy tone detected (studio 308) | |
| #define | VPB_FAX 6 |
| fax CNG tone/preamble | |
| #define | VPB_BUSY_AUST 7 |
| busy/disconnect tone detected (Australia) | |
| #define | VPB_RINGBACK_AUS 8 |
| ringback detected (Australia) | |
| #define | VPB_SPARE9 9 |
| Spare. | |
Tone masks | |
| #define | VPB_MDIAL (1<<VPB_DIAL) |
| #define | VPB_MRINGBACK (1<<VPB_RINGBACK) |
| #define | VPB_MBUSY (1<<VPB_BUSY) |
| #define | VPB_MGRUNT (1<<VPB_GRUNT) |
| #define | VPB_MRINGBACK_308 (1<<VPB_RINGBACK_308) |
| #define | VPB_MBUSY_308 (1<<VPB_BUSY_308) |
| #define | VPB_MFAX (1<<VPB_FAX) |
| #define | VPB_MBUSY_AUST (1<<VPB_BUSY_AUST) |
| #define | VPB_MRINGBACK_AUS (1<<VPB_RINGBACK_AUS) |
| #define | VPB_MSPARE9 (1<<VPB_SPARE9) |
| #define | VPB_MALL_TONES ((unsigned long)-1) |
Typedefs | |
| typedef int | VPBPortHandle |
| Symbolic type for a handle to an open port on some card. | |
| typedef int | VPBOpenMode |
Symbolic type for vpb_open() mode flags. | |
| typedef void(WINAPI * | vpb_event_callback )(VPB_EVENT *e, void *context) |
The callback function type for vpb_set_event_callback(). | |
Enumerations | |
| enum | VPB_MODEL { VPB_V4PCI = 2, VPB_V4LOG = 3, VPB_PRI = 6, VPB_OPCI = 7, VPB_OSW = 8, VPB_MODEL_UNKNOWN = -1 } |
| VPB card model types. More... | |
| enum | VPB_PORT { VPB_PORT_UNKNOWN = 0, VPB_FXO = 1, VPB_FXS = 2 } |
| Analogue port types. More... | |
| enum | HookState { VPB_ONHOOK = 0, VPB_OFFHOOK = 1, VPB_FASTOFFHOOK = 2 } |
| Symbolic hook states. More... | |
| enum | BridgeMode { VPB_BRIDGE_OFF = 0, VPB_BRIDGE_ON = 1 } |
| Port bridging control flags. More... | |
| enum | VPB_EVT_TYPE { VPB_EVT_NONE = -1, VPB_RING = 0, VPB_DIGIT = 1, VPB_TONEDETECT = 2, VPB_TIMEREXP = 3, VPB_VOXON = 4, VPB_VOXOFF = 5, VPB_DTMF = 8, VPB_STATION_OFFHOOK = 9, VPB_STATION_ONHOOK = 10, VPB_RING_OFF = 11, VPB_DROP = 12, VPB_STATION_FLASH = 13, VPB_LOOP_OFFHOOK = 14, VPB_LOOP_ONHOOK = 15, VPB_LOOP_POLARITY = 16, VPB_DTMF_DOWN = 17, VPB_PLAYEND = 100, VPB_RECORDEND = 101, VPB_DIALEND = 102, VPB_TONE_DEBUG_END = 103, VPB_CALLEND = 104, VPB_ISDN_ANS = 110, VPB_ISDN_BUSY = 111, VPB_ISDN_CINFO = 112, VPB_ISDN_CALL_FAIL = 113, VPB_ISDN_ANS_FAIL = 114, VPB_ISDN_PROCEEDING = 115, VPB_ISDN_RINGING = 116, VPB_USER_EVT = 255 } |
VPB_EVENT type values More... | |
| enum | AudioCompress { VPB_LINEAR, VPB_ALAW, VPB_MULAW, VPB_OKIADPCM, VPB_OKIADPCM24, VPB_RAW } |
| Audio compression modes. More... | |
| enum | AudioState { VPB_AUDIO_IDLE, VPB_AUDIO_PLAYING, VPB_AUDIO_RECORDING, VPB_AUDIO_TERMINATE, VPB_AUDIO_TERMINATE_SYNC } |
| play/record state flags More... | |
| enum | VPB_TONE_ID { VPB_TONE_DIAL, VPB_TONE_RINGING, VPB_TONE_BUSY, VPB_TONE_CONGESTION, VPB_TONE_UNOBTAINABLE, VPB_TONE_CALLWAITING, VPB_TONE_STUTTERDIAL, VPB_TONE_ID_MAX } |
| Symbolic identifiers for predefined, localised tones. More... | |
| enum | ToneStateTransition { VPB_TIMER = 0, VPB_RISING = 1, VPB_FALLING = 2, VPB_DELAY = 3 } |
| Tone detector state transition types. | |
| enum | CollectEndReason { VPB_DIGIT_TERM = 0, VPB_DIGIT_MAX = 1, VPB_DIGIT_TIME_OUT = 2, VPB_DIGIT_INTER_DIGIT_TIME_OUT = 3 } |
The termination reason passed in the VPB_EVENT::data field of a VPB_DIGIT event. More... | |
| enum | CidCallType { VPB_CID_CT_UNKNOWN = 0x00, VPB_CID_CT_VOICE = 0x01, VPB_CID_CT_RBWF = 0x02, VPB_CID_CT_MW = 0x81 } |
| Symbolic CID call types. More... | |
| enum | CidDataType { VPB_CID_EMPTY = 0, VPB_CID_DATE_TIME = 1, VPB_CID_CALLING_LINE_DN = 2, VPB_CID_CALLED_DN = 3, VPB_CID_RFA_CLDN = 4, VPB_CID_CALLER_NAME = 7, VPB_CID_RFA_CN = 8, VPB_CID_CALL_TYPE = 0x11, VPB_CID_NMSS = 0x13 } |
| Field type identifiers for CID data. More... | |
Functions | |
| void WINAPI | vpb_set_global_apiq_size (int size) |
Set the maximum number of events the global APIQ may hold. | |
| void WINAPI | vpb_set_channel_apiq_size (int size) |
Set the maximum number of events per-channel APIQ's may hold. | |
| VPBPortHandle WINAPI | vpb_open (unsigned int board, unsigned int port, VPBOpenMode flags=VPB_OPEN_DEFAULTS) |
| Open a port on some board for use. | |
| void WINAPI | vpb_reset (VPBPortHandle handle=VPB_PORTHANDLE_NULL) |
| Reset a port back to its idle state (on-hook, not ringing etc.). | |
| int WINAPI | vpb_close (VPBPortHandle handle=VPB_PORTHANDLE_NULL) |
Close a previously opened port using the handle returned by vpb_open(). | |
| const char *WINAPI | vpb_get_driver_version () |
| Return the driver version as a string. | |
| void WINAPI | vpb_get_driver_version (int *major, int *minor, int *patchlevel) |
| Return the driver version as major, minor, and patchlevel components. | |
| int WINAPI | vpb_get_num_cards () |
| Return the number of cards in the system. | |
| int WINAPI | vpb_get_ports_per_card (int board) |
| Return the number of ports on board. | |