Skip to main content

Python library for accessing a Linux VDR via SVDRP

Project description

pyvdr

Python library for accessing a Linux VDR via SVDRP

CircleCI

220 easyVDR SVDRP VideoDiskRecorder 2.2.0; Sat Dec  8 19:21:38 2018; UTF-8
250 Message queued
221 easyVDR closing connection

SVDRP

Parsing of Responses

The first and the last row just contain a ' ' as separator while other have a '-'.

Example:

[
('220', ' ', 'easyVDR SVDRP VideoDiskRecorder 2.2.0; Sun Dec  9 21:17:06 2018; UTF-8\r'),
('215', '-', 'C C-9999-161-12103 ProSieben'),
('215', '-', 'E 4321 1544382900 7500 4E 16'),
('215', '-', 'T The Jungle Book'),
('215', '-', 'S Abenteuer-Realfilm. Der kleine Mogli wird im Dschungel von W\xc3\xb6lfen aufgezogen. Als sein Leben durch den Tiger Shir Khan bedroht wird, muss er zu den Menschen zur\xc3\xbcckkehren.'), ('215', '-', 'D Abenteuer-Realfilm. Der Junge Mogli ist im Indischen Dschungel von W\xc3\xb6lfen gro\xc3\x9fgezogen worden. Doch dann bedroht der Tiger Shir Khan sein Leben und er muss seine Familie verlassen. Gemeinsam mit seinen Begleitern, dem strengen Panther Baghira und dem lebenslustigen B\xc3\xa4ren Balu, macht er sich auf den Weg zu den Menschen. Zusammen m\xc3\xbcssen sie ein Abenteuer voller Gefahren bestehen. So hat es unter anderem die Schlange Kaa auf Mogli abgesehen und auch der Affenk\xc3\xb6nig Louie ist hinter ihm her. Louie will ihm entlocken, wie man Feuer macht, um den Menschen so \xc3\xa4hnlich wie m\xc3\xb6glich zu werden. Doch auch Shir Khan ist den drei Freunden immer dicht auf den Fersen. Er will Mogli daran hindern, das Menschendorf zu erreichen. IMDb rating: 7.4/10.|Role Player: Neel Sethi|Director: Jon Favreau|Scriptwriter: Justin Marks|Producer: Brigham Taylor'),
('215', '-', 'G 12'),
('215', '-', 'e'),
('215', '-', 'c'),
('215', ' ', 'End of EPG data\r')]

LSTE 2 now

215-C C-102-1079-11110 ZDF HD
215-E 45654 1544564700 4500 4E 4
215-T Markus Lanz
215-D Ole von Beust, Politiker - Hamburgs ehemaliger Erster Bürgermeister sagt: "Der Wahlkampf hat belebend gewirkt." Von Beust erklärt, warum er mit dem Ergebnis zufrieden ist und wie der Aufbruch in der CDU gelingen kann.|Kristina Dunz, Journalistin - Auch sie war beim CDU-Parteitag in Hamburg und sagt: "Es geht ein Riss durch die Christdemokraten." In der Sendung erzählt Dunz, wie sie die Stimmung in der Partei vor Ort erlebt hat.|Wolfgang Grupp, Unternehmer - Er sprach sich im Vorfeld offen für Friedrich Merz als Parteivorsitzenden aus. Grupp sagt: "Die Chance auf einen Kurswechsel der CDU wurde vertan." Der Unternehmer gibt seine Einschätzung.|Benedikt Böhm, Speedbergsteiger - Der Extrembergsteiger weiß: "Der Tod ist Teil des Sports." In der Sendung erklärt Böhm, warum der Tod immer eine Option ist, und erzählt von seiner Speedbesteigung des Mount Damavand. Moderation: Markus Lanz|HD-Produktion|Altersfreigabe: 6
215-G 80
215-X 2 03 deu Stereo
215-X 2 03 mul ohne Originalton
215-X 2 03 mis ohne Audiodeskription
215-X 2 03 deu Dolby Digital 2.0
215-X 5 0B deu HDTV
215-X 3 10 deu DVB-Untertitel
215-V 1544564700
215-e
215-c
215 End of EPG data
215-e
215-E 4603 1545174000 3600 51 6
215-T CNN Today (with World Sport)
215-D CNN's Michael Holmes and Amara Walker from Atlanta, set the agenda for the day's most important news, business and sport stories.
215-G 20
215-e
215-c

Chan

250 2 ZDF HD

Timers

Plain response

250-1 1:3:2018-12-12:2013:2330:50:99:The Taste~Es weihnachtet sehr! Acht ehemalige Schützlinge der Coaches Cornelia Poletto, Alexander Herrmann, Frank Rosin und Roland Trettl kochen bei der grossen Weihnachtsspezial-Challenge.:<epgsearch><channel>3 - SAT.1</channel><searchtimer>The taste</searchtimer><start>1544641980</start><stop>1544653800</stop><s-id>4</s-id><eventid>4353</eventid></epgsearch>

Status Flags

Flags in timer definition

1   the timer is active (and will record if it hits)
2   this is an instant recording timer
4   this timer uses VPS
8   this timer is currently recording (may only be up-to-date with SVDRP)

Those flags are bit-representations in the timers' status field.

Test

python -m unittest discover -v

Module lifecycle

Build module

python3 setup.py sdist bdist_wheel

Install module

To manually install:

pip install pyvdr/dist/pyvdr-0.1.2-py3-none-any.whl --upgrade

Upload

After setup of an configuration file ~/.pypirc:

python -m twine upload dist/*
netcat -w 10 vdr.local 6419 <<EOF
chan
quit
EOF
220 easyVDR SVDRP VideoDiskRecorder 2.2.0; Sun Sep  1 15:27:23 2019; UTF-8
250 66 Disney SD
221 easyVDR closing connection

Resources

Create a python module https://dzone.com/articles/executable-package-pip-install

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

pyvdr-0.3.1.tar.gz (11.8 kB view details)

Uploaded Source

Built Distribution

pyvdr-0.3.1-py3-none-any.whl (9.7 kB view details)

Uploaded Python 3

File details

Details for the file pyvdr-0.3.1.tar.gz.

File metadata

  • Download URL: pyvdr-0.3.1.tar.gz
  • Upload date:
  • Size: 11.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.6

File hashes

Hashes for pyvdr-0.3.1.tar.gz
Algorithm Hash digest
SHA256 fd63907a3aafe2f6bfd71a137f9f69c1f06fda8aabb2a81b6ad83a11b4a632e3
MD5 9fd81e9f4a1795a2d852a7a4490e5a14
BLAKE2b-256 47f5b7fcd065a1a3ce32c15d188613d2532c69e40c752245e5486c4f1c46a1ba

See more details on using hashes here.

File details

Details for the file pyvdr-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: pyvdr-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 9.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.6

File hashes

Hashes for pyvdr-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 49413d83726d5fccded37eebf88105380a834b8a695942bc55075f61215993c7
MD5 e7685d739226aa1dc3a2b847ec3503e3
BLAKE2b-256 f5327c533de0c7c99cdd838e5140652815f0660d06315796c48ac7d64ea23e1f

See more details on using hashes here.

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