Difference between revisions of "Frontend Service"
Iamlindoro (talk | contribs) m |
(Add SendKey) |
||
(15 intermediate revisions by 7 users not shown) | |||
Line 1: | Line 1: | ||
+ | =What is this?= | ||
+ | See [[Services API]] | ||
+ | {{Note box|Unlike other services, the Frontend Service runs on frontend systems. The default Frontend Service API port is '''6547'''.}} | ||
+ | |||
+ | |||
=Frontend Service API List= | =Frontend Service API List= | ||
Line 12: | Line 17: | ||
|- | |- | ||
| [[Frontend_Service#SendMessage | SendMessage]] | | [[Frontend_Service#SendMessage | SendMessage]] | ||
− | | align="center" | No | + | | align="center" | No (Yes 0.28+) |
| Send a message to the frontend, which will appear as a popup message on the screen. | | Send a message to the frontend, which will appear as a popup message on the screen. | ||
|- | |- | ||
− | | style="background:silver" | [[Frontend_Service# | + | | style="background:silver" | [[Frontend_Service#SendNotification | SendNotification]] |
− | | style="background:silver" align="center" | No | + | | style="background:silver" align="center" | No (Yes 0.28+) |
− | | style="background:silver" | Send an action such as UP, DOWN, SELECT, etc. to the frontend. | + | | style="background:silver" | Send a notification to the frontend which will appear in the Notification Center. |
+ | |- | ||
+ | | [[Frontend_Service#SendAction | SendAction]] | ||
+ | | align="center" | No (Yes 0.28+) | ||
+ | | Send an action such as UP, DOWN, SELECT, etc. to the frontend. | ||
+ | |- | ||
+ | | [[Frontend_Service#SendKey | SendKey]] | ||
+ | | align="center" | Yes (new in 0.28+) | ||
+ | | Send a window aware key such as UP, DOWN, SELECT, etc. to the frontend. | ||
+ | |- | ||
+ | | style="background:silver" | [[Frontend_Service#GetActionList | GetActionList]] | ||
+ | | style="background:silver" align="center" | No | ||
+ | | style="background:silver" | Get a list of actions which can be performed on the frontend using SendAction. | ||
+ | |- | ||
+ | | [[Frontend_Service#PlayRecording | PlayRecording]] | ||
+ | | align="center" | No (Yes 0.28+) | ||
+ | | Play a television recording. | ||
|- | |- | ||
− | | [[Frontend_Service# | + | | style="background:silver" | [[Frontend_Service#PlayVideo | PlayVideo]] |
− | | align="center" | + | | style="background:silver" align="center" | No (Yes 0.28+) |
− | | | + | | style="background:silver" | Play a video. |
|} | |} | ||
</center> | </center> | ||
Line 35: | Line 56: | ||
<code>http://FrontendIP:6547/Frontend/GetStatus</code> | <code>http://FrontendIP:6547/Frontend/GetStatus</code> | ||
− | Example Return: | + | Example Return (in 0.27.4): |
<pre> | <pre> | ||
− | + | <?xml version="1.0" encoding="UTF-8"?> | |
− | </pre> | + | <FrontendStatus xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0" serializerVersion="1.1"> |
+ | <State> | ||
+ | <String><Key>angleidx</Key><Value></Value></String> | ||
+ | <String><Key>audiosyncoffset</Key><Value>0</Value></String> | ||
+ | <String><Key>behindtime</Key><Value></Value></String> | ||
+ | <String><Key>brightness</Key><Value>50</Value></String> | ||
+ | <String><Key>chanid</Key><Value>1002</Value></String> | ||
+ | <String><Key>chapteridx</Key><Value></Value></String> | ||
+ | <String><Key>colour</Key><Value>50</Value></String> | ||
+ | <String><Key>contrast</Key><Value>40</Value></String> | ||
+ | <String><Key>currentaudiotrack</Key><Value>1: English MP2 2ch</Value></String> | ||
+ | <String><Key>description</Key><Value>2:56 of 38:59</Value></String> | ||
+ | <String><Key>hue</Key><Value>0</Value></String> | ||
+ | <String><Key>mute</Key><Value>0</Value></String> | ||
+ | <String><Key>pathname</Key><Value>/var/lib/mythtv/recordings/1002_20150925205600.mpg</Value></String> | ||
+ | <String><Key>playedtime</Key><Value>2:56</Value></String> | ||
+ | <String><Key>playspeed</Key><Value>1</Value></String> | ||
+ | <String><Key>position</Key><Value>75</Value></String> | ||
+ | <String><Key>progafter</Key><Value>0</Value></String> | ||
+ | <String><Key>progbefore</Key><Value>0</Value></String> | ||
+ | <String><Key>programid</Key><Value>fp.bbc.co.uk/241cn6</Value></String> | ||
+ | <String><Key>relbehindtime</Key><Value></Value></String> | ||
+ | <String><Key>reldescription</Key><Value>2:56 of 38:59</Value></String> | ||
+ | <String><Key>relplayedtime</Key><Value>2:56</Value></String> | ||
+ | <String><Key>relposition</Key><Value>75</Value></String> | ||
+ | <String><Key>relremainingtime</Key><Value>36:03</Value></String> | ||
+ | <String><Key>relsecondsplayed</Key><Value>176</Value></String> | ||
+ | <String><Key>reltotalseconds</Key><Value>2339</Value></String> | ||
+ | <String><Key>reltotaltime</Key><Value>38:59</Value></String> | ||
+ | <String><Key>remainingtime</Key><Value>36:03</Value></String> | ||
+ | <String><Key>secondsplayed</Key><Value>176</Value></String> | ||
+ | <String><Key>starttime</Key><Value>2015-09-25T20:56:00Z</Value></String> | ||
+ | <String><Key>state</Key><Value>WatchingPreRecorded</Value></String> | ||
+ | <String><Key>studiolevels</Key><Value>0</Value></String> | ||
+ | <String><Key>subtitle</Key><Value></Value></String> | ||
+ | <String><Key>title</Key><Value>The Great British Bake Off</Value></String> | ||
+ | <String><Key>titleidx</Key><Value></Value></String> | ||
+ | <String><Key>totalangles</Key><Value></Value></String> | ||
+ | <String><Key>totalaudiotracks</Key><Value>2</Value></String> | ||
+ | <String><Key>totalchapters</Key><Value></Value></String> | ||
+ | <String><Key>totalseconds</Key><Value>2339</Value></String> | ||
+ | <String><Key>totalsubtitletracks</Key><Value>1</Value></String> | ||
+ | <String><Key>totaltime</Key><Value>38:59</Value></String> | ||
+ | <String><Key>totaltitles</Key><Value></Value></String> | ||
+ | <String><Key>volume</Key><Value>0</Value></String> | ||
+ | </State> | ||
+ | <ChapterTimes/> | ||
+ | <SubtitleTracks> | ||
+ | <Track><Key>SELECTSUBTITLE_0</Key><Value>Subtitle 1: English</Value></Track> | ||
+ | </SubtitleTracks> | ||
+ | <AudioTracks> | ||
+ | <Track><Key>SELECTAUDIO_0</Key><Value>1: English MP2 2ch</Value></Track> | ||
+ | <Track><Key>SELECTAUDIO_1</Key><Value>2: English (Audio Description)</Value></Track> | ||
+ | </AudioTracks> | ||
+ | </FrontendStatus></pre> | ||
==SendMessage== | ==SendMessage== | ||
Line 51: | Line 126: | ||
Example Query: | Example Query: | ||
− | <code>http://FrontendIP:6547/Frontend/SendMessage?Message=Hello World | + | <code>http://FrontendIP:6547/Frontend/SendMessage?Message=Hello World</code> |
Example Return: | Example Return: | ||
Line 59: | Line 134: | ||
<pre><bool>true</bool></pre> | <pre><bool>true</bool></pre> | ||
+ | ==SendNotification== | ||
+ | |||
+ | The <span style="color:LimeGreen">SendNotification</span> API takes the following arguments: | ||
+ | |||
+ | :<span style="color:SteelBlue">Message</Span> ('''Required''') | ||
+ | :: '''Parameter Type:''' String | ||
+ | :: The message to appear on the frontend notification center. | ||
+ | |||
+ | :<span style="color:SteelBlue">Error</Span> ('''Optional''') | ||
+ | :: '''Parameter Type:''' Boolean | ||
+ | :: The notification will be set as an error | ||
+ | |||
+ | :<span style="color:SteelBlue">Origin</Span> ('''Optional''') | ||
+ | :: '''Parameter Type:''' String | ||
+ | :: The notification's origin | ||
+ | |||
+ | :<span style="color:SteelBlue">Description</Span> ('''Optional''') | ||
+ | :: '''Parameter Type:''' String | ||
+ | :: The description to be sent in the notification | ||
+ | |||
+ | :<span style="color:SteelBlue">Image</Span> ('''Optional''') | ||
+ | :: '''Parameter Type:''' String | ||
+ | :: The path or URL to image to be displayed in notification | ||
+ | |||
+ | :<span style="color:SteelBlue">Extra</Span> ('''Optional''') | ||
+ | :: '''Parameter Type:''' String | ||
+ | :: The extra text to be sent in the notification | ||
+ | |||
+ | :<span style="color:SteelBlue">Progress</Span> ('''Optional''') | ||
+ | :: '''Parameter Type:''' Float | ||
+ | :: A value between 0 and 1 (inclusive) indicating the progressiong percentage (1 is 100%). | ||
+ | :: - a negative value indicates not to display a progress bar | ||
+ | |||
+ | :<span style="color:SteelBlue">ProgressText</Span> ('''Optional''') | ||
+ | :: '''Parameter Type:''' String | ||
+ | :: The text to be shown alongside the progress bar (if visible) | ||
+ | |||
+ | :<span style="color:SteelBlue">Timeout</Span> ('''Optional''') | ||
+ | :: '''Parameter Type:''' Integer | ||
+ | :: The number of seconds the notification will be displayed for | ||
+ | :: Note that a notification can't be displayed for less than 5s | ||
+ | |||
+ | :<span style="color:SteelBlue">Fullscreen</Span> ('''Optional''') | ||
+ | :: '''Parameter Type:''' Boolean | ||
+ | :: Display the notification in full screen mode | ||
+ | |||
+ | :<span style="color:SteelBlue">Visibility</Span> ('''Optional''') | ||
+ | :: '''Parameter Type:''' Unsigned Integer | ||
+ | :: A bitmask value setting the visibility of the notification | ||
+ | :: (bit 0: video playback, bit 1: settings, bit 2: setup wizard, bit 3: video library | ||
+ | :: bit 4: music, bit 5: recordings library) | ||
+ | |||
+ | :<span style="color:SteelBlue">Priority</Span> ('''Optional''') | ||
+ | :: '''Parameter Type:''' Unsigned Integer | ||
+ | :: The priority level of the notification | ||
+ | :: 0 = default, 1 = low, 2 = medium, 3 = high, 4 = higher, 5 = highest | ||
+ | |||
+ | :<span style="color:SteelBlue">Type</Span> ('''Optional''') | ||
+ | :: '''Parameter Type:''' String | ||
+ | :: The type of notification, valid values are: | ||
+ | :: normal, error, warning, check, busy | ||
+ | |||
+ | Example Query: | ||
+ | |||
+ | <code>http://FrontendIP:6547/Frontend/SendNotification?Message=Hello World</code> | ||
+ | |||
+ | Example Return: | ||
+ | |||
+ | Boolean return. Returns true if the notification was sent, false if the notification failed. | ||
+ | |||
+ | <pre><bool>true</bool></pre> | ||
==SendAction== | ==SendAction== | ||
+ | {{Note box|See {{Ticket|11916}} for a detailed explanation about problems with this endpoint}} | ||
The <span style="color:LimeGreen">SendAction</span> API takes the following arguments: | The <span style="color:LimeGreen">SendAction</span> API takes the following arguments: | ||
Line 90: | Line 237: | ||
<pre><bool>true</bool></pre> | <pre><bool>true</bool></pre> | ||
+ | ==SendKey== | ||
+ | |||
+ | {{Note box|New in 0.28, use in place of SendAction where keys are to be sent to the proper window}} | ||
+ | The <span style="color:LimeGreen">SendKey</span> API takes the following argument: | ||
+ | |||
+ | :<span style="color:SteelBlue">Key</Span> ('''Required''') | ||
+ | :: '''Parameter Type:''' String | ||
+ | :: The key to be sent to the frontend. | ||
+ | |||
+ | Example Query: | ||
+ | |||
+ | <code>http://FrontendIP:6547/Frontend/SendKey?Key=SELECT</code> | ||
+ | |||
+ | Example Return: | ||
+ | |||
+ | Boolean return. Returns true if the action was accepted, false if the action failed. | ||
+ | |||
+ | <pre><bool>true</bool></pre> | ||
==GetActionList== | ==GetActionList== | ||
Line 103: | Line 268: | ||
<pre> | <pre> | ||
<?xml version="1.0" encoding="UTF-8"?> | <?xml version="1.0" encoding="UTF-8"?> | ||
− | <FrontendActionList version="1.0" serializerVersion="1.1"> | + | <FrontendActionList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0" serializerVersion="1.1"> |
− | + | <ActionList> | |
− | + | <Action><Key>0</Key><Value>0</Value></Action> | |
− | + | <Action><Key>1</Key><Value>1</Value></Action> | |
− | + | <Action><Key>2</Key><Value>2</Value></Action> | |
− | + | <Action><Key>3</Key><Value>3</Value></Action> | |
− | + | <Action><Key>3DNONE</Key><Value>No 3D</Value></Action> | |
− | + | <Action><Key>3DSIDEBYSIDE</Key><Value>3D Side by Side</Value></Action> | |
− | + | <Action><Key>3DSIDEBYSIDEDISCARD</Key><Value>Discard 3D Side by Side</Value></Action> | |
− | + | <Action><Key>3DTOPANDBOTTOM</Key><Value>3D Top and Bottom</Value></Action> | |
− | + | <Action><Key>3DTOPANDBOTTOMDISCARD</Key><Value>Discard 3D Top and Bottom</Value></Action> | |
− | + | <Action><Key>4</Key><Value>4</Value></Action> | |
− | + | <Action><Key>5</Key><Value>5</Value></Action> | |
− | + | <Action><Key>6</Key><Value>6</Value></Action> | |
− | + | <Action><Key>7</Key><Value>7</Value></Action> | |
− | + | <Action><Key>8</Key><Value>8</Value></Action> | |
− | + | <Action><Key>9</Key><Value>9</Value></Action> | |
− | + | <Action><Key>ADJUSTSTRETCH</Key><Value>Turn on time stretch control</Value></Action> | |
− | + | <Action><Key>ARBSEEK</Key><Value>Arbitrary Seek</Value></Action> | |
− | + | <Action><Key>BACK</Key><Value>Exit or return to DVD menu</Value></Action> | |
− | + | <Action><Key>BACKSPACE</Key><Value>Backspace</Value></Action> | |
− | + | <Action><Key>BIGJUMPFWD</Key><Value>Jump forward 10x the normal amount</Value></Action> | |
− | + | <Action><Key>BIGJUMPREW</Key><Value>Jump back 10x the normal amount</Value></Action> | |
− | + | ||
− | + | [... lots more ...] | |
− | + | ||
− | + | </ActionList> | |
− | + | </FrontendActionList> | |
− | |||
− | |||
− | |||
− | |||
− | <FrontendActionList> | ||
</pre> | </pre> | ||
+ | |||
+ | ==PlayRecording== | ||
+ | |||
+ | The <span style="color:LimeGreen">PlayRecording</span> API takes the following arguments: | ||
+ | |||
+ | :<span style="color:SteelBlue">ChanId</Span> ('''Required''') | ||
+ | :: '''Parameter Type:''' Integer | ||
+ | :: The database channel id for the recording. | ||
+ | |||
+ | :<span style="color:SteelBlue">StartTime</Span> ('''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: | ||
+ | |||
+ | <code>http://FrontendIP:6547/Frontend/PlayRecording?ChanId=34736&StartTime=2011-09-26T19:00:00</code> | ||
+ | |||
+ | Example Return: | ||
+ | |||
+ | <pre> | ||
+ | <?xml version="1.0" encoding="UTF-8"?> | ||
+ | <bool>true</bool> | ||
+ | </pre> | ||
+ | |||
+ | |||
+ | ==PlayVideo== | ||
+ | |||
+ | The <span style="color:LimeGreen">PlayVideo</span> API takes the following arguments: | ||
+ | |||
+ | :<span style="color:SteelBlue">Id</Span> ('''Required''') | ||
+ | :: '''Parameter Type:''' String | ||
+ | :: The database id for the video file. | ||
+ | |||
+ | :<span style="color:SteelBlue">UseBookmark</Span> ('''Optional''') | ||
+ | :: '''Parameter Type:''' Boolean | ||
+ | :: Pass 1 to resume playback at a bookmark. | ||
+ | |||
+ | Example Query: | ||
+ | |||
+ | <code>http://FrontendIP:6547/Frontend/PlayVideo?Id=73&UseBookmark=1</code> | ||
+ | |||
+ | Example Return: | ||
+ | |||
+ | <pre> | ||
+ | <?xml version="1.0" encoding="UTF-8"?> | ||
+ | <bool>true</bool> | ||
+ | </pre> | ||
+ | |||
+ | [[Category:Services_API]] |
Latest revision as of 21:55, 12 February 2016
Contents
What is this?
See Services API
Note: Unlike other services, the Frontend Service runs on frontend systems. The default Frontend Service API port is 6547.
Frontend Service API List
API Command | POST Required? | Description |
GetStatus | No | Get the location, playback status, and a variety of other information about the current state of the Frontend. |
SendMessage | No (Yes 0.28+) | Send a message to the frontend, which will appear as a popup message on the screen. |
SendNotification | No (Yes 0.28+) | Send a notification to the frontend which will appear in the Notification Center. |
SendAction | No (Yes 0.28+) | Send an action such as UP, DOWN, SELECT, etc. to the frontend. |
SendKey | Yes (new in 0.28+) | Send a window aware key such as UP, DOWN, SELECT, etc. to the frontend. |
GetActionList | No | Get a list of actions which can be performed on the frontend using SendAction. |
PlayRecording | No (Yes 0.28+) | Play a television recording. |
PlayVideo | No (Yes 0.28+) | Play a video. |
Frontend APIs
GetStatus
The GetStatus API takes no arguments.
Example Query:
http://FrontendIP:6547/Frontend/GetStatus
Example Return (in 0.27.4):
<?xml version="1.0" encoding="UTF-8"?> <FrontendStatus xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0" serializerVersion="1.1"> <State> <String><Key>angleidx</Key><Value></Value></String> <String><Key>audiosyncoffset</Key><Value>0</Value></String> <String><Key>behindtime</Key><Value></Value></String> <String><Key>brightness</Key><Value>50</Value></String> <String><Key>chanid</Key><Value>1002</Value></String> <String><Key>chapteridx</Key><Value></Value></String> <String><Key>colour</Key><Value>50</Value></String> <String><Key>contrast</Key><Value>40</Value></String> <String><Key>currentaudiotrack</Key><Value>1: English MP2 2ch</Value></String> <String><Key>description</Key><Value>2:56 of 38:59</Value></String> <String><Key>hue</Key><Value>0</Value></String> <String><Key>mute</Key><Value>0</Value></String> <String><Key>pathname</Key><Value>/var/lib/mythtv/recordings/1002_20150925205600.mpg</Value></String> <String><Key>playedtime</Key><Value>2:56</Value></String> <String><Key>playspeed</Key><Value>1</Value></String> <String><Key>position</Key><Value>75</Value></String> <String><Key>progafter</Key><Value>0</Value></String> <String><Key>progbefore</Key><Value>0</Value></String> <String><Key>programid</Key><Value>fp.bbc.co.uk/241cn6</Value></String> <String><Key>relbehindtime</Key><Value></Value></String> <String><Key>reldescription</Key><Value>2:56 of 38:59</Value></String> <String><Key>relplayedtime</Key><Value>2:56</Value></String> <String><Key>relposition</Key><Value>75</Value></String> <String><Key>relremainingtime</Key><Value>36:03</Value></String> <String><Key>relsecondsplayed</Key><Value>176</Value></String> <String><Key>reltotalseconds</Key><Value>2339</Value></String> <String><Key>reltotaltime</Key><Value>38:59</Value></String> <String><Key>remainingtime</Key><Value>36:03</Value></String> <String><Key>secondsplayed</Key><Value>176</Value></String> <String><Key>starttime</Key><Value>2015-09-25T20:56:00Z</Value></String> <String><Key>state</Key><Value>WatchingPreRecorded</Value></String> <String><Key>studiolevels</Key><Value>0</Value></String> <String><Key>subtitle</Key><Value></Value></String> <String><Key>title</Key><Value>The Great British Bake Off</Value></String> <String><Key>titleidx</Key><Value></Value></String> <String><Key>totalangles</Key><Value></Value></String> <String><Key>totalaudiotracks</Key><Value>2</Value></String> <String><Key>totalchapters</Key><Value></Value></String> <String><Key>totalseconds</Key><Value>2339</Value></String> <String><Key>totalsubtitletracks</Key><Value>1</Value></String> <String><Key>totaltime</Key><Value>38:59</Value></String> <String><Key>totaltitles</Key><Value></Value></String> <String><Key>volume</Key><Value>0</Value></String> </State> <ChapterTimes/> <SubtitleTracks> <Track><Key>SELECTSUBTITLE_0</Key><Value>Subtitle 1: English</Value></Track> </SubtitleTracks> <AudioTracks> <Track><Key>SELECTAUDIO_0</Key><Value>1: English MP2 2ch</Value></Track> <Track><Key>SELECTAUDIO_1</Key><Value>2: English (Audio Description)</Value></Track> </AudioTracks> </FrontendStatus>
SendMessage
The SendMessage API takes the following arguments:
- Message (Required)
- Parameter Type: String
- The message to appear on the frontend popup.
Example Query:
http://FrontendIP:6547/Frontend/SendMessage?Message=Hello World
Example Return:
Boolean return. Returns true if the message was sent, false if the message failed.
<bool>true</bool>
SendNotification
The SendNotification API takes the following arguments:
- Message (Required)
- Parameter Type: String
- The message to appear on the frontend notification center.
- Error (Optional)
- Parameter Type: Boolean
- The notification will be set as an error
- Origin (Optional)
- Parameter Type: String
- The notification's origin
- Description (Optional)
- Parameter Type: String
- The description to be sent in the notification
- Image (Optional)
- Parameter Type: String
- The path or URL to image to be displayed in notification
- Extra (Optional)
- Parameter Type: String
- The extra text to be sent in the notification
- Progress (Optional)
- Parameter Type: Float
- A value between 0 and 1 (inclusive) indicating the progressiong percentage (1 is 100%).
- - a negative value indicates not to display a progress bar
- ProgressText (Optional)
- Parameter Type: String
- The text to be shown alongside the progress bar (if visible)
- Timeout (Optional)
- Parameter Type: Integer
- The number of seconds the notification will be displayed for
- Note that a notification can't be displayed for less than 5s
- Fullscreen (Optional)
- Parameter Type: Boolean
- Display the notification in full screen mode
- Visibility (Optional)
- Parameter Type: Unsigned Integer
- A bitmask value setting the visibility of the notification
- (bit 0: video playback, bit 1: settings, bit 2: setup wizard, bit 3: video library
- bit 4: music, bit 5: recordings library)
- Priority (Optional)
- Parameter Type: Unsigned Integer
- The priority level of the notification
- 0 = default, 1 = low, 2 = medium, 3 = high, 4 = higher, 5 = highest
- Type (Optional)
- Parameter Type: String
- The type of notification, valid values are:
- normal, error, warning, check, busy
Example Query:
http://FrontendIP:6547/Frontend/SendNotification?Message=Hello World
Example Return:
Boolean return. Returns true if the notification was sent, false if the notification failed.
<bool>true</bool>
SendAction
Note: See #11916 for a detailed explanation about problems with this endpoint
The SendAction API takes the following arguments:
- Action (Required)
- Parameter Type: String
- The action name to be sent to the frontend.
- File (Required)
- Parameter Type: String
- The filename output where relevant (currently only used for the SCREENSHOT action).
- Width (Required)
- Parameter Type: Integer
- The width of the output where relevant (currently only used for the SCREENSHOT action).
- Height (Required)
- Parameter Type: Integer
- The height of the output where relevant (currently only used for the SCREENSHOT action).
Example Query:
http://FrontendIP:6547/Frontend/SendAction?Action=SELECT
Example Return:
Boolean return. Returns true if the action was accepted, false if the action failed.
<bool>true</bool>
SendKey
The SendKey API takes the following argument:
- Key (Required)
- Parameter Type: String
- The key to be sent to the frontend.
Example Query:
http://FrontendIP:6547/Frontend/SendKey?Key=SELECT
Example Return:
Boolean return. Returns true if the action was accepted, false if the action failed.
<bool>true</bool>
GetActionList
The GetActionList API takes no arguments.
Example Query:
http://FrontendIP:6547/Frontend/GetActionList
Example Return:
<?xml version="1.0" encoding="UTF-8"?> <FrontendActionList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0" serializerVersion="1.1"> <ActionList> <Action><Key>0</Key><Value>0</Value></Action> <Action><Key>1</Key><Value>1</Value></Action> <Action><Key>2</Key><Value>2</Value></Action> <Action><Key>3</Key><Value>3</Value></Action> <Action><Key>3DNONE</Key><Value>No 3D</Value></Action> <Action><Key>3DSIDEBYSIDE</Key><Value>3D Side by Side</Value></Action> <Action><Key>3DSIDEBYSIDEDISCARD</Key><Value>Discard 3D Side by Side</Value></Action> <Action><Key>3DTOPANDBOTTOM</Key><Value>3D Top and Bottom</Value></Action> <Action><Key>3DTOPANDBOTTOMDISCARD</Key><Value>Discard 3D Top and Bottom</Value></Action> <Action><Key>4</Key><Value>4</Value></Action> <Action><Key>5</Key><Value>5</Value></Action> <Action><Key>6</Key><Value>6</Value></Action> <Action><Key>7</Key><Value>7</Value></Action> <Action><Key>8</Key><Value>8</Value></Action> <Action><Key>9</Key><Value>9</Value></Action> <Action><Key>ADJUSTSTRETCH</Key><Value>Turn on time stretch control</Value></Action> <Action><Key>ARBSEEK</Key><Value>Arbitrary Seek</Value></Action> <Action><Key>BACK</Key><Value>Exit or return to DVD menu</Value></Action> <Action><Key>BACKSPACE</Key><Value>Backspace</Value></Action> <Action><Key>BIGJUMPFWD</Key><Value>Jump forward 10x the normal amount</Value></Action> <Action><Key>BIGJUMPREW</Key><Value>Jump back 10x the normal amount</Value></Action> [... lots more ...] </ActionList> </FrontendActionList>
PlayRecording
The PlayRecording 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://FrontendIP:6547/Frontend/PlayRecording?ChanId=34736&StartTime=2011-09-26T19:00:00
Example Return:
<?xml version="1.0" encoding="UTF-8"?> <bool>true</bool>
PlayVideo
The PlayVideo API takes the following arguments:
- Id (Required)
- Parameter Type: String
- The database id for the video file.
- UseBookmark (Optional)
- Parameter Type: Boolean
- Pass 1 to resume playback at a bookmark.
Example Query:
http://FrontendIP:6547/Frontend/PlayVideo?Id=73&UseBookmark=1
Example Return:
<?xml version="1.0" encoding="UTF-8"?> <bool>true</bool>