Object <- Server <- PhoneResource <- PhoneCircuit <- LandLineCircuit |
|
|
Connected Hookswitch HookswitchEvents |
| Field | Type | |
|---|---|---|
| Server: | enabled: | Boolean |
| PhoneResource: | client: | PhoneResourceClient |
| clientPriority: | UnsignedShort | |
| suspendedList: | DataList | |
| HasPhoneEvents: | eventClients: | ObjectList |
| PhoneCircuit: | hookswitch: | Boolean |
| isRinging: | Boolean | |
| ringEvents: | Boolean | |
| connected: | Boolean | |
| callerIDName: | Text | |
| callerIDNumber: | Text | |
| callerIDDetectionOn: | Boolean | |
| connectEvents: | Boolean | |
| LandLineCircuit: | hookswitchEvents: | Boolean |
| phoneConnectDetectTimer: | Timer | |
| callerIDTimer: | Timer | |
| ringTimer: | Timer | |
| ringParameters: | Pointer |
instance LandLineCircuit tag; enabled: false; client: nilObject; clientPriority: 0; suspendedList: nilObject; eventClients: nilObject; hookswitch: false; isRinging: false; ringEvents: false; connected: false; callerIDName: nilObject; callerIDNumber: nilObject; callerIDDetectionOn: false; connectEvents: false; hookswitchEvents: false; phoneConnectDetectTimer: nilObject; callerIDTimer: nilObject; ringTimer: nilObject; ringParameters: nil; end instance;
#endif Define Class LandLineCircuit; inherits from PhoneCircuit; field hookswitchEvents: Boolean, getter, setter; field phoneConnectDetectTimer: Timer; field callerIDTimer: Timer; field ringTimer: Timer; field ringParameters: Pointer; attribute HookswitchEvents: Boolean; #ifdef MECHANICAL_HOOKSWITCH overrides HardwareHookswitchLevel; overrides TriggerHookswitchAction; #endif overrides ResourceHardwareAvailable; overrides InitResourceHardware; overrides ReleaseResourceHardware; overrides ResetResource; overrides ReinitializeClass; overrides SetHookswitch; overrides TriggerConnectAction; overrides SetConnected; overrides SnoozeRing; operation ContinueRingAction(); // private calls not to be used outside of LandLineCircuit operation HardwareConnectedLevel(debounce: Boolean): Boolean; // low level proc to read the connected hardware level operation HookControl(offHook: Boolean); #ifdef CALLERID_DETECTION operation DetectCallerID(firstRing: Boolean); operation ReportCallerID(); #endif end class;