Diffuser des webradios


#1

Bonjour à tous!
Tout d’abord merci à pierre-gilles pour tout ce boulot! Et merci à tous pour cette mine d’information!
J’ai le cerveau qui explose quand je vois tout ce qu’on peut faire avec :smiley:

Je n’y connais pas grand chose en script et en code, et ça m’embête un peu. Du coup je me tourne vers vous.
J’habite dans une région où le choix en radio est assez limité, on plein de clones de nrj avec toujours les mêmes musiques, ou des clones de RFM/Nostalgie. Mais pas de rtl2 par exemple, encore moins de rire et chansons. Et même pour ceux qui aiment le hip-hop, ben faut oublier skyrock et autre…

En farfouillant, je suis tombé sur cette liste de lien vers des webradios: https://doc.ubuntu-fr.org/liste_radio_france

Est-ce qu’il ne serait pas possible de créer un script avec une liste de radios et pouvoir demander à Gladys:
“Diffuse la Radio 1” ou “diffuse la radio rtl2”? ça éviterai de passer par mon ordi ou d’allumer la tv et la box pour avoir plus de choix en radio.

Je suis certain de ne pas être le seul à y penser :wink:

Bonne journée à vous!


#2

ça devrait pouvoir fonctionner avec le module mp3 player sur Gladys :slight_smile:

Pour les phrases, il faudrait faire un module qui lance des actions spécifiques, c’est un peu de développement JS mais ça devrait se faire :slight_smile:


#3

Merci pour ta réponse, je vais farfouiller du côté du module Mp3 Player


#4

Bonjour à tous je réouvre ce topic pour savoir si vous avez réussi à lancer des radios via gladys et mp3 player.
Merci d’avance


#5

Bon j’ai graté un peu mais mais ça ne fonctionne pas :sweat:
voici mes exemples
j’ai créé un fichier m3u avec ça dedans

#EXTM3U
#EXTINF:0,RTL2
http://streaming.radio.rtl.fr/rtl2-1-44-64.mp3

et j’ai mis ce fichier avec mes musiques mais il ne reconnait pas ce format, alors j’ai essayé ça

gladys.music.play({room: 1,-ao alsa http://streaming.radio.rtl.fr/rtl2-1-44-64.mp3});

que j’ai mis dans un script pour l’exécuter mais il me mets une erreur car je pense avoir écris du chinois après 1,
voilà où j’en suis …


#6

Bonsoir, je continu mes recherches, j’ai vu qu’il y avait le module shell qui devrait peut être résoudre mon problème mais pour ça il faut que j’arrive à l’installer
installez le module OK
redémarrez Gladys OK
Créez un device comma celui là :
|| Nom = Nom du device || identifier = la commande a éxecuter || protocole = shell || Service = shell || :roll_eyes:


là j’ai un doute
allez dans edit et créez un devicetype comme ça :
type: binary
max: 1
min: 0
et là même pas trouvé ou c’était
Merci d’avance pour votre aide


#7

@jejeaure salut :slight_smile:

c’est le bouton bleu “Voir plus” :wink:


#8

Bonjour, Jean 34
Merci je viens de faire ce que tu m’as indiqué :smiley:


Maintenant j’essai de creer mon script mais il ne fonctionne pas dans le script gladys mais fonctionne dans le terminal du raspberry

Merci de l’aide


#9

Et dans les logs Gladys ça dit quoi ?


#10

Dans l’identifier tu dois mettre ta commande, c’est pas le cas sur ta capture.

Par contre je suis pas sur que tu puisse stopper la lecture sans kill Gladys.


#11

Bonsoir, je veux réussir alors je continu, pour que je puisse comprendre je vais commencer simple, dans un premier temps je veux lancer une chanson via le module shell
j’ai créé un périphérique avec nom du device “musique” identité “/home/pi/musiques/essai.sh”


ensuite dans voir plus j’ai mis le même nom du device et même identité

j’ai créé un script pour lancer la commande

voici mon fichier qu’il doit exécuter “essai.sh”

#!/bin/bash
mplayer daniall.mp3

Capture%20du%202019-02-12%2021-52-10

et voici les logs quand j’exécute le script

0|gladys | Executing action “Exécuter un script”
0|gladys | House : checkUsersPresence
0|gladys | gladys.utils.sqlUnique was not able to find element
0|gladys | Query = "
0|gladys | SELECT dt.id, dt.type, dt.unit, dt.min, dt.max, d.identifier, dt.device, d.service, d.machine, dt.identifier as deviceTypeIdentifier
0|gladys | FROM devicetype dt
0|gladys | JOIN device d ON d.id = dt.device
0|gladys | WHERE dt.id = ? AND dt.type = ‘music’;
0|gladys | "
0|gladys | Params = “[10]”
0|gladys | Unhandled rejection Error: NotFound
0|gladys | at /home/pi/gladys/api/core/utils/utils.sqlUnique.js:11:31
0|gladys | at tryCatcher (/home/pi/gladys/node_modules/bluebird/js/release/util.js:16:23)
0|gladys | at Promise._settlePromiseFromHandler (/home/pi/gladys/node_modules/bluebird/js/release/promise.js:512:31)
0|gladys | at Promise._settlePromise (/home/pi/gladys/node_modules/bluebird/js/release/promise.js:569:18)
0|gladys | at Promise._settlePromise0 (/home/pi/gladys/node_modules/bluebird/js/release/promise.js:614:10)
0|gladys | at Promise._settlePromises (/home/pi/gladys/node_modules/bluebird/js/release/promise.js:693:18)
0|gladys | at Promise._fulfill (/home/pi/gladys/node_modules/bluebird/js/release/promise.js:638:18)
0|gladys | at /home/pi/gladys/node_modules/bluebird/js/release/nodeback.js:42:21
0|gladys | at /home/pi/gladys/node_modules/sails-mysql/lib/connections/spawn.js:120:16
0|gladys | at Object.poolfully [as releaseConnection] (/home/pi/gladys/node_modules/sails-mysql/lib/connections/release.js:28:12)
0|gladys | at Query._callback (/home/pi/gladys/node_modules/sails-mysql/lib/connections/spawn.js:105:35)
0|gladys | at Query.Sequence.end (/home/pi/gladys/node_modules/mysql/lib/protocol/sequences/Sequence.js:96:24)
0|gladys | at Query._handleFinalResultPacket (/home/pi/gladys/node_modules/mysql/lib/protocol/sequences/Query.js:144:8)
0|gladys | at Query.EofPacket (/home/pi/gladys/node_modules/mysql/lib/protocol/sequences/Query.js:128:8)
0|gladys | at Protocol._parsePacket (/home/pi/gladys/node_modules/mysql/lib/protocol/Protocol.js:280:23)
0|gladys | at Parser.write (/home/pi/gladys/node_modules/mysql/lib/protocol/Parser.js:73:12)
0|gladys | at Protocol.write (/home/pi/gladys/node_modules/mysql/lib/protocol/Protocol.js:39:16)
0|gladys | at Socket. (/home/pi/gladys/node_modules/mysql/lib/Connection.js:96:28)
0|gladys | at emitOne (events.js:116:13)
0|gladys | at Socket.emit (events.js:211:7)
0|gladys | at addChunk (_stream_readable.js:263:12)
0|gladys | at readableAddChunk (_stream_readable.js:250:11)

voilà j’espère avoir été clair dans mes explications et je veux vraiment comprendre comment fonctionne le module shell entre les périphériques et les scripts :cold_sweat:


#12

Salut, tu n’as pas besoin d’ajouter un sous-device (le bouton “Voir plus”) pour que le module shell fonctionne, tu ajoute simplement ton device avec la chemin vers ton fichier .sh comme tu l’as fait :wink:

Petite question, peut être conne mais bon … Tu as effectué un chmod a+x sur ton fichier bash ?

Tu as essayé de le lancer manuellement en ligne de commande ton script avant de la lancer via Gladys ?


#13

Et surtout le shell n’est pas un service de music, ton script ne fonctionnera pas. Donc l’erreur est normale.

Juste sans faire de script, est ce que ça fonctionne si tu passe le dt à 1 via l’interface ?


#14

Bonsoir,
Bon Jean34 et VonOx non je n’ai pas fait de chmod sur le fichier :sweat_smile: , et effectivement le script ne fonctionne pas donc forcément je peux embêter tout le monde le problème restera le même (je suis vraiment une quiche).
Alors je vais changer de stratégie qui m’évitera des erreurs de bleus :cold_sweat:
Vous utilisez quoi pour lire votre musique ? et est-ce que écoutez des radios?
Merci et désolé de vous avoir fait chercher des erreurs évidentes.