Docs

IPWorks 2022 Python Edition

Version 22.0 [Build 8171]

NetDial Class

Properties   Methods   Events   Configuration Settings   Errors  

The NetDial class can be used to call the Remote Access System (RAS) to initiate or break connections to remote hosts, list connections, and phonebook entries.

Syntax

class ipworks.NetDial

Remarks

The user can either directly provide a phone_number, user, password, and optionally a domain and callback_number, or get those entries from phonebook_entry of phonebook. The calls are blocking but progress information is given through the on_status event and Windows messages will come during connect or disconnect methods.

The user can get information on the phonebook entries and connections by calling the respective methods of the class. on_connected_entry and on_phonebook_entry events will fire with the required information.

Support is also provided for creating and/or deleting phonebook entries, as well as listing the various RAS devices supported by the system.

Property List


The following is the full list of the properties of the class with short descriptions. Click on the links for further details.

callback_numberThe callback number to give when directly dialing the remote machine.
domainThe name of the domain to join when dialing the RAS connection.
entry_device_nameThe device of the phonebook entry pointed to by PhonebookEntry .
entry_device_typeThe device type of the phonebook entry pointed to by PhonebookEntry .
entry_dns_serverThe DNS server of the phonebook entry pointed to by PhonebookEntry .
entry_ip_addressThe IP address of the phonebook entry pointed to by PhonebookEntry .
entry_phone_numberThe phone number for the phonebook entry pointed to by PhonebookEntry .
entry_wins_serverThe WINS server of the phonebook entry pointed to by PhonebookEntry .
handleThe handle of the connection. 0 if invalid or not connected.
idleThe current status of the class.
passwordThe password to use when direct dialing the remote machine.
phonebookThis property reads the PhonebookEntry when dialing the remote machine.
phonebook_entryThe name of PhonebookEntry to use when dialing the remote machine.
phone_numberThe number to dial when directly dialing the remote machine without the help of a PhonebookEntry .
ras_availableWhen true, Remote Access System (RAS) is available on the system.
timeoutA timeout for the class.
userThe name of the login user when directly dialing the remote machine.

Method List


The following is the full list of the methods of the class with short descriptions. Click on the links for further details.

configSets or retrieves a configuration setting.
connectAttempts to dial the PhonebookEntry from Phonebook .
create_entryCreates a PhonebookEntry .
delete_entryDeletes a PhonebookEntry .
disconnectDisconnects the last successfully made connection.
do_eventsProcesses events from the internal message queue.
interruptInterrupt the current method.
list_connectionsLists all current connections.
list_devicesLists all dial devices.
list_phonebookLists all entries in Phonebook .
resetReset the class.
show_dial_dialogShows the standard RAS dialog for dialing the PhonebookEntry from Phonebook .

Event List


The following is the full list of the events fired by the class with short descriptions. Click on the links for further details.

on_connected_entryFired for every connected device when the ListConnections method is called.
on_deviceFired for every dial device when the ListDevices method is called.
on_errorInformation about errors during data delivery.
on_phonebook_entryFired for every Phonebook entry when the ListPhonebook method is called.
on_statusFired during connection or disconnection attempts.

Configuration Settings


The following is a list of configuration settings for the class with short descriptions. Click on the links for further details.

IgnoreModemSpeakerWhether the class will ignore the default modem speaker settings.
IgnoreSoftwareCompressionWhether the class will ignore the default software compression settings.
OverrideEntrySettingWhether or not to use the class settings when dialing a phone book entry.
PausedStatesWhether the class will accept paused states.
PauseOnScriptTells the class to display a logon terminal.
SetModemSpeakerWhether the class will use the modem speaker.
SetSoftwareCompressionWhether the class will use software compression.
UseCustomScriptingTells the class to use custom script DLLs.
UsePrefixSuffixWhether or not to use the dialing prefix and suffix in the phone book.
UseRemoteDefaultGatewayWhether or not the entry should use the default gateway on the remote network.
VPNTypeSets the VPN Type when creating entries with NetDial.
BuildInfoInformation about the product's build.
CodePageThe system code page used for Unicode to Multibyte translations.
LicenseInfoInformation about the current license.
ProcessIdleEventsWhether the class uses its internal event loop to process events when the main thread is idle.
SelectWaitMillisThe length of time in milliseconds the class will wait when DoEvents is called if there are no events to process.
UseInternalSecurityAPITells the class whether or not to use the system security libraries or an internal implementation.

callback_number Property

The callback number to give when directly dialing the remote machine.

Syntax

def get_callback_number() -> str: ...

def set_callback_number(value: str) -> None: ...


callback_number = property(get_callback_number, set_callback_number)

Default Value

""

Remarks

This property contains the callback number to give when directly dialing the remote machine. user, phone_number, password, and optionally domain and callback_number are used when phonebook_entry is empty.

Calling the connect method attempts a connection.

domain Property

The name of the domain to join when dialing the RAS connection.

Syntax

def get_domain() -> str: ...

def set_domain(value: str) -> None: ...


domain = property(get_domain, set_domain)

Default Value

""

Remarks

This property contains the name of the domain to join when dialing the RAS connection. user, phone_number, password, and optionally domain and callback_number are used when phonebook_entry is empty.

Calling the connect method attempts a connection.

entry_device_name Property

The device of the phonebook entry pointed to by PhonebookEntry .

Syntax

def get_entry_device_name() -> str: ...

def set_entry_device_name(value: str) -> None: ...


entry_device_name = property(get_entry_device_name, set_entry_device_name)

Default Value

""

Remarks

