Difference between revisions of "DVR Service"
Iamlindoro (talk | contribs) |
m (Reverted edits by Airdrummer (talk) to last revision by Pvr4me) |
||
(12 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
+ | =What is this?= | ||
+ | See [[Services API]] | ||
+ | |||
+ | |||
=Dvr Service API List= | =Dvr Service API List= | ||
Line 8: | Line 12: | ||
| align="center" |<b>Description</b> | | align="center" |<b>Description</b> | ||
|- | |- | ||
− | | [[DVR_Service# | + | | [[DVR_Service#GetUpcomingList | GetUpcomingList]] |
| align="center" | No | | align="center" | No | ||
| Query information on all upcoming programs matching recording rules. | | Query information on all upcoming programs matching recording rules. | ||
|- | |- | ||
− | | style="background:silver" | [[DVR_Service# | + | | style="background:silver" | [[DVR_Service#GetExpiringList | GetExpiringList]] |
| style="background:silver" align="center" | No | | style="background:silver" align="center" | No | ||
| style="background:silver" | Query information on recorded programs which are set to expire. | | style="background:silver" | Query information on recorded programs which are set to expire. | ||
|- | |- | ||
− | | [[DVR_Service# | + | | [[DVR_Service#GetRecordedList | GetRecordedList]] |
| align="center" | No | | align="center" | No | ||
| Query information on all recorded programs. | | Query information on all recorded programs. | ||
|- | |- | ||
− | | style="background:silver" | [[DVR_Service# | + | | style="background:silver" | [[DVR_Service#GetRecorded | GetRecorded]] |
| style="background:silver" align="center" | No | | style="background:silver" align="center" | No | ||
| style="background:silver" | Query information on a single item from recordings. | | style="background:silver" | Query information on a single item from recordings. | ||
|- | |- | ||
− | | [[DVR_Service# | + | | [[DVR_Service#GetConflictList | GetConflictList]] |
| align="center" | No | | align="center" | No | ||
| Query information on upcoming items which will not record due to conflicts. | | Query information on upcoming items which will not record due to conflicts. | ||
|- | |- | ||
− | | style="background:silver" | [[DVR_Service# | + | | style="background:silver" |[[DVR_Service#RemoveRecorded | RemoveRecorded]] |
+ | | style="background:silver" align="center" | Yes | ||
+ | | style="background:silver" | Remove a Recording from the database and disk. | ||
+ | |- | ||
+ | | [[DVR_Service#GetEncoderList | GetEncoderList]] | ||
+ | | align="center" | No | ||
+ | | Query information on configured capture devices, and their current activity. | ||
+ | |- | ||
+ | | style="background:silver" |[[DVR_Service#RemoveRecordSchedule | RemoveRecordSchedule]] | ||
+ | | style="background:silver" align="center" | Yes | ||
+ | | style="background:silver" | Remove a Recording rule. | ||
+ | |- | ||
+ | | [[DVR_Service#GetRecordScheduleList | GetRecordScheduleList]] | ||
+ | | align="center" | No | ||
+ | | Query all configured recording rules, and return them in a list. | ||
+ | |- | ||
+ | | style="background:silver" |[[DVR_Service#GetRecordSchedule | GetRecordSchedule]] | ||
| style="background:silver" align="center" | No | | style="background:silver" align="center" | No | ||
− | | style="background:silver" | | + | | style="background:silver" | Return a single recording rule, by record id. |
+ | |- | ||
+ | | [[DVR_Service#EnableRecordSchedule | EnableRecordSchedule]] | ||
+ | | align="center" | Yes | ||
+ | | Enable a recording schedule, by record id. | ||
+ | |- | ||
+ | | style="background:silver" |[[DVR_Service#DisableRecordSchedule | DisableRecordSchedule]] | ||
+ | | style="background:silver" align="center" | Yes | ||
+ | | style="background:silver" | Disable a recording schedule, by record id. | ||
|} | |} | ||
</center> | </center> | ||
Line 36: | Line 64: | ||
=Dvr APIs= | =Dvr APIs= | ||
− | == | + | ==GetUpcomingList== |
− | The <span style="color:LimeGreen"> | + | The <span style="color:LimeGreen">GetUpcomingList</span> API takes the following arguments: |
:<span style="color:SteelBlue">StartIndex</Span> ('''Optional''') | :<span style="color:SteelBlue">StartIndex</Span> ('''Optional''') | ||
Line 54: | Line 82: | ||
Example Query: | Example Query: | ||
− | <code>http://BackendServerIP:6544/Dvr/ | + | <code>http://BackendServerIP:6544/Dvr/GetUpcomingList?StartIndex=2&Count=1&ShowAll=true</code> |
Example Return: | Example Return: | ||
Line 82: | Line 110: | ||
<LastModified>2011-09-12T20:02:18</LastModified> | <LastModified>2011-09-12T20:02:18</LastModified> | ||
<ProgramFlags>13643781</ProgramFlags> | <ProgramFlags>13643781</ProgramFlags> | ||
− | < | + | <HostName>Holmes</HostName> |
+ | <FileName></FileName> | ||
<Airdate>2011-09-12</Airdate> | <Airdate>2011-09-12</Airdate> | ||
<Inetref>210841</Inetref> | <Inetref>210841</Inetref> | ||
Line 123: | Line 152: | ||
<RecordId>1126</RecordId> | <RecordId>1126</RecordId> | ||
<RecGroup>Default</RecGroup> | <RecGroup>Default</RecGroup> | ||
+ | <StorageGroup>Default</StorageGroup> | ||
<PlayGroup>Default</PlayGroup> | <PlayGroup>Default</PlayGroup> | ||
<RecType>0</RecType> | <RecType>0</RecType> | ||
Line 134: | Line 164: | ||
</ProgramList></pre> | </ProgramList></pre> | ||
− | == | + | ==GetExpiringList== |
− | The <span style="color:LimeGreen"> | + | The <span style="color:LimeGreen">GetExpiringList</span> API takes the following arguments: |
:<span style="color:SteelBlue">StartIndex</Span> ('''Optional''') | :<span style="color:SteelBlue">StartIndex</Span> ('''Optional''') | ||
Line 148: | Line 178: | ||
Example Query: | Example Query: | ||
− | <code>http://BackendServerIP:6544/Dvr/ | + | <code>http://BackendServerIP:6544/Dvr/GetExpiringList?StartIndex=2&Count=1</code> |
Example Return: | Example Return: | ||
Line 176: | Line 206: | ||
<LastModified>2011-09-12T20:02:18</LastModified> | <LastModified>2011-09-12T20:02:18</LastModified> | ||
<ProgramFlags>13643781</ProgramFlags> | <ProgramFlags>13643781</ProgramFlags> | ||
− | < | + | <HostName>Holmes</HostName> |
+ | <FileName></FileName> | ||
<Airdate>2011-09-12</Airdate> | <Airdate>2011-09-12</Airdate> | ||
<Inetref>210841</Inetref> | <Inetref>210841</Inetref> | ||
Line 217: | Line 248: | ||
<RecordId>1126</RecordId> | <RecordId>1126</RecordId> | ||
<RecGroup>Default</RecGroup> | <RecGroup>Default</RecGroup> | ||
+ | <StorageGroup>Default</StorageGroup> | ||
<PlayGroup>Default</PlayGroup> | <PlayGroup>Default</PlayGroup> | ||
<RecType>0</RecType> | <RecType>0</RecType> | ||
Line 228: | Line 260: | ||
</ProgramList></pre> | </ProgramList></pre> | ||
− | == | + | ==GetRecordedList== |
− | The <span style="color:LimeGreen"> | + | The <span style="color:LimeGreen">GetRecordedList</span> API takes the following arguments: |
:<span style="color:SteelBlue">StartIndex</Span> ('''Optional''') | :<span style="color:SteelBlue">StartIndex</Span> ('''Optional''') | ||
Line 246: | Line 278: | ||
Example Query: | Example Query: | ||
− | <code>http://BackendServerIP:6544/Dvr/ | + | <code>http://BackendServerIP:6544/Dvr/GetRecordedList?StartIndex=2&Count=1&Descending=true</code> |
Example Return: | Example Return: | ||
Line 274: | Line 306: | ||
<LastModified>2011-09-12T20:02:18</LastModified> | <LastModified>2011-09-12T20:02:18</LastModified> | ||
<ProgramFlags>13643781</ProgramFlags> | <ProgramFlags>13643781</ProgramFlags> | ||
− | < | + | <HostName>Holmes</HostName> |
+ | <FileName>1234_2011111111T09:00:00</FileName> | ||
<Airdate>2011-09-12</Airdate> | <Airdate>2011-09-12</Airdate> | ||
<Inetref>210841</Inetref> | <Inetref>210841</Inetref> | ||
Line 315: | Line 348: | ||
<RecordId>1126</RecordId> | <RecordId>1126</RecordId> | ||
<RecGroup>Default</RecGroup> | <RecGroup>Default</RecGroup> | ||
+ | <StorageGroup>Default</StorageGroup> | ||
<PlayGroup>Default</PlayGroup> | <PlayGroup>Default</PlayGroup> | ||
<RecType>0</RecType> | <RecType>0</RecType> | ||
Line 326: | Line 360: | ||
</ProgramList></pre> | </ProgramList></pre> | ||
− | == | + | ==GetRecorded== |
− | The <span style="color:LimeGreen"> | + | The <span style="color:LimeGreen">GetRecorded</span> API takes the following arguments: |
:<span style="color:SteelBlue">ChanId</Span> ('''Required''') | :<span style="color:SteelBlue">ChanId</Span> ('''Required''') | ||
Line 340: | Line 374: | ||
Example Query: | Example Query: | ||
− | <code>http://BackendServerIP:6544/ | + | <code>http://BackendServerIP:6544/Dvr/GetRecorded?StartTime=2011-10-03T19:00:00&ChanId=2066</code> |
Example Return: | Example Return: | ||
Line 360: | Line 394: | ||
<LastModified>2011-10-03T19:00:00</LastModified> | <LastModified>2011-10-03T19:00:00</LastModified> | ||
<ProgramFlags>4096</ProgramFlags> | <ProgramFlags>4096</ProgramFlags> | ||
− | < | + | <HostName></HostName> |
+ | <FileName>1234_2011111111T09:00:00</FileName> | ||
<Airdate>1981-01-26</Airdate> | <Airdate>1981-01-26</Airdate> | ||
Joe Kagan works up the courage to court Hester Sue, and learns she plans to marry an undertaker (Mel Stewart). | Joe Kagan works up the courage to court Hester Sue, and learns she plans to marry an undertaker (Mel Stewart). | ||
Line 402: | Line 437: | ||
<RecordId>0</RecordId> | <RecordId>0</RecordId> | ||
<RecGroup></RecGroup> | <RecGroup></RecGroup> | ||
+ | <StorageGroup>Default</StorageGroup> | ||
<PlayGroup></PlayGroup> | <PlayGroup></PlayGroup> | ||
<RecType>0</RecType> | <RecType>0</RecType> | ||
Line 412: | Line 448: | ||
</pre> | </pre> | ||
− | == | + | ==GetConflictList== |
− | The <span style="color:LimeGreen"> | + | The <span style="color:LimeGreen">GetConflictList</span> API takes the following arguments: |
− | :<span style="color:SteelBlue"> | + | :<span style="color:SteelBlue">StartIndex</Span> ('''Optional''') |
:: '''Parameter Type:''' Integer | :: '''Parameter Type:''' Integer | ||
− | :: The | + | :: The numerical starting index in the list of Conflicting programs. |
− | :<span style="color:SteelBlue"> | + | :<span style="color:SteelBlue">Count</Span> ('''Optional''') |
− | :: '''Parameter Type:''' | + | :: '''Parameter Type:''' Integer |
− | :: The | + | :: The number of items to return in the result. |
Example Query: | Example Query: | ||
− | <code>http://BackendServerIP:6544/ | + | <code>http://BackendServerIP:6544/Dvr/GetConflictList?StartIndex=0</code> |
Example Return: | Example Return: | ||
Line 446: | Line 482: | ||
<LastModified>2011-10-03T19:00:00</LastModified> | <LastModified>2011-10-03T19:00:00</LastModified> | ||
<ProgramFlags>4096</ProgramFlags> | <ProgramFlags>4096</ProgramFlags> | ||
− | < | + | <HostName></HostName> |
+ | <FileName></FileName> | ||
<Airdate>1981-01-26</Airdate> | <Airdate>1981-01-26</Airdate> | ||
Joe Kagan works up the courage to court Hester Sue, and learns she plans to marry an undertaker (Mel Stewart). | Joe Kagan works up the courage to court Hester Sue, and learns she plans to marry an undertaker (Mel Stewart). | ||
Line 488: | Line 525: | ||
<RecordId>0</RecordId> | <RecordId>0</RecordId> | ||
<RecGroup></RecGroup> | <RecGroup></RecGroup> | ||
+ | <StorageGroup>Default</StorageGroup> | ||
<PlayGroup></PlayGroup> | <PlayGroup></PlayGroup> | ||
<RecType>0</RecType> | <RecType>0</RecType> | ||
Line 498: | Line 536: | ||
</pre> | </pre> | ||
− | == | + | ==GetEncoderList== |
− | The <span style="color:LimeGreen"> | + | The <span style="color:LimeGreen">GetEncoderList</span> API takes no arguments. |
Example Query: | Example Query: | ||
− | <code>http://BackendServerIP:6544/Dvr/ | + | <code>http://BackendServerIP:6544/Dvr/GetEncoderList</code> |
Example Return: | Example Return: | ||
Line 534: | Line 572: | ||
<LastModified></LastModified> | <LastModified></LastModified> | ||
<ProgramFlags>0</ProgramFlags> | <ProgramFlags>0</ProgramFlags> | ||
− | < | + | <HostName></HostName> |
<Airdate></Airdate> | <Airdate></Airdate> | ||
<Inetref></Inetref> | <Inetref></Inetref> | ||
Line 575: | Line 613: | ||
<RecordId>0</RecordId> | <RecordId>0</RecordId> | ||
<RecGroup></RecGroup> | <RecGroup></RecGroup> | ||
+ | <StorageGroup>Default</StorageGroup> | ||
<PlayGroup></PlayGroup> | <PlayGroup></PlayGroup> | ||
<RecType>0</RecType> | <RecType>0</RecType> | ||
Line 587: | Line 626: | ||
</EncoderList> | </EncoderList> | ||
</pre> | </pre> | ||
+ | |||
+ | ==RemoveRecordSchedule== | ||
+ | |||
+ | The <span style="color:LimeGreen">RemoveRecordSchedule</span> API takes the following arguments: | ||
+ | |||
+ | :<span style="color:SteelBlue">RecordId</Span> ('''Required''') | ||
+ | :: '''Parameter Type:''' Integer | ||
+ | :: The database id of the recording rule to be removed. | ||
+ | |||
+ | Example Query: | ||
+ | |||
+ | <code>http://BackendServerIP:6544/Dvr/RemoveRecordSchedule?RecordId=106</code> | ||
+ | |||
+ | Example Return: | ||
+ | |||
+ | Returns a boolean value. True if the file was successfully removed, false if the removal failed for any reason. | ||
+ | |||
+ | <pre> | ||
+ | <bool>true</bool> | ||
+ | </pre> | ||
+ | |||
+ | ==GetRecordScheduleList== | ||
+ | |||
+ | The <span style="color:LimeGreen">GetRecordScheduleList</span> API takes the following arguments: | ||
+ | |||
+ | :<span style="color:SteelBlue">StartIndex</Span> ('''Optional''') | ||
+ | :: '''Parameter Type:''' Integer | ||
+ | :: The numerical starting index in the list of recording rules. | ||
+ | |||
+ | :<span style="color:SteelBlue">Count</Span> ('''Optional''') | ||
+ | :: '''Parameter Type:''' Integer | ||
+ | :: The number of items to return in the result. | ||
+ | |||
+ | Example Query: | ||
+ | |||
+ | <code>http://BackendServerIP:6544/Dvr/GetRecordScheduleList?StartIndex=0&Count=1</code> | ||
+ | |||
+ | Example Return: | ||
+ | |||
+ | <pre> | ||
+ | <RecRuleList version="1.0" serializerVersion="1.1"> | ||
+ | <StartIndex>0</StartIndex> | ||
+ | <Count>63</Count> | ||
+ | <TotalAvailable>63</TotalAvailable> | ||
+ | <AsOf>2011-11-09T19:22:03</AsOf> | ||
+ | <Version>0.25.20111102-1</Version> | ||
+ | <ProtoVer>69</ProtoVer> | ||
+ | <RecRules> | ||
+ | <RecRule> | ||
+ | <Id>1126</Id> | ||
+ | <ParentId>0</ParentId> | ||
+ | <Inactive>false</Inactive> | ||
+ | <Title>Alphas</Title> | ||
+ | <SubTitle/> | ||
+ | <Season>1</Season> | ||
+ | <Episode>1</Episode> | ||
+ | <Category>Drama</Category> | ||
+ | <StartTime>2011-11-09T00:00:00</StartTime> | ||
+ | <EndTime>2011-11-09T00:00:00</EndTime> | ||
+ | <SeriesId>EP01410873</SeriesId> | ||
+ | <ProgramId>EP014108730001</ProgramId> | ||
+ | <Inetref>210841</Inetref> | ||
+ | <ChanId>3736</ChanId> | ||
+ | <CallSign>SYFYHD</CallSign> | ||
+ | <Day>4</Day> | ||
+ | <Time>22:00:00</Time> | ||
+ | <FindId>734696</FindId> | ||
+ | <Type>3</Type> | ||
+ | <SearchType>0</SearchType> | ||
+ | <RecPriority>1</RecPriority> | ||
+ | <PreferredInput>0</PreferredInput> | ||
+ | <StartOffset>0</StartOffset> | ||
+ | <EndOffset>0</EndOffset> | ||
+ | <DupMethod>6</DupMethod> | ||
+ | <DupIn>15</DupIn> | ||
+ | <Filter>0</Filter> | ||
+ | <RecProfile>Default</RecProfile> | ||
+ | <RecGroup>Default</RecGroup> | ||
+ | <StorageGroup>Default</StorageGroup> | ||
+ | <PlayGroup>Default</PlayGroup> | ||
+ | <AutoExpire>true</AutoExpire> | ||
+ | <MaxEpisodes>0</MaxEpisodes> | ||
+ | <MaxNewest>false</MaxNewest> | ||
+ | <AutoCommflag>true</AutoCommflag> | ||
+ | <AutoTranscode>false</AutoTranscode> | ||
+ | <AutoMetaLookup>true</AutoMetaLookup> | ||
+ | <AutoUserJob1>false</AutoUserJob1> | ||
+ | <AutoUserJob2>false</AutoUserJob2> | ||
+ | <AutoUserJob3>false</AutoUserJob3> | ||
+ | <AutoUserJob4>false</AutoUserJob4> | ||
+ | <Transcoder>0</Transcoder> | ||
+ | <NextRecording/> | ||
+ | <LastRecorded>2011-09-26T18:59:59</LastRecorded> | ||
+ | <LastDeleted>2011-10-31T17:41:57</LastDeleted> | ||
+ | <AverageDelay>0</AverageDelay> | ||
+ | </RecRule> | ||
+ | </RecRules> | ||
+ | </RecRuleList> | ||
+ | </pre> | ||
+ | |||
+ | ==GetRecordSchedule== | ||
+ | |||
+ | The <span style="color:LimeGreen">GetRecordSchedule</span> API takes the following arguments: | ||
+ | |||
+ | :<span style="color:SteelBlue">RecordId</Span> ('''Required''') | ||
+ | :: '''Parameter Type:''' Integer | ||
+ | :: The Recording rule ID for the rule to be looked up. | ||
+ | |||
+ | Example Query: | ||
+ | |||
+ | <code>http://BackendServerIP:6544/Dvr/GetRecordSchedule?RecordId=1234</code> | ||
+ | |||
+ | Example Return: | ||
+ | |||
+ | <pre> | ||
+ | <RecRule version="1.0" serializerVersion="1.1"> | ||
+ | <Id>1126</Id> | ||
+ | <ParentId>0</ParentId> | ||
+ | <Inactive>false</Inactive> | ||
+ | <Title>Alphas</Title> | ||
+ | <SubTitle/> | ||
+ | <Season>1</Season> | ||
+ | <Episode>1</Episode> | ||
+ | <Category>Drama</Category> | ||
+ | <StartTime>2011-11-09T00:00:00</StartTime> | ||
+ | <EndTime>2011-11-09T00:00:00</EndTime> | ||
+ | <SeriesId>EP01410873</SeriesId> | ||
+ | <ProgramId>EP014108730001</ProgramId> | ||
+ | <Inetref>210841</Inetref> | ||
+ | <ChanId>3736</ChanId> | ||
+ | <CallSign>SYFYHD</CallSign> | ||
+ | <Day>4</Day> | ||
+ | <Time>22:00:00</Time> | ||
+ | <FindId>734696</FindId> | ||
+ | <Type>3</Type> | ||
+ | <SearchType>0</SearchType> | ||
+ | <RecPriority>1</RecPriority> | ||
+ | <PreferredInput>0</PreferredInput> | ||
+ | <StartOffset>0</StartOffset> | ||
+ | <EndOffset>0</EndOffset> | ||
+ | <DupMethod>6</DupMethod> | ||
+ | <DupIn>15</DupIn> | ||
+ | <Filter>0</Filter> | ||
+ | <RecProfile>Default</RecProfile> | ||
+ | <RecGroup>Default</RecGroup> | ||
+ | <StorageGroup>Default</StorageGroup> | ||
+ | <PlayGroup>Default</PlayGroup> | ||
+ | <AutoExpire>true</AutoExpire> | ||
+ | <MaxEpisodes>0</MaxEpisodes> | ||
+ | <MaxNewest>false</MaxNewest> | ||
+ | <AutoCommflag>true</AutoCommflag> | ||
+ | <AutoTranscode>false</AutoTranscode> | ||
+ | <AutoMetaLookup>true</AutoMetaLookup> | ||
+ | <AutoUserJob1>false</AutoUserJob1> | ||
+ | <AutoUserJob2>false</AutoUserJob2> | ||
+ | <AutoUserJob3>false</AutoUserJob3> | ||
+ | <AutoUserJob4>false</AutoUserJob4> | ||
+ | <Transcoder>0</Transcoder> | ||
+ | <NextRecording/> | ||
+ | <LastRecorded>2011-09-26T18:59:59</LastRecorded> | ||
+ | <LastDeleted>2011-10-31T17:41:57</LastDeleted> | ||
+ | <AverageDelay>0</AverageDelay> | ||
+ | </RecRule> | ||
+ | </pre> | ||
+ | ==EnableRecordSchedule== | ||
+ | |||
+ | The <span style="color:LimeGreen">EnableRecordSchedule</span> API takes the following arguments: | ||
+ | |||
+ | :<span style="color:SteelBlue">RecordId</Span> ('''Required''') | ||
+ | :: '''Parameter Type:''' Integer | ||
+ | :: The database id of the recording rule to be enabled. | ||
+ | |||
+ | Example Query: | ||
+ | |||
+ | <code>http://BackendServerIP:6544/Dvr/EnableRecordSchedule?RecordId=106</code> | ||
+ | |||
+ | Example Return: | ||
+ | |||
+ | Returns a boolean value. True if the file was successfully removed, false if the removal failed for any reason. | ||
+ | |||
+ | <pre> | ||
+ | <bool>true</bool> | ||
+ | </pre> | ||
+ | |||
+ | ==DisableRecordSchedule== | ||
+ | |||
+ | The <span style="color:LimeGreen">DisableRecordSchedule</span> API takes the following arguments: | ||
+ | |||
+ | :<span style="color:SteelBlue">RecordId</Span> ('''Required''') | ||
+ | :: '''Parameter Type:''' Integer | ||
+ | :: The database id of the recording rule to be removed. | ||
+ | |||
+ | Example Query: | ||
+ | |||
+ | <code>http://BackendServerIP:6544/Dvr/DisableRecordSchedule?RecordId=106</code> | ||
+ | |||
+ | Example Return: | ||
+ | |||
+ | Returns a boolean value. True if the file was successfully removed, false if the removal failed for any reason. | ||
+ | |||
+ | <pre> | ||
+ | <bool>true</bool> | ||
+ | </pre> | ||
+ | |||
+ | [[Category:Services_API]] |
Revision as of 19:13, 19 November 2013
Contents
What is this?
See Services API
Dvr Service API List
API Command | POST Required? | Description |
GetUpcomingList | No | Query information on all upcoming programs matching recording rules. |
GetExpiringList | No | Query information on recorded programs which are set to expire. |
GetRecordedList | No | Query information on all recorded programs. |
GetRecorded | No | Query information on a single item from recordings. |
GetConflictList | No | Query information on upcoming items which will not record due to conflicts. |
RemoveRecorded | Yes | Remove a Recording from the database and disk. |
GetEncoderList | No | Query information on configured capture devices, and their current activity. |
RemoveRecordSchedule | Yes | Remove a Recording rule. |
GetRecordScheduleList | No | Query all configured recording rules, and return them in a list. |
GetRecordSchedule | No | Return a single recording rule, by record id. |
EnableRecordSchedule | Yes | Enable a recording schedule, by record id. |
DisableRecordSchedule | Yes | Disable a recording schedule, by record id. |
Dvr APIs
GetUpcomingList
The GetUpcomingList API takes the following arguments:
- StartIndex (Optional)
- Parameter Type: Integer
- The numerical starting index in the list of upcoming programs.
- Count (Optional)
- Parameter Type: Integer
- The number of items to return in the result.
- ShowAll (Optional)
- Parameter Type: Boolean
- Show all items which match recording rules, regardless of whether or not they will record (conflicts, previously recorded, etc.).
Example Query:
http://BackendServerIP:6544/Dvr/GetUpcomingList?StartIndex=2&Count=1&ShowAll=true
Example Return:
<?xml version="1.0" encoding="UTF-8"?> <ProgramList version="1.0" serializerVersion="1.1"> <StartIndex>2</StartIndex> <Count>1</Count> <TotalAvailable>15</TotalAvailable> <AsOf>2011-10-02T16:09:52</AsOf> <Version>0.25.20110928-1</Version> <ProtoVer>69</ProtoVer> <Programs> <Program> <StartTime>2011-09-12T19:00:00</StartTime> <EndTime>2011-09-12T20:01:00</EndTime> <Title>Alphas</Title> <SubTitle>Blind Spot</SubTitle> <Category>Drama</Category> <CatType></CatType> <Repeat>true</Repeat> <SeriesId>EP01410873</SeriesId> <ProgramId>EP014108730010</ProgramId> <Stars>0</Stars> <FileSize>5143875332</FileSize> <LastModified>2011-09-12T20:02:18</LastModified> <ProgramFlags>13643781</ProgramFlags> <HostName>Holmes</HostName> <FileName></FileName> <Airdate>2011-09-12</Airdate> <Inetref>210841</Inetref> <Season>1</Season> <Episode>9</Episode> <Channel> <ChanId>34736</ChanId> <ChanNum>736</ChanNum> <CallSign>SYFYHD</CallSign> <IconURL></IconURL> <ChannelName>Syfy HD</ChannelName> <MplexId>0</MplexId> <TransportId>0</TransportId> <ServiceId>0</ServiceId> <NetworkId>0</NetworkId> <ATSCMajorChan>0</ATSCMajorChan> <ATSCMinorChan>0</ATSCMinorChan> <Format></Format> <Modulation></Modulation> <Frequency>0</Frequency> <FrequencyId></FrequencyId> <FrequencyTable></FrequencyTable> <FineTune>0</FineTune> <SIStandard></SIStandard> <ChanFilters></ChanFilters> <SourceId>0</SourceId> <InputId>0</InputId> <CommFree>0</CommFree> <UseEIT>false</UseEIT> <Visible>false</Visible> <XMLTVID></XMLTVID> <DefaultAuth></DefaultAuth> <Programs/> </Channel> <Recording> <Status>-3</Status> <Priority>0</Priority> <StartTs>2011-09-12T18:59:00</StartTs> <EndTs>2011-09-12T20:02:15</EndTs> <RecordId>1126</RecordId> <RecGroup>Default</RecGroup> <StorageGroup>Default</StorageGroup> <PlayGroup>Default</PlayGroup> <RecType>0</RecType> <DupInType>15</DupInType> <DupMethod>6</DupMethod> <EncoderId>0</EncoderId> <Profile>Default</Profile> </Recording> </Program> </Programs> </ProgramList>
GetExpiringList
The GetExpiringList API takes the following arguments:
- StartIndex (Optional)
- Parameter Type: Integer
- The numerical starting index in the list of expiring programs.
- Count (Optional)
- Parameter Type: Integer
- The number of items to return in the result.
Example Query:
http://BackendServerIP:6544/Dvr/GetExpiringList?StartIndex=2&Count=1
Example Return:
<?xml version="1.0" encoding="UTF-8"?> <ProgramList version="1.0" serializerVersion="1.1"> <StartIndex>2</StartIndex> <Count>1</Count> <TotalAvailable>15</TotalAvailable> <AsOf>2011-10-02T16:09:52</AsOf> <Version>0.25.20110928-1</Version> <ProtoVer>69</ProtoVer> <Programs> <Program> <StartTime>2011-09-12T19:00:00</StartTime> <EndTime>2011-09-12T20:01:00</EndTime> <Title>Alphas</Title> <SubTitle>Blind Spot</SubTitle> <Category>Drama</Category> <CatType></CatType> <Repeat>true</Repeat> <SeriesId>EP01410873</SeriesId> <ProgramId>EP014108730010</ProgramId> <Stars>0</Stars> <FileSize>5143875332</FileSize> <LastModified>2011-09-12T20:02:18</LastModified> <ProgramFlags>13643781</ProgramFlags> <HostName>Holmes</HostName> <FileName></FileName> <Airdate>2011-09-12</Airdate> <Inetref>210841</Inetref> <Season>1</Season> <Episode>9</Episode> <Channel> <ChanId>34736</ChanId> <ChanNum>736</ChanNum> <CallSign>SYFYHD</CallSign> <IconURL></IconURL> <ChannelName>Syfy HD</ChannelName> <MplexId>0</MplexId> <TransportId>0</TransportId> <ServiceId>0</ServiceId> <NetworkId>0</NetworkId> <ATSCMajorChan>0</ATSCMajorChan> <ATSCMinorChan>0</ATSCMinorChan> <Format></Format> <Modulation></Modulation> <Frequency>0</Frequency> <FrequencyId></FrequencyId> <FrequencyTable></FrequencyTable> <FineTune>0</FineTune> <SIStandard></SIStandard> <ChanFilters></ChanFilters> <SourceId>0</SourceId> <InputId>0</InputId> <CommFree>0</CommFree> <UseEIT>false</UseEIT> <Visible>false</Visible> <XMLTVID></XMLTVID> <DefaultAuth></DefaultAuth> <Programs/> </Channel> <Recording> <Status>-3</Status> <Priority>0</Priority> <StartTs>2011-09-12T18:59:00</StartTs> <EndTs>2011-09-12T20:02:15</EndTs> <RecordId>1126</RecordId> <RecGroup>Default</RecGroup> <StorageGroup>Default</StorageGroup> <PlayGroup>Default</PlayGroup> <RecType>0</RecType> <DupInType>15</DupInType> <DupMethod>6</DupMethod> <EncoderId>0</EncoderId> <Profile>Default</Profile> </Recording> </Program> </Programs> </ProgramList>
GetRecordedList
The GetRecordedList API takes the following arguments:
- StartIndex (Optional)
- Parameter Type: Integer
- The numerical starting index in the list of expiring programs.
- Count (Optional)
- Parameter Type: Integer
- The number of items to return in the result.
- Descending (Optional)
- Parameter Type: Boolean
- Controls whether results are returned in forward or reverse chronological order.
Example Query:
http://BackendServerIP:6544/Dvr/GetRecordedList?StartIndex=2&Count=1&Descending=true
Example Return:
<?xml version="1.0" encoding="UTF-8"?> <ProgramList version="1.0" serializerVersion="1.1"> <StartIndex>2</StartIndex> <Count>1</Count> <TotalAvailable>15</TotalAvailable> <AsOf>2011-10-02T16:09:52</AsOf> <Version>0.25.20110928-1</Version> <ProtoVer>69</ProtoVer> <Programs> <Program> <StartTime>2011-09-12T19:00:00</StartTime> <EndTime>2011-09-12T20:01:00</EndTime> <Title>Alphas</Title> <SubTitle>Blind Spot</SubTitle> <Category>Drama</Category> <CatType></CatType> <Repeat>true</Repeat> <SeriesId>EP01410873</SeriesId> <ProgramId>EP014108730010</ProgramId> <Stars>0</Stars> <FileSize>5143875332</FileSize> <LastModified>2011-09-12T20:02:18</LastModified> <ProgramFlags>13643781</ProgramFlags> <HostName>Holmes</HostName> <FileName>1234_2011111111T09:00:00</FileName> <Airdate>2011-09-12</Airdate> <Inetref>210841</Inetref> <Season>1</Season> <Episode>9</Episode> <Channel> <ChanId>34736</ChanId> <ChanNum>736</ChanNum> <CallSign>SYFYHD</CallSign> <IconURL></IconURL> <ChannelName>Syfy HD</ChannelName> <MplexId>0</MplexId> <TransportId>0</TransportId> <ServiceId>0</ServiceId> <NetworkId>0</NetworkId> <ATSCMajorChan>0</ATSCMajorChan> <ATSCMinorChan>0</ATSCMinorChan> <Format></Format> <Modulation></Modulation> <Frequency>0</Frequency> <FrequencyId></FrequencyId> <FrequencyTable></FrequencyTable> <FineTune>0</FineTune> <SIStandard></SIStandard> <ChanFilters></ChanFilters> <SourceId>0</SourceId> <InputId>0</InputId> <CommFree>0</CommFree> <UseEIT>false</UseEIT> <Visible>false</Visible> <XMLTVID></XMLTVID> <DefaultAuth></DefaultAuth> <Programs/> </Channel> <Recording> <Status>-3</Status> <Priority>0</Priority> <StartTs>2011-09-12T18:59:00</StartTs> <EndTs>2011-09-12T20:02:15</EndTs> <RecordId>1126</RecordId> <RecGroup>Default</RecGroup> <StorageGroup>Default</StorageGroup> <PlayGroup>Default</PlayGroup> <RecType>0</RecType> <DupInType>15</DupInType> <DupMethod>6</DupMethod> <EncoderId>0</EncoderId> <Profile>Default</Profile> </Recording> </Program> </Programs> </ProgramList>
GetRecorded
The GetRecorded API takes the following arguments:
- ChanId (Required)
- Parameter Type: Integer
- The database channel id for the guide item.
- StartTime (Required)
- Parameter Type: String
- The recording start time for the item. This should be in MySQL ISO format, eg: 2011-08-29 18:59:00. You can replace the space with %20 or T.
Example Query:
http://BackendServerIP:6544/Dvr/GetRecorded?StartTime=2011-10-03T19:00:00&ChanId=2066
Example Return:
<?xml version="1.0" encoding="UTF-8"?> <Program version="1.1" serializerVersion="1.1"> <StartTime>2011-10-03T19:00:00</StartTime> <EndTime>2011-10-03T20:00:00</EndTime> <Title>Little House on the Prairie</Title> <SubTitle>Make a Joyful Noise</SubTitle> <Category>Drama</Category> <CatType>series</CatType> <Repeat>true</Repeat> <SeriesId>EP00002633</SeriesId> <ProgramId>EP000026330155</ProgramId> <Stars>0</Stars> <FileSize>0</FileSize> <LastModified>2011-10-03T19:00:00</LastModified> <ProgramFlags>4096</ProgramFlags> <HostName></HostName> <FileName>1234_2011111111T09:00:00</FileName> <Airdate>1981-01-26</Airdate> Joe Kagan works up the courage to court Hester Sue, and learns she plans to marry an undertaker (Mel Stewart). <Inetref></Inetref> <Season>0</Season> <Episode>0</Episode> <Channel> <ChanId>2066</ChanId> <ChanNum>185</ChanNum> <CallSign>HLMRK</CallSign> <IconURL></IconURL> <ChannelName>Hallmark Channel (Pacific)</ChannelName> <MplexId>0</MplexId> <TransportId>0</TransportId> <ServiceId>0</ServiceId> <NetworkId>0</NetworkId> <ATSCMajorChan>0</ATSCMajorChan> <ATSCMinorChan>0</ATSCMinorChan> <Format></Format> <Modulation></Modulation> <Frequency>0</Frequency> <FrequencyId></FrequencyId> <FrequencyTable></FrequencyTable> <FineTune>0</FineTune> <SIStandard></SIStandard> <ChanFilters></ChanFilters> <SourceId>0</SourceId> <InputId>0</InputId> <CommFree>0</CommFree> <UseEIT>false</UseEIT> <Visible>false</Visible> <XMLTVID></XMLTVID> <DefaultAuth></DefaultAuth> <Programs/> </Channel> <Recording> <Status>0</Status> <Priority>0</Priority> <StartTs></StartTs> <EndTs></EndTs> <RecordId>0</RecordId> <RecGroup></RecGroup> <StorageGroup>Default</StorageGroup> <PlayGroup></PlayGroup> <RecType>0</RecType> <DupInType>1</DupInType> <DupMethod>1</DupMethod> <EncoderId>0</EncoderId> <Profile></Profile> </Recording> </Program>
GetConflictList
The GetConflictList API takes the following arguments:
- StartIndex (Optional)
- Parameter Type: Integer
- The numerical starting index in the list of Conflicting programs.
- Count (Optional)
- Parameter Type: Integer
- The number of items to return in the result.
Example Query:
http://BackendServerIP:6544/Dvr/GetConflictList?StartIndex=0
Example Return:
<?xml version="1.0" encoding="UTF-8"?> <Program version="1.1" serializerVersion="1.1"> <StartTime>2011-10-03T19:00:00</StartTime> <EndTime>2011-10-03T20:00:00</EndTime> <Title>Little House on the Prairie</Title> <SubTitle>Make a Joyful Noise</SubTitle> <Category>Drama</Category> <CatType>series</CatType> <Repeat>true</Repeat> <SeriesId>EP00002633</SeriesId> <ProgramId>EP000026330155</ProgramId> <Stars>0</Stars> <FileSize>0</FileSize> <LastModified>2011-10-03T19:00:00</LastModified> <ProgramFlags>4096</ProgramFlags> <HostName></HostName> <FileName></FileName> <Airdate>1981-01-26</Airdate> Joe Kagan works up the courage to court Hester Sue, and learns she plans to marry an undertaker (Mel Stewart). <Inetref></Inetref> <Season>0</Season> <Episode>0</Episode> <Channel> <ChanId>2066</ChanId> <ChanNum>185</ChanNum> <CallSign>HLMRK</CallSign> <IconURL></IconURL> <ChannelName>Hallmark Channel (Pacific)</ChannelName> <MplexId>0</MplexId> <TransportId>0</TransportId> <ServiceId>0</ServiceId> <NetworkId>0</NetworkId> <ATSCMajorChan>0</ATSCMajorChan> <ATSCMinorChan>0</ATSCMinorChan> <Format></Format> <Modulation></Modulation> <Frequency>0</Frequency> <FrequencyId></FrequencyId> <FrequencyTable></FrequencyTable> <FineTune>0</FineTune> <SIStandard></SIStandard> <ChanFilters></ChanFilters> <SourceId>0</SourceId> <InputId>0</InputId> <CommFree>0</CommFree> <UseEIT>false</UseEIT> <Visible>false</Visible> <XMLTVID></XMLTVID> <DefaultAuth></DefaultAuth> <Programs/> </Channel> <Recording> <Status>0</Status> <Priority>0</Priority> <StartTs></StartTs> <EndTs></EndTs> <RecordId>0</RecordId> <RecGroup></RecGroup> <StorageGroup>Default</StorageGroup> <PlayGroup></PlayGroup> <RecType>0</RecType> <DupInType>1</DupInType> <DupMethod>1</DupMethod> <EncoderId>0</EncoderId> <Profile></Profile> </Recording> </Program>
GetEncoderList
The GetEncoderList API takes no arguments.
Example Query:
http://BackendServerIP:6544/Dvr/GetEncoderList
Example Return:
<?xml version="1.0" encoding="UTF-8"?> <EncoderList version="1.0" serializerVersion="1.1"> <Encoders> <Encoder> <Id>1</Id> <HostName>Holmes</HostName> <Local>true</Local> <Connected>true</Connected> <State>0</State> <SleepStatus>8</SleepStatus> <LowOnFreeSpace>false</LowOnFreeSpace> <Recording> <StartTime></StartTime> <EndTime></EndTime> <Title></Title> <SubTitle></SubTitle> <Category></Category> <CatType></CatType> <Repeat>false</Repeat> <SeriesId></SeriesId> <ProgramId></ProgramId> <Stars>0</Stars> <FileSize>0</FileSize> <LastModified></LastModified> <ProgramFlags>0</ProgramFlags> <HostName></HostName> <Airdate></Airdate> <Inetref></Inetref> <Season>0</Season> <Episode>0</Episode> <Channel> <ChanId>0</ChanId> <ChanNum></ChanNum> <CallSign></CallSign> <IconURL></IconURL> <ChannelName></ChannelName> <MplexId>0</MplexId> <TransportId>0</TransportId> <ServiceId>0</ServiceId> <NetworkId>0</NetworkId> <ATSCMajorChan>0</ATSCMajorChan> <ATSCMinorChan>0</ATSCMinorChan> <Format></Format> <Modulation></Modulation> <Frequency>0</Frequency> <FrequencyId></FrequencyId> <FrequencyTable></FrequencyTable> <FineTune>0</FineTune> <SIStandard></SIStandard> <ChanFilters></ChanFilters> <SourceId>0</SourceId> <InputId>0</InputId> <CommFree>0</CommFree> <UseEIT>true</UseEIT> <Visible>true</Visible> <XMLTVID></XMLTVID> <DefaultAuth></DefaultAuth> <Programs/> </Channel> <Recording> <Status>0</Status> <Priority>0</Priority> <StartTs></StartTs> <EndTs></EndTs> <RecordId>0</RecordId> <RecGroup></RecGroup> <StorageGroup>Default</StorageGroup> <PlayGroup></PlayGroup> <RecType>0</RecType> <DupInType>1</DupInType> <DupMethod>1</DupMethod> <EncoderId>0</EncoderId> <Profile></Profile> </Recording> </Recording> </Encoder> </Encoders> </EncoderList>
RemoveRecordSchedule
The RemoveRecordSchedule API takes the following arguments:
- RecordId (Required)
- Parameter Type: Integer
- The database id of the recording rule to be removed.
Example Query:
http://BackendServerIP:6544/Dvr/RemoveRecordSchedule?RecordId=106
Example Return:
Returns a boolean value. True if the file was successfully removed, false if the removal failed for any reason.
<bool>true</bool>
GetRecordScheduleList
The GetRecordScheduleList API takes the following arguments:
- StartIndex (Optional)
- Parameter Type: Integer
- The numerical starting index in the list of recording rules.
- Count (Optional)
- Parameter Type: Integer
- The number of items to return in the result.
Example Query:
http://BackendServerIP:6544/Dvr/GetRecordScheduleList?StartIndex=0&Count=1
Example Return:
<RecRuleList version="1.0" serializerVersion="1.1"> <StartIndex>0</StartIndex> <Count>63</Count> <TotalAvailable>63</TotalAvailable> <AsOf>2011-11-09T19:22:03</AsOf> <Version>0.25.20111102-1</Version> <ProtoVer>69</ProtoVer> <RecRules> <RecRule> <Id>1126</Id> <ParentId>0</ParentId> <Inactive>false</Inactive> <Title>Alphas</Title> <SubTitle/> <Season>1</Season> <Episode>1</Episode> <Category>Drama</Category> <StartTime>2011-11-09T00:00:00</StartTime> <EndTime>2011-11-09T00:00:00</EndTime> <SeriesId>EP01410873</SeriesId> <ProgramId>EP014108730001</ProgramId> <Inetref>210841</Inetref> <ChanId>3736</ChanId> <CallSign>SYFYHD</CallSign> <Day>4</Day> <Time>22:00:00</Time> <FindId>734696</FindId> <Type>3</Type> <SearchType>0</SearchType> <RecPriority>1</RecPriority> <PreferredInput>0</PreferredInput> <StartOffset>0</StartOffset> <EndOffset>0</EndOffset> <DupMethod>6</DupMethod> <DupIn>15</DupIn> <Filter>0</Filter> <RecProfile>Default</RecProfile> <RecGroup>Default</RecGroup> <StorageGroup>Default</StorageGroup> <PlayGroup>Default</PlayGroup> <AutoExpire>true</AutoExpire> <MaxEpisodes>0</MaxEpisodes> <MaxNewest>false</MaxNewest> <AutoCommflag>true</AutoCommflag> <AutoTranscode>false</AutoTranscode> <AutoMetaLookup>true</AutoMetaLookup> <AutoUserJob1>false</AutoUserJob1> <AutoUserJob2>false</AutoUserJob2> <AutoUserJob3>false</AutoUserJob3> <AutoUserJob4>false</AutoUserJob4> <Transcoder>0</Transcoder> <NextRecording/> <LastRecorded>2011-09-26T18:59:59</LastRecorded> <LastDeleted>2011-10-31T17:41:57</LastDeleted> <AverageDelay>0</AverageDelay> </RecRule> </RecRules> </RecRuleList>
GetRecordSchedule
The GetRecordSchedule API takes the following arguments:
- RecordId (Required)
- Parameter Type: Integer
- The Recording rule ID for the rule to be looked up.
Example Query:
http://BackendServerIP:6544/Dvr/GetRecordSchedule?RecordId=1234
Example Return:
<RecRule version="1.0" serializerVersion="1.1"> <Id>1126</Id> <ParentId>0</ParentId> <Inactive>false</Inactive> <Title>Alphas</Title> <SubTitle/> <Season>1</Season> <Episode>1</Episode> <Category>Drama</Category> <StartTime>2011-11-09T00:00:00</StartTime> <EndTime>2011-11-09T00:00:00</EndTime> <SeriesId>EP01410873</SeriesId> <ProgramId>EP014108730001</ProgramId> <Inetref>210841</Inetref> <ChanId>3736</ChanId> <CallSign>SYFYHD</CallSign> <Day>4</Day> <Time>22:00:00</Time> <FindId>734696</FindId> <Type>3</Type> <SearchType>0</SearchType> <RecPriority>1</RecPriority> <PreferredInput>0</PreferredInput> <StartOffset>0</StartOffset> <EndOffset>0</EndOffset> <DupMethod>6</DupMethod> <DupIn>15</DupIn> <Filter>0</Filter> <RecProfile>Default</RecProfile> <RecGroup>Default</RecGroup> <StorageGroup>Default</StorageGroup> <PlayGroup>Default</PlayGroup> <AutoExpire>true</AutoExpire> <MaxEpisodes>0</MaxEpisodes> <MaxNewest>false</MaxNewest> <AutoCommflag>true</AutoCommflag> <AutoTranscode>false</AutoTranscode> <AutoMetaLookup>true</AutoMetaLookup> <AutoUserJob1>false</AutoUserJob1> <AutoUserJob2>false</AutoUserJob2> <AutoUserJob3>false</AutoUserJob3> <AutoUserJob4>false</AutoUserJob4> <Transcoder>0</Transcoder> <NextRecording/> <LastRecorded>2011-09-26T18:59:59</LastRecorded> <LastDeleted>2011-10-31T17:41:57</LastDeleted> <AverageDelay>0</AverageDelay> </RecRule>
EnableRecordSchedule
The EnableRecordSchedule API takes the following arguments:
- RecordId (Required)
- Parameter Type: Integer
- The database id of the recording rule to be enabled.
Example Query:
http://BackendServerIP:6544/Dvr/EnableRecordSchedule?RecordId=106
Example Return:
Returns a boolean value. True if the file was successfully removed, false if the removal failed for any reason.
<bool>true</bool>
DisableRecordSchedule
The DisableRecordSchedule API takes the following arguments:
- RecordId (Required)
- Parameter Type: Integer
- The database id of the recording rule to be removed.
Example Query:
http://BackendServerIP:6544/Dvr/DisableRecordSchedule?RecordId=106
Example Return:
Returns a boolean value. True if the file was successfully removed, false if the removal failed for any reason.
<bool>true</bool>