Mac OS 9
Telephones.h
Go to the documentation of this file.
1 
19 #ifndef __TELEPHONES__
20 #define __TELEPHONES__
21 
22 #ifndef __MACTYPES__
23 #include <MacTypes.h>
24 #endif
25 
26 #ifndef __DIALOGS__
27 #include <Dialogs.h>
28 #endif
29 
30 #ifndef __MACERRORS__
31 #include <MacErrors.h>
32 #endif
33 
34 #ifndef __EVENTS__
35 #include <Events.h>
36 #endif
37 
38 #ifndef __CTBUTILITIES__
39 #include <CTBUtilities.h>
40 #endif
41 
42 #ifndef __COMPONENTS__
43 #include <Components.h>
44 #endif
45 
46 #if PRAGMA_ONCE
47 #pragma once
48 #endif
49 
50 #ifdef __cplusplus
51 extern "C"
52 {
53 #endif
54 
55 #if PRAGMA_IMPORT
56 #pragma import on
57 #endif
58 
59 #if PRAGMA_STRUCT_ALIGN
60 #pragma options align = mac68k
61 #elif PRAGMA_STRUCT_PACKPUSH
62 #pragma pack(push, 2)
63 #elif PRAGMA_STRUCT_PACK
64 #pragma pack(2)
65 #endif
66 
67 #if CALL_NOT_IN_CARBON
68  enum
69  {
70  curTELVersion = 3, /* current Telephone Manager version */
71  /* the chooseXXX symbols are defined in CTBUtilities.(pah) */
72  telChooseDisaster = chooseDisaster,
73  telChooseFailed = chooseFailed,
74  telChooseAborted = chooseAborted,
75  telChooseOKMinor = chooseOKMinor,
76  telChooseOKMajor = chooseOKMajor,
77  telChooseCancel = chooseCancel,
78  telChooseOKTermChanged = 4
79  };
80 
81 #ifndef classTEL
82  enum
83  {
84  /* telephone tool file type */
85  classTEL = FOUR_CHAR_CODE('vbnd')
86  };
87 
88 #endif /* !defined(classTEL) */
89 
90  /* PHYSICAL TERMINAL CONSTANTS */
91  /* INDEPENDENT HANDSET CONSTANTS */
92  enum
93  {
94  telIndHSOnHook = 0, /* independent handset on hook */
95  telIndHSOffHook = 1 /* independent handset off hook */
96  };
97 
98  enum
99  {
100  telIndHSDisconnected = 0, /* handset disconnected from the line */
101  telIndHSConnected = 1 /* handset connected to the line */
102  };
103 
104  /* HOOK STATE CONSTANTS */
105  enum
106  {
107  telHandset = 1, /* handset hookswitch */
108  telSpeakerphone = 2 /* speakerphone 'on' switch */
109  };
110 
111  enum
112  {
113  telDeviceOffHook = 1, /* device off hook */
114  telDeviceOnHook = 0 /* device on hook */
115  };
116 
117  /* VOLUME CONTROL CONSTANTS */
118  enum
119  {
120  telHandsetSpeakerVol = 1, /* volume of the handset speaker */
121  telHandsetMicVol = 2, /* sensitivity of the handset mic */
122  telSpeakerphoneVol = 3, /* speakerphone volume */
123  telSpeakerphoneMicVol = 4, /* sensitivity of the spkrphone mic */
124  telRingerVol = 5, /* volume of the ringer */
125  telBuiltinSPVol = 6, /* volume of the built-in speakerphone */
126  telBuiltinSPMicVol = 7 /* sensitivity of the built-in speakerphone mic */
127  };
128 
129  enum
130  {
131  telVolSame = 0, /* leaves the volume at previous level */
132  telVolMin = 1, /* turns volume down to minimum level, but not off */
133  telVolMax = 100 /* highest level allowed by the Telephone Manager */
134  };
135 
136  enum
137  {
138  telVolStateSame = 0, /* leaves device in same state */
139  telVolStateOff = 1, /* turns the device off, but doesn't change the volume
140  setting. Use for mute functions. */
141  telVolStateOn = 2 /* turns the device on. Volume setting is the same as
142  previously set. */
143  };
144 
145  /* DISPLAY CONSTANTS */
146  enum
147  {
148  telNormalDisplayMode = 1, /* normal display mode */
149  telInspectMode = 2, /* inspect display mode */
150  telMiscMode = 3, /* miscellaneous display mode */
151  telRetrieveMode = 4, /* message retrieval mode */
152  telDirectoryQueryMode = 5, /* electronic directory mode */
153  telEntireDisplay = 0 /* entire Display */
154  };
155 
156  /* KEY PRESS CONSTANTS */
157  enum
158  {
159  telHangupKey = 1, /* drop, or release, key pressed */
160  telHoldKey = 2, /* hold key pressed */
161  telConferenceKey = 3, /* conference key pressed */
162  telTransferKey = 4, /* transfer key pressed */
163  telForwardKey = 5, /* call forward key pressed */
164  telCallbackKey = 6, /* call back key pressed */
165  telDNDKey = 7, /* do not disturb key pressed */
166  telCallPickupKey = 8, /* call Pickup key pressed */
167  telCallParkKey = 9, /* call Park key pressed */
168  telCallDeflectKey = 10, /* call Deflect key pressed */
169  telVoiceMailAccessKey = 11, /* voice Mail Access key pressed */
170  telCallRejectKey = 12, /* call Reject key pressed */
171  telOtherKey = 16 /* other key pressed */
172  };
173 
174  enum
175  {
176  telKeyPadPress = 1, /* key pressed on 12 digit keypad*/
177  telFeatureKeyPress = 2 /* feature Key Pressed */
178  };
179 
180  enum
181  {
182  telTerminalEnabled = 0,
183  telTerminalDisabled = 1
184  };
185 
186  enum
187  {
188  telUnknown = 0, /* unknown error */
189  telTerminalHWDisconnected = 1, /* terminal hardware is disconnected */
190  telDeviceDriverClosed = 2 /* device driver is closed */
191  };
192 
193  /* ALERT PATTERN */
194  enum
195  {
196  telPattern0 = 0,
197  telPattern1 = 1,
198  telPattern2 = 2,
199  telPattern3 = 3,
200  telPattern4 = 4,
201  telPattern5 = 5,
202  telPattern6 = 6,
203  telPattern7 = 7,
204  telPatternOff = 8,
205  telPatternUndefined = 15
206  };
207 
208  /* DN TYPES */
209  enum
210  {
211  telAllDNs = 0, /* counts all types of DNs */
212  telInternalDNs = 1, /* connected to PBX or other non-public switch */
213  telInternalDNsOnly = 2, /* connected to PBX or other non-public switch */
214  /* and able to place internal calls only */
215  telExternalDNs = 3, /* connected to public network */
216  telDNTypeUnknown = 4 /* DN type unknown */
217  };
218 
219  /* DN USAGE */
220  enum
221  {
222  telDNNotUsed = 0, /* DN is not used - onhook */
223  telDNPOTSCall = 1, /* DN used for POTs call */
224  telDNFaxCall = 2, /* DN used for fax call */
225  telDNDataCall = 3, /* DN used for data call */
226  telDNAlerting = 4, /* Incoming call at DN */
227  telDNUnknownState = 5 /* DN is in unknown state */
228  };
229 
230  /* CALL FORWARDING TYPES */
231  enum
232  {
233  telForwardImmediate = 1, /* immediately forward calls */
234  telForwardBusy = 2, /* forward on Busy */
235  telForwardNoAnswer = 3, /* forward on No answer */
236  telForwardBusyNA = 4, /* forwarding for busy and no answer*/
237  telForwardTypeUnknown = 5 /* type of forwarding is unknown */
238  };
239 
240  /* CALL FORWARDING MESSAGES */
241  enum
242  {
243  telForwardCleared = 0, /* forwarding has been cleared */
244  telForwardEst = 1, /* forwarding has been established*/
245  telForwardFailed = 2 /* attempt to setup forwarding has failed*/
246  };
247 
248  /* DO NOT DISTURB TYPES */
249  enum
250  {
251  telDNDIntExt = 0, /* do not disturb for all internal and external calls*/
252  telDNDExternal = 1, /* do not disturb for external calls only */
253  telDNDInternal = 2, /* do not disturb for internal calls only */
254  telDNDNonIntercom = 3 /* do not disturb for all calls except intercom */
255  };
256 
257  /* DO NOT DISTURB MESSAGES */
258  enum
259  {
260  telDNDCleared = 0, /* do not disturb has been cleared */
261  telDNDEst = 1, /* do not disturb has been established */
262  telDNDFailed = 2 /* attempt to setup do not disturb has failed */
263  };
264 
265  /* VOICE MAIL MESSAGES */
266  enum
267  {
268  telAllVoiceMessagesRead =
269  0, /* all messages have been read, none are waiting */
270  /* to be read */
271  telNewVoiceMessage =
272  1 /* a new message has arrived or messages are waiting for this DN */
273  };
274 
275  /* DNSELECT MESSAGE */
276  enum
277  {
278  telDNDeselected = 0, /* DN has been deselected */
279  telDNSelected = 1 /* DN has been selected */
280  };
281 
282  /* CALL ORIGINATORS */
283  enum
284  {
285  telInternalCall = 0, /* return nth internal CA */
286  telExternalCall = 1, /* return nth external CA */
287  telUnknownCallOrigin = 2, /* unknown call type */
288  telAllCallOrigins = 2 /* return nth CA internal or external */
289  };
290 
291  /* CALL TYPES */
292  enum
293  {
294  telVoiceMailAccessOut = (-7),
295  telPageOut = (-6),
296  telIntercomOut = (-5),
297  telCallbackOut = (-4),
298  telPickup = (-3),
299  telParkRetrieve = (-2),
300  telNormalOut = (-1),
301  telUnknownCallType = 0,
302  telNormalIn = 1,
303  telForwardedImmediate = 2,
304  telForwardedBusy = 3,
305  telForwardedNoAnswer = 4,
306  telTransfer = 5,
307  telDeflected = 6,
308  telIntercepted = 7,
309  telDeflectRecall = 8,
310  telParkRecall = 9,
311  telTransferredRecall = 10,
312  telIntercomIn = 11,
313  telCallbackIn = 12
314  };
315 
316  /* DIAL TYPES */
317  enum
318  {
319  telDNDialable = 0, /* this DN could be dialed via TELSetupCall */
320  telDNNorthAmerican = 1, /* rmtDN is standard North America 10 digit number */
321  telDNInternational = 2, /* rmtDN is an international number */
322  telDNAlmostDialable =
323  3, /* rmtDN is almost dialable, missing prefix such as 9 or 1 */
324  telDNUnknown = 15 /* unknown whether DN is dialable */
325  };
326 
327  /* CALL PROGRESS MESSAGES */
328  enum
329  {
330  telCAPDialTone = 1, /* dial tone */
331  telCAPRinging = 2, /* destination CA is alerting */
332  telCAPDialing = 3, /* dialing the other end */
333  telCAPReorder = 4, /* reorder */
334  telCAPBusy = 5, /* busy */
335  telCAPRouted = 6, /* call routed; rmtDN will hold the routing directory number
336  routeDN and routePartyName have been updated */
337  telCAPRoutedOff =
338  7, /* call routed off-network; no further progress will be available */
339  telCAPTimeout = 8, /* call timed out */
340  telCAPUpdate = 9, /* name and rmtDN information has been updated */
341  telCAPPrompt = 10, /* the network is prompting for more information */
342  telCAPWaiting = 11, /* call is proceeding, but there is no response yet from
343  the destination */
344  telCAPCPC = 12, /* telephone tool detected CPC signal */
345  telCAPNoDialTone = 13, /* dial tone not detected */
346  telCAPUnknown = 15, /* call progress state unknown */
347  telCAPDialDisabled = 16, /* Blacklisting: Dial Disabled */
348  telCAPBlacklistedNumber = 17, /* Blacklisting: Blacklisted Number */
349  telCAPForbiddenNumber = 18, /* Blacklisting: Forbidden Number */
350  telCAPModemGuardTime = 19, /* Modem Guard Timein force, unable to dial */
351  telCAPLCDetected =
352  20, /* trying to dial a number while the handset is offhook */
353  telCAPLostLC = 21 /* trying manual dial or answer while handset not off hook
354  or also lost line current during dialing. */
355  };
356 
357  /* OUTGOING CALL MESSAGES */
358  enum
359  {
360  telPhysical = 0, /* user lifted handset and initiated call */
361  telProgrammatic = 1 /* programmatic initiation of outgoing call */
362  };
363 
364  /* DISCONNECT MESSAGES */
365  enum
366  {
367  telLocalDisconnect =
368  0, /* local party, this user, responsible for disconnect */
369  telRemoteDisconnect = 1 /* remote party responsible for disconnect */
370  };
371 
372  /* DISCONNECT TYPES */
373  enum
374  {
375  telCADNormal = 1, /* normal disconnect */
376  telCADBusy = 2, /* remote user busy */
377  telCADNoResponse = 3, /* remote not responding */
378  telCADRejected = 4, /* call rejected */
379  telCADNumberChanged = 5, /* number changed */
380  telCADInvalidDest = 6, /* invalid destination address */
381  telCADFacilityRejected = 7, /* requested facility rejected */
382  telCADUnobtainableDest = 9, /* destination not obtainable */
383  telCADCongested = 10, /* network congestion */
384  telCADIncompatibleDest = 11, /* incompatible destination */
385  telCADTimeout = 12, /* call timed out */
386  telCADUnknown = 15 /* reason unknown */
387  };
388 
389  /* CONFERENCE MESSAGES */
390  enum
391  {
392  telConferencePrepFailed = 0, /* conference could not be prepared */
393  telConferencePending = 1, /* conference prepared successfully */
394  telConferenceEstFailed = 2, /* conference could not be established */
395  telConferenceEst = 3 /* conference established */
396  };
397 
398  /* TRANSFER MESSAGES */
399  enum
400  {
401  telTransferPrepFailed = 0, /* transfer could not be prepared */
402  telTransferPending = 1, /* transfer prepared successfully */
403  telTransferEst = 2, /* consult or blind xfer successful */
404  telTransferFailed = 3, /* consult or blind xfer failed */
405  telTransferred = 4 /* message to originator of CA specifying that call was
406  transferred to rmtDN */
407  };
408 
409  /* HOLD MESSAGES */
410  enum
411  {
412  telHoldCleared = 0,
413  telHoldEst = 1,
414  telHoldFailed = 2
415  };
416 
417  /* RECEIVE DIGIT MESSAGES */
418  enum
419  {
420  telDigitAudible = 0,
421  telDigitNotAudible = 1
422  };
423 
424  /* CALL PARK MESSAGES */
425  enum
426  {
427  telCallParkEst = 1, /* call has been successfully parked */
428  telCallParkRetrieveEst = 2, /* parked Call has been successfully retrieved */
429  telCallParkFailed = 3, /* attempt to setup call park has failed */
430  telCallParkRetrieveFailed = 4, /* attempt to retrieve parked call failed */
431  telCallParkRecall = 5 /* call park has been recalled */
432  };
433 
434  /* CALL BACK MESSAGES */
435  enum
436  {
437  telCallbackCleared = 0, /* call back has been cleared */
438  telCallbackEst = 1, /* call back has been established */
439  telCallbackNowAvail = 2, /* call can be called back with TELCallBackNow if CA
440  is zero, else call IS calling back on CA */
441  telCallbackFailed = 3, /* attempt to setup callback has failed */
442  telCallbackDesired = 4, /* a user has called this terminal, received no answer
443  and desires this terminal to call it back */
444  telCallbackDesiredCleared = 5, /* call back for no answer no longer desired */
445  telCalledback = 6 /* callback has occurred successfully */
446  };
447 
448  /* CALL REJECT MESSAGES */
449  enum
450  {
451  telCallRejectFailed = 0, /* attempt to reject call has failed */
452  telCallRejectEst = 1, /* call successfully rejected */
453  telCallRejected = 2 /* message to originator that call was rejected */
454  };
455 
456  /* CALL DEFLECT MESSAGES */
457  enum
458  {
459  telCallDeflectFailed = 0, /* attempt to deflect call has failed */
460  telCallDeflectEst = 1, /* call successfully deflected */
461  telCallDeflectRecall = 2, /* deflected call has been recalled */
462  telCallDeflected =
463  3, /* message to originator that call was deflected to rmtDN */
464  telAutoDeflectImmediate =
465  4, /* a call was automatically deflected from this terminal as a result of
466  immediate call forwarding */
467  telAutoDeflectBusy = 5, /* a call was automatically deflected from this
468  terminal as a result of call forwarding on busy */
469  telAutoDeflectNoAnswer =
470  6 /* a call was automatically deflected from this terminal as a result of
471  call forwarding on no answer */
472  };
473 
474  /* CONFERENCE SPLIT MESSAGES */
475  enum
476  {
477  telConferenceSplitFailed = 0, /* CA could not be split */
478  telConferenceSplitEst = 1 /* CA split successfully */
479  };
480 
481  /* CONFERENCE DROP MESSAGES */
482  enum
483  {
484  telConferenceDropFailed = 0, /* CA could not be dropped */
485  telConferenceDropped = 1 /* CA dropped successfully */
486  };
487 
488  /* CALL PICKUP MESSAGES */
489  enum
490  {
491  telCallPickupEst = 0, /* call pickup was successful */
492  telCallPickupFailed = 1, /* call pickup failed */
493  telCallPickedUp =
494  2 /* message to originator that call was picked up at a different DN */
495  };
496 
497  /* PAGING MESSAGES */
498  enum
499  {
500  telPageEst = 0, /* paging was successful */
501  telPageComplete = 1, /* paging activity completed */
502  telPageFailed = 2 /* paging failed */
503  };
504 
505  /* INTERCOM MESSAGES */
506  enum
507  {
508  telIntercomEst = 0, /* intercom was successful */
509  telIntercomComplete = 1, /* intercom activity completed */
510  telIntercomFailed = 2 /* intercom failed */
511  };
512 
513  /* MODEM TONE MESSAGES */
514  enum
515  {
516  telModemToneDetected = 0, /* modem tone was detected */
517  telModemToneCleared = 1 /* modem tone went away */
518  };
519 
520  /* FAX TONE MESSAGES */
521  enum
522  {
523  telFaxToneDetected = 0, /* fax tone was detected */
524  telFaxToneCleared = 1 /* fax tone went away */
525  };
526 
527  /* IN USE MESSAGES */
528  enum
529  {
530  telInUsePrivate = 0, /* MADN is in use and can't be accessed */
531  telInUseCanAccess =
532  1, /* MADN is in use, and others can access it and join in */
533  telInUseCanMakePrivate =
534  2, /* MADN is in use, but available for any one person to access */
535  telInUseCleared = 3 /* MADN is no longer in use */
536  };
537 
538  /* CALL APPEARANCE STATES */
539  enum
540  {
541  telCAIdleState = 0, /* a call doesn't exist at this time */
542  telCAInUseState = 1, /* the call is active but at another terminal */
543  telCAOfferState = 2, /* a call is being offered to the terminal */
544  telCAQueuedState = 3, /* a call is being queued at this terminal */
545  telCAAlertingState = 4, /* a call is alerting at the terminal */
546  telCADialToneState = 5, /* initiated outgoing call has dialtone */
547  telCADialingState = 6, /* initiated outgoing call is dialing */
548  telCAWaitingState =
549  7, /* initiated outgoing call is waiting for response from destination */
550  telCARingingState = 8, /* the outgoing call is ringing. */
551  telCABusyState = 9, /* destination is busy or can't be reached */
552  telCAHeldState = 10, /* call has been put on hold by this terminal */
553  telCAConferencedState = 11, /* this CA is part of a conference now */
554  telCAActiveState =
555  12, /* the call is active and parties are free to exchange data*/
556  telCAReorderState = 13, /* CA is in a reorder state */
557  telCAConferencedHeldState = 14, /* CA is a conference call in a held state */
558  telCAUnknownState = 15 /* the call state is unknown */
559  };
560 
561  /* TERMINAL MESSAGE EVENTMASKS */
562  enum
563  {
564  telTermHookMsg = 0x00000001, /* the hookswitch state has changed */
565  telTermKeyMsg = 0x00000002, /* a phone pad key has been depressed */
566  telTermVolMsg = 0x00000004, /* volume setting has changed */
567  telTermDisplayMsg = 0x00000008, /* display has changed */
568  telTermEnableMsg = 0x00000010, /* terminal has become enabled */
569  telTermOpenMsg = 0x00000020, /* terminal has been opened */
570  telTermCloseMsg = 0x00000040, /* terminal is shutting down */
571  telTermResetMsg = 0x00000080, /* terminal has been reset */
572  telTermErrorMsg = 0x00000100, /* hard equipment error */
573  telTermIndHSStateChgMsg = 0x00000200, /* change in handset state from inacive
574  to active or vice versa */
575  telTermIndHSConnectMsg =
576  0x00000400, /* independent handset connection has been changed */
577  telTermKeyImmMsg = 0x00000800, /* immidiate arrival of phone pad key */
578  telTermVolStateMsg = 0x00001000, /* volume state has changed */
579  telTermOtherMsg = (long)0x80000000, /* vendor defined error */
580  telAllTermMsgs =
581  0x00001FFF /* mask to all non tool specific terminal events */
582  };
583 
584  /* DN MESSAGE EVENTMASK CONSTANTS */
585  enum
586  {
587  telDNForwardMsg = 0x00000001, /* forward feature activity */
588  telDNDNDMsg = 0x00000002, /* do not disturb feature activity */
589  telDNVoiceMailMsg = 0x00000004, /* message has arrived for this DN */
590  telDNSelectedMsg = 0x00000008, /* DN has been selected or deselected */
591  telDNOtherMsg = (long)0x80000000, /* a custom message for use by tools */
592  telAllDNMsgs = 0x0000000F /* mask to all non tool specific dn events */
593  };
594 
595  /* CA MESSAGE EVENTMASK CONSTANTS */
596  enum
597  {
598  telCAAlertingMsg = 0x00000001, /* CA is alerting */
599  telCAOfferMsg = 0x00000002, /* CA is being offered a call */
600  telCAProgressMsg = 0x00000004, /* call progress info for this CA */
601  telCAOutgoingMsg = 0x00000008, /* CA is initiating an outgoing call */
602  telCADisconnectMsg = 0x00000010, /* CA disconnected (dropped or rmt disc */
603  telCAActiveMsg =
604  0x00000020, /* CA is active and voice/data is free to flow end to end */
605  telCAConferenceMsg = 0x00000040, /* conference activity on CA */
606  telCATransferMsg = 0x00000080, /* transfer feature activity */
607  telCAHoldMsg = 0x00000100, /* hold feature activity */
608  telCADigitsMsg = 0x00000200, /* remote signaling digits arrived */
609  telCACallParkMsg = 0x00000400, /* CA call park feature activity */
610  telCACallbackMsg = 0x00000800, /* CA call back feature activity */
611  telCARejectMsg = 0x00001000, /* CA is rejected */
612  telCADeflectMsg = 0x00002000, /* CA is deflected */
613  telCAForwardMsg = 0x00004000, /* CA is forwarded to this DN */
614  telCAConferenceSplitMsg = 0x00008000, /* conference split activity */
615  telCAConferenceDropMsg = 0x00010000, /* conference drop activity */
616  telCAQueuedMsg = 0x00020000, /* CA has been queued */
617  telCAInUseMsg = 0x00040000, /* CA is in use */
618  telCACallPickupMsg = 0x00080000, /* CA pickup activity */
619  telCAPagingMsg = 0x00100000, /* CA paging activity */
620  telCAIntercomMsg = 0x00200000, /* CA intercom activity */
621  telCAModemToneMsg = 0x00400000, /* modem tones detected */
622  telCAFaxToneMsg = 0x00800000, /* fax tones detected */
623  telCAIdleMsg = 0x01000000, /* CA is in idle state */
624  telCASuccessiveAlertMsg = 0x02000000, /* phone is alerting, one per ring */
625  telCAUserUserInfoMsg =
626  0x04000000, /* user to user information has arrrived for this CA */
627  telCAHandOffMsg = 0x08000000, /* CA is ready for hand-off */
628  telCAVoiceDetectedMsg = 0x10000000, /* voice Detect related event */
629  telCASilenceDetectedMsg = 0x20000000, /* silence Detect related event */
630  telCADigitsImmMsg =
631  0x40000000, /* immidiate arrival of remote signaling digits */
632  telCAOtherMsg = (long)0x80000000, /* tool specific CA message */
633  telAllCAMsgs = 0x7FFFFFFF /* mask to all non tool specific CA events */
634  };
635 
636  typedef OSErr TELErr;
637  typedef UInt32 TELFlags;
638  enum
639  {
640  telNoMenus = 1L << 16, /* tells tool not to display any custom menus */
641  telQuiet =
642  1L << 17, /* tells tool not to display any dialog boxes or alerts */
643  telConfigChanged =
644  1L << 18 /* notifies application that the config has changed */
645  };
646 
647  typedef UInt32 TELFeatureFlags;
648  enum
649  {
650  pcmAvail = 1L << 0, /* true if PCM voice data accessible */
651  hasHandset = 1L << 1, /* true if a phone handset is attached */
652  hasSpeakerphone = 1L << 2, /* true if a 2 way speakerphone is attached */
653  canOnHookDial = 1L << 3, /* can on-hook dial */
654  hasRinger = 1L << 4, /* terminal has its own ringer */
655  canSetDisplay = 1L << 5, /* application can write to the display */
656  hasKeypad = 1L << 6, /* attached phone has standard 12 key pad */
657  hasVideo = 1L << 7, /* terminal has a videophone */
658  hasOther = 1L << 8, /* reserved for future use */
659  crossDNConference = 1L << 9, /* can perform cross-DN conferences */
660  hasSubaddress = 1L << 10, /* attached network supports subaddressing */
661  hasUserUserInfo = 1L << 11, /* network supports user-to-user info */
662  hasHandsetSoundStreams =
663  1L << 12, /* sound streams are supported on the handset */
664  hasIndHandset =
665  1L << 13, /* handset can be accessed independently of the phone line */
666  hasBuiltinSpeakerphone =
667  1L << 14 /* speaker and microphone of the Mac can be used */
668  };
669 
671  {
672  short tRef;
673  TELFeatureFlags featureFlags;
674  short handsetSpeakerVol;
675  short handsetMicVol;
676  short speakerphoneVol;
677  short speakerphoneMicVol;
678  short ringerVol;
679  short otherVol;
680  short ringerTypes;
681  short hasDisplay;
682  short displayRows;
683  short numDNs;
684  short maxAllocCA;
685  short curAllocCA;
686  short builtinSpeakerVol;
687  short builtinSpeakerMicVol;
688  long reserved;
689  };
690  typedef struct TELTermRecord TELTermRecord;
691  typedef TELTermRecord *TELTermPtr;
692  struct TELRecord
693  {
694  short procID;
695 
696  TELFlags flags;
697  short reserved;
698 
699  long refCon;
700  long userData;
701 
702  UniversalProcPtr defproc;
703 
704  Ptr config;
705  Ptr oldConfig;
706 
707  TELTermPtr pTELTerm;
708 
709  long telPrivate;
710  long reserved1;
711  long reserved2;
712 
713  long pTELTermSize;
714  short version;
715  };
716  typedef struct TELRecord TELRecord;
717  typedef TELRecord *TELPtr;
718  typedef TELPtr *TELHandle;
719 
720  typedef UInt32 TELDNFeatureFlags;
721  enum
722  {
723  dndSub = 1L << 0, /* do not disturb subscribed */
724  dndAvail = 1L << 1, /* do not disturb available */
725  dndActive = 1L << 2, /* do not disturb active */
726  voiceMailAccessSub = 1L << 3, /* message waiting subscribed */
727  voiceMailAccessAvail = 1L << 4, /* message waiting available */
728  voiceMailAccessActive = 1L << 5, /* message waiting active */
729  pagingSub = 1L << 6, /* paging is subscribed */
730  pagingAvail = 1L << 7, /* paging is available */
731  pagingActive = 1L << 8, /* paging is active */
732  intercomSub = 1L << 9, /* intercom is subscribed */
733  intercomAvail = 1L << 10, /* intercom is available */
734  intercomActive = 1L << 11, /* intercom is active */
735  dnSelectSub = 1L << 12, /* DN select is subscribed */
736  dnSelectAvail = 1L << 13, /* DN select is available */
737  dnSelectActive = 1L << 14, /* DN is selected */
738  callPickupSub = 1L << 15, /* call pickup is subscribed */
739  callPickupAvail = 1L << 16, /* call pickup is available */
740  dnInUse = 1L << 17, /* a CA is allocated for this DN */
741  logicalDN = 1L << 18, /* this DN is not on this terminal */
742  dnAccessible = 1L << 19, /* commands can be sent to this DN */
743  canInitiate = 1L << 20, /* an outgoing CA can be initiated */
744  voiceMessageWaiting = 1L << 21, /* voice mail waiting for this dn */
745  hasDNSoundStreams = 1L << 22, /* sound streams are supported on this DN */
746  autoAnswerAvail = 1L << 23, /* AutoAnswer is set for this DN */
747  autoAnswerActive =
748  1L << 24, /* AutoAnswer is currently applied to CA on this DN */
749  tollSaverAvail = 1L << 25, /* tollSaver is set for this DN */
750  tollSaverActive =
751  1L << 26 /* tollSaver is currently applied to CA on this DN */
752  };
753 
754  typedef UInt32 TELDNForwardFlags;
755  enum
756  {
757  immediateForwardSub = 1L << 0, /* immediate call forward subscribed */
758  immediateForwardAvail = 1L << 1, /* immediate call forward available */
759  immediateForwardActive = 1L << 2, /* immediate call forward active */
760  busyForwardSub = 1L << 3, /* forward on busy subscribed */
761  busyForwardAvail = 1L << 4, /* forward on busy available */
762  busyForwardActive = 1L << 5, /* forward on busy active */
763  noAnswerForwardSub = 1L << 6, /* no answer call forward subscribed */
764  noAnswerForwardAvail = 1L << 7, /* no answer call forward available */
765  noAnswerForwardActive = 1L << 8, /* no answer call forward active */
766  busyNAForwardSub = 1L << 9, /* busy & no answer call forward subscribed */
767  busyNAForwardAvail = 1L << 10, /* busy & no answer call forward available */
768  busyNAForwardActive = 1L << 11 /* busy & no answer call forward active */
769  };
770 
771  struct TELDNRecord
772  {
773 
774  short dnRef;
775  StringPtr dn;
776  StringPtr dnPartyName;
777  StringPtr dnSubaddress;
778  TELHandle hTEL;
779  short maxAllocCA;
780  short curAllocCA;
781  short dnType;
782  TELDNFeatureFlags featureFlags;
783  short numPageIDs;
784  short numIntercomIDs;
785  short numPickupIDs;
786  TELDNForwardFlags forwardFlags;
787  StringPtr iForwardDN;
788  StringPtr iForwardSubaddress;
789  StringPtr iForwardPartyName;
790  StringPtr bForwardDN;
791  StringPtr bForwardSubaddress;
792  StringPtr bForwardPartyName;
793  StringPtr naForwardDN;
794  StringPtr naForwardSubaddress;
795  StringPtr naForwardPartyName;
796  short naForwardRings;
797  long telDNPrivate;
798  long refCon;
799  long userData;
800  long reserved;
801  };
802  typedef struct TELDNRecord TELDNRecord;
803  typedef TELDNRecord *TELDNPtr;
804  typedef TELDNPtr *TELDNHandle;
805  typedef UInt32 TELCAFeatureFlags;
806  enum
807  {
808  holdSub = 1L << 0, /* hold subscribed */
809  holdAvail = 1L << 1, /* hold available */
810  holdActive = 1L << 2, /* hold active */
811  conferenceSub = 1L << 3, /* conference subscribed */
812  conferenceAvail = 1L << 4, /* conference available */
813  conferenceActive = 1L << 5, /* conference active */
814  conferenceDropSub = 1L << 6, /* conference drop subscribed */
815  conferenceDropAvail =
816  1L << 7, /* a call to TELDrop will drop this CA only from a conference */
817  conferenceSplitSub = 1L << 8, /* conference split subscribed */
818  conferenceSplitAvail = 1L << 9, /* conference split available for this CA */
819  numToConferenceRequired = 1L << 10, /* the number of CAs to be conferenced is
820  required in TELConfPrep */
821  transferSub = 1L << 11, /* transfer subscribed */
822  transferAvail = 1L << 12, /* transfer available */
823  transferActive = 1L << 13, /* transfer active */
824  caRelated =
825  1L << 14 /* this CA is the specified in some other CA's relatedCA field*/
826  };
827 
828  typedef UInt32 TELCAOtherFeatures;
829  enum
830  {
831  callbackSub = 1L << 0, /* call back subscribed */
832  callbackAvail = 1L << 1, /* call back available */
833  callbackActive = 1L << 2, /* call back active */
834  callbackClearSub = 1L << 3, /* call back clearing subscribed */
835  callbackNowSub = 1L << 4, /* call back now subscribed */
836  callbackNowAvail = 1L << 5, /* call back now available */
837  callbackBusy = 1L << 6, /* call back on busy */
838  callbackNoAnswer = 1L << 7, /* call back on no answer */
839  callbackReturnsRef = 1L << 8, /* call back returns a reference */
840  parkSub = 1L << 9, /* call park subscribed */
841  parkAvail = 1L << 10, /* call park available */
842  parkActive = 1L << 11, /* call park active */
843  parkRetrieveSub = 1L << 12, /* call park retrieve subscribed */
844  parkRetrieveWithID = 1L << 13, /* retrieve parked calls with IDs */
845  parkWithReturnedID = 1L << 14, /* park call to a specific remote ID */
846  parkWithGivenID = 1L << 18, /* for switch that requires ID for parking */
847  rejectable = 1L << 15, /* CA is rejectable */
848  deflectable = 1L << 16, /* CA is deflectable */
849  acceptable = 1L << 17, /* CA is acceptable */
850  voiceDetected =
851  1L
852  << 19, /* voice has been detected on this CA incase of an incoming call*/
853  callAnswdTSRings =
854  1L << 20 /* incoimng call was answered on TollSaver rings */
855  };
856 
857  typedef struct TELCARecord TELCARecord;
858  typedef TELCARecord *TELCAPtr;
859  typedef TELCAPtr *TELCAHandle;
860  struct TELCARecord
861  {
862  short caRef;
863  TELDNHandle hTELDN;
864  TELHandle hTEL;
865  short caState;
866  TELCAHandle relatedCA;
867  long connectTime; /* can be used by application to keep track of connect time
868  */
869  short intExt;
870  short callType;
871  short dialType;
872  short bearerType;
873  short rate;
874  StringPtr rmtDN;
875  StringPtr rmtPartyName;
876  StringPtr rmtSubaddress;
877  StringPtr routeDN;
878  StringPtr routePartyName;
879  StringPtr routeSubaddress;
880  short priority;
881  short conferenceLimit;
882  TELCAFeatureFlags featureFlags;
883  TELCAOtherFeatures otherFeatures;
884  long telCAPrivate;
885  long refCon;
886  long userData;
887  long reserved;
888  };
889 
890  /* Constants for HandleType in structure above */
891  enum
892  {
893  telHandleType = 0, /* feature requires a terminal handle */
894  telDNHandleType = 1, /* feature requires a DN handle */
895  telCAHandleType = 2 /* feature requires a CA handle */
896  };
897 
898  struct FeatureList
899  {
900  short featureID;
901  StringPtr featureName;
902  short handleType;
903  struct FeatureList *nextFeature;
904  };
905  typedef struct FeatureList FeatureList;
906  typedef FeatureList *FeatureListPtr;
907  /* CA MESSAGE STRUCTURES FOR MSGINFO */
909  {
910  StringPtr rmtDN;
911  StringPtr rmtName;
912  StringPtr rmtSubaddress;
913  short dialType;
914  };
915  typedef struct CAGenericMsgRec CAGenericMsgRec;
917  {
918  StringPtr userUserInfo;
919  };
922  {
923  TELCAHandle relatedCA;
924  };
925  typedef struct CAConfMsgRec CAConfMsgRec;
927  {
928  StringPtr rmtDN;
929  StringPtr rmtName;
930  StringPtr rmtSubaddress;
931  short dialType;
932  TELCAHandle prepCA;
933  };
934  typedef struct CATransfMsgRec CATransfMsgRec;
935  typedef CALLBACK_API(void, TelephoneTermMsgProcPtr)(TELHandle hTEL, long msg,
936  short mtype, short value,
937  long globals);
938  typedef CALLBACK_API(void, TelephoneDNMsgProcPtr)(
939  TELDNHandle hTELDN, long Msg, short mtype, short value,
940  ConstStr255Param rmtDN, ConstStr255Param rmtName,
941  ConstStr255Param rmtSubaddress, long globals);
942  typedef CALLBACK_API(void, TelephoneCAMsgProcPtr)(TELCAHandle hTELCA, long Msg,
943  short mtype, short value,
944  Ptr Msginfo, long globals);
945  typedef CALLBACK_API(void, TelephoneChooseIdleProcPtr)(void);
946  typedef STACK_UPP_TYPE(TelephoneTermMsgProcPtr) TelephoneTermMsgUPP;
947  typedef STACK_UPP_TYPE(TelephoneDNMsgProcPtr) TelephoneDNMsgUPP;
948  typedef STACK_UPP_TYPE(TelephoneCAMsgProcPtr) TelephoneCAMsgUPP;
949  typedef STACK_UPP_TYPE(TelephoneChooseIdleProcPtr) TelephoneChooseIdleUPP;
950 #if CALL_NOT_IN_CARBON
959  TelephoneTermMsgUPP
960  NewTelephoneTermMsgUPP(TelephoneTermMsgProcPtr userRoutine);
961 #if !OPAQUE_UPP_TYPES
962  enum
963  {
964  uppTelephoneTermMsgProcInfo = 0x0000EBC0
965  }; /* pascal no_return_value Func(4_bytes, 4_bytes, 2_bytes, 2_bytes, 4_bytes)
966  */
967 #ifdef __cplusplus
968  inline TelephoneTermMsgUPP
969  NewTelephoneTermMsgUPP(TelephoneTermMsgProcPtr userRoutine)
970  {
971  return (TelephoneTermMsgUPP)NewRoutineDescriptor((ProcPtr)(userRoutine),
972  uppTelephoneTermMsgProcInfo,
973  GetCurrentArchitecture());
974  }
975 #else
976 #define NewTelephoneTermMsgUPP(userRoutine) \
977  (TelephoneTermMsgUPP) NewRoutineDescriptor((ProcPtr)(userRoutine), \
978  uppTelephoneTermMsgProcInfo, \
979  GetCurrentArchitecture())
980 #endif
981 #endif
982 
991  TelephoneDNMsgUPP
992  NewTelephoneDNMsgUPP(TelephoneDNMsgProcPtr userRoutine);
993 #if !OPAQUE_UPP_TYPES
994  enum
995  {
996  uppTelephoneDNMsgProcInfo = 0x003FEBC0
997  }; /* pascal no_return_value Func(4_bytes, 4_bytes, 2_bytes, 2_bytes, 4_bytes,
998  4_bytes, 4_bytes, 4_bytes) */
999 #ifdef __cplusplus
1000  inline TelephoneDNMsgUPP
1001  NewTelephoneDNMsgUPP(TelephoneDNMsgProcPtr userRoutine)
1002  {
1003  return (TelephoneDNMsgUPP)NewRoutineDescriptor((ProcPtr)(userRoutine),
1004  uppTelephoneDNMsgProcInfo,
1005  GetCurrentArchitecture());
1006  }
1007 #else
1008 #define NewTelephoneDNMsgUPP(userRoutine) \
1009  (TelephoneDNMsgUPP) \
1010  NewRoutineDescriptor((ProcPtr)(userRoutine), uppTelephoneDNMsgProcInfo, \
1011  GetCurrentArchitecture())
1012 #endif
1013 #endif
1014 
1023  TelephoneCAMsgUPP
1024  NewTelephoneCAMsgUPP(TelephoneCAMsgProcPtr userRoutine);
1025 #if !OPAQUE_UPP_TYPES
1026  enum
1027  {
1028  uppTelephoneCAMsgProcInfo = 0x0003EBC0
1029  }; /* pascal no_return_value Func(4_bytes, 4_bytes, 2_bytes, 2_bytes, 4_bytes,
1030  4_bytes) */
1031 #ifdef __cplusplus
1032  inline TelephoneCAMsgUPP
1033  NewTelephoneCAMsgUPP(TelephoneCAMsgProcPtr userRoutine)
1034  {
1035  return (TelephoneCAMsgUPP)NewRoutineDescriptor((ProcPtr)(userRoutine),
1036  uppTelephoneCAMsgProcInfo,
1037  GetCurrentArchitecture());
1038  }
1039 #else
1040 #define NewTelephoneCAMsgUPP(userRoutine) \
1041  (TelephoneCAMsgUPP) \
1042  NewRoutineDescriptor((ProcPtr)(userRoutine), uppTelephoneCAMsgProcInfo, \
1043  GetCurrentArchitecture())
1044 #endif
1045 #endif
1046 
1055  TelephoneChooseIdleUPP
1056  NewTelephoneChooseIdleUPP(TelephoneChooseIdleProcPtr userRoutine);
1057 #if !OPAQUE_UPP_TYPES
1058  enum
1059  {
1060  uppTelephoneChooseIdleProcInfo = 0x00000000
1061  }; /* pascal no_return_value Func() */
1062 #ifdef __cplusplus
1063  inline TelephoneChooseIdleUPP
1064  NewTelephoneChooseIdleUPP(TelephoneChooseIdleProcPtr userRoutine)
1065  {
1066  return (TelephoneChooseIdleUPP)NewRoutineDescriptor(
1067  (ProcPtr)(userRoutine), uppTelephoneChooseIdleProcInfo,
1068  GetCurrentArchitecture());
1069  }
1070 #else
1071 #define NewTelephoneChooseIdleUPP(userRoutine) \
1072  (TelephoneChooseIdleUPP) NewRoutineDescriptor( \
1073  (ProcPtr)(userRoutine), uppTelephoneChooseIdleProcInfo, \
1074  GetCurrentArchitecture())
1075 #endif
1076 #endif
1077 
1086  void
1087  DisposeTelephoneTermMsgUPP(TelephoneTermMsgUPP userUPP);
1088 #if !OPAQUE_UPP_TYPES
1089 #ifdef __cplusplus
1090  inline void DisposeTelephoneTermMsgUPP(TelephoneTermMsgUPP userUPP)
1091  {
1092  DisposeRoutineDescriptor((UniversalProcPtr)userUPP);
1093  }
1094 #else
1095 #define DisposeTelephoneTermMsgUPP(userUPP) DisposeRoutineDescriptor(userUPP)
1096 #endif
1097 #endif
1098 
1107  void
1108  DisposeTelephoneDNMsgUPP(TelephoneDNMsgUPP userUPP);
1109 #if !OPAQUE_UPP_TYPES
1110 #ifdef __cplusplus
1111  inline void DisposeTelephoneDNMsgUPP(TelephoneDNMsgUPP userUPP)
1112  {
1113  DisposeRoutineDescriptor((UniversalProcPtr)userUPP);
1114  }
1115 #else
1116 #define DisposeTelephoneDNMsgUPP(userUPP) DisposeRoutineDescriptor(userUPP)
1117 #endif
1118 #endif
1119 
1128  void
1129  DisposeTelephoneCAMsgUPP(TelephoneCAMsgUPP userUPP);
1130 #if !OPAQUE_UPP_TYPES
1131 #ifdef __cplusplus
1132  inline void DisposeTelephoneCAMsgUPP(TelephoneCAMsgUPP userUPP)
1133  {
1134  DisposeRoutineDescriptor((UniversalProcPtr)userUPP);
1135  }
1136 #else
1137 #define DisposeTelephoneCAMsgUPP(userUPP) DisposeRoutineDescriptor(userUPP)
1138 #endif
1139 #endif
1140 
1149  void
1150  DisposeTelephoneChooseIdleUPP(TelephoneChooseIdleUPP userUPP);
1151 #if !OPAQUE_UPP_TYPES
1152 #ifdef __cplusplus
1153  inline void DisposeTelephoneChooseIdleUPP(TelephoneChooseIdleUPP userUPP)
1154  {
1155  DisposeRoutineDescriptor((UniversalProcPtr)userUPP);
1156  }
1157 #else
1158 #define DisposeTelephoneChooseIdleUPP(userUPP) DisposeRoutineDescriptor(userUPP)
1159 #endif
1160 #endif
1161 
1170  void
1171  InvokeTelephoneTermMsgUPP(TELHandle hTEL, long msg, short mtype, short value,
1172  long globals, TelephoneTermMsgUPP userUPP);
1173 #if !OPAQUE_UPP_TYPES
1174 #ifdef __cplusplus
1175  inline void InvokeTelephoneTermMsgUPP(TELHandle hTEL, long msg, short mtype,
1176  short value, long globals,
1177  TelephoneTermMsgUPP userUPP)
1178  {
1179  CALL_FIVE_PARAMETER_UPP(userUPP, uppTelephoneTermMsgProcInfo, hTEL, msg,
1180  mtype, value, globals);
1181  }
1182 #else
1183 #define InvokeTelephoneTermMsgUPP(hTEL, msg, mtype, value, globals, userUPP) \
1184  CALL_FIVE_PARAMETER_UPP((userUPP), uppTelephoneTermMsgProcInfo, (hTEL), \
1185  (msg), (mtype), (value), (globals))
1186 #endif
1187 #endif
1188 
1197  void
1198  InvokeTelephoneDNMsgUPP(TELDNHandle hTELDN, long Msg, short mtype, short value,
1199  ConstStr255Param rmtDN, ConstStr255Param rmtName,
1200  ConstStr255Param rmtSubaddress, long globals,
1201  TelephoneDNMsgUPP userUPP);
1202 #if !OPAQUE_UPP_TYPES
1203 #ifdef __cplusplus
1204  inline void InvokeTelephoneDNMsgUPP(TELDNHandle hTELDN, long Msg, short mtype,
1205  short value, ConstStr255Param rmtDN,
1206  ConstStr255Param rmtName,
1207  ConstStr255Param rmtSubaddress,
1208  long globals, TelephoneDNMsgUPP userUPP)
1209  {
1210  CALL_EIGHT_PARAMETER_UPP(userUPP, uppTelephoneDNMsgProcInfo, hTELDN, Msg,
1211  mtype, value, rmtDN, rmtName, rmtSubaddress,
1212  globals);
1213  }
1214 #else
1215 #define InvokeTelephoneDNMsgUPP(hTELDN, Msg, mtype, value, rmtDN, rmtName, \
1216  rmtSubaddress, globals, userUPP) \
1217  CALL_EIGHT_PARAMETER_UPP((userUPP), uppTelephoneDNMsgProcInfo, (hTELDN), \
1218  (Msg), (mtype), (value), (rmtDN), (rmtName), \
1219  (rmtSubaddress), (globals))
1220 #endif
1221 #endif
1222 
1231  void
1232  InvokeTelephoneCAMsgUPP(TELCAHandle hTELCA, long Msg, short mtype, short value,
1233  Ptr Msginfo, long globals, TelephoneCAMsgUPP userUPP);
1234 #if !OPAQUE_UPP_TYPES
1235 #ifdef __cplusplus
1236  inline void InvokeTelephoneCAMsgUPP(TELCAHandle hTELCA, long Msg, short mtype,
1237  short value, Ptr Msginfo, long globals,
1238  TelephoneCAMsgUPP userUPP)
1239  {
1240  CALL_SIX_PARAMETER_UPP(userUPP, uppTelephoneCAMsgProcInfo, hTELCA, Msg, mtype,
1241  value, Msginfo, globals);
1242  }
1243 #else
1244 #define InvokeTelephoneCAMsgUPP(hTELCA, Msg, mtype, value, Msginfo, globals, \
1245  userUPP) \
1246  CALL_SIX_PARAMETER_UPP((userUPP), uppTelephoneCAMsgProcInfo, (hTELCA), \
1247  (Msg), (mtype), (value), (Msginfo), (globals))
1248 #endif
1249 #endif
1250 
1259  void
1260  InvokeTelephoneChooseIdleUPP(TelephoneChooseIdleUPP userUPP);
1261 #if !OPAQUE_UPP_TYPES
1262 #ifdef __cplusplus
1263  inline void InvokeTelephoneChooseIdleUPP(TelephoneChooseIdleUPP userUPP)
1264  {
1265  CALL_ZERO_PARAMETER_UPP(userUPP, uppTelephoneChooseIdleProcInfo);
1266  }
1267 #else
1268 #define InvokeTelephoneChooseIdleUPP(userUPP) \
1269  CALL_ZERO_PARAMETER_UPP((userUPP), uppTelephoneChooseIdleProcInfo)
1270 #endif
1271 #endif
1272 
1273 #endif /* CALL_NOT_IN_CARBON */
1274 
1275 #if CALL_NOT_IN_CARBON || OLDROUTINENAMES
1276 /* support for pre-Carbon UPP routines: New...Proc and Call...Proc */
1277 #define NewTelephoneTermMsgProc(userRoutine) NewTelephoneTermMsgUPP(userRoutine)
1278 #define NewTelephoneDNMsgProc(userRoutine) NewTelephoneDNMsgUPP(userRoutine)
1279 #define NewTelephoneCAMsgProc(userRoutine) NewTelephoneCAMsgUPP(userRoutine)
1280 #define NewTelephoneChooseIdleProc(userRoutine) \
1281  NewTelephoneChooseIdleUPP(userRoutine)
1282 #define CallTelephoneTermMsgProc(userRoutine, hTEL, msg, mtype, value, \
1283  globals) \
1284  InvokeTelephoneTermMsgUPP(hTEL, msg, mtype, value, globals, userRoutine)
1285 #define CallTelephoneDNMsgProc(userRoutine, hTELDN, Msg, mtype, value, rmtDN, \
1286  rmtName, rmtSubaddress, globals) \
1287  InvokeTelephoneDNMsgUPP(hTELDN, Msg, mtype, value, rmtDN, rmtName, \
1288  rmtSubaddress, globals, userRoutine)
1289 #define CallTelephoneCAMsgProc(userRoutine, hTELCA, Msg, mtype, value, \
1290  Msginfo, globals) \
1291  InvokeTelephoneCAMsgUPP(hTELCA, Msg, mtype, value, Msginfo, globals, \
1292  userRoutine)
1293 #define CallTelephoneChooseIdleProc(userRoutine) \
1294  InvokeTelephoneChooseIdleUPP(userRoutine)
1295 #endif /* CALL_NOT_IN_CARBON */
1296 
1297 #endif /* CALL_NOT_IN_CARBON */
1298 
1299 #if CALL_NOT_IN_CARBON
1308  TELErr
1309  InitTEL(void);
1310 
1319  TELErr
1321 
1330  TELErr
1332 
1341  TELErr
1343 
1352  TELErr
1354 
1363  TELErr
1364  TELTermMsgHand(TELHandle hTEL, long eventMask, TelephoneTermMsgUPP msgProc,
1365  long globals);
1366 
1375  TELErr
1376  TELClrTermMsgHand(TELHandle hTEL, TelephoneTermMsgUPP msgProc);
1377 
1386  TELErr
1387  TELTermEventsSupp(TELHandle hTEL, long *eventMask);
1388 
1397  short
1398  TELGetProcID(Str255 name);
1399 
1408  TELHandle
1409  TELNew(short procID, TELFlags flags, long refCon, long userData);
1410 
1419  TELHandle
1420  TELNewWithResult(short procID, TELFlags flags, long refCon, long userData,
1421  TELErr *error);
1422 
1431  TELErr
1432  TELDefault(Ptr *theConfig, short procID, Boolean allocate);
1433 
1442  Boolean
1444 
1454 
1463  short
1464  TELSetConfig(TELHandle hTEL, Ptr thePtr);
1465 
1474  TELErr
1475  TELChoose(TELHandle *hTEL, Point where, TelephoneChooseIdleUPP idleProc);
1476 
1485  Handle
1486  TELSetupPreflight(short procID, long *magicCookie);
1487 
1496  void
1497  TELSetupSetup(short procID, Ptr theConfig, short count, DialogRef theDialog,
1498  long *magicCookie);
1499 
1508  Boolean
1509  TELSetupFilter(short procID, Ptr theConfig, short count, DialogRef theDialog,
1510  EventRecord *theEvent, short *theItem, long *magicCookie);
1511 
1520  void
1521  TELSetupItem(short procID, Ptr theConfig, short count, DialogRef theDialog,
1522  short *theItem, long *magicCookie);
1523 
1532  void
1533  TELSetupCleanup(short procID, Ptr theConfig, short count, DialogRef theDialog,
1534  long *magicCookie);
1535 
1544  void
1545  TELSetupXCleanup(short procID, Ptr theConfig, short count, DialogRef theDialog,
1546  Boolean OKed, long *magicCookie);
1547 
1556  void
1557  TELSetupPostflight(short procID);
1558 
1567  TELErr
1569 
1578  short
1579  TELCountDNs(TELHandle hTEL, short dnType, Boolean physical);
1580 
1589  TELErr
1590  TELDNLookupByIndex(TELHandle hTEL, short dnType, Boolean physical, short index,
1591  TELDNHandle *hTELDN);
1592 
1601  TELErr
1602  TELDNLookupByName(TELHandle hTEL, ConstStr255Param DN, TELDNHandle *hTELDN);
1603 
1612  TELErr
1614 
1623  TELErr
1625 
1634  TELErr
1636 
1645  TELErr
1646  TELGetDNFlags(TELDNHandle hTELDN, long *dnFeatureFlags, long *dnForwardFlags);
1647 
1656  TELErr
1657  TELDNMsgHand(TELDNHandle hTELDN, Boolean allDNs, long eventMask,
1658  TelephoneDNMsgUPP msgProc, long globals);
1659 
1668  TELErr
1669  TELClrDNMsgHand(TELDNHandle hTELDN, TelephoneDNMsgUPP msgProc);
1670 
1679  TELErr
1680  TELDNEventsSupp(TELDNHandle hTELDN, long *eventMask);
1681 
1690  short
1691  TELCountCAs(TELDNHandle hTELDN, short internalExternal);
1692 
1701  TELErr
1702  TELCALookup(TELDNHandle hTELDN, short internalExternal, short index,
1703  TELCAHandle *hTELCA);
1704 
1713  TELErr
1715 
1724  TELErr
1725  TELGetCAState(TELCAHandle hTELCA, short *state);
1726 
1735  TELErr
1736  TELGetCAFlags(TELCAHandle hTELCA, long *caFeatureFlags, long *caOtherFeatures);
1737 
1746  TELErr
1748 
1757  TELErr
1758  TELCAMsgHand(TELDNHandle hTELDN, long eventMask, TelephoneCAMsgUPP msgProc,
1759  long globals);
1760 
1769  TELErr
1770  TELClrCAMsgHand(TELDNHandle hTELDN, TelephoneCAMsgUPP msgProc);
1771 
1780  TELErr
1781  TELCAEventsSupp(TELDNHandle hTELDN, long *eventMask);
1782 
1791  TELErr
1792  TELSetupCall(TELDNHandle hTELDN, TELCAHandle *hTELCA, ConstStr255Param destDN,
1793  ConstStr255Param destName, ConstStr255Param destSubaddress,
1794  ConstStr255Param userUserInfo, short bearerType, short rate);
1795 
1804  TELErr
1806 
1815  TELErr
1816  TELDialDigits(TELCAHandle hTELCA, ConstStr255Param digits);
1817 
1826  TELErr
1828 
1837  TELErr
1838  TELRejectCall(TELCAHandle hTELCA, short reason);
1839 
1848  TELErr
1849  TELDeflectCall(TELCAHandle hTELCA, ConstStr255Param rmtDN,
1850  ConstStr255Param rmtName, ConstStr255Param rmtSubaddress);
1851 
1860  TELErr
1862 
1871  TELErr
1872  TELDrop(TELCAHandle hTELCA, ConstStr255Param userUserInfo);
1873 
1882  TELErr
1884 
1893  TELErr
1895 
1904  TELErr
1906  short numToConference);
1907 
1916  TELErr
1918 
1927  TELErr
1929 
1938  TELErr
1940 
1949  TELErr
1951 
1960  TELErr
1961  TELTransferBlind(TELCAHandle hTELCA, ConstStr255Param rmtDN,
1962  ConstStr255Param rmtName, ConstStr255Param rmtSubaddress);
1963 
1972  TELErr
1973  TELForwardSet(TELDNHandle hTELDN, ConstStr255Param forwardDN,
1974  ConstStr255Param forwardName, ConstStr255Param forwardSubaddress,
1975  short forwardType, short numrings);
1976 
1985  TELErr
1986  TELForwardClear(TELDNHandle hTELDN, short forwardType);
1987 
1996  TELErr
1997  TELCallbackSet(TELCAHandle hTELCA, short *callbackRef);
1998 
2007  TELErr
2008  TELCallbackClear(TELHandle hTEL, short callbackRef);
2009 
2018  TELErr
2019  TELCallbackNow(TELCAHandle hTELCA, short callbackRef);
2020 
2029  TELErr
2030  TELDNDSet(TELDNHandle hTELDN, short dndType);
2031 
2040  TELErr
2041  TELDNDClear(TELDNHandle hTELDN, short dndType);
2042 
2051  TELErr
2052  TELCallPickup(TELCAHandle hTELCA, ConstStr255Param pickupDN,
2053  short pickupGroupID);
2054 
2063  TELErr
2064  TELParkCall(TELCAHandle hTELCA, StringPtr *parkRetrieveID,
2065  ConstStr255Param parkID);
2066 
2075  TELErr
2076  TELRetrieveParkedCall(TELCAHandle hTELCA, ConstStr255Param parkRetrieveID);
2077 
2086  TELErr
2088 
2097  TELErr
2098  TELPaging(TELCAHandle hTELCA, short pageID);
2099 
2108  TELErr
2109  TELIntercom(TELCAHandle hTELCA, short intercomID);
2110 
2119  TELErr
2121 
2130  TELErr
2131  TELOtherFeatureImplement(TELHandle hTEL, Handle theHandle, short featureID);
2132 
2141  TELErr
2142  TELToolFunctions(TELHandle hTEL, short msgcode, Boolean *supportsIt);
2143 
2152  TELErr
2153  TELOtherFunction(TELHandle hTEL, Ptr paramblock, long size);
2154 
2163  TELErr
2164  TELGetHooksw(TELHandle hTEL, short hookType, Boolean *offHook);
2165 
2174  TELErr
2175  TELSetHooksw(TELHandle hTEL, short hookType, Boolean offHook);
2176 
2185  TELErr
2186  TELGetVolume(TELHandle hTEL, short volType, short *level, short *volState);
2187 
2196  TELErr
2197  TELSetVolume(TELHandle hTEL, short volType, short *level, short volState);
2198 
2207  TELErr
2208  TELAlert(TELHandle hTEL, short *level, short alertPattern);
2209 
2218  TELErr
2219  TELGetDisplay(TELHandle hTEL, short index, short *displayMode, StringPtr *text);
2220 
2229  TELErr
2230  TELSetDisplay(TELHandle hTEL, short index, short displayMode,
2231  ConstStr255Param text);
2232 
2241  void
2243 
2252  void
2253  TELActivate(TELHandle hTEL, Boolean activate);
2254 
2263  void
2264  TELResume(TELHandle hTEL, Boolean resume);
2265 
2274  Boolean
2275  TELMenu(TELHandle hTEL, short menuID, short item);
2276 
2285  void
2287 
2296  void
2297  TELGetToolName(short procID, Str255 name);
2298 
2307  Handle
2309 
2318  short
2320 
2329  TELErr
2330  TELIntlToEnglish(TELHandle hTEL, Ptr inputPtr, Ptr *outputPtr, short language);
2331 
2340  TELErr
2341  TELEnglishToIntl(TELHandle hTEL, Ptr inputPtr, Ptr *outputPtr, short language);
2342 
2351  TELErr
2352  TELGetDNSoundInput(TELDNHandle hTELDN, Str255 deviceName);
2353 
2362  TELErr
2363  TELDisposeDNSoundInput(TELDNHandle hTELDN, ConstStr255Param deviceName);
2364 
2373  TELErr
2375 
2384  TELErr
2386 
2395  TELErr
2396  TELGetHSSoundInput(TELHandle termHand, Str255 deviceName);
2397 
2406  TELErr
2407  TELDisposeHSSoundInput(TELHandle termHand, ConstStr255Param deviceName);
2408 
2417  TELErr
2419 
2428  TELErr
2430 
2439  TELErr
2440  TELDNSetAutoAnswer(TELDNHandle hTELDN, Boolean AutoAnswerOn);
2441 
2450  TELErr
2452 
2461  TELErr
2463 
2472  TELErr
2473  TELGetIndHSConnect(TELHandle termHand, Boolean *Connect);
2474 
2483  TELErr
2484  TELCAVoiceDetect(TELCAHandle hTELCA, Boolean VoiceDetectOn);
2485 
2494  TELErr
2495  TELCASilenceDetect(TELCAHandle hTELCA, Boolean DetectOn, long Period);
2496 
2505  TELErr
2507 
2516  TELErr
2518 
2527  TELErr
2529 
2538  TELErr
2539  TELHSSetDTMF(TELHandle termHand, Boolean dtmfOn);
2540 
2549  TELErr
2550  TELHSGetDTMF(TELHandle termHand, Boolean *dtmfOn);
2551 
2560  TELErr
2561  TELGetDNStatus(TELDNHandle hTELDN, long *inUse);
2562 
2571  TELErr
2572  TELGetDNProgressDet(TELDNHandle hTELDN, long selector, Boolean *prgDetOn);
2573 
2582  TELErr
2583  TELSetDNProgressDet(TELDNHandle hTELDN, long selector, Boolean prgDetOn);
2584 
2585 #endif /* CALL_NOT_IN_CARBON */
2586 
2587 #if PRAGMA_STRUCT_ALIGN
2588 #pragma options align = reset
2589 #elif PRAGMA_STRUCT_PACKPUSH
2590 #pragma pack(pop)
2591 #elif PRAGMA_STRUCT_PACK
2592 #pragma pack()
2593 #endif
2594 
2595 #ifdef PRAGMA_IMPORT_OFF
2596 #pragma import off
2597 #elif PRAGMA_IMPORT
2598 #pragma import reset
2599 #endif
2600 
2601 #ifdef __cplusplus
2602 }
2603 #endif
2604 
2605 #endif /* __TELEPHONES__ */
Communications Toolbox Utilities interfaces.
Component Manager Interfaces.
Dialog Manager interfaces.
Event Manager Interfaces.
OSErr codes.
Basic Macintosh data types.
unsigned char * StringPtr
Definition: MacTypes.h:477
unsigned char Boolean
Definition: MacTypes.h:318
#define CALL_ZERO_PARAMETER_UPP(upp, procInfo)
Definition: MixedMode.h:790
void DisposeRoutineDescriptor(UniversalProcPtr theUPP)
#define STACK_UPP_TYPE(name)
Definition: MixedMode.h:734
UniversalProcPtr NewRoutineDescriptor(ProcPtr theProc, ProcInfoType theProcInfo, ISAType theISA)
TELErr TELConferenceSplit(TELCAHandle hTELCA)
short TELGetTELVersion(void)
TELErr TELConferencePrep(TELCAHandle hTELCA1, TELCAHandle hTELCA2, short numToConference)
TELErr TELForwardSet(TELDNHandle hTELDN, ConstStr255Param forwardDN, ConstStr255Param forwardName, ConstStr255Param forwardSubaddress, short forwardType, short numrings)
TELErr TELGetInfo(TELHandle hTEL)
Boolean TELValidate(TELHandle hTEL)
TELErr TELGetDNStatus(TELDNHandle hTELDN, long *inUse)
TELErr TELDNGetDTMF(TELDNHandle hTELDN, Boolean *dtmfOn)
Handle TELGetVersion(TELHandle hTEL)
void TELSetupXCleanup(short procID, Ptr theConfig, short count, DialogRef theDialog, Boolean OKed, long *magicCookie)
TELErr TELHSSetDTMF(TELHandle termHand, Boolean dtmfOn)
TELErr TELCallbackClear(TELHandle hTEL, short callbackRef)
TELErr TELCADispose(TELCAHandle hTELCA)
TELErr TELCloseTerm(TELHandle hTEL)
void TELSetupCleanup(short procID, Ptr theConfig, short count, DialogRef theDialog, long *magicCookie)
TelephoneChooseIdleUPP NewTelephoneChooseIdleUPP(TelephoneChooseIdleProcPtr userRoutine)
TelephoneTermMsgUPP NewTelephoneTermMsgUPP(TelephoneTermMsgProcPtr userRoutine)
TELErr TELOpenTerm(TELHandle hTEL)
TELErr TELOtherFunction(TELHandle hTEL, Ptr paramblock, long size)
TELErr TELSetVolume(TELHandle hTEL, short volType, short *level, short volState)
TELErr TELIntlToEnglish(TELHandle hTEL, Ptr inputPtr, Ptr *outputPtr, short language)
void DisposeTelephoneCAMsgUPP(TelephoneCAMsgUPP userUPP)
TELErr TELDisposeHSSoundInput(TELHandle termHand, ConstStr255Param deviceName)
TELErr TELTermMsgHand(TELHandle hTEL, long eventMask, TelephoneTermMsgUPP msgProc, long globals)
TELErr TELGetDisplay(TELHandle hTEL, short index, short *displayMode, StringPtr *text)
TELErr TELPaging(TELCAHandle hTELCA, short pageID)
TELErr TELDNEventsSupp(TELDNHandle hTELDN, long *eventMask)
Ptr TELGetConfig(TELHandle hTEL)
short TELCountCAs(TELDNHandle hTELDN, short internalExternal)
TELErr TELGetHSSoundInput(TELHandle termHand, Str255 deviceName)
void DisposeTelephoneTermMsgUPP(TelephoneTermMsgUPP userUPP)
Boolean TELMenu(TELHandle hTEL, short menuID, short item)
TELErr TELDNSetDTMF(TELDNHandle hTELDN, Boolean dtmfOn)
void InvokeTelephoneChooseIdleUPP(TelephoneChooseIdleUPP userUPP)
short TELCountDNs(TELHandle hTEL, short dnType, Boolean physical)
void InvokeTelephoneCAMsgUPP(TELCAHandle hTELCA, long Msg, short mtype, short value, Ptr Msginfo, long globals, TelephoneCAMsgUPP userUPP)
void TELSetupPostflight(short procID)
TELErr TELSetupCall(TELDNHandle hTELDN, TELCAHandle *hTELCA, ConstStr255Param destDN, ConstStr255Param destName, ConstStr255Param destSubaddress, ConstStr255Param userUserInfo, short bearerType, short rate)
TELErr TELGetDNInfo(TELDNHandle hTELDN)
TELErr TELGetCAInfo(TELCAHandle hTELCA)
TELErr TELHSGetDTMF(TELHandle termHand, Boolean *dtmfOn)
Handle TELSetupPreflight(short procID, long *magicCookie)
void TELSetupItem(short procID, Ptr theConfig, short count, DialogRef theDialog, short *theItem, long *magicCookie)
TELErr TELGetTelNewErr(void)
TELErr TELDeflectCall(TELCAHandle hTELCA, ConstStr255Param rmtDN, ConstStr255Param rmtName, ConstStr255Param rmtSubaddress)
TELErr TELDialDigits(TELCAHandle hTELCA, ConstStr255Param digits)
TELErr TELDNSetAutoAnswer(TELDNHandle hTELDN, Boolean AutoAnswerOn)
TELErr InitTEL(void)
TELErr TELTransferPrep(TELCAHandle hTELCA1, TELCAHandle hTELCA2)
TELErr TELGetDNSoundOutput(TELDNHandle hTELDN, Component *SndOut)
TELErr TELVoiceMailAccess(TELCAHandle hTELCA)
TELErr TELTermEventsSupp(TELHandle hTEL, long *eventMask)
TELErr TELGetDNFlags(TELDNHandle hTELDN, long *dnFeatureFlags, long *dnForwardFlags)
TELErr TELCallbackNow(TELCAHandle hTELCA, short callbackRef)
TELErr TELDisposeDNSoundInput(TELDNHandle hTELDN, ConstStr255Param deviceName)
TELErr TELRejectCall(TELCAHandle hTELCA, short reason)
TELHandle TELNew(short procID, TELFlags flags, long refCon, long userData)
TELErr TELDisposeDNSoundOutput(TELDNHandle hTELDN, Component SndOut)
TELErr TELTransferBlind(TELCAHandle hTELCA, ConstStr255Param rmtDN, ConstStr255Param rmtName, ConstStr255Param rmtSubaddress)
TELErr TELDNTollSaverControl(TELDNHandle hTELDN, Boolean QuickAnswer)
TELErr TELAnswerCall(TELCAHandle hTELCA)
void TELActivate(TELHandle hTEL, Boolean activate)
void DisposeTelephoneChooseIdleUPP(TelephoneChooseIdleUPP userUPP)
TELErr TELDNMsgHand(TELDNHandle hTELDN, Boolean allDNs, long eventMask, TelephoneDNMsgUPP msgProc, long globals)
TELErr TELDisposeHSSoundOutput(TELHandle termHand, Component SndOut)
TELErr TELDrop(TELCAHandle hTELCA, ConstStr255Param userUserInfo)
TELErr TELToolFunctions(TELHandle hTEL, short msgcode, Boolean *supportsIt)
short TELGetProcID(Str255 name)
TELErr TELDispose(TELHandle hTEL)
TELErr TELDNDispose(TELDNHandle hTELDN)
TELErr TELForwardClear(TELDNHandle hTELDN, short forwardType)
TELErr TELAlert(TELHandle hTEL, short *level, short alertPattern)
void InvokeTelephoneTermMsgUPP(TELHandle hTEL, long msg, short mtype, short value, long globals, TelephoneTermMsgUPP userUPP)
TELErr TELDNDSet(TELDNHandle hTELDN, short dndType)
void TELResume(TELHandle hTEL, Boolean resume)
TELErr TELHold(TELCAHandle hTELCA)
TELErr TELCAMsgHand(TELDNHandle hTELDN, long eventMask, TelephoneCAMsgUPP msgProc, long globals)
TELErr TELChoose(TELHandle *hTEL, Point where, TelephoneChooseIdleUPP idleProc)
TELErr TELGetDNProgressDet(TELDNHandle hTELDN, long selector, Boolean *prgDetOn)
void TELGetToolName(short procID, Str255 name)
TELErr TELConnect(TELCAHandle hTELCA)
TELErr TELConferenceEstablish(TELCAHandle hTELCA1, TELCAHandle hTELCA2)
TELErr TELCallbackSet(TELCAHandle hTELCA, short *callbackRef)
TELErr TELClrTermMsgHand(TELHandle hTEL, TelephoneTermMsgUPP msgProc)
TELErr TELGetDNSoundInput(TELDNHandle hTELDN, Str255 deviceName)
TELErr TELAcceptCall(TELCAHandle hTELCA)
TELErr TELClrCAMsgHand(TELDNHandle hTELDN, TelephoneCAMsgUPP msgProc)
TELErr TELSetIndHSConnect(TELHandle termHand, Boolean Connect)
Boolean TELSetupFilter(short procID, Ptr theConfig, short count, DialogRef theDialog, EventRecord *theEvent, short *theItem, long *magicCookie)
TELErr TELResetTerm(TELHandle hTEL)
TELErr TELDNDClear(TELDNHandle hTELDN, short dndType)
TELErr TELDNLookupByName(TELHandle hTEL, ConstStr255Param DN, TELDNHandle *hTELDN)
TelephoneCAMsgUPP NewTelephoneCAMsgUPP(TelephoneCAMsgProcPtr userRoutine)
TELErr TELRetrieve(TELCAHandle hTELCA)
TELErr TELDefault(Ptr *theConfig, short procID, Boolean allocate)
TELErr TELSetHooksw(TELHandle hTEL, short hookType, Boolean offHook)
TELErr TELGetCAFlags(TELCAHandle hTELCA, long *caFeatureFlags, long *caOtherFeatures)
TELErr TELSetDNProgressDet(TELDNHandle hTELDN, long selector, Boolean prgDetOn)
TELErr TELGetVolume(TELHandle hTEL, short volType, short *level, short *volState)
TELErr TELCallPickup(TELCAHandle hTELCA, ConstStr255Param pickupDN, short pickupGroupID)
short TELSetConfig(TELHandle hTEL, Ptr thePtr)
TELErr TELGetIndHSConnect(TELHandle termHand, Boolean *Connect)
TELErr TELGetHSSoundOutput(TELHandle termHand, Component *SndOut)
TELErr TELCAEventsSupp(TELDNHandle hTELDN, long *eventMask)
void TELIdle(TELHandle hTEL)
void TELSetupSetup(short procID, Ptr theConfig, short count, DialogRef theDialog, long *magicCookie)
void InvokeTelephoneDNMsgUPP(TELDNHandle hTELDN, long Msg, short mtype, short value, ConstStr255Param rmtDN, ConstStr255Param rmtName, ConstStr255Param rmtSubaddress, long globals, TelephoneDNMsgUPP userUPP)
TELErr TELClrDNMsgHand(TELDNHandle hTELDN, TelephoneDNMsgUPP msgProc)
TELErr TELCASilenceDetect(TELCAHandle hTELCA, Boolean DetectOn, long Period)
TELErr TELDNLookupByIndex(TELHandle hTEL, short dnType, Boolean physical, short index, TELDNHandle *hTELDN)
TELHandle TELNewWithResult(short procID, TELFlags flags, long refCon, long userData, TELErr *error)
TELErr TELSetDisplay(TELHandle hTEL, short index, short displayMode, ConstStr255Param text)
TELErr TELOtherFeatureImplement(TELHandle hTEL, Handle theHandle, short featureID)
TELErr TELCAVoiceDetect(TELCAHandle hTELCA, Boolean VoiceDetectOn)
TELErr TELParkCall(TELCAHandle hTELCA, StringPtr *parkRetrieveID, ConstStr255Param parkID)
TELErr TELGetCAState(TELCAHandle hTELCA, short *state)
TELErr TELTransferEstablish(TELCAHandle hTELCA1, TELCAHandle hTELCA2)
TELErr TELEnglishToIntl(TELHandle hTEL, Ptr inputPtr, Ptr *outputPtr, short language)
TELErr TELOtherFeatureList(TELHandle hTEL, FeatureListPtr *fList)
TELErr TELCALookup(TELDNHandle hTELDN, short internalExternal, short index, TELCAHandle *hTELCA)
TelephoneDNMsgUPP NewTelephoneDNMsgUPP(TelephoneDNMsgProcPtr userRoutine)
TELErr TELRetrieveParkedCall(TELCAHandle hTELCA, ConstStr255Param parkRetrieveID)
void DisposeTelephoneDNMsgUPP(TelephoneDNMsgUPP userUPP)
TELErr TELIntercom(TELCAHandle hTELCA, short intercomID)
void TELEvent(TELHandle hTEL, const EventRecord *theEvent)
TELErr TELGetHooksw(TELHandle hTEL, short hookType, Boolean *offHook)
TELErr TELDNSelect(TELDNHandle hTELDN, Boolean select)
Definition: Telephones.h:922
Definition: Telephones.h:909
Definition: Telephones.h:927
Definition: Telephones.h:917
Definition: Components.h:214
Definition: Events.h:224
Definition: Telephones.h:899
Definition: Quickdraw.h:1648
Definition: MacTypes.h:520
Definition: Telephones.h:861
Definition: Telephones.h:772
Definition: Telephones.h:693
Definition: Telephones.h:671