This property contains the device of the phonebook entry pointed to by phonebook_entry. This property is filled in automatically every time phonebook_entry is set to an existing entry.

entry_device_type Property

The device type of the phonebook entry pointed to by PhonebookEntry .

Syntax

def get_entry_device_type() -> str: ...

def set_entry_device_type(value: str) -> None: ...


entry_device_type = property(get_entry_device_type, set_entry_device_type)

Default Value

""

Remarks

This property contains the device type of the phonebook entry pointed to by phonebook_entry. This property is filled in automatically every time phonebook_entry is set to an existing entry.

entry_dns_server Property

The DNS server of the phonebook entry pointed to by PhonebookEntry .

Syntax

def get_entry_dns_server() -> str: ...

def set_entry_dns_server(value: str) -> None: ...


entry_dns_server = property(get_entry_dns_server, set_entry_dns_server)

Default Value

""

Remarks

This property contains the DNS server of the phonebook entry pointed to by phonebook_entry. This property is filled in automatically every time phonebook_entry is set to an existing entry.

entry_ip_address Property

The IP address of the phonebook entry pointed to by PhonebookEntry .

Syntax

def get_entry_ip_address() -> str: ...

def set_entry_ip_address(value: str) -> None: ...


entry_ip_address = property(get_entry_ip_address, set_entry_ip_address)

Default Value

""

Remarks

This property contains the IP address of the phonebook entry pointed to by phonebook_entry. This property is filled in automatically every time phonebook_entry is set to an existing entry.

entry_phone_number Property

The phone number for the phonebook entry pointed to by PhonebookEntry .

Syntax

def get_entry_phone_number() -> str: ...

def set_entry_phone_number(value: str) -> None: ...


entry_phone_number = property(get_entry_phone_number, set_entry_phone_number)

Default Value

""

Remarks

This property contains the phone number for the phonebook entry pointed to by phonebook_entry. This property is filled in automatically every time phonebook_entry is set to an existing entry.

entry_wins_server Property

The WINS server of the phonebook entry pointed to by PhonebookEntry .

Syntax

def get_entry_wins_server() -> str: ...

def set_entry_wins_server(value: str) -> None: ...


entry_wins_server = property(get_entry_wins_server, set_entry_wins_server)

Default Value

""

Remarks

This property contains the WINS server of the phonebook entry pointed to by phonebook_entry. This property is filled in automatically every time phonebook_entry is set to an existing entry.

handle Property

The handle of the connection. 0 if invalid or not connected.

Syntax

def get_handle() -> int: ...

def set_handle(value: int) -> None: ...


handle = property(get_handle, set_handle)

Default Value

0

Remarks

This property is used when trying to disconnect a connection through the disconnect method. The on_connected_entry event provides the handle of each connection. Assigning an invalid value to this property and attempting to disconnect may cause the application to behave in an unpredictable manner.

idle Property

The current status of the class.

Syntax

def get_idle() -> bool: ...


idle = property(get_idle, None)

Default Value

TRUE

Remarks

idle will be False if the component is currently busy (communicating and/or waiting for an answer), and True at all other times.

This property is read-only.

password Property

The password to use when direct dialing the remote machine.

Syntax

def get_password() -> str: ...

def set_password(value: str) -> None: ...


password = property(get_password, set_password)

Default Value

""

Remarks

user, phone_number, password, and optionally domain and callback_number are used when phonebook_entry is empty.

Calling the connect method attempts a connection.

phonebook Property

This property reads the PhonebookEntry when dialing the remote machine.

Syntax

def get_phonebook() -> str: ...

def set_phonebook(value: str) -> None: ...


phonebook = property(get_phonebook, set_phonebook)

Default Value

""

Remarks

This property reads the phonebook_entry when dialing the remote machine. This property is valuable only in Windows NT 4.0 and higher where multiple phonebooks can be specified. The phonebook_entry is relative to Phonebook. If it is empty the default phonebook is used.

phonebook_entry Property

The name of PhonebookEntry to use when dialing the remote machine.

Syntax

def get_phonebook_entry() -> str: ...

def set_phonebook_entry(value: str) -> None: ...


phonebook_entry = property(get_phonebook_entry, set_phonebook_entry)

Default Value

""

Remarks

This property is read from the default phonebook (in Windows 95) or from the phonebook property.

NOTE: This property must not be empty when dialing on Pocket PC (Windows CE).

When the class is initialized it will attempt to populate this property with the system's default entry.

phone_number Property

The number to dial when directly dialing the remote machine without the help of a PhonebookEntry .

Syntax

def get_phone_number() -> str: ...

def set_phone_number(value: str) -> None: ...


phone_number = property(get_phone_number, set_phone_number)

Default Value

""

Remarks

This property contains the number to dial when directly dialing the remote machine without the help of a phonebook_entry. user, phone_number, password, and optionally domain and callback_number are used when phonebook_entry is empty.

Calling the connect method attempts a connection.

ras_available Property

When true, Remote Access System (RAS) is available on the system.

Syntax

def get_ras_available() -> bool: ...


ras_available = property(get_ras_available, None)

Default Value

TRUE

Remarks

If this property is False, the class fails with an error when attempting to connect. RAS must be installed before the class can be used.

This property is read-only.

timeout Property

A timeout for the class.

Syntax

def get_timeout() -> int: ...

def set_timeout(value: int) -> None: ...


timeout = property(get_timeout, set_timeout)

Default Value

60

Remarks

If this property is set to 0, all operations will run uninterrupted until successful completion, or an error condition is encountered.

If this property is set to a positive value, the class will wait for the operation to complete before returning control.

The default value for this property is 60 (seconds).

