CPPMyth
Library to interoperate with MythTV server
Loading...
Searching...
No Matches
mythwsapi.h
1/*
2 * Copyright (C) 2014 Jean-Luc Barriere
3 *
4 * This Program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2, or (at your option)
7 * any later version.
8 *
9 * This Program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with this program; see the file COPYING. If not, write to
16 * the Free Software Foundation, 51 Franklin Street, Fifth Floor, Boston,
17 * MA 02110-1301 USA
18 * http://www.gnu.org/copyleft/gpl.html
19 *
20 */
21
22#ifndef MYTHWSAPI_H
23#define MYTHWSAPI_H
24
25#include "mythtypes.h"
26#include "mythwsstream.h"
27
28#define MYTH_API_VERSION_MIN_RANKING 0x00020000
29#define MYTH_API_VERSION_MAX_RANKING 0x0005FFFF
30
31namespace Myth
32{
33
34 namespace OS
35 {
36 class Mutex;
37 }
38
39 typedef enum
40 {
41 WS_Myth = 0,
42 WS_Capture = 1,
43 WS_Channel,
44 WS_Guide,
45 WS_Content,
46 WS_Dvr,
47 WS_INVALID, // Keep at last
48 } WSServiceId_t;
49
50 typedef struct
51 {
52 unsigned major;
53 unsigned minor;
54 unsigned ranking;
56
57 class WSRequest;
58 class WSResponse;
59
60 class WSAPI
61 {
62 public:
63 WSAPI(const std::string& server, unsigned port, const std::string& securityPin);
64 ~WSAPI();
65
66 WSAPI& WithAuthorization(const std::string& user, const std::string& password);
67 WSAPI& WithSSL(bool yesno);
68
69 unsigned CheckService();
70 WSServiceVersion_t CheckService(WSServiceId_t id);
71 void InvalidateService();
72 std::string GetServerHostName();
73 std::string GetBaseURL();
74 VersionPtr GetVersion();
75 std::string ResolveHostName(const std::string& hostname);
76
81 bool LoginUser();
82
86 SettingPtr GetHostSetting(const std::string& key, const std::string& hostname)
87 {
88 WSServiceVersion_t wsv = CheckService(WS_Myth);
89 if (wsv.ranking >= 0x00050000) return GetSetting5_0(key, hostname);
90 if (wsv.ranking >= 0x00020000) return GetSetting2_0(key, hostname);
91 return SettingPtr();
92 }
93
97 SettingPtr GetSetting(const std::string& key, bool myhost);
98
102 SettingMapPtr GetHostSettings(const std::string& hostname)
103 {
104 WSServiceVersion_t wsv = CheckService(WS_Myth);
105 if (wsv.ranking >= 0x00050000) return GetSettings5_0(hostname);
106 if (wsv.ranking >= 0x00020000) return GetSettings2_0(hostname);
107 return SettingMapPtr(new SettingMap);
108 }
109
113 SettingMapPtr GetSettings(bool myhost);
114
118 bool PutSetting(const std::string& key, const std::string& value, bool myhost)
119 {
120 WSServiceVersion_t wsv = CheckService(WS_Myth);
121 if (wsv.ranking >= 0x00020000) return PutSetting2_0(key, value, myhost);
122 return false;
123 }
124
128 CaptureCardListPtr GetCaptureCardList()
129 {
130 WSServiceVersion_t wsv = CheckService(WS_Capture);
131 if (wsv.ranking >= 0x00010004) return GetCaptureCardList1_4();
132 return CaptureCardListPtr(new CaptureCardList);
133 }
134
138 VideoSourceListPtr GetVideoSourceList()
139 {
140 WSServiceVersion_t wsv = CheckService(WS_Channel);
141 if (wsv.ranking >= 0x00010002) return GetVideoSourceList1_2();
142 return VideoSourceListPtr(new VideoSourceList);
143 }
144
148 ChannelListPtr GetChannelList(uint32_t sourceid, bool onlyVisible = true)
149 {
150 WSServiceVersion_t wsv = CheckService(WS_Channel);
151 if (wsv.ranking >= 0x00010005) return GetChannelList1_5(sourceid, onlyVisible);
152 if (wsv.ranking >= 0x00010002) return GetChannelList1_2(sourceid, onlyVisible);
153 return ChannelListPtr(new ChannelList);
154 };
155
159 ChannelPtr GetChannel(uint32_t chanid)
160 {
161 WSServiceVersion_t wsv = CheckService(WS_Channel);
162 if (wsv.ranking >= 0x00010002) return GetChannel1_2(chanid);
163 return ChannelPtr();
164 };
165
169 ProgramMapPtr GetProgramGuide(uint32_t chanid, time_t starttime, time_t endtime)
170 {
171 WSServiceVersion_t wsv = CheckService(WS_Guide);
172 if (wsv.ranking >= 0x00020002) return GetProgramList2_2(chanid, starttime, endtime);
173 if (wsv.ranking >= 0x00010000) return GetProgramGuide1_0(chanid, starttime, endtime);
174 return ProgramMapPtr(new ProgramMap);
175 }
176
180 std::map<uint32_t, ProgramMapPtr> GetProgramGuide(time_t starttime, time_t endtime)
181 {
182 WSServiceVersion_t wsv = CheckService(WS_Guide);
183 if (wsv.ranking >= 0x00020002) return GetProgramGuide2_2(starttime, endtime);
184 if (wsv.ranking >= 0x00010000) return GetProgramGuide1_0(starttime, endtime);
185 return std::map<uint32_t, ProgramMapPtr>();
186 }
187
191 ProgramListPtr GetRecordedList(unsigned n = 0, bool descending = false)
192 {
193 WSServiceVersion_t wsv = CheckService(WS_Dvr);
194 if (wsv.ranking >= 0x00010005) return GetRecordedList1_5(n, descending);
195 return ProgramListPtr(new ProgramList);
196 }
197
201 ProgramPtr GetRecorded(uint32_t chanid, time_t recstartts)
202 {
203 WSServiceVersion_t wsv = CheckService(WS_Dvr);
204 if (wsv.ranking >= 0x00010005) return GetRecorded1_5(chanid, recstartts);
205 return ProgramPtr();
206 }
207
211 ProgramPtr GetRecorded(uint32_t recordedid)
212 {
213 WSServiceVersion_t wsv = CheckService(WS_Dvr);
214 if (wsv.ranking >= 0x00060000) return GetRecorded6_0(recordedid);
215 return ProgramPtr();
216 }
217
221 bool UpdateRecordedWatchedStatus(uint32_t chanid, time_t recstartts, bool watched)
222 {
223 WSServiceVersion_t wsv = CheckService(WS_Dvr);
224 if (wsv.ranking >= 0x00040005) return UpdateRecordedWatchedStatus4_5(chanid, recstartts, watched);
225 return false;
226 }
227
231 bool UpdateRecordedWatchedStatus(uint32_t recordedid, bool watched)
232 {
233 WSServiceVersion_t wsv = CheckService(WS_Dvr);
234 if (wsv.ranking >= 0x00060000) return UpdateRecordedWatchedStatus6_0(recordedid, watched);
235 return false;
236 }
237
241 bool DeleteRecording(uint32_t chanid, time_t recstartts, bool forceDelete = false, bool allowRerecord = false)
242 {
243 WSServiceVersion_t wsv = CheckService(WS_Dvr);
244 if (wsv.ranking >= 0x00020001) return DeleteRecording2_1(chanid, recstartts, forceDelete, allowRerecord);
245 return false;
246 }
247
251 bool DeleteRecording(uint32_t recordedid, bool forceDelete = false, bool allowRerecord = false)
252 {
253 WSServiceVersion_t wsv = CheckService(WS_Dvr);
254 if (wsv.ranking >= 0x00060000) return DeleteRecording6_0(recordedid, forceDelete, allowRerecord);
255 return false;
256 }
257
261 bool UnDeleteRecording(uint32_t chanid, time_t recstartts)
262 {
263 WSServiceVersion_t wsv = CheckService(WS_Dvr);
264 if (wsv.ranking >= 0x00020001) return UnDeleteRecording2_1(chanid, recstartts);
265 return false;
266 }
267
271 bool UnDeleteRecording(uint32_t recordedid)
272 {
273 WSServiceVersion_t wsv = CheckService(WS_Dvr);
274 if (wsv.ranking >= 0x00060000) return UnDeleteRecording6_0(recordedid);
275 return false;
276 }
277
281 RecordScheduleListPtr GetRecordScheduleList()
282 {
283 WSServiceVersion_t wsv = CheckService(WS_Dvr);
284 if (wsv.ranking >= 0x00010005) return GetRecordScheduleList1_5();
285 return RecordScheduleListPtr(new RecordScheduleList);
286 }
287
291 RecordSchedulePtr GetRecordSchedule(uint32_t recordid)
292 {
293 WSServiceVersion_t wsv = CheckService(WS_Dvr);
294 if (wsv.ranking >= 0x00010005) return GetRecordSchedule1_5(recordid);
295 return RecordSchedulePtr();
296 }
297
302 {
303 WSServiceVersion_t wsv = CheckService(WS_Dvr);
304 if (wsv.ranking >= 0x00010007) return AddRecordSchedule1_7(record);
305 if (wsv.ranking >= 0x00010005) return AddRecordSchedule1_5(record);
306 return false;
307 }
308
313 {
314 WSServiceVersion_t wsv = CheckService(WS_Dvr);
315 if (wsv.ranking >= 0x00010007) return UpdateRecordSchedule1_7(record);
316 return false;
317 }
318
322 bool DisableRecordSchedule(uint32_t recordid)
323 {
324 WSServiceVersion_t wsv = CheckService(WS_Dvr);
325 if (wsv.ranking >= 0x00010005) return DisableRecordSchedule1_5(recordid);
326 return false;
327 }
328
332 bool EnableRecordSchedule(uint32_t recordid)
333 {
334 WSServiceVersion_t wsv = CheckService(WS_Dvr);
335 if (wsv.ranking >= 0x00010005) return EnableRecordSchedule1_5(recordid);
336 return false;
337 }
338
342 bool RemoveRecordSchedule(uint32_t recordid)
343 {
344 WSServiceVersion_t wsv = CheckService(WS_Dvr);
345 if (wsv.ranking >= 0x00010005) return RemoveRecordSchedule1_5(recordid);
346 return false;
347 }
348
352 ProgramListPtr GetUpcomingList()
353 {
354 WSServiceVersion_t wsv = CheckService(WS_Dvr);
355 if (wsv.ranking >= 0x00020002) return GetUpcomingList2_2();
356 if (wsv.ranking >= 0x00010005) return GetUpcomingList1_5();
357 return ProgramListPtr(new ProgramList);
358 }
359
363 ProgramListPtr GetConflictList()
364 {
365 WSServiceVersion_t wsv = CheckService(WS_Dvr);
366 if (wsv.ranking >= 0x00010005) return GetConflictList1_5();
367 return ProgramListPtr(new ProgramList);
368 }
369
373 ProgramListPtr GetExpiringList()
374 {
375 WSServiceVersion_t wsv = CheckService(WS_Dvr);
376 if (wsv.ranking >= 0x00010005) return GetExpiringList1_5();
377 return ProgramListPtr(new ProgramList);
378 }
379
383 StringListPtr GetRecGroupList()
384 {
385 WSServiceVersion_t wsv = CheckService(WS_Dvr);
386 if (wsv.ranking >= 0x00010005) return GetRecGroupList1_5();
387 return StringListPtr(new StringList);
388 }
389
393 WSStreamPtr GetFile(const std::string& filename, const std::string& sgname)
394 {
395 WSServiceVersion_t wsv = CheckService(WS_Content);
396 if (wsv.ranking >= 0x00010020) return GetFile1_32(filename, sgname);
397 return WSStreamPtr();
398 }
399
403 WSStreamPtr GetChannelIcon(uint32_t chanid, unsigned width = 0, unsigned height = 0)
404 {
405 WSServiceVersion_t wsv = CheckService(WS_Content);
406 if (wsv.ranking >= 0x00010020) return GetChannelIcon1_32(chanid, width, height);
407 return WSStreamPtr();
408 }
409
413 std::string GetChannelIconUrl(uint32_t chanid, unsigned width = 0, unsigned height = 0)
414 {
415 WSServiceVersion_t wsv = CheckService(WS_Content);
416 if (wsv.ranking >= 0x00010020) return GetChannelIconUrl1_32(chanid, width, height);
417 return "";
418 }
419
423 WSStreamPtr GetPreviewImage(uint32_t chanid, time_t recstartts, unsigned width = 0, unsigned height = 0)
424 {
425 WSServiceVersion_t wsv = CheckService(WS_Content);
426 if (wsv.ranking >= 0x00010020) return GetPreviewImage1_32(chanid, recstartts, width, height);
427 return WSStreamPtr();
428 }
429
433 std::string GetPreviewImageUrl(uint32_t chanid, time_t recstartts, unsigned width = 0, unsigned height = 0)
434 {
435 WSServiceVersion_t wsv = CheckService(WS_Content);
436 if (wsv.ranking >= 0x00010020) return GetPreviewImageUrl1_32(chanid, recstartts, width, height);
437 return "";
438 }
439
443 WSStreamPtr GetRecordingArtwork(const std::string& type, const std::string& inetref, uint16_t season, unsigned width = 0, unsigned height = 0)
444 {
445 WSServiceVersion_t wsv = CheckService(WS_Content);
446 if (wsv.ranking >= 0x00010020) return GetRecordingArtwork1_32(type, inetref, season, width, height);
447 return WSStreamPtr();
448 }
449
453 std::string GetRecordingArtworkUrl(const std::string& type, const std::string& inetref, uint16_t season, unsigned width = 0, unsigned height = 0)
454 {
455 WSServiceVersion_t wsv = CheckService(WS_Content);
456 if (wsv.ranking >= 0x00010020) return GetRecordingArtworkUrl1_32(type, inetref, season, width, height);
457 return "";
458 }
459
463 ArtworkListPtr GetRecordingArtworkList(uint32_t chanid, time_t recstartts)
464 {
465 WSServiceVersion_t wsv = CheckService(WS_Content);
466 if (wsv.ranking >= 0x00010020) return GetRecordingArtworkList1_32(chanid, recstartts);
467 return ArtworkListPtr(new ArtworkList);
468 }
469
476 MarkListPtr GetRecordedCommBreak(uint32_t recordedid, int unit)
477 {
478 WSServiceVersion_t wsv = CheckService(WS_Dvr);
479 if (wsv.ranking >= 0x00060001) return GetRecordedCommBreak6_1(recordedid, unit);
480 return MarkListPtr(new MarkList);
481 }
482
489 MarkListPtr GetRecordedCutList(uint32_t recordedid, int unit)
490 {
491 WSServiceVersion_t wsv = CheckService(WS_Dvr);
492 if (wsv.ranking >= 0x00060001) return GetRecordedCutList6_1(recordedid, unit);
493 return MarkListPtr(new MarkList);
494 }
495
503 bool SetSavedBookmark(uint32_t recordedid, int unit, int64_t value)
504 {
505 WSServiceVersion_t wsv = CheckService(WS_Dvr);
506 if (wsv.ranking >= 0x00060002) return SetSavedBookmark6_2(recordedid, unit, value);
507 return false;
508 }
509
510
517 int64_t GetSavedBookmark(uint32_t recordedid, int unit)
518 {
519 WSServiceVersion_t wsv = CheckService(WS_Dvr);
520 if (wsv.ranking >= 0x00060002) return GetSavedBookmark6_2(recordedid, unit);
521 return 0;
522 }
523
524 private:
525 OS::Mutex *m_mutex;
526 std::string m_server;
527 unsigned m_port;
528 bool m_ssl;
529 std::string m_securityPin;
530 std::string m_authUser;
531 std::string m_authPassword;
532 std::string m_authToken;
533 bool m_checked;
534 Version m_version;
535 std::string m_serverHostName;
536 WSServiceVersion_t m_serviceVersion[WS_INVALID + 1];
537 std::map<std::string, std::string> m_namedCache;
538
539 // prevent copy
540 WSAPI(const WSAPI&);
541 WSAPI& operator=(const WSAPI&);
542
543 class Query
544 {
545 WSAPI& m_api;
546 WSRequest * m_request;
547 public:
548 Query(WSAPI& api);
549 ~Query();
550 WSRequest& Request();
551 WSResponse * Execute(int maxRedirs, bool trustedLocation, bool followAny);
552 WSResponse * Execute() { return Execute(1, true, false); }
553 };
554
555 bool InitWSAPI();
556 bool GetServiceVersion(WSServiceId_t id, WSServiceVersion_t& version);
557 bool CheckServerHostName2_0();
558 bool CheckVersion2_0();
559
560 SettingPtr GetSetting2_0(const std::string& key, const std::string& hostname);
561 SettingPtr GetSetting5_0(const std::string& key, const std::string& hostname);
562 SettingMapPtr GetSettings2_0(const std::string& hostname);
563 SettingMapPtr GetSettings5_0(const std::string& hostname);
564 bool PutSetting2_0(const std::string& key, const std::string& value, bool myhost);
565
566 CaptureCardListPtr GetCaptureCardList1_4();
567
568 VideoSourceListPtr GetVideoSourceList1_2();
569 ChannelListPtr GetChannelList1_2(uint32_t sourceid, bool onlyVisible);
570 ChannelListPtr GetChannelList1_5(uint32_t sourceid, bool onlyVisible);
571 ChannelPtr GetChannel1_2(uint32_t chanid);
572
573 std::map<uint32_t, ProgramMapPtr> GetProgramGuide1_0(time_t starttime, time_t endtime);
574 ProgramMapPtr GetProgramGuide1_0(uint32_t chanid, time_t starttime, time_t endtime);
575 std::map<uint32_t, ProgramMapPtr> GetProgramGuide2_2(time_t starttime, time_t endtime);
576 ProgramMapPtr GetProgramList2_2(uint32_t chanid, time_t starttime, time_t endtime);
577
578 ProgramListPtr GetRecordedList1_5(unsigned n, bool descending);
579 ProgramPtr GetRecorded1_5(uint32_t chanid, time_t recstartts);
580 ProgramPtr GetRecorded6_0(uint32_t recordedid);
581 bool DeleteRecording2_1(uint32_t chanid, time_t recstartts, bool forceDelete, bool allowRerecord);
582 bool DeleteRecording6_0(uint32_t recordedid, bool forceDelete, bool allowRerecord);
583 bool UnDeleteRecording2_1(uint32_t chanid, time_t recstartts);
584 bool UnDeleteRecording6_0(uint32_t recordedid);
585 bool UpdateRecordedWatchedStatus4_5(uint32_t chanid, time_t recstartts, bool watched);
586 bool UpdateRecordedWatchedStatus6_0(uint32_t recordedid, bool watched);
587 MarkListPtr GetRecordedCommBreak6_1(uint32_t recordedid, int unit);
588 MarkListPtr GetRecordedCutList6_1(uint32_t recordedid, int unit);
589 bool SetSavedBookmark6_2(uint32_t recordedid, int unit, int64_t value);
590 int64_t GetSavedBookmark6_2(uint32_t recordedid, int unit);
591
592 RecordScheduleListPtr GetRecordScheduleList1_5();
593 RecordSchedulePtr GetRecordSchedule1_5(uint32_t recordid);
594 bool AddRecordSchedule1_5(RecordSchedule& record);
595 bool AddRecordSchedule1_7(RecordSchedule& record);
596 bool UpdateRecordSchedule1_7(RecordSchedule& record);
597 bool DisableRecordSchedule1_5(uint32_t recordid);
598 bool EnableRecordSchedule1_5(uint32_t recordid);
599 bool RemoveRecordSchedule1_5(uint32_t recordid);
600 ProgramListPtr GetUpcomingList1_5();
601 ProgramListPtr GetUpcomingList2_2();
602 ProgramListPtr GetConflictList1_5();
603 ProgramListPtr GetExpiringList1_5();
604 StringListPtr GetRecGroupList1_5();
605
606 WSStreamPtr GetFile1_32(const std::string& filename, const std::string& sgname);
607 WSStreamPtr GetChannelIcon1_32(uint32_t chanid, unsigned width, unsigned height);
608 std::string GetChannelIconUrl1_32(uint32_t chanid, unsigned width, unsigned height);
609 WSStreamPtr GetPreviewImage1_32(uint32_t chanid, time_t recstartts, unsigned width, unsigned height);
610 std::string GetPreviewImageUrl1_32(uint32_t chanid, time_t recstartts, unsigned width, unsigned height);
611 WSStreamPtr GetRecordingArtwork1_32(const std::string& type, const std::string& inetref, uint16_t season, unsigned width, unsigned height);
612 std::string GetRecordingArtworkUrl1_32(const std::string& type, const std::string& inetref, uint16_t season, unsigned width, unsigned height);
613 ArtworkListPtr GetRecordingArtworkList1_32(uint32_t chanid, time_t recstartts);
614 };
615
616}
617
618#endif /* MYTHWSAPI_H */
619
bool LoginUser()
GET Myth/LoginUser From v36.
bool PutSetting(const std::string &key, const std::string &value, bool myhost)
POST Myth/PutSetting.
Definition mythwsapi.h:118
ProgramPtr GetRecorded(uint32_t recordedid)
GET Dvr/GetRecorded.
Definition mythwsapi.h:211
WSStreamPtr GetFile(const std::string &filename, const std::string &sgname)
GET Content/GetFile.
Definition mythwsapi.h:393
WSStreamPtr GetRecordingArtwork(const std::string &type, const std::string &inetref, uint16_t season, unsigned width=0, unsigned height=0)
GET Content/GetRecordingArtwork.
Definition mythwsapi.h:443
WSStreamPtr GetChannelIcon(uint32_t chanid, unsigned width=0, unsigned height=0)
GET Guide/GetChannelIcon.
Definition mythwsapi.h:403
bool UnDeleteRecording(uint32_t recordedid)
POST Dvr/UnDeleteRecording.
Definition mythwsapi.h:271
std::map< uint32_t, ProgramMapPtr > GetProgramGuide(time_t starttime, time_t endtime)
GET Guide/GetProgramGuide.
Definition mythwsapi.h:180
CaptureCardListPtr GetCaptureCardList()
GET Capture/GetCaptureCardList.
Definition mythwsapi.h:128
SettingPtr GetSetting(const std::string &key, bool myhost)
GET Myth/GetSetting.
RecordSchedulePtr GetRecordSchedule(uint32_t recordid)
GET Dvr/GetRecordSchedule.
Definition mythwsapi.h:291
ChannelListPtr GetChannelList(uint32_t sourceid, bool onlyVisible=true)
GET Channel/GetChannelInfoList.
Definition mythwsapi.h:148
std::string GetChannelIconUrl(uint32_t chanid, unsigned width=0, unsigned height=0)
Returns URL for channel icon.
Definition mythwsapi.h:413
bool DeleteRecording(uint32_t chanid, time_t recstartts, bool forceDelete=false, bool allowRerecord=false)
POST Dvr/DeleteRecording.
Definition mythwsapi.h:241
std::string GetRecordingArtworkUrl(const std::string &type, const std::string &inetref, uint16_t season, unsigned width=0, unsigned height=0)
Returns URL for recording artwork.
Definition mythwsapi.h:453
bool RemoveRecordSchedule(uint32_t recordid)
POST Dvr/RemoveRecordSchedule.
Definition mythwsapi.h:342
ArtworkListPtr GetRecordingArtworkList(uint32_t chanid, time_t recstartts)
GET Content/GetRecordingArtworkList.
Definition mythwsapi.h:463
WSStreamPtr GetPreviewImage(uint32_t chanid, time_t recstartts, unsigned width=0, unsigned height=0)
GET Content/GetPreviewImage.
Definition mythwsapi.h:423
bool UpdateRecordedWatchedStatus(uint32_t chanid, time_t recstartts, bool watched)
POST Dvr/UpdateRecordedWatchedStatus.
Definition mythwsapi.h:221
ProgramMapPtr GetProgramGuide(uint32_t chanid, time_t starttime, time_t endtime)
GET Guide/GetProgramGuide for the given channel.
Definition mythwsapi.h:169
SettingPtr GetHostSetting(const std::string &key, const std::string &hostname)
GET Myth/GetSetting.
Definition mythwsapi.h:86
bool DeleteRecording(uint32_t recordedid, bool forceDelete=false, bool allowRerecord=false)
POST Dvr/DeleteRecording.
Definition mythwsapi.h:251
ProgramListPtr GetRecordedList(unsigned n=0, bool descending=false)
GET Dvr/GetRecordedList.
Definition mythwsapi.h:191
SettingMapPtr GetSettings(bool myhost)
GET Myth/GetSetting.
ProgramPtr GetRecorded(uint32_t chanid, time_t recstartts)
GET Dvr/GetRecorded.
Definition mythwsapi.h:201
ProgramListPtr GetUpcomingList()
GET Dvr/GetUpcomingList.
Definition mythwsapi.h:352
int64_t GetSavedBookmark(uint32_t recordedid, int unit)
GET Dvr/GetSavedBookmark.
Definition mythwsapi.h:517
MarkListPtr GetRecordedCommBreak(uint32_t recordedid, int unit)
GET Dvr/GetRecordedCommBreak.
Definition mythwsapi.h:476
ProgramListPtr GetExpiringList()
GET Dvr/GetExpiringList.
Definition mythwsapi.h:373
StringListPtr GetRecGroupList()
GET Dvr/GetRecGroupList.
Definition mythwsapi.h:383
std::string GetPreviewImageUrl(uint32_t chanid, time_t recstartts, unsigned width=0, unsigned height=0)
Returns URL for preview image.
Definition mythwsapi.h:433
VideoSourceListPtr GetVideoSourceList()
GET Channel/GetVideoSourceList.
Definition mythwsapi.h:138
bool AddRecordSchedule(RecordSchedule &record)
POST Dvr/AddRecordSchedule.
Definition mythwsapi.h:301
bool UpdateRecordedWatchedStatus(uint32_t recordedid, bool watched)
POST Dvr/UpdateRecordedWatchedStatus.
Definition mythwsapi.h:231
bool GetServiceVersion(WSServiceId_t id, WSServiceVersion_t &version)
bool DisableRecordSchedule(uint32_t recordid)
POST Dvr/DisableRecordSchedule.
Definition mythwsapi.h:322
bool UnDeleteRecording(uint32_t chanid, time_t recstartts)
POST Dvr/UnDeleteRecording.
Definition mythwsapi.h:261
bool SetSavedBookmark(uint32_t recordedid, int unit, int64_t value)
POST Dvr/SetSavedBookmark.
Definition mythwsapi.h:503
bool EnableRecordSchedule(uint32_t recordid)
POST Dvr/EnableRecordSchedule.
Definition mythwsapi.h:332
ProgramListPtr GetConflictList()
GET Dvr/GetConflictList.
Definition mythwsapi.h:363
bool UpdateRecordSchedule(RecordSchedule &record)
POST Dvr/UpdateRecordSchedule.
Definition mythwsapi.h:312
RecordScheduleListPtr GetRecordScheduleList()
GET Dvr/GetRecordScheduleList.
Definition mythwsapi.h:281
ChannelPtr GetChannel(uint32_t chanid)
GET Channel/GetChannelInfo.
Definition mythwsapi.h:159
MarkListPtr GetRecordedCutList(uint32_t recordedid, int unit)
GET Dvr/GetRecordedCutList.
Definition mythwsapi.h:489
SettingMapPtr GetHostSettings(const std::string &hostname)
GET Myth/GetSetting.
Definition mythwsapi.h:102
This is the main namespace that encloses all public classes.
Definition mythcontrol.h:30