skillfed

directv

Asynchronous Python client for DirecTV (SHEF).

directv v0.4.0 74.4K downloads/30d#14,837 on PyPI4
Permissive license MIT license Abandoned released

What it is and what it does

This package provides an async Python client for DirecTV receivers using the SHEF protocol. It lets you connect to a DirecTV receiver on your network and send commands to monitor its state and control playback, channels, and associated client devices. The client is built on aiohttp for async HTTP communication and yarl for URL handling, making it suitable for integration into async applications like home automation systems.

The package is straightforward to use—you instantiate a DIRECTV object with a receiver IP address and use async context managers to interact with it. However, it has been abandoned since 2023-03-07 with no active maintenance, so it may not work with newer receiver firmware or Python versions beyond those listed in its classifiers.

Use it for:

  • Integrate DirecTV receiver control into a home automation system that needs async operations
  • Monitor and report the status of DirecTV receivers across a household network
  • Build a custom remote control application that sends commands to DirecTV receivers via SHEF
  • Automate channel changes or recording management on DirecTV receivers programmatically

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Asynchronous Python client for controlling and monitoring DirecTV receivers via the SHEF protocol over a network connection.

Yes, if you need to control a DirecTV receiver and are willing to accept the maintenance risk. The package is simple, has low install friction, and carries no known vulnerabilities. However, verify first that the SHEF protocol implementation works with your receiver's firmware version, and be aware that no updates are forthcoming if compatibility issues arise.

Install

directv on PyPI

pip

pip install directv

uv

uv add directv

poetry

poetry add directv

Installing directv

Before you install

Low install friction with only 2 runtime dependencies. However, the package is abandoned—last commit was 2023-03-07 and no releases since 2020-09-12. Maintenance has ceased, so bug fixes and compatibility updates are unlikely.

License in practice

MIT license is permissive, allowing commercial and private use with minimal restrictions. You may use, modify, and distribute this package freely as long as you include the license notice.

Quickstart

pip install directv

import asyncio
from directv import DIRECTV

async def main():
    async with DIRECTV("192.168.1.100") as dtv:
        print(dtv)

asyncio.run(main())

Verify before relying

  • Whether the SHEF protocol implementation remains compatible with current DirecTV receiver firmware versions
  • Whether this package has been tested against Python versions beyond 3.8
  • Whether aiohttp and yarl dependencies work with modern Python environments

Package facts

License MIT license (permissive)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies 2 — aiohttp, yarl
Maintenance abandoned — 2,162 days since the last release
Last repo commit
First released
Downloads 74,426/month — #14,837 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: directv-0.4.0-py3-none-any.whl

Keywords: directv, api, async, client, shef

Development Status :: 4 - BetaFramework :: AsyncIOIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseNatural Language :: EnglishProgramming Language :: Python :: 3Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Topic :: Software Development :: Libraries :: Python Modules

Tags

directv receiver controldirectv async clientshef protocol pythondirectv remote apidirectv monitoringdirectv network controldirectv client library
home-automationasync-clientabandoned

More Python Modules packages