user Property

The name of the login user when directly dialing the remote machine.

Syntax

def get_user() -> str: ...

def set_user(value: str) -> None: ...


user = property(get_user, set_user)

Default Value

""

Remarks

This property contains the name of the login user when directly dialing the remote machine. user, phone_number, password, and optionally domain and callback_number are used when phonebook_entry is empty.

Calling the connect method attempts a connection.

config Method

Sets or retrieves a configuration setting.

Syntax

def config(configuration_string: str) -> str: ...

Remarks

on_config is a generic method available in every class. It is used to set and retrieve configuration settings for the class.

These settings are similar in functionality to properties, but they are rarely used. In order to avoid "polluting" the property namespace of the class, access to these internal properties is provided through the on_config method.

To set a configuration setting named PROPERTY, you must call Config("PROPERTY=VALUE"), where VALUE is the value of the setting expressed as a string. For boolean values, use the strings "True", "False", "0", "1", "Yes", or "No" (case does not matter).

To read (query) the value of a configuration setting, you must call Config("PROPERTY"). The value will be returned as a string.

connect Method

Attempts to dial the PhonebookEntry from Phonebook .

Syntax

def connect() -> None: ...

Remarks

This method attempts to dial the phonebook_entry from phonebook. If that is empty then the phone_number, callback_number, and domain (if applicable) are used to connect. The class doesn't return until the operation is completed, but during this time on_status events are fired showing the ongoing progress.

Example (Dialing a Phonebook)

NetDialControl.Phonebook = "MyPhonebook" NetDialControl.Connect()

Example (Direct Dialing a Phone Number)

NetDialControl.PhoneNumber = "MyPhonebook" NetDialControl.User = "username" NetDialControl.Password = "mypassword" NetDialControl.Connect()

NOTE: Direct Dialing is not supported on Pocket PC (Windows CE).

create_entry Method

Creates a PhonebookEntry .

Syntax

def create_entry() -> None: ...

Remarks

This method creates a new phonebook entry phonebook_entry with the values in entry_phone_number, entry_dns_server entry_wins_server, entry_ip_address, and entry_device_name. If the entry already exists or the entry cannot be created the class fails with an error.

Example (Creating a New Phonebook Entry)

NetDialControl.PhonebookEntry = "NewEntry" NetDialControl.EntryPhoneNumber = "5555555" NetDialControl.CreateEntry()

delete_entry Method

Deletes a PhonebookEntry .

Syntax

def delete_entry() -> None: ...

Remarks

This method deletes the phonebook entry specified by phonebook_entry and phonebook.

disconnect Method

Disconnects the last successfully made connection.

Syntax

def disconnect() -> None: ...

Remarks

This method disconnects the last successfully made connection or the current one if the call is made within a on_connected_entry event.

do_events Method

Processes events from the internal message queue.

Syntax

def do_events() -> None: ...

Remarks

When on_do_events is called, the class processes any available events. If no events are available, it waits for a preset period of time, and then returns.

interrupt Method

Interrupt the current method.

Syntax

def interrupt() -> None: ...

Remarks

If there is no method in progress, on_interrupt simply returns, doing nothing.

list_connections Method

Lists all current connections.

Syntax

def list_connections() -> None: ...

Remarks

This method lists all connections in all devices and gives the results in on_connected_entry events.

list_devices Method

Lists all dial devices.

Syntax

def list_devices() -> None: ...

Remarks

This method lists all dial devices. The results are provided via the on_device event.

list_phonebook Method

Lists all entries in Phonebook .

Syntax

def list_phonebook() -> None: ...

Remarks

This method lists all entries in phonebook (Windows 95 has only one default phonebook). Entries are given in on_phonebook_entry events.

reset Method

Reset the class.

Syntax

def reset() -> None: ...

Remarks

This method will reset the class's properties to their default values.

show_dial_dialog Method

Shows the standard RAS dialog for dialing the PhonebookEntry from Phonebook .

Syntax

def show_dial_dialog() -> None: ...

Remarks

This method shows the standard RAS dialog for dialing the phonebook_entry from phonebook. The class will display the standard RAS dialog box for phonebook_entry and allow the dial to take place with user interaction. If you prefer the dial to occur without user interaction, use the connect method.

on_connected_entry Event

Fired for every connected device when the ListConnections method is called.

Syntax

class NetDialConnectedEntryEventParams(object):
  @property
  def handle() -> int: ...

  @property
  def entry() -> str: ...

  @property
  def device_name() -> str: ...

  @property
  def device_type() -> str: ...

  @property
  def status_description() -> str: ...

# In class NetDial:
@property
def on_connected_entry() -> Callable[[NetDialConnectedEntryEventParams], None]: ...
@on_connected_entry.setter
def on_connected_entry(event_hook: Callable[[NetDialConnectedEntryEventParams], None]) -> None: ...

Remarks

The Handle parameter can be used to disconnect the entry. You should assign Handle to the handle property and then call the disconnect method.

on_device Event

Fired for every dial device when the ListDevices method is called.

Syntax

class NetDialDeviceEventParams(object):
  @property
  def device_name() -> str: ...

  @property
  def device_type() -> str: ...

# In class NetDial:
@property
def on_device() -> Callable[[NetDialDeviceEventParams], None]: ...
@on_device.setter
def on_device(event_hook: Callable[[NetDialDeviceEventParams], None]) -> None: ...

Remarks

DeviceName provides the name of the device, and DeviceType provides the corresponding device type (e.g. 'modem').

on_error Event

Information about errors during data delivery.

Syntax

