Giter Site home page Giter Site logo

jgrieger1 / pyheos Goto Github PK

View Code? Open in Web Editor NEW

This project forked from andrewsayre/pyheos

0.0 0.0 0.0 207 KB

An async python library for controlling HEOS devices through the HEOS CLI Protocol

License: Apache License 2.0

Python 99.93% Batchfile 0.07%

pyheos's Introduction

pyheos

Build Status Coverage Status image image image image

An async python library for controlling HEOS devices through the HEOS CLI Protocol (version 1.16 for players with firmware 1.583.145 or newer).

Installation

pip install pyheos

or

pip install --use-wheel pyheos

Getting Started

The Heos class is the implementation providing control to all HEOS compatible devices on the local network through a single network connection. It is suggested to connect to a device that is hard-wired.

pyheos.Heos(host, *, timeout, heart_beat, all_progress_events, dispatcher)

  • host: str: The IP Address or hostname of a HEOS device on the local network. This parameter is required.
  • timeout: float: Number of seconds to wait during connection and issuing commands. Default is pyheos.const.DEFAULT_TIMEOUT = 5.0. This parameter is required.
  • heart_beat: Optional[float]: Number of seconds since last activity to issue a heart-beat command. Default is pyheos.const.DEFAULT_HEART_BEAT = 60.0. Set this parameter to None to disable heart-beat.
  • all_progress_events: Set to True to receive signals for each media play-back progression or False to only receive a signal when media state transitions to playing or changes. Default is True. This parameter is required.
  • dispatcher: Optional[pyheos.Dispatcher]: An instance of dispatcher to use for raising signals. The default is None which results in use of the default dispatcher implementation.

pyheos.Heos.connect(*, auto_reconnect, reconnect_delay)

Connect to the specified host. This method is a coroutine.

  • auto_reconnect: bool: Set to True to automatically reconnect to the host upon disconnection. The default is False.
  • reconnect_delay: float: The number of seconds to wait before attempting to reconnect upon a connection failure. The default is DEFAULT_RECONNECT_DELAY = 5.0

pyheos.Heos.disconnect()

Disconnect from the specified host. This method is a coroutine.

pyheos.Heos.get_players(*, refresh)

Retrieve the available players as a Dict[int, pyheos.Heos.HeosPlayer] where the key represents the player_id and the value the HeosPlayer instance. This method is a coroutine. This method will populate the players property and will begin tracking changes to the players.

  • refresh: Set to True to retrieve the latest available players from the CLI. The default is False and will return the previous loaded players.
Example:
import pyheos

heos = Heos('172.16.0.1')

await heos.connect(auto_reconnect=True)
players = await heos.get_players()
...
await heos.disconnect()

pyheos's People

Contributors

andrewsayre avatar gcjones avatar jgrieger1 avatar omarlatief avatar scop avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.