xref: /reactos/dll/win32/tapi32/phone.c (revision 1734f297)
1 /*
2  * TAPI32 phone services
3  *
4  * Copyright 1999  Andreas Mohr
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2.1 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with this library; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19  */
20 
21 #include <stdarg.h>
22 
23 #include "windef.h"
24 #include "winbase.h"
25 #include "objbase.h"
26 #include "tapi.h"
27 #include "wine/debug.h"
28 
29 /*
30  * Additional TSPI functions:
31  * - voiceGetHandles
32  * - TSPI_ProviderInit
33  * - TSPI_ProviderShutdown
34  * - TSPI_ProviderEnumDevices
35  * - TSPI_ProviderConfig
36 */
37 WINE_DEFAULT_DEBUG_CHANNEL(tapi);
38 
39 /***********************************************************************
40  *		phoneClose (TAPI32.@)
41  */
42 DWORD WINAPI phoneClose(HPHONE hPhone)
43 {
44     FIXME("(%p), stub.\n", hPhone);
45     /* call TSPI function here ! */
46     return 0;
47 }
48 
49 /***********************************************************************
50  *		phoneConfigDialog (TAPI32.@)
51  */
52 DWORD WINAPI phoneConfigDialogA(DWORD dwDeviceID, HWND hwndOwner, LPCSTR lpszDeviceClass)
53 {
54     FIXME("(%08x, %p, %s): stub.\n", dwDeviceID, hwndOwner, lpszDeviceClass);
55     return 0;
56 }
57 
58 /***********************************************************************
59  *		phoneDevSpecific (TAPI32.@)
60  */
61 DWORD WINAPI phoneDevSpecific(HPHONE hPhone, LPVOID lpParams, DWORD dwSize)
62 {
63     FIXME("(%p, %p, %d): stub.\n", hPhone, lpParams, dwSize);
64     return 1;
65 }
66 
67 /***********************************************************************
68  *		phoneGetButtonInfo (TAPI32.@)
69  */
70 DWORD WINAPI phoneGetButtonInfoA(HPHONE hPhone, DWORD dwButtonLampID,
71                                 LPPHONEBUTTONINFO lpButtonInfo)
72 {
73     FIXME("(%p, %08x, %p): stub.\n", hPhone, dwButtonLampID, lpButtonInfo);
74     return 0;
75 }
76 
77 /***********************************************************************
78  *		phoneGetData (TAPI32.@)
79  */
80 DWORD WINAPI phoneGetData(HPHONE hPhone, DWORD dwDataID, LPVOID lpData, DWORD dwSize)
81 {
82     FIXME("(%p, %08x, %p, %d): stub.\n", hPhone, dwDataID, lpData, dwSize);
83     return 0;
84 }
85 
86 /***********************************************************************
87  *		phoneGetDevCaps (TAPI32.@)
88  */
89 DWORD WINAPI phoneGetDevCapsA(HPHONEAPP hPhoneApp, DWORD dwDeviceID,
90                DWORD dwAPIVersion, DWORD dwExtVersion, LPPHONECAPS lpPhoneCaps)
91 {
92     FIXME("(%p, %08x, %08x, %08x, %p): stub.\n", hPhoneApp, dwDeviceID, dwAPIVersion, dwExtVersion, lpPhoneCaps);
93     /* call TSPI function here ! */
94     return 0;
95 }
96 
97 /***********************************************************************
98  *		phoneGetDisplay (TAPI32.@)
99  */
100 DWORD WINAPI phoneGetDisplay(HPHONE hPhone, LPVARSTRING lpDisplay)
101 {
102     FIXME("(%p, %p): stub.\n", hPhone, lpDisplay);
103     return 0;
104 }
105 
106 /***********************************************************************
107  *		phoneGetGain (TAPI32.@)
108  */
109 DWORD WINAPI phoneGetGain(HPHONE hPhone, DWORD dwHookSwitchDev, LPDWORD lpdwGain)
110 {
111     FIXME("(%p, %08x, %p): stub.\n", hPhone, dwHookSwitchDev, lpdwGain);
112     /* call TSPI function here ! */
113     return 0;
114 }
115 
116 /***********************************************************************
117  *		phoneGetHookSwitch (TAPI32.@)
118  */
119 DWORD WINAPI phoneGetHookSwitch(HPHONE hPhone, LPDWORD lpdwHookSwitchDevs)
120 {
121    FIXME("(%p, %p): stub.\n", hPhone, lpdwHookSwitchDevs);
122     /* call TSPI function here ! */
123    return 0;
124 }
125 
126 /***********************************************************************
127  *		phoneGetID (TAPI32.@)
128  */
129 DWORD WINAPI phoneGetIDA(HPHONE hPhone, LPVARSTRING lpDeviceID,
130                         LPCSTR lpszDeviceClass)
131 {
132     FIXME("(%p, %p, %s): stub.\n", hPhone, lpDeviceID, lpszDeviceClass);
133     /* call TSPI function here ! */
134     return 0;
135 }
136 
137 /***********************************************************************
138  *		phoneGetIcon (TAPI32.@)
139  */
140 DWORD WINAPI phoneGetIconA(DWORD dwDeviceID, LPCSTR lpszDeviceClass,
141 		          HICON *lphIcon)
142 {
143     FIXME("(%08x, %s, %p): stub.\n", dwDeviceID, lpszDeviceClass, lphIcon);
144     /* call TSPI function here ! */
145     return 0;
146 }
147 
148 /***********************************************************************
149  *		phoneGetLamp (TAPI32.@)
150  */
151 DWORD WINAPI phoneGetLamp(HPHONE hPhone, DWORD dwButtonLampID,
152 		          LPDWORD lpdwLampMode)
153 {
154     FIXME("(%p, %08x, %p): stub.\n", hPhone, dwButtonLampID, lpdwLampMode);
155     return 0;
156 }
157 
158 /***********************************************************************
159  *              phoneGetMessage (TAPI32.@)
160  */
161 DWORD WINAPI phoneGetMessage(HPHONEAPP hPhoneApp, LPPHONEMESSAGE lpMessage, DWORD dwTimeout)
162 {
163     FIXME("(%p, %p, %08x): stub.\n", hPhoneApp, lpMessage, dwTimeout);
164     return 0;
165 }
166 
167 /***********************************************************************
168  *		phoneGetRing (TAPI32.@)
169  */
170 DWORD WINAPI phoneGetRing(HPHONE hPhone, LPDWORD lpdwRingMode, LPDWORD lpdwVolume)
171 {
172     FIXME("(%p, %p, %p): stub.\n", hPhone, lpdwRingMode, lpdwVolume);
173     return 0;
174 }
175 
176 /***********************************************************************
177  *		phoneGetStatus (TAPI32.@)
178  */
179 DWORD WINAPI phoneGetStatusA(HPHONE hPhone, LPPHONESTATUS lpPhoneStatus)
180 {
181     FIXME("(%p, %p): stub.\n", hPhone, lpPhoneStatus);
182     /* call TSPI function here ! */
183     return 0;
184 }
185 
186 /***********************************************************************
187  *		phoneGetStatusMessages (TAPI32.@)
188  */
189 DWORD WINAPI phoneGetStatusMessages(HPHONE hPhone, LPDWORD lpdwPhoneStates,
190 		          LPDWORD lpdwButtonModes, LPDWORD lpdwButtonStates)
191 {
192     FIXME("(%p, %p, %p, %p): stub.\n", hPhone, lpdwPhoneStates, lpdwButtonModes, lpdwButtonStates);
193     return 0;
194 }
195 
196 /***********************************************************************
197  *		phoneGetVolume (TAPI32.@)
198  */
199 DWORD WINAPI phoneGetVolume(HPHONE hPhone, DWORD dwHookSwitchDevs,
200 		            LPDWORD lpdwVolume)
201 {
202     FIXME("(%p, %08x, %p): stub.\n", hPhone, dwHookSwitchDevs, lpdwVolume);
203     /* call TSPI function here ! */
204     return 0;
205 }
206 
207 /***********************************************************************
208  *		phoneInitialize (TAPI32.@)
209  */
210 DWORD WINAPI phoneInitialize(LPHPHONEAPP lphPhoneApp, HINSTANCE hInstance, PHONECALLBACK lpfnCallback, LPCSTR lpszAppName, LPDWORD lpdwNumDevs)
211 {
212     FIXME("(%p, %p, %p, %s, %p): stub.\n", lphPhoneApp, hInstance, lpfnCallback, lpszAppName, lpdwNumDevs);
213     return 0;
214 }
215 
216 /***********************************************************************
217  *              phoneInitializeiExA (TAPI32.@)
218  */
219 DWORD WINAPI phoneInitializeExA(LPHPHONEAPP lphPhoneApp, HINSTANCE hInstance, PHONECALLBACK lpfnCallback, LPCSTR lpszAppName, LPDWORD lpdwNumDevs, LPDWORD lpdwAPIVersion, LPPHONEINITIALIZEEXPARAMS lpPhoneInitializeExParams)
220 {
221     FIXME("(%p, %p, %p, %s, %p, %p, %p): stub.\n", lphPhoneApp, hInstance, lpfnCallback, lpszAppName, lpdwNumDevs, lpdwAPIVersion, lpPhoneInitializeExParams);
222     *lpdwNumDevs = 0;
223     return 0;
224 }
225 
226 /***********************************************************************
227  *              phoneInitializeiExW (TAPI32.@)
228  */
229 DWORD WINAPI phoneInitializeExW(LPHPHONEAPP lphPhoneApp, HINSTANCE hInstance, PHONECALLBACK lpfnCallback, LPCWSTR lpszAppName, LPDWORD lpdwNumDevs, LPDWORD lpdwAPIVersion, LPPHONEINITIALIZEEXPARAMS lpPhoneInitializeExParams)
230 {
231     FIXME("(%p, %p, %p, %s, %p, %p, %p): stub.\n", lphPhoneApp, hInstance, lpfnCallback, debugstr_w(lpszAppName), lpdwNumDevs, lpdwAPIVersion, lpPhoneInitializeExParams);
232     *lpdwNumDevs = 0;
233     return 0;
234 }
235 
236 /***********************************************************************
237  *		phoneNegotiateAPIVersion (TAPI32.@)
238  */
239 DWORD WINAPI phoneNegotiateAPIVersion(HPHONEAPP hPhoneApp, DWORD dwDeviceID, DWORD dwAPILowVersion, DWORD dwAPIHighVersion, LPDWORD lpdwAPIVersion, LPPHONEEXTENSIONID lpExtensionID)
240 {
241     FIXME("(): stub.\n");
242     return 0;
243 }
244 
245 /***********************************************************************
246  *		phoneNegotiateExtVersion (TAPI32.@)
247  */
248 DWORD WINAPI phoneNegotiateExtVersion(HPHONEAPP hPhoneApp, DWORD dwDeviceID,
249 		                 DWORD dwAPIVersion, DWORD dwExtLowVersion,
250 				 DWORD dwExtHighVersion, LPDWORD lpdwExtVersion)
251 {
252     FIXME("(): stub.\n");
253     /* call TSPI function here ! */
254     return 0;
255 }
256 
257 /***********************************************************************
258  *		phoneOpen (TAPI32.@)
259  */
260 DWORD WINAPI phoneOpen(HPHONEAPP hPhoneApp, DWORD dwDeviceID, LPHPHONE lphPhone, DWORD dwAPIVersion, DWORD dwExtVersion, DWORD dwCallbackInstance, DWORD dwPrivileges)
261 {
262     FIXME("(): stub.\n");
263     /* call TSPI function here ! */
264     return 0;
265 }
266 
267 /***********************************************************************
268  *		phoneSetButtonInfo (TAPI32.@)
269  */
270 DWORD WINAPI phoneSetButtonInfoA(HPHONE hPhone, DWORD dwButtonLampID, LPPHONEBUTTONINFO lpButtonInfo)
271 {
272     FIXME("(%p, %08x, %p): stub.\n", hPhone, dwButtonLampID, lpButtonInfo);
273     return 0;
274 }
275 
276 /***********************************************************************
277  *		phoneSetData (TAPI32.@)
278  */
279 DWORD WINAPI phoneSetData(HPHONE hPhone, DWORD dwDataID, LPVOID lpData, DWORD dwSize)
280 {
281     FIXME("(%p, %08x, %p, %d): stub.\n", hPhone, dwDataID, lpData, dwSize);
282     return 1;
283 }
284 
285 /***********************************************************************
286  *		phoneSetDisplay (TAPI32.@)
287  */
288 DWORD WINAPI phoneSetDisplay(HPHONE hPhone, DWORD dwRow, DWORD dwColumn, LPCSTR lpszDisplay, DWORD dwSize)
289 {
290     FIXME("(%p, '%s' at %d/%d, len %d): stub.\n", hPhone, lpszDisplay, dwRow, dwColumn, dwSize);
291     return 1;
292 }
293 
294 /***********************************************************************
295  *		phoneSetGain (TAPI32.@)
296  */
297 DWORD WINAPI phoneSetGain(HPHONE hPhone, DWORD dwHookSwitchDev, DWORD dwGain)
298 {
299     FIXME("(%p, %08x, %d): stub.\n", hPhone, dwHookSwitchDev, dwGain);
300     /* call TSPI function here ! */
301     return 1;
302 }
303 
304 /***********************************************************************
305  *		phoneSetHookSwitch (TAPI32.@)
306  */
307 DWORD WINAPI phoneSetHookSwitch(HPHONE hPhone, DWORD dwHookSwitchDevs, DWORD dwHookSwitchMode)
308 {
309     FIXME("(%p, %08x, %08x): stub.\n", hPhone, dwHookSwitchDevs, dwHookSwitchMode);
310     /* call TSPI function here ! */
311     return 1;
312 }
313 
314 /***********************************************************************
315  *		phoneSetLamp (TAPI32.@)
316  */
317 DWORD WINAPI phoneSetLamp(HPHONE hPhone, DWORD dwButtonLampID, DWORD lpdwLampMode)
318 {
319     FIXME("(%p, %08x, %08x): stub.\n", hPhone, dwButtonLampID, lpdwLampMode);
320     return 1;
321 }
322 
323 /***********************************************************************
324  *		phoneSetRing (TAPI32.@)
325  */
326 DWORD WINAPI phoneSetRing(HPHONE hPhone, DWORD dwRingMode, DWORD dwVolume)
327 {
328     FIXME("(%p, %08x, %08x): stub.\n", hPhone, dwRingMode, dwVolume);
329     return 1;
330 }
331 
332 /***********************************************************************
333  *		phoneSetStatusMessages (TAPI32.@)
334  */
335 DWORD WINAPI phoneSetStatusMessages(HPHONE hPhone, DWORD dwPhoneStates, DWORD dwButtonModes, DWORD dwButtonStates)
336 {
337     FIXME("(%p, %08x, %08x, %08x): stub.\n", hPhone, dwPhoneStates, dwButtonModes, dwButtonStates);
338     /* call TSPI function here ! */
339     return 0; /* FIXME ? */
340 }
341 
342 /***********************************************************************
343  *		phoneSetVolume (TAPI32.@)
344  */
345 DWORD WINAPI phoneSetVolume(HPHONE hPhone, DWORD dwHookSwitchDev, DWORD dwVolume)
346 {
347     FIXME("(%p, %08x, %08x): stub.\n", hPhone, dwHookSwitchDev, dwVolume);
348     /* call TSPI function here ! */
349     return 1;
350 }
351 
352 /***********************************************************************
353  *		phoneShutdown (TAPI32.@)
354  */
355 DWORD WINAPI phoneShutdown(HPHONEAPP hPhoneApp)
356 {
357     FIXME("(%p): stub.\n", hPhoneApp);
358     return 0;
359 }
360