class NetDialErrorEventParams(object):
  @property
  def error_code() -> int: ...

  @property
  def description() -> str: ...

# In class NetDial:
@property
def on_error() -> Callable[[NetDialErrorEventParams], None]: ...
@on_error.setter
def on_error(event_hook: Callable[[NetDialErrorEventParams], None]) -> None: ...

Remarks

The on_error event is fired in case of exceptional conditions during message processing. Normally the class fails with an error.

ErrorCode contains an error code and Description contains a textual description of the error. For a list of valid error codes and their descriptions, please refer to the Error Codes section.

on_phonebook_entry Event

Fired for every Phonebook entry when the ListPhonebook method is called.

Syntax

class NetDialPhonebookEntryEventParams(object):
  @property
  def entry() -> str: ...

# In class NetDial:
@property
def on_phonebook_entry() -> Callable[[NetDialPhonebookEntryEventParams], None]: ...
@on_phonebook_entry.setter
def on_phonebook_entry(event_hook: Callable[[NetDialPhonebookEntryEventParams], None]) -> None: ...

Remarks

To get extended entry information, set the phonebook_entry property to the value supplied in the Entry parameter.

on_status Event

Fired during connection or disconnection attempts.

Syntax

class NetDialStatusEventParams(object):
  @property
  def operation() -> int: ...

  @property
  def status_code() -> int: ...

  @property
  def operation_description() -> str: ...

  @property
  def status_description() -> str: ...

# In class NetDial:
@property
def on_status() -> Callable[[NetDialStatusEventParams], None]: ...
@on_status.setter
def on_status(event_hook: Callable[[NetDialStatusEventParams], None]) -> None: ...

Remarks

The Operation parameter indicates the operation currently in progress.

The StatusCode shows the status of the operation.

The OperationDescription and StatusDescription parameters are the corresponding descriptions.

NetDial Configuration

The class accepts one or more of the following configuration settings. Configuration settings are similar in functionality to properties, but they are rarely used. In order to avoid "polluting" the property namespace of the class, access to these internal properties is provided through the config method.

NetDial Configuration Settings

IgnoreModemSpeaker:   Whether the class will ignore the default modem speaker settings.

Setting this value to True will cause the class to ignore the modem speaker settings in the RAS phone book, and uses the setting specified by SetModemSpeaker. If it is False, the class uses the modem speaker setting that is in the RAS phone book, and ignores the setting specified by the SetModemSpeaker.

IgnoreSoftwareCompression:   Whether the class will ignore the default software compression settings.

If set to True, the class ignores the software compression setting that is in the RAS phone book, and uses the setting specified by SetSoftwareCompression. If set to False, the class uses the software compression setting that is in the RAS phone book, and ignores the setting specified by SetSoftwareCompression.

OverrideEntrySetting:   Whether or not to use the class settings when dialing a phone book entry.

If set to True, the class will use PhoneNumber, CallBackNumber, User, Password, and Domain as specified in the class if set, instead of the value specified in the pre-existing phone book entry.

PausedStates:   Whether the class will accept paused states.

If set to True, the class will accept paused states. Paused states include terminal mode, retry logon, change password, set callback number, and EAP authentication. If set to False, the class will report a fatal error if it enters a paused state.

PauseOnScript:   Tells the class to display a logon terminal.

This value is used internally by the system for Windows-95-style logon script execution. If True, a logon-script will be displayed in a terminal window visible to the user. Applications should not set value.

SetModemSpeaker:   Whether the class will use the modem speaker.

This config value determines whether or not the modem speaker will sound during a connection. If IgnoreModemSpeaker is False, the class ignores the value of SetModemSpeaker, and sets the modem speaker based on the RAS phone-book setting or the default setting.

SetSoftwareCompression:   Whether the class will use software compression.

This config value determines whether or not the class uses software compression for the modem connection. If IgnoreSoftwareCompression is False, the class ignores the value of SetSoftwareCompression, and sets the software compression state based on the RAS phone-book setting or the default setting.

UseCustomScripting:   Tells the class to use custom script DLLs.

Specifies that the class should invoke a custom-scripting DLL after establishing the connection to the server. the class can only invoke the DLL if all of the following conditions are met: UseCustomScripting is specifically set to True. A custom-scripting DLL is correctly registered with the system. The CustomScript option is specified in the phone-book entry. Note: this option is not supported in Windows 2000 and NT.

UsePrefixSuffix:   Whether or not to use the dialing prefix and suffix in the phone book.

If set to True, the class will use the prefix and suffix that are stored in the RAS phone book. If False, the class will ignore the prefix and suffix.

UseRemoteDefaultGateway:   Whether or not the entry should use the default gateway on the remote network.

UseRemoteDefaultGateway is used when creating a new entry. By default, this value is true and tells the entry created that it should forward data that cannot be sent on the local network to the dial-up connection.

NOTE: This option is only valid when a local area network connection and dial-up connection both exist simultaneously.

VPNType:   Sets the VPN Type when creating entries with NetDial.

The supported values include the following:

0 VPN_DEFAULT
1 VPN_PPTP
2 VPN_L2TP
3 VPN_SSTP

NOTE: This is only available in .NET

Base Configuration Settings

BuildInfo:   Information about the product's build.

When queried, this setting will return a string containing information about the product's build.

CodePage:   The system code page used for Unicode to Multibyte translations.

The default code page is Unicode UTF-8 (65001).

The following is a list of valid code page identifiers:

