directv
Asynchronous Python client for DirecTV (SHEF).
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 directvuv
uv add directvpoetry
poetry add directvInstalling 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
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
rokuecpAn asynchronous Python client for controlling…
permissive · top 15,000 on PyPI
denonavrProvides async control and monitoring of Denon…
permissive · top 15,000 on PyPI
pyjvcprojectorA Python client library for controlling JVC…
permissive · top 15,000 on PyPI
bond-asyncAsynchronous Python wrapper for the Bond Local…
permissive · top 15,000 on PyPI
rxvrxv discovers and controls Yamaha AV receivers…
permissive · top 15,000 on PyPI
pyippAsynchronous Python client for querying and…
permissive · top 15,000 on PyPI
pyatvAn asyncio Python library for controlling Apple…
permissive · top 15,000 on PyPI
asyncio-dgramProvides simple async/await wrappers for UDP…
permissive · top 15,000 on PyPI
plexwebsocketAsync library that connects to Plex media…
permissive · top 15,000 on PyPI
wledAn asynchronous Python client library for…
permissive · top 15,000 on PyPI