<commit_before>Onkyo eISCP Control
===================

This is a Python library to control and interact with Onkyo receivers
over the network. It is also a ready-made command line script you
can use without knowing how to program.

Finally, this repository contains a YAML file containing all the
commands defined by the Onkyo protocol, automatically generated by
parsing the official documentation. Even if you are not using
Python, you may find this file useful when implementing your own
interface. See further down below for more information.


Installation
------------

Most recent released version::

    $ easy_install onkyo-eiscp

Latest `development version`__::

    $ easy_install onkyo-eiscp==dev

__ http://github.com/miracle2k/onkyo-eiscp/tarball/master#egg=onkyo-eiscp-dev


Usage
-----

The package installs a script called ``onkyo``, that can be used from the
command line::

    $ onkyo power=off

This will turn your receiver off. You may notice that you haven't given any
information as to where in the network your receiver is. The script should
in fact be able to find your Onkyo device by itself.

To see which receivers the script is able to find, you can use::

    $ onkyo --discover

If you have multiple receivers on your network, then by default, it will
simply connect to the first device found (which may be a different one
every time).

You can select a specific one by filtering by name::

    $ onkyo --discover
    TX-NR709 192.168.178.200:60128
    TX-NR609 192.168.178.169:60128
    $ onkyo -n 709 power=on

This will only turn on the TX-NR709 device.

There is also an ``--all`` flag, to send you commands to all devices at once.

Finally, you are of course able to manually specify the device to connect to::

    $ onkyo --host 172.20.0.144 volume=55
    $ onkyo --host 172.20.0.144 --port 42424 volume=55

To find out which commands are available, use the ``--help-commands`` option.


Commands
--------

A command consists of three parts: The zone, the command, and the arguments.
Here are some examples::

    power=on
    zone2.power=on
    main.balance=3

As you can see, the basic format is::

    zone.command=argument

If you do not specify a zone, then ``main`` is assumed.

There are some variations on this syntax that are possible, for example the
following are all equivalent::

    power on
    power:on
    main.power on
    main power on

In other words, instead of the ``.`` and ``=`` separators, whitespace may
be used, and the colon ``:`` is an alternative to ``=``. However, it's best<commit_msg>"Merge pull request #15 from WoLpH/patch-1\n\nUpdating out-of-date documentation"<commit_after>Onkyo eISCP Control
===================

This is a Python library to control and interact with Onkyo receivers
over the network. It is also a ready-made command line script you
can use without knowing how to program.

Finally, this repository contains a YAML file containing all the
commands defined by the Onkyo protocol, automatically generated by
parsing the official documentation. Even if you are not using
Python, you may find this file useful when implementing your own
interface. See further down below for more information.


Installation
------------

Most recent released version::

    $ easy_install onkyo-eiscp

Latest `development version`__::

    $ easy_install onkyo-eiscp==dev

__ http://github.com/miracle2k/onkyo-eiscp/tarball/master#egg=onkyo-eiscp-dev


Usage
-----

The package installs a script called ``onkyo``, that can be used from the
command line::

    $ onkyo system-power=off

This will turn your receiver off. You may notice that you haven't given any
information as to where in the network your receiver is. The script should
in fact be able to find your Onkyo device by itself.

To see which receivers the script is able to find, you can use::

    $ onkyo --discover

If you have multiple receivers on your network, then by default, it will
simply connect to the first device found (which may be a different one
every time).

You can select a specific one by filtering by name::

    $ onkyo --discover
    TX-NR709 192.168.178.200:60128
    TX-NR609 192.168.178.169:60128
    $ onkyo -n 709 system-power=on

This will only turn on the TX-NR709 device.

There is also an ``--all`` flag, to send you commands to all devices at once.

Finally, you are of course able to manually specify the device to connect to::

    $ onkyo --host 172.20.0.144 volume=55
    $ onkyo --host 172.20.0.144 --port 42424 volume=55

To find out which commands are available, use the ``--help-commands`` option.


Commands
--------

A command consists of three parts: The zone, the command, and the arguments.
Here are some examples::

    system-power=on
    zone2.power=on
    main.balance=3

As you can see, the basic format is::

    zone.command=argument

If you do not specify a zone, then ``main`` is assumed.

There are some variations on this syntax that are possible, for example the
following are all equivalent::

    power on
    power:on
    main.power on
    main power on

In other words, instead of the ``.`` and ``=`` separators, whitespace may
be used, and the colon ``:`` is an alternative to ``=``. However, it's best
{'fraction_non_alphanumeric': 0.0845341018251681, 'fraction_numerical': 0.029779058597502402, 'mean_word_length': 3.4918032786885247, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 8, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6733541', 'n_tokens_mistral': 1616, 'n_tokens_neox': 1463, 'n_words': 726}