IdentifierName
037IBM EBCDIC - U.S./Canada
437OEM - United States
500IBM EBCDIC - International
708Arabic - ASMO 708
709Arabic - ASMO 449+, BCON V4
710Arabic - Transparent Arabic
720Arabic - Transparent ASMO
737OEM - Greek (formerly 437G)
775OEM - Baltic
850OEM - Multilingual Latin I
852OEM - Latin II
855OEM - Cyrillic (primarily Russian)
857OEM - Turkish
858OEM - Multilingual Latin I + Euro symbol
860OEM - Portuguese
861OEM - Icelandic
862OEM - Hebrew
863OEM - Canadian-French
864OEM - Arabic
865OEM - Nordic
866OEM - Russian
869OEM - Modern Greek
870IBM EBCDIC - Multilingual/ROECE (Latin-2)
874ANSI/OEM - Thai (same as 28605, ISO 8859-15)
875IBM EBCDIC - Modern Greek
932ANSI/OEM - Japanese, Shift-JIS
936ANSI/OEM - Simplified Chinese (PRC, Singapore)
949ANSI/OEM - Korean (Unified Hangul Code)
950ANSI/OEM - Traditional Chinese (Taiwan; Hong Kong SAR, PRC)
1026IBM EBCDIC - Turkish (Latin-5)
1047IBM EBCDIC - Latin 1/Open System
1140IBM EBCDIC - U.S./Canada (037 + Euro symbol)
1141IBM EBCDIC - Germany (20273 + Euro symbol)
1142IBM EBCDIC - Denmark/Norway (20277 + Euro symbol)
1143IBM EBCDIC - Finland/Sweden (20278 + Euro symbol)
1144IBM EBCDIC - Italy (20280 + Euro symbol)
1145IBM EBCDIC - Latin America/Spain (20284 + Euro symbol)
1146IBM EBCDIC - United Kingdom (20285 + Euro symbol)
1147IBM EBCDIC - France (20297 + Euro symbol)
1148IBM EBCDIC - International (500 + Euro symbol)
1149IBM EBCDIC - Icelandic (20871 + Euro symbol)
1200Unicode UCS-2 Little-Endian (BMP of ISO 10646)
1201Unicode UCS-2 Big-Endian
1250ANSI - Central European
1251ANSI - Cyrillic
1252ANSI - Latin I
1253ANSI - Greek
1254ANSI - Turkish
1255ANSI - Hebrew
1256ANSI - Arabic
1257ANSI - Baltic
1258ANSI/OEM - Vietnamese
1361Korean (Johab)
10000MAC - Roman
10001MAC - Japanese
10002MAC - Traditional Chinese (Big5)
10003MAC - Korean
10004MAC - Arabic
10005MAC - Hebrew
10006MAC - Greek I
10007MAC - Cyrillic
10008MAC - Simplified Chinese (GB 2312)
10010MAC - Romania
10017MAC - Ukraine
10021MAC - Thai
10029MAC - Latin II
10079MAC - Icelandic
10081MAC - Turkish
10082MAC - Croatia
12000Unicode UCS-4 Little-Endian
12001Unicode UCS-4 Big-Endian
20000CNS - Taiwan
20001TCA - Taiwan
20002Eten - Taiwan
20003IBM5550 - Taiwan
20004TeleText - Taiwan
20005Wang - Taiwan
20105IA5 IRV International Alphabet No. 5 (7-bit)
20106IA5 German (7-bit)
20107IA5 Swedish (7-bit)
20108IA5 Norwegian (7-bit)
20127US-ASCII (7-bit)
20261T.61
20269ISO 6937 Non-Spacing Accent
20273IBM EBCDIC - Germany
20277IBM EBCDIC - Denmark/Norway
20278IBM EBCDIC - Finland/Sweden
20280IBM EBCDIC - Italy
20284IBM EBCDIC - Latin America/Spain
20285IBM EBCDIC - United Kingdom
20290IBM EBCDIC - Japanese Katakana Extended
20297IBM EBCDIC - France
20420IBM EBCDIC - Arabic
20423IBM EBCDIC - Greek
20424IBM EBCDIC - Hebrew
20833IBM EBCDIC - Korean Extended
20838IBM EBCDIC - Thai
20866Russian - KOI8-R
20871IBM EBCDIC - Icelandic
20880IBM EBCDIC - Cyrillic (Russian)
20905IBM EBCDIC - Turkish
20924IBM EBCDIC - Latin-1/Open System (1047 + Euro symbol)
20932JIS X 0208-1990 & 0121-1990
20936Simplified Chinese (GB2312)
21025IBM EBCDIC - Cyrillic (Serbian, Bulgarian)
21027Extended Alpha Lowercase
21866Ukrainian (KOI8-U)
28591ISO 8859-1 Latin I
28592ISO 8859-2 Central Europe
28593ISO 8859-3 Latin 3
28594ISO 8859-4 Baltic
28595ISO 8859-5 Cyrillic
28596ISO 8859-6 Arabic
28597ISO 8859-7 Greek
28598ISO 8859-8 Hebrew
28599ISO 8859-9 Latin 5
28605ISO 8859-15 Latin 9
29001Europa 3
38598ISO 8859-8 Hebrew
50220ISO 2022 Japanese with no halfwidth Katakana
50221ISO 2022 Japanese with halfwidth Katakana
50222ISO 2022 Japanese JIS X 0201-1989
50225ISO 2022 Korean
50227ISO 2022 Simplified Chinese
50229ISO 2022 Traditional Chinese
50930Japanese (Katakana) Extended
50931US/Canada and Japanese
50933Korean Extended and Korean
50935Simplified Chinese Extended and Simplified Chinese
50936Simplified Chinese
50937US/Canada and Traditional Chinese
50939Japanese (Latin) Extended and Japanese
51932EUC - Japanese
51936EUC - Simplified Chinese
51949EUC - Korean
51950EUC - Traditional Chinese
52936HZ-GB2312 Simplified Chinese
54936Windows XP: GB18030 Simplified Chinese (4 Byte)
57002ISCII Devanagari
57003ISCII Bengali
57004ISCII Tamil
57005ISCII Telugu
57006ISCII Assamese
57007ISCII Oriya
57008ISCII Kannada
57009ISCII Malayalam
57010ISCII Gujarati
57011ISCII Punjabi
65000Unicode UTF-7
65001Unicode UTF-8

The following is a list of valid code page identifiers for Mac OS only:

IdentifierName
1ASCII
2NEXTSTEP
3JapaneseEUC
4UTF8
5ISOLatin1
6Symbol
7NonLossyASCII
8ShiftJIS
9ISOLatin2
10Unicode
11WindowsCP1251
12WindowsCP1252
13WindowsCP1253
14WindowsCP1254
15WindowsCP1250
21ISO2022JP
30MacOSRoman
10UTF16String
0x90000100UTF16BigEndian
0x94000100UTF16LittleEndian
0x8c000100UTF32String
0x98000100UTF32BigEndian
0x9c000100UTF32LittleEndian
65536Proprietary

LicenseInfo:   Information about the current license.

When queried, this setting will return a string containing information about the license this instance of a class is using. It will return the following information:

  • Product: The product the license is for.
  • Product Key: The key the license was generated from.
  • License Source: Where the license was found (e.g., RuntimeLicense, License File).
  • License Type: The type of license installed (e.g., Royalty Free, Single Server).
ProcessIdleEvents:   Whether the class uses its internal event loop to process events when the main thread is idle.

If set to False, the class will not fire internal idle events. Set this to False to use the class in a background thread on Mac OS. By default, this setting is True.

SelectWaitMillis:   The length of time in milliseconds the class will wait when DoEvents is called if there are no events to process.

If there are no events to process when do_events is called, the class will wait for the amount of time specified here before returning. The default value is 20.

UseInternalSecurityAPI:   Tells the class whether or not to use the system security libraries or an internal implementation.

By default the class will use the system security libraries to perform cryptographic functions. Setting this to True tells the class to use the internal implementation instead of using the system's security API.

NetDial Errors

NetDial Errors

143   Busy executing current method.
200   Can't load the RASAPI library.
201   Can't access the functions of RASAPI library.
300   Can't load the RAS library.
301   Can't access the functions of RAS library.
302   Entry already exists.
303   Error dialing entry. Description contains more detail.
600   An operation is pending.
601   The port handle is invalid.
602   The port is already open.
603   Caller's buffer is too small.
604   Wrong information specified.
605   Cannot set port information.
606   The port is not connected.
607   The event is invalid.
608   The device does not exist.
609   The device type does not exist.
610   The buffer is invalid.
611   The route is not available.
612   The route is not allocated.
613   Invalid compression specified.
614   Out of buffers.
615   The port was not found.
616   An asynchronous request is pending.
617   The port or device is already disconnecting.
618   The port is not open.
619   The port is disconnected.
620   There are no endpoints.
621   Cannot open the phone book file.
622   Cannot load the phone book file.
623   Cannot find the phone book entry.
624   Cannot write the phone book file.
625   Invalid information found in the phone book.
626   Cannot load a string.
627   Cannot find key.
628   The port was disconnected.
629   The port was disconnected by the remote machine.
630   The port was disconnected due to hardware failure.
631   The port was disconnected by the user.
632   The structure size is incorrect.
633   The port is already in use or is not configured for Remote Access dialout.
634   Cannot register your computer on the remote network.
635   Unknown error.
636   The wrong device is attached to the port.
637   The string could not be converted.
638   The request has timed out.
639   No asynchronous net available.
640   A NetBIOS error has occurred.
641   The server cannot allocate NetBIOS resources needed to support the client.
642   One of your NetBIOS names is already registered on the remote network.
643   A network adapter at the server failed.
644   You will not receive network message popups.
645   Internal authentication error.
646   The account is not permitted to log on at this time of day.
647   The account is disabled.
648   The password has expired.
649   The account does not have Remote Access permission.
650   The Remote Access server is not responding.
651   Your modem (or other connecting device) has reported an error.
652   Unrecognized response from the device.
653   A macro required by the device was not found in the device .INF file section.
654   A command or response in the device .INF file section refers to an undefined macro
655   The <message> macro was not found in the device .INF file section.
656   The <defaultoff> macro in the device .INF file section contains an undefined macro
657   The device .INF file could not be opened.
658   The device name in the device .INF or media .INI file is too long.
659   The media .INI file refers to an unknown device name.
660   The device .INF file contains no responses for the command.
661   The device .INF file is missing a command.
662   Attempted to set a macro not listed in device .INF file section.
663   The media .INI file refers to an unknown device type.
664   Cannot allocate memory.
665   The port is not configured for Remote Access.
666   Your modem (or other connecting device) is not functioning.
667   Cannot read the media .INI file.
668   The connection dropped.
669   The usage parameter in the media .INI file is invalid.
670   Cannot read the section name from the media .INI file.
671   Cannot read the device type from the media .INI file.
672   Cannot read the device name from the media .INI file.
673   Cannot read the usage from the media .INI file.
674   Cannot read the maximum connection BPS rate from the media .INI file.
675   Cannot read the maximum carrier BPS rate from the media .INI file.
676   The line is busy.
677   A person answered instead of a modem.
678   There is no answer.
679   Cannot detect carrier.
680   There is no dial tone.
681   General error reported by device.
682   ERROR WRITING SECTIONNAME
683   ERROR WRITING DEVICETYPE
684   ERROR WRITING DEVICENAME
685   ERROR WRITING MAXCONNECTBPS
686   ERROR WRITING MAXCARRIERBPS
687   ERROR WRITING USAGE
688   ERROR WRITING DEFAULTOFF
689   ERROR READING DEFAULTOFF
690   ERROR EMPTY INI FILE
691   Access denied because username and/or password is invalid on the domain.
692   Hardware failure in port or attached device.
693   ERROR NOT BINARY MACRO
694   ERROR DCB NOT FOUND
695   ERROR STATE MACHINES NOT STARTED
696   ERROR STATE MACHINES ALREADY STARTED
697   ERROR PARTIAL RESPONSE LOOPING
698   A response keyname in the device .INF file is not in the expected format.
699   The device response caused buffer overflow.
700   The expanded command in the device .INF file is too long.
701   The device moved to a BPS rate not supported by the COM driver.
702   Device response received when none expected.
703   ERROR INTERACTIVE MODE
704   ERROR BAD CALLBACK NUMBER
705   ERROR INVALID AUTH STATE
706   ERROR WRITING INITBPS
707   X.25 diagnostic indication.
708   The account has expired.
709   Error changing password on domain.
710   Serial overrun errors were detected while communicating with your modem.
711   RasMan initialization failure. Check the event log.
712   Biplex port is initializing. Wait a few seconds and redial.
713   No active ISDN lines are available.
714   Not enough ISDN channels are available to make the call.
715   Too many errors occurred because of poor phone line quality.
716   The Remote Access IP configuration is unusable.
717   No IP addresses are available in the static pool of Remote Access IP addresses.
718   PPP timeout.
719   PPP terminated by remote machine.
720   No PPP control protocols configured.
721   Remote PPP peer is not responding.
722   The PPP packet is invalid.
723   The phone number, including prefix and suffix, is too long.
724   The IPX protocol cannot dial-out on the port because the computer is an IPX router.
725   The IPX protocol cannot dial-in on the port because the IPX router is not installed.
726   The IPX protocol cannot be used for dial-out on more than one port at a time.
727   Cannot access TCPCFG.DLL.
728   Cannot find an IP adapter bound to Remote Access.
729   SLIP cannot be used unless the IP protocol is installed.
730   Computer registration is not complete.
731   The protocol is not configured.
732   The PPP negotiation is not converging.
733   The PPP control protocol for this network protocol is not available on the server.
734   The PPP link control protocol terminated..
735   The requested address was rejected by the server..
736   The remote computer terminated the control protocol.
737   Loopback detected..
738   The server did not assign an address.
739   The remote server cannot use the Windows NT encrypted password.
740   The TAPI devices configured for Remote Access failed to initialize or were not installed correctly.
741   The local computer does not support encryption.
742   The remote server does not support encryption.
743   The remote server requires encryption.
744   Cannot use the IPX net number assigned by the remote server. Check the event log.
745   ERROR_INVALID_SMM
746   ERROR_SMM_UNINITIALIZED
747   ERROR_NO_MAC_FOR_PORT
748   ERROR_SMM_TIMEOUT
749   ERROR_BAD_PHONE_NUMBER
750   ERROR_WRONG_MODULE
751   The callback number contains an invalid character. Only the following 18 characters are allowed: 0 to 9, T, P, W, (, ), -, @, and space
752   A syntax error was encountered while processing a script.
753   The connection could not be disconnected because it was created by the multi-protocol router.
754   The system could not find the multi-link bundle.
755   The system cannot perform automated dial because this connection has a custom dialer specified.
756   This connection is already being dialed.
757   Remote Access Services could not be started automatically. Additional information is provided in the event log.
758   Internet Connection Sharing is already enabled on the connection.
759   An error occurred while the existing Internet Connection Sharing settings were being changed.
760   An error occurred while routing capabilities were being enabled.
761   An error occurred while Internet Connection Sharing was being enabled for the connection.
762   An error occurred while the local network was being configured for sharing.
763   Internet Connection Sharing cannot be enabled. There is more than one LAN connection other than the connection to be shared.
764   No smart card reader is installed.
765   Internet Connection Sharing cannot be enabled. A LAN connection is already configured with the IP address that is required for automatic IP addressing.
766   A certificate could not be found. Connections that use the L2TP protocol over IPSec require the installation of a machine certificate, also known as a computer certificate.
767   Internet Connection Sharing cannot be enabled. The LAN connection selected as the private network has more than one IP address configured. Please reconfigure the LAN connection with a single IP address before enabling Internet Connection Sharing.
768   The connection attempt failed because of failure to encrypt data.
769   The specified destination is not reachable.
770   The remote computer rejected the connection attempt.
771   The connection attempt failed because the network is busy.
772   The remote computer's network hardware is incompatible with the type of call requested.
773   The connection attempt failed because the destination number has changed.
774   The connection attempt failed because of a temporary failure. Try connecting again.
775   The call was blocked by the remote computer.
776   The call could not be connected because the remote computer has invoked the Do Not Disturb feature.
777   The connection attempt failed because the modem (or other connecting device on the remote computer is out of order.
778   It was not possible to verify the identity of the server.
779   To dial out using this connection you must use a smart card.
780   An attempted function is not valid for this connection.
781   The connection requires a certificate, and no valid certificate was found. For further assistance, click More Info or search Help and Support Center for this error number.
782   Internet Connection Sharing (ICS and Internet Connection Firewall (ICF cannot be enabled because Routing and Remote Access has been enabled on this computer. To enable ICS or ICF, first disable Routing and Remote Access. For more information about Routing and Remote Access, ICS, or ICF, see Help and Support.
783   Internet Connection Sharing cannot be enabled. The LAN connection selected as the private network is either not present, or is disconnected from the network. Please ensure that the LAN adapter is connected before enabling Internet Connection Sharing.
784   You cannot dial using this connection at logon time, because it is configured to use a user name different than the one on the smart card. If you want to use it at logon time, you must configure it to use the user name on the smart card.
785   You cannot dial using this connection at logon time, because it is not configured to use a smart card. If you want to use it at logon time, you must edit the properties of this connection so that it uses a smart card.
786   The L2TP connection attempt failed because there is no valid machine certificate on your computer for security authentication.
787   The L2TP connection attempt failed because the security layer could not authenticate the remote computer.
788   The L2TP connection attempt failed because the security layer could not negotiate compatible parameters with the remote computer.
789   The L2TP connection attempt failed because the security layer encountered a processing error during initial negotiations with the remote computer.
790   The L2TP connection attempt failed because certificate validation on the remote computer failed.
791   The L2TP connection attempt failed because security policy for the connection was not found.
792   The L2TP connection attempt failed because security negotiation timed out.
793   The L2TP connection attempt failed because an error occurred while negotiating security.
794   The Framed Protocol RADIUS attribute for this user is not PPP.
795   The Tunnel Type RADIUS attribute for this user is not correct.
796   The Service Type RADIUS attribute for this user is neither Framed nor Callback Framed.
797   A connection to the remote computer could not be established because the modem was not found or was busy. For further assistance, click More Info or search Help and Support Center for this error number.
798   A certificate could not be found that can be used with this Extensible Authentication Protocol.
799   Internet Connection Sharing (ICS cannot be enabled due to an IP address conflict on the network. ICS requires the host be configured to use 192.168.0.1. Please ensure that no other client on the network is configured to use 192.168.0.1.
800   Unable to establish the VPN connection. The VPN server may be unreachable, or security parameters may not be configured properly for this connection.
801   This connection is configured to validate the identity of the access server, but Windows cannot verify the digital certificate sent by the server.
802   The card supplied was not recognized. Please check that the card is inserted correctly, and fits tightly.
803   The PEAP configuration stored in the session cookie does not match the current session configuration.
804   The PEAP identity stored in the session cookie does not match the current identity.
805   You cannot dial using this connection at logon time, because it is configured to use logged on user's credentials.
900   The router is not running.
901   The interface is already connected.
902   The specified protocol identifier is not known to the router.
903   The Demand-dial Interface Manager is not running.
904   An interface with this name is already registered with the router.
905   An interface with this name is not registered with the router.
906   The interface is not connected.
907   The specified protocol is stopping.
908   The interface is connected and hence cannot be deleted.
909   The interface credentials have not been set.
910   This interface is already in the process of connecting.
911   An update of routing information on this interface is already in progress.
912   The interface configuration in invalid. There is already another interface that is connected to the same interface on the remote router.
913   A Remote Access Client attempted to connect over a port that was reserved for Routers only.
914   A Demand Dial Router attempted to connect over a port that was reserved for Remote Access Clients only.
915   The client interface with this name already exists and is currently connected.
916   The interface is in a disabled state.
917   The authentication protocol was rejected by the remote peer.
918   There are no authentication protocols available for use.
919   The remote computer refused to be authenticated using the configured authentication protocol. The line has been disconnected.
920   The remote account does not have Remote Access permission.
921   The remote account has expired.
922   The remote account is disabled.
923   The remote account is not permitted to logon at this time of day.
924   Access was denied to the remote peer because username and/or password is invalid on the domain.
925   There are no routing enabled ports available for use by this demand dial interface.
926   The port has been disconnected due to inactivity.
927   The interface is not reachable at this time.
928   The Demand Dial service is in a paused state.
929   The interface has been disconnected by the administrator.
930   The authentication server did not respond to authentication requests in a timely fashion.
931   The maximum number of ports allowed for use in the multilinked connection has been reached.
932   The connection time limit for the user has been reached.
933   The maximum limit on the number of LAN interfaces supported has been reached.
934   The maximum limit on the number of Demand Dial interfaces supported has been reached.
935   The maximum limit on the number of Remote Access clients supported has been reached.
936   The port has been disconnected due to the BAP policy.
937   Because another connection of your type is in use, the incoming connection cannot accept your connection request.
938   No RADIUS servers were located on the network.
939   An invalid response was received from the RADIUS authentication server. Make sure that the case sensitive secret password for the RADIUS server is set correctly.
940   You do not have permission to connect at this time.
941   You do not have permission to connect using the current device type.
942   You do not have permission to connect using the selected authentication protocol.
943   BAP is required for this user.
944   The interface is not allowed to connect at this time.
945   The saved router configuration is incompatible with the current router.
946   RemoteAccess has detected older format user accounts that will not be migrated automatically. To migrate these manually, run XXXX.
948   The transport is already installed with the router.
949   Received invalid signature length in packet from RADIUS server.
950   Received invalid signature in packet from RADIUS server.
951   Did not receive signature along with EAPMessage from RADIUS server.
952   Received packet with invalid length or Id from RADIUS server.
953   Received packet with attribute with invalid length from RADIUS server.
954   Received invalid packet from RADIUS server.
955   Authenticator does not match in packet from RADIUS server.

Copyright (c) 2022 /n software inc. - All rights reserved.
IPWorks 2022 Python Edition - Version 22.0 [Build 8171]