// CDBCOLS.H
//
// Copyright (c) 1997-1999 Symbian Ltd.  All rights reserved.
//

// Comms Database Header File - table and column names

#ifndef __CDBCOLS_H__
#define __CDBCOLS_H__

#include <e32def.h>

// Database table names

#define DIAL_OUT_SERVICE								_S("DialOutService")
#define DIAL_IN_SERVICE									_S("DialInService")
#define MODEM_CONFIG									_S("ModemConfig")
#define CONNECTED_MODEM									_S("ConnectedModem")
#define MODEM_PREFS										_S("ModemPrefs")
#define LOCATION										_S("Location")
#define CHARGECARD										_S("Chargecard")
//
#define ASK_USER_BEFORE_DIAL							_S("AskUserBeforeDial")				// just has a default

// Id and Name columns

#define COMMDB_ID										_S("Id")							// Id of the row
#define COMMDB_NAME										_S("Name")							// Name of the row

// Columns common to ISP and Modem Config tables

#define	COMMDB_DATA_BITS								_S("DataBits")						// Data Bits to use for ISP or Modem
#define	COMMDB_STOP_BITS								_S("StopBits")						// Stop Bits to use for ISP or Modem
#define	COMMDB_PARITY									_S("Parity")						// Parity Type to use for ISP or Modem

// Columns  for dial out and dial in service (ISP) tables

#define ISP_DIAL_RESOLUTION								_S("DialResolution")				// Perform Dialing Resolution for default phone number?
#define ISP_SUGGEST_MODEM								_S("SuggestModem")					// Suggest the Modem in ModemId
#define ISP_MODEM_ID									_S("ModemId")						// Default modem to be suggested if SuggestModem is set
#define ISP_DEFAULT_TEL_NUM								_S("DefaultTelNum")					// The default telephone number to be used if the location does not match those below
#define ISP_ALT_LOC1									_S("AltLoc1")						// ID of first overide location
#define ISP_ALT_TEL_NUM1								_S("AltTelNum1")					// Overide number to use if location matches AltLoc1
#define ISP_DIAL_RES_ALT_LOC1							_S("DialResAltLoc1")				// Perform Dialing Resolution for AltLoc1 phone number?
#define ISP_ALT_LOC2									_S("AltLoc2")						// ID of second overide location
#define ISP_ALT_TEL_NUM2								_S("AltTelNum2")					// Overide number to use if location matches AltLoc2
#define ISP_DIAL_RES_ALT_LOC2							_S("DialResAltLoc2")				// Perform Dialing Resolution for AltLoc2 phone number?
#define ISP_PROMPT_FOR_LOGIN							_S("PromptForLogin")				// Prompt user for username and password?
#define ISP_USE_LOGIN_SCRIPT							_S("UseLoginScript")				// Use login script?
#define ISP_LOGIN_SCRIPT								_S("LoginScript")					// Login Script
#define ISP_LOGIN_NAME									_S("LoginName")						// Login name
#define ISP_LOGIN_PASS									_S("LoginPass")						// Login password
#define ISP_DISPLAY_PCT									_S("DisplayPCT")					// Display PCT (do not scan script for READ)?
//				
#define ISP_IF_NAME										_S("IfName")						// Interface name, e.g. "PPP" or "SLIP"
#define ISP_IF_PARAMS									_S("IfParams")						// Interface parameter string
#define ISP_IF_NETWORKS									_S("IfNetworks")					// Comma separated list of network protocols, e.g. "PPP"
#define ISP_IF_PROMPT_FOR_AUTH							_S("IfPromptForAuth")				// Prompt user for authentication name and password?
#define ISP_IF_AUTH_NAME								_S("IfAuthName")					// Authentication username used by PPP
#define ISP_IF_AUTH_PASS								_S("IfAuthPass")					// Authentication password used by PPP
#define ISP_IF_CALLBACK_ENABLED							_S("IfCallbackEnabled")				// Callback enabled?
#define ISP_IF_CALLBACK_TYPE							_S("IfCallbackType")				// Type of callback if enabled
#define ISP_IF_CALLBACK_INFO							_S("IfCallbackInfo")				// Info for callback request if enabled
//				
#define ISP_IP_ADDR_FROM_SERVER							_S("IpAddrFromServer")				// Get IP address from server?
#define ISP_IP_ADDR										_S("IpAddr")						// IP Address of Interface
#define ISP_IP_NETMASK									_S("IpNetMask")						// IP Netmask of Interface
#define ISP_IP_GATEWAY									_S("IpGateway")						// IP Address of Gateway
#define ISP_IP_DNS_ADDR_FROM_SERVER						_S("IpDNSAddrFromServer")			// Get DNS addresses from server?
#define ISP_IP_NAME_SERVER1								_S("IpNameServer1")					// IP Address of primary name server reachable through this interface
#define ISP_IP_NAME_SERVER2								_S("IpNameServer2")					// IP Address of secondary name server reachable through this interface
#define ISP_IP_HOST_NAME								_S("IpHostName")					// Internet Host Name, eg. "adamg"
#define ISP_IP_DOMAIN_NAME								_S("IpDomainName")					// Internet Domain Name, eg. "plc.psion.com"
#define ISP_IP_DEFAULT_ROUTE							_S("IpDefaultRoute")				// Make this interface the default route when opened?
//
#define ISP_ENABLE_IP_HEADER_COMP_FIELD 				_S("EnableIPHeaderCompField")		// Enable IP header compression field
#define ISP_ENABLE_LCP_EXTENSION						_S("EnableLCPExtension")			// Enable LCP extension
#define ISP_DISABLE_PLAIN_TEXT_AUTH						_S("DisablePlainTextAuth")			// Disable plain text authentication
#define ISP_ENABLE_SW_COMP_FIELD						_S("EnableSWCompField")				// Enable S/W compression field
//				
#define ISP_AUTHENTICATION								_S("Authentication")				// unused for now - will eventually point to some authentication table/group
#define ISP_DESCRIPTION									_S("Description")					// text field for app to use to describe ISP
#define ISP_TYPE										_S("Type")							// int field for ISP "type" e.g. Internet, LAN, etc

// Columns for modem config table
				
#define MODEM_RATE										_S("Rate")
#define MODEM_HANDSHAKING								_S("Handshaking")
#define MODEM_PARITY_ERROR								_S("ParityError")
#define MODEM_FIFO										_S("Fifo")
#define MODEM_SPECIAL_RATE								_S("SpecialRate")
#define MODEM_TERMINATOR_COUNT							_S("TerminatorCount")
#define MODEM_TERMINATOR0								_S("Terminator0")
#define MODEM_TERMINATOR1								_S("Terminator1")
#define MODEM_TERMINATOR2								_S("Terminator2")
#define MODEM_TERMINATOR3								_S("Terminator3")
#define MODEM_XON_CHAR									_S("XonChar")
#define MODEM_XOFF_CHAR									_S("XoffChar")
#define MODEM_PARITY_ERROR_CHAR							_S("ParityErrorChar")
#define MODEM_SIR_ENABLE								_S("SIREnable")
#define MODEM_SIR_SETTINGS								_S("SIRSettings")
//				
#define MODEM_MODEM_INIT_STRING							_S("ModemInitString")
#define MODEM_DATA_INIT_STRING							_S("DataInitString")
#define MODEM_FAX_INIT_STRING							_S("FaxInitString")
#define MODEM_DIAL_PAUSE_LENGTH							_S("DialPauseLength")
#define MODEM_CARRIER_TIMEOUT							_S("CarrierTimeout")
#define MODEM_AUTO_ANSWER_RING_COUNT					_S("AutoAnswerRingCount")
#define MODEM_SPEAKER_VOL_CONTROL_LOW					_S("SpeakerVolContorlLow")
#define MODEM_SPEAKER_VOL_CONTROL_MEDIUM				_S("SpeakerVolControlMedium")
#define MODEM_SPEAKER_VOL_CONTROL_HIGH					_S("SpeakerVolControlHigh")
#define MODEM_SPEAKER_ALWAYS_OFF						_S("SpeakerAlwaysOff")
#define MODEM_SPEAKER_ON_UNTIL_CARRIER					_S("SpeakerOnUntilCarrier")
#define MODEM_SPEAKER_ALWAYS_ON							_S("SpeakerAlwaysOn")
#define MODEM_SPEAKER_ON_AFTER_DIAL_UNTIL_CARRIER		_S("SpeakerOnAfterUntilCarrier")
#define MODEM_DIAL_TONE_WAIT_MODIFIER					_S("DialToneWaitModifier")
#define MODEM_CALL_PROGRESS_1							_S("CallProgress1")					// Dialtone & busy detection disabled, result codes 0-5,10
#define MODEM_CALL_PROGRESS_2							_S("CallProgress2")					// Dialtone detection enabled & busy detection disabled, result codes 0-6,10
#define MODEM_CALL_PROGRESS_3							_S("CallProgress3")					// Dialtone detection disabled , but busy detection enabled, result codes 0-5,7,10
#define MODEM_CALL_PROGRESS_4							_S("CallProgress4")					// Dialtone detection & busy detection enabled, result codes 0-7,10
#define MODEM_ECHO_OFF									_S("EchoOff")
#define MODEM_VERBOSE_TEXT								_S("VerboseText")
#define MODEM_QUIET_ON									_S("QuietOn")
#define MODEM_QUIET_OFF									_S("QuietOff")
#define MODEM_DIAL_COMMAND_STATE_MODIFIER				_S("DialCommandStateModifier")
#define MODEM_ON_LINE									_S("OnLine")
#define MODEM_RESET_CONFIGURATION						_S("ResetConfiguration")
#define MODEM_RETURN_TO_FACTORY_DEFS					_S("ReturnToFactoryDefs")
#define MODEM_DCD_ON_DURING_LINK						_S("DCDOnDuringLink")
#define MODEM_DTR_HANG_UP								_S("DTRHangUp")
#define MODEM_DSR_ALWAYS_ON								_S("DSRAlwaysOn")
#define MODEM_RTS_CTS_HANDSHAKE							_S("RTSCTSHandshake")
#define MODEM_XON_XOFF_HANDSHAKE						_S("XonXoffHandshake")
#define MODEM_ESCAPE_CHARACTER							_S("EscapeCharacter")
#define MODEM_ESCAPE_GUARD_PERIOD						_S("EscapeGuardPeriod")
#define MODEM_FAX_CLASS_INTERROGATE						_S("FaxClassInterrogate")
#define MODEM_FAX_CLASS									_S("FaxClass")
//
#define MODEM_NO_DIAL_TONE								_S("NoDialTone")
#define MODEM_BUSY										_S("Busy")
#define MODEM_NO_ANSWER									_S("NoAnswer")
#define MODEM_CARRIER									_S("Carrier")
#define MODEM_CONNECT									_S("Connect")
#define MODEM_COMPRESSION_CLASS_5						_S("CompressionClass5")
#define MODEM_COMPRESSION_V42BIS						_S("CompressionV42bis")
#define MODEM_COMPRESSION_NONE							_S("CompressionNone")
#define MODEM_PROTOCOL_LAPD								_S("ProtocolLAPD")
#define MODEM_PROTOCOL_ALT								_S("ProtocolALT")
#define MODEM_PROTOCOL_ALTCELLULAR						_S("ProtocolALTCELLULAR")
#define MODEM_PROTOCOL_NONE								_S("ProtocolNone")
//
#define MODEM_DEFAULT_PORT_NAME							_S("DefaultPortName")
#define MODEM_DEFAULT_TSY_NAME							_S("DefaultTSYName")
#define MODEM_DEFAULT_CSY_NAME							_S("DefaultCSYName")
#define MODEM_DEFAULT_FAX_CLASS							_S("DefaultFaxClass")
#define MODEM_DEFAULT_SPEAKER							_S("DefaultSpeaker")
#define MODEM_DEFAULT_SPEAKER_VOLUME					_S("DefaultSpeakerVolume")
#define MODEM_DEFAULT_PAUSE_TIME						_S("DefaultPauseTime")

// Columns for connected modem table

#define MODEM_PORT_NAME									_S("PortName")
#define MODEM_TSY_NAME									_S("TSYName")
#define MODEM_CSY_NAME									_S("CSYName")
#define MODEM_TSY_CONFIG_ID								_S("TSYConfigId")

// Columns for modem prefs table
 				
#define MODEM_FAX_CLASS									_S("FaxClass")
#define MODEM_SPEAKER									_S("Speaker")
#define MODEM_SPEAKER_VOLUME							_S("SpeakerVolume")
#define MODEM_PAUSE_TIME								_S("PauseTime")

// Columns for location table

#define LOCATION_INTL_PREFIX_CODE						_S("IntlPrefixCode")
#define LOCATION_NAT_PREFIX_CODE						_S("NatPrefixCode")
#define LOCATION_NAT_CODE								_S("NatCode")
#define LOCATION_AREA_CODE								_S("AreaCode")
#define LOCATION_DIAL_OUT_LOCAL_CODE					_S("DialOutLocalCode")
#define LOCATION_DIAL_OUT_LONG_DISTANCE_CODE			_S("DialOutLongDistanceCode")
#define LOCATION_DISABLE_CALL_WAITING_CODE				_S("DisableCallWaitingCode")
#define LOCATION_MOBILE									_S("Mobile")
#define LOCATION_USE_PULSE_DIAL							_S("UsePulseDial")
#define LOCATION_PBX_USE_PULSE_DIAL						_S("PbxUsePulseDial")
#define LOCATION_WAIT_FOR_DIAL_TONE						_S("WaitForDialTone")
#define LOCATION_WAIT_FOR_PROCEED_TONE					_S("WaitForProceedTone")
#define LOCATION_PAUSE_AFTER_DIAL_OUT					_S("PauseAfterDialout")
#define LOCATION_CHARGECARD_ID							_S("ChargecardId")

//	Columns for chargecard table

#define CHARGECARD_ACCOUNT_NUMBER						_S("AccountNumber")
#define CHARGECARD_PIN									_S("Pin")
#define CHARGECARD_LOCAL_RULE							_S("LocalRule")
#define CHARGECARD_NAT_RULE								_S("NatRule")
#define CHARGECARD_INTL_RULE							_S("IntlRule")

//	Enums for modem speaker setttings

enum TCommsDbModemSpeakerSetting
	{
	EModemSpeakerSettingNever=0,
	EModemSpeakerSettingUntilCallAnswered,
	EModemSpeakerSettingAlways,
	EModemSpeakerSettingAfterDialUntilAnswer
	};

enum TCommsDbModemSpeakerVolume
	{
	EModemSpeakerVolumeQuiet=0,
	EModemSpeakerVolumeMedium,
	EModemSpeakerVolumeLoud
	};

enum TCommsDbIspType
	{
	EIspTypeInternet,
	EIspTypeIntranet
	};	

#endif