[mythtv] Services API: Does Dvr/AddRecordSchedule work?

John P Poet jppoet at gmail.com
Mon Oct 15 19:55:59 UTC 2018


On Sun, Oct 14, 2018 at 11:34 AM Bill Meek <keemllib at gmail.com> wrote:

> On 10/13/2018 12:17 PM, John P Poet wrote:
> > Good to know.  I had not thought of retrieving a template first.  That
> > seems like a good approach.
> >
> > Has anyone written a set of python tools for controlling Myth with the
> > services API, that has been published somewhere?  The documentation is
> > currently somewhat sparse, and examples might be helpful.
>
> Hey John,
>
> This was my attempt at a cookbook. It builds up from simple examples to a
> full program with arguments. Since I don't speak fluent Python, I wanted
> to show how to use the returned values from the API (and I'd guess that
> you were using some of it.)
>
>      https://www.mythtv.org/wiki/Python_API_Examples
>
> I've been looking at putting the Python Services API *next to* the existing
> Python bindings. That's where mine is installed. I'm not clear on how to
> incorporate it into the build process.
>
> Unless we're living in parallel universes, you're using
>
>      https://github.com/billmeek/MythTVServicesAPI
>
> and that was my idea of a tool. My original plan was to create a library of
> things that could be imported. Like:
> Capture.py/Content.py/Guide.py...Video.py.
> Plus one Connection.py that the others used.
>
> But they were essentially the same, all returning a dictionary with the
> returned
> parameters. And so the more generic backend.send(...) is what I decided on.
>
> I do have a tool just for testing (cleverly named 'api') and it's --help
> looks
> like this:
>
> $ api --help
> usage: api [-h] [--debug] [--digest <user:pass>] [--host <host> [<host>
> ...]]
>             --endpoint <ep> [--noetag] [--nogzip] [--oneline] [--port
> <port>]
>             [--postdata <pd> [<pd> ...] | --rest <rest> [<rest> ...]]
> [--quiet]
>             [--timeout <seconds>] [--usexml] [--version] [--wrmi]
>
> Services API Tester
>
> optional arguments:
>    -h, --help            show this help message and exit
>    --debug               output additional information (False)
>    --digest <user:pass>  digest username:password
>    --noetag              tell the backend not to return a ETag (False)
>    --nogzip              tell the backend not to return gzipped data
> (False)
>    --oneline             print the response on one line, no formatting
> (False)
>    --port <port>         back/frontend port (6544)
>    --postdata <pd> [<pd> ...]
>                          Tag=Value *
>    --rest <rest> [<rest> ...]
>                          Tag=Value *
>    --quiet               don't print any responses (False)
>    --timeout <seconds>   seconds to wait for a response (10)
>    --usexml              ask for an XML response (False)
>    --version             show program's version number and exit
>    --wrmi                allows postdata to be sent to the server (False)
>
> required arguments:
>    --host <host> [<host> ...]
>                          server hostname(s) or IP address(s)
>    --endpoint <ep>       endpoint to test
>
> * E.g. Id=1 TitleRegEx=\*News\*. Default values are in ()s.
>

Hi Bill,

Yes, I am making use of those tools that you have written.  They are a huge
help -- although I had not noticed your `api` application, and will need to
check it out.

It is a challenge to document "best practices" for each possible API call
(e.g. retrieving a template to use for creating a new recording).  I was
just wondering if anyone had used the Services API in a fairly complete
application, that acted as a good example.

Thank you,

John
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mythtv.org/pipermail/mythtv-dev/attachments/20181015/595df736/attachment.html>


More information about the mythtv-dev mailing list