Svdrp
Un article de VDR Wiki FR.
Sommaire |
[modifier] Introduction
Le Protocole VDR Simplifié (SVDRP) permet d'envoyer à VDR des commandes basiques au travers d'une simple connection TCP sur le port 2001. T.q. envoyer un message qui sera affiché à la TV.
Il est possible d'écrire un script shell simple pour renvoyer n'importe quel texte sur l'écran de TV, par exemple à la réception d'un appel téléphonique ou quand un email arrive:
#!/bin/sh netcat -w 10 <HOSTNAME> 2001 <<eof mesg $1 quit eof
<HOSTNAME> doit être remplacé par le nom de machine (hostname) de l'ordinateur ou tourne VDR. Le script nécessite un texte comme paramètre d'entrée. Netcat existe egalement pour Windows.
Par défaut, seul localhost est autorisé à se connecter à VDR. Pour changer cela, il faut modifier le fichier svdrphosts.conf du répertoire de configuration /video/vdrconf de VDR. La structure de ce fichier est très simple
Adresse-IP[/Netmask]
Entrez juste, ligne après ligne, les IPs des machines ou réseaux autorisés. A la fin, vous avez besoin du masque réseau (T.q. /24). Pour des exemples, regardez le svdrphosts.conf exemple fournit dans les sources de VDR.
[modifier] Les commandes
[modifier] Aperçu
shell> svdrpsend.pl HELP 220 pluto SVDRP VideoDiskRecorder 1.3.47; Thu Apr 20 14:53:32 2006 214-This is VDR version 1.3.47 214-Topics: 214- CHAN CLRE DELC DELR DELT 214- EDIT GRAB HELP HITK LSTC 214- LSTE LSTR LSTT MESG MODC 214- MODT MOVC MOVT NEWC NEWT 214- NEXT PLAY PLUG PUTE QUIT 214- SCAN STAT UPDT VOLU 214-To report bugs in the implementation send email to 214- vdr-bugs@cadsoft.de 214 End of HELP info 221 pluto closing connection
[modifier] Description
| CHAN | [ + | - | <Numero> | <Nom> | <ID> ] |
| Change de chaine vers le haut, le bas ou pour la chaine donnée par son numéro, son nom ou son id. Sans option (ou après un changemenent de chaine avec succès), il retourne le numéro et le nom de la chaine courante. | |
| CLRE | |
| Efface toutes les données d'EPG. | |
| DELC | |
| Supprime la chaine. | |
| DELR | <numéro> |
| Supprime l'enregistrement avec le numéro donné. Avant de pouvoir supprimer un enrergistrement, une commande LSTR doit être executée pour retrouver les numéros d'enregistrement. Les numéros ne changent pas pendant des commandes DELR enchainées. ATTENTION: IL N'Y A PAS DE DEMANDE DE CONFIRMATION QUAND VOUS SUPPRIMEZ UN ENREGISTREMENT - SOYEZ CERTAIN DE SAVOIR CE QUE VOUS FAITES! | |
| DELT | <numéro> |
| Supprime la programmation. | |
| GRAB | <filename> [ jpeg | pnm [ <qualité> [ <sizex> <sizey> ] ] ] |
| Capture limage courante et la sauve dans <filename>. Les images peuvent être enregistrées au format jpeg (par défaut) ou PNM, à la qualité spécifiée (par défaut maximum, ceci s'applique uniquement au format Jpeg) et taille (par défaut plein écran). | |
| HELP | [ <sujet> ] |
| La commande HELP donne les informations d'aide. | |
| HITK | [ <touche> ] |
| Presse la touche de la télécommande correspondante. Sans option, il retourne une liste de tous les noms de touche valides. | |
| LSTC | [ <numéro> | <nom> ] |
| Liste les chaines. Sans option, toutes les chaines sont listées. Sinon, seule la chaine donnée est listée. Si un nom est donné, toutes les chaines contenant la chaine de caractères dans leur nom sont listées. | |
| LSTE | [ <chaine> ] [ now | next | at <time> ] |
| Liste les infos EPG. Sans paramètre, toutes les données de toutes les chaînes sont extraites. Si une chaîne est donnée (par nom ou numéro), seules les données la concernant sont extraites. now, next, ou at <time> restraignent les données retournées aux évènements présents, suivants ou à ceux de l'heure indiquée (qui doit être au format in time_t ). | |
| LSTR | [ <numéro> ] |
| Liste des enregistrements. Sans paramètres, tous les enregistrements sont listés, sinon le résumé est extrait pour l'enregistrement sélectionné. | |
| LSTT | [ <numéro> ] |
| Liste des programmations. Sans paramètre, tout est listé, sinon le programme selectionné est extrait. | |
| MESG | [ <message> ] |
| Affiche le message sur l'écran en OSD. Si le message est omis, le message en attente est retourné. Celui-çi est affiché quelques secondes après que l'OSD soit devenu disponible. Si un nouveau message est envoyé alors qu'il y en a en attente, celui en attente est effacé au profit du dernier en attente.. | |
| MODC | <numéro> <settings> |
| Changer les paramètres d'une chaîne. Les paramètres doivent être au même format que celui retourné par la commande LSTC. | |
| MODT | <numéro> | off | <settings> |
| Changer une programmation, Les paramètres doivent être au même format que celui retourné par la commande LSTT. Les mots clefs 'on' and 'off' peuvent être utilisés pour activer ou désactiver une programmation. | |
| MOVC | <number> <to> |
| Déplacer une chaîne à une nouvelle position. | |
| MOVT | <number> <to> |
| Déplacer une programmation à une nouvelle position. | |
| NEWC | <settings> |
| Creer une nouvelle chaîne. Les paramètres doivent être au même format que ceux retournés par la commande LSTC. | |
| NEWT | <settings> |
| Creer une nouvelle programmation. Les paramètres doivent être au même format que ceux retournés par la commande LSTT. Une erreur sera retournée si une programmation existe déja sur la même chaine aux même heures (début et fin). | |
| NEXT | [ abs | rel ] |
| Affiche le prochain évènement programmation. Si aucune option n'est donnée, la sortie est lisible au format normal. Avec l'option 'abs' le format date est donnée au format unix , soit le nombre de seconde depuis epoch (01/01/1970) , alors que 'rel' donne le temps entre maintenant et l'évènement. Si le temps absolu est inférieur a l'heure courante, cela veux dire que l'enregistrement est en cours. si le temps relatif est inférieur à zéro, cela veux dire que l'enregistrement a commencé a l'heure prévue. La première valeur retournée est le numéro de l'enregistrement dans la liste de programmation. | |
| PUTE | |
| Insère des données dans l'EPG. Les données entrées doivent suivre strictement le format defini dans vdr(5) pour le fichier 'epg.data'. Un '.' sur uen ligne termine l'entrée et force le traitement des données. (toutes les données entrées sont mise en attente dans un cache en attendant que le '.' soit reconnu). | |
| SCAN | |
| Force une recherche des informations EPG. Si le système ne comporte qu'une carte DVB, la recherche sera effectuée sur le périphérique primaire si celui-çi n'est pas en cours d'enregistrement. | |
| STAT | disk |
| Retourne les informations sur la capacité disque (total, libre, pourcentage). | |
| UPDT | <settings> |
| Met à jour une programmation. Les paramètres doivent être au même format que ceux retournés par la commande LSTT. Une erreur sera retournée si une programmation existe déja sur la même chaine aux même heures (début et fin), sinon elle sera créé. | |
| VOLU | [ <number> | + | - | mute ] |
| Affecte le volume audio au paramètre donné (limité a une fourchette comprise entre 0 et 255). Si les options spéciales sont données '+' or '-', le volume sera réglé plus ou moins. L'option 'mute' va basculer l'audio marche/arret. Si aucune option n'est donnée, le volume courant est retourné. | |
| QUIT | |
| Quitte vdr (SVDRP). Vous pouvez aussi utiliser Ctrl-D pour quitter. |
[modifier] Editer les programmations manuellement
statut:chaine:jour:début:fin:priorité:durée de vie:nom de fichier:
statut: 0 = inactif, 1 = actif
chaine: numéro de la chaine a enregistrer
jour: jour du mois
début: heure du début de l'enregistrement hhmm
fin: heure de fin de l'enregistrement hhmm
priorité: (50 conviendra)
durée de vie: durée de vie de l'enregistrement (99=permanent)
nom du fichier:
NEWT 1:440:30:1900:1905:50:99:fichiertest:
[modifier] codes de retour SVDRP
214 Message d'aide 215 Donnée d'enregsitrement EPG 220 Service VDR pret 221 Service VDR termine la communication 250 Action VDR demandée OK, terminée 354 Demarre la transmission de données EPG 451 Erreur durant le traîtement d'une action, annulation 500 Erreur de syntaxe, commande non reconnue 501 Ereur de syntaxe dans les paramètres ou arguments 502 Action ou commande non reconnue 504 paramètre de commande non implémenté 550 Action requise non executée 554 Echec transation ou action
Les codes retour sont au format
<Code retour><-|Espace><Texte><Nouvelle_ligne>
Dans la dernière ligne, le "-" est remplacé par un espace.
[modifier] Exemple de sortie (commande "help")
214-This is VDR version 1.3.11 214-Topics: 214- CHAN CLRE DELC DELR DELT 214- GRAB HELP HITK LSTC LSTE 214- LSTR LSTT MESG MODC MODT 214- MOVC MOVT NEWC NEWT NEXT 214- PUTE SCAN STAT UPDT VOLU 214- QUIT 214-To report bugs in the implementation send email to 214- vdr-bugs@cadsoft.de 214 End of HELP info

