Difference between revisions of "Content Service"
Iamlindoro (talk | contribs) |
m (add category) |
||
Line 446: | Line 446: | ||
<bool>true</bool> | <bool>true</bool> | ||
</pre> | </pre> | ||
+ | |||
+ | [[Category:Services_API]] |
Revision as of 00:31, 22 November 2011
Contents
Content Service API List
API Command | POST Required? | Description |
GetFile | No | Download a given file from a given storage group. |
GetImageFile | No | Display, and optionally scale, an image file from a given storage group. |
GetFileList | No | Get a list of files in a specified storage group. |
GetRecordingArtwork | No | Display, and optionally scale, an image file of a given type (coverart, banner, fanart) for a given recording's inetref and season number. |
GetRecordingArtworkList | No | Display a list of artwork available for a recording by start time and channel id. |
GetProgramArtworkList | No | Display a list of artwork available for a program by inetref and season. |
GetVideoArtwork | No | Display, and optionally scale, an image file of a given type (coverart, banner, fanart) for a given video's database id number. |
GetAlbumArt | No | Display, and optionally scale, the album art for a given music file's database id number. |
GetPreviewImage | No | Display, and optionally scale, an preview thumbnail for a given recording by timestamp, chanid and starttime. |
GetRecording | No | Download a given recording file by chanid and starttime. |
GetMusic | No | Download a given music file by database id. |
GetVideo | No | Download a given video by database id. |
GetHash | No | Perform a unique identifying hash on a given file in a given storage group. |
DownloadFile | Yes | Instruct the backend to download a remote file into a storage group. |
Content APIs
GetFile
The GetFile API takes the following arguments:
- StorageGroup (Required)
- Parameter Type: String
- The Storage Group name in which you wish to search for the file.
- FileName (Required)
- Parameter Type: String
- The filename (and relative path if necessary) of the file you wish to receive.
Example Query:
Example Return:
The return for this command is a binary file which will be interpreted by your browser and downloaded or displayed as appropriate.
GetImageFile
The GetImageFile API takes the following arguments:
- StorageGroup (Required)
- Parameter Type: String
- The Storage Group name in which you wish to search for the file.
- FileName (Required)
- Parameter Type: String
- The filename (and relative path if necessary) of the file you wish to receive.
- Width (Optional)
- Parameter Type: Integer
- The scaled width to return the image. To preserve proper aspect, you may want to specify only one of width or height.
- Height (Optional)
- Parameter Type: Integer
- The scaled height to return the image. To preserve proper aspect, you may want to specify only one of width or height.
Example Query:
Example Return:
The return for this command is a binary file which will be interpreted by your browser and downloaded or displayed as appropriate.
GetFileList
The GetFileList API takes the following arguments:
- StorageGroup (Required)
- Parameter Type: String
- The Storage Group name for which you wish to see a list of files.
Example Query:
http://BackendServerIP:6544/Content/GetFileList?StorageGroup=Fanart
Example Return:
<?xml version="1.0" encoding="UTF-8"?> <QStringList> <String>10020_fanart.jpg</String> <String>10074_fanart.jpg</String> <String>10126_fanart.jpg</String> <String>10138_fanart.jpg</String> <String>10139_fanart.jpg</String> <String>10140_fanart.jpg</String> <String>10189_fanart.jpg</String> <String>10191_fanart.jpg</String> <String>10192_fanart.jpg</String> <String>10196_fanart.jpg</String> </QStringList>
GetRecordingArtwork
The GetRecordingArtwork API takes the following arguments:
- Inetref (Required)
- Parameter Type: String
- The inetref for the recording you are looking up. This information is available in the Program construct, which can be queried in the DVR Service.
- Type (Optional)
- Parameter Type: String
- The type of artwork you wish to download. Valid types are coverart, fanart, and banner. If no type is present, the query will fall back to coverart.
- Season (Optional)
- Parameter Type: Integer
- The season number of the artwork you wish to receive. If no season number is present, the query will fall back to the latest available season.
- Width (Optional)
- Parameter Type: Integer
- The scaled width to return the image. To preserve proper aspect, you may want to specify only one of width or height.
- Height (Optional)
- Parameter Type: Integer
- The scaled height to return the image. To preserve proper aspect, you may want to specify only one of width or height.
Example Query:
http://BackendServerIP:6544/Content/GetRecordingArtwork?Inetref=80552&Type=fanart&Season=2
Example Return:
The return for this command is a binary file which will be interpreted by your browser and downloaded or displayed as appropriate.
GetRecordingArtworkList
The GetRecordingArtwork API takes the following arguments:
- ChanId (Required)
- Parameter Type: Integer
- The database channel id for the recording.
- 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:
Example Return:
<ArtworkInfoList version="1.0" serializerVersion="1.1"> <ArtworkInfos> <ArtworkInfo> <URL>/Content/GetRecordingArtwork?InetRef=210841&Season=1&Type=coverart</URL> <FileName>myth://Coverart@192.168.0.99:6543/Alphas Season 1_coverart.jpg</FileName> <StorageGroup>Coverart</StorageGroup> <Type>coverart</Type> </ArtworkInfo> <ArtworkInfo> <URL>/Content/GetRecordingArtwork?InetRef=210841&Season=1&Type=fanart</URL> <FileName>myth://Fanart@192.168.0.99:6543/Alphas Season 1_fanart.jpg</FileName> <StorageGroup>Fanart</StorageGroup> <Type>fanart</Type> </ArtworkInfo> <ArtworkInfo> <URL>/Content/GetRecordingArtwork?InetRef=210841&Season=1&Type=banner</URL> <FileName>myth://Banners@192.168.0.99:6543/Alphas Season 1_banner.jpg</FileName> <StorageGroup>Banners</StorageGroup> <Type>banner</Type> </ArtworkInfo> </ArtworkInfos> </ArtworkInfoList>
GetProgramArtworkList
The GetRecordingArtwork API takes the following arguments:
- Inetref (Required)
- Parameter Type: String
- The inetref for the recording you are looking up. This information is available in the Program construct, which can be queried in the DVR Service.
- Season (Optional)
- Parameter Type: Integer
- The season number of the artwork you wish to receive. If no season number is present, the query will fall back to the latest available season.
Example Query:
http://BackendServerIP:6544/Content/GetRecordingArtwork?Inetref=80552&Type=fanart&Season=2
Example Return:
<ArtworkInfoList version="1.0" serializerVersion="1.1"> <ArtworkInfos> <ArtworkInfo> <URL>/Content/GetRecordingArtwork?InetRef=210841&Season=1&Type=coverart</URL> <FileName>myth://Coverart@192.168.0.99:6543/Alphas Season 1_coverart.jpg</FileName> <StorageGroup>Coverart</StorageGroup> <Type>coverart</Type> </ArtworkInfo> <ArtworkInfo> <URL>/Content/GetRecordingArtwork?InetRef=210841&Season=1&Type=fanart</URL> <FileName>myth://Fanart@192.168.0.99:6543/Alphas Season 1_fanart.jpg</FileName> <StorageGroup>Fanart</StorageGroup> <Type>fanart</Type> </ArtworkInfo> <ArtworkInfo> <URL>/Content/GetRecordingArtwork?InetRef=210841&Season=1&Type=banner</URL> <FileName>myth://Banners@192.168.0.99:6543/Alphas Season 1_banner.jpg</FileName> <StorageGroup>Banners</StorageGroup> <Type>banner</Type> </ArtworkInfo> </ArtworkInfos> </ArtworkInfoList>
GetVideoArtwork
The GetVideoArtwork API takes the following arguments:
- Id (Required)
- Parameter Type: String
- The database id for the video you are looking up. This information is available in the VideoMetadataInfo construct, which can be queried in the Video Service.
- Type (Optional)
- Parameter Type: String
- The type of artwork you wish to download. Valid types are coverart, fanart, and banner. If no type is present, the query will fall back to coverart.
- Width (Optional)
- Parameter Type: Integer
- The scaled width to return the image. To preserve proper aspect, you may want to specify only one of width or height.
- Height (Optional)
- Parameter Type: Integer
- The scaled height to return the image. To preserve proper aspect, you may want to specify only one of width or height.
Example Query:
http://BackendServerIP:6544/Content/GetVideoArtwork?Id=100&Type=fanart
Example Return:
The return for this command is a binary file which will be interpreted by your browser and downloaded or displayed as appropriate.
GetAlbumArt
The GetAlbumArt API takes the following arguments:
- Id (Required)
- Parameter Type: String
- The database id for the album you are looking up.
- Width (Optional)
- Parameter Type: Integer
- The scaled width to return the image. To preserve proper aspect, you may want to specify only one of width or height.
- Height (Optional)
- Parameter Type: Integer
- The scaled height to return the image. To preserve proper aspect, you may want to specify only one of width or height.
Example Query:
http://BackendServerIP:6544/Content/GetAlbumArt?Id=585
Example Return:
The return for this command is a binary file which will be interpreted by your browser and downloaded or displayed as appropriate.
GetPreviewImage
The GetPreviewImage API takes the following arguments:
- ChanId (Required)
- Parameter Type: Integer
- The database channel id for the recording.
- 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.
- Width (Optional)
- Parameter Type: Integer
- The scaled width to return the image. To preserve proper aspect, you may want to specify only one of width or height.
- Height (Optional)
- Parameter Type: Integer
- The scaled height to return the image. To preserve proper aspect, you may want to specify only one of width or height.
- SecsIn (Optional)
- Parameter Type: Integer
- The number of seconds into the recording to fast forward before generating a preview image.
Example Query:
http://BackendServerIP:6544/Content/GetPreviewImage?ChanId=34736&StartTime=2011-08-29T18:59:00
Example Return:
The return for this command is a binary file which will be interpreted by your browser and downloaded or displayed as appropriate.
GetRecording
The GetRecording API takes the following arguments:
- ChanId (Required)
- Parameter Type: Integer
- The database channel id for the recording.
- 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/Content/GetRecording?ChanId=34736&StartTime=2011-08-29T18:59:00
Example Return:
The return for this command is a binary file which will be interpreted by your browser and downloaded or displayed as appropriate.
GetVideo
The GetVideo API takes the following arguments:
- Id (Required)
- Parameter Type: String
- The database id for the video file.
Example Query:
http://BackendServerIP:6544/Content/GetVideo?Id=100
Example Return:
The return for this command is a binary file which will be interpreted by your browser and downloaded or displayed as appropriate.
GetMusic
The GetMusic API takes the following arguments:
- Id (Required)
- Parameter Type: String
- The database id for the music file.
Example Query:
http://BackendServerIP:6544/Content/GetMusic?Id=100
Example Return:
The return for this command is a binary file which will be interpreted by your browser and downloaded or displayed as appropriate.
GetHash
The GetHash API takes the following arguments:
- StorageGroup (Required)
- Parameter Type: String
- The Storage Group name in which you wish to search for the file.
- FileName (Required)
- Parameter Type: String
- The filename (and relative path if necessary) of the file you wish to hash.
Example Query:
Example Return:
<?xml version="1.0" encoding="UTF-8"?> <QString>c80767b59e4d96d2</QString>
DownloadFile
The DownloadFile API takes the following arguments:
- StorageGroup (Required)
- Parameter Type: String
- The Storage Group name to which you wish to download the file.
- URL (Required)
- Parameter Type: String
- The URL that you wish to download.
Example Query:
Example Return:
<?xml version="1.0" encoding="UTF-8"?> <bool>true</bool>