Skip to main content

API wrapper for Samsumgs set-top boxes SMT-G7400 and SMT-G7401.

Project description

Build Status PyPI

Einder

Einder is an API wrapper for the set-top boxes SMT C7400 and SMT C7401. In the Netherlands these boxes are sold by a big Dutch cable operator under the name Horizon Box. The name Einder is a Dutch synonym for horizon.

I’d like to thank kuijp for his work on horizoncontrol. This is just a shameless Python rip off.

Installation

$ pip install einder

Usage

einder.Client controls the set-top box by sending bytes. These bytes represent the buttons of a remote control. You can find all supported keys in einder.keys. The example shows how to send keys.

import time

import logging
from einder import Client
from einder import keys

# Enable logging.
logging.basicConfig(level=logging.DEBUG)

# Replace IP with the IP of your set-top box. The port parameter is optional,
# by default its 5900.
c = Client("192.168.1.245", port=5900)

c.power_on()

# Wait a few seconds to let the set-top box have some time to start.
time.sleep(5)

# Select channel 501.
c.send_key(keys.NUM_5)
c.send_key(keys.NUM_0)
c.send_key(keys.NUM_1)

# For selecting a channel einder.Client offers a small helper function.
c.select_channel(501)

# No watch some TV...

c.power_off()
c.disconnect()

The einder.Client can also be used as a context manager:

from einder import Client

with Client("192.168.1.245") as c:
    c.select_channel(501)

License

This software is licensed under the MIT license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

einder-0.3.1.tar.gz (4.0 kB view hashes)

Uploaded Source

Built Distribution

einder-0.3.1-py3-none-any.whl (4.8 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page