Skip to content

Latest commit

 

History

History
151 lines (105 loc) · 8.62 KB

File metadata and controls

151 lines (105 loc) · 8.62 KB

README available in
English Français


NAC-depend-none NODEJS NPM GitHub version NAC-license

Devialet

Devialet phantom-remote-control Donate

Passerelle HTTP pour contrôler à distance des enceintes Devialet

Ce code vous permet de controler vos Devialet Phantom en utilisant une API très simple, ou simplement depuis votre navigateur internet. La detection de vos enceintes Devialet sera automatique sur votre réseau local.

Devialet Phantom

💡 Fonctionnalités

Contrôler la lecture musicale de vos enceintes Devialet

Devialet 🔊 Phantom Dialog 🔉 Phantom Premier 🔈 Phantom Reactor
Lire un fichier mp3 ✔️ ✔️ ✔️
Pause et reprendre ✔️ ✔️ ✔️
Arrêter ✔️ ✔️ ✔️
Changer le volume ✔️ ✔️ ✔️
Récupérer le volume actuel ✔️ ✔️ ✔️
Augmenter ou diminuer le volume ✔️ ✔️ ✔️
Récupérer la position actuelle de lecture ✔️ ✔️ ✔️
Récupérer la durée de la piste en cours ✔️ ✔️ ✔️
Déplacer la lecture à un endroit spécifique ✔️ ✔️ ✔️
Contrôler plusieurs enceintes en même temps ✔️ ✔️

Si vous êtes développeur

git clone https://github.com/VanVan/phantom-remote-control.git
cd phantom-remote-control
npm install
node index.js

Vous avez besoin de NodeJS et de NPM

Si vous souhaitez simplement quelque chose de prêt à l'emploi

Il vous suffit de télécharger l'application, puis de la lancer.

Windows Windows mac Mac linux Linux
Télécharger Télécharger Télécharger
URL Description
?play=http://site.com/music.mp3 Lire un fichier mp3
?setVolume=30 Régler le volume à une valeur précise
?setVolume=Up Augmenter le volume
?setVolume=Down Diminuer le volume
?pause=1 Pause
?play=1 Reprendre
?stop=1 Stop
?getPosition=1 Récupérer la position actuelle
?getDuration=1 Récupérer la durée de la piste
?seek=30 Lire un endroit spécifique de la musique

🔗 Exemple:

http://127.0.0.1:8090/?setVolume=Up

⏩ Ces requêtes peuvent être effectuées depuis un navigateur internet ou en tant qu'API pour être utilisé comme raccourcis clavier par exemple.

🧰 Configuration

Aucune configuration n'est nécessaire, c'est prêt à fonctionner ! Cependant, vous pouvez éditer le fichier config.json si vous avez besoin.

{
"http_local_port":                  8090,
"devialet_ipaddress":               "autodetect",
"devialet_port":                    "autodetect",
"devialet_device_description_xml":  "autodetect",
"ssdp_detection_interval":          10000,
"volume_step":                      10,
"debug":                            false
}

Each variable in the config can have these options:

  • http_local_port: Port local HTTP à utiliser pour recevoir les connexions.
  • devialet_ipaddress and devialet_port: Ces valeurs peuvent être utilisées ensemble pour forcer le programme à utiliser une enceinte spécifique ou non detectées.
  • devialet_device_description_xml: Peut être utilisé pour forcer l'utilisation d'un appareil spécifique.
  • ssdp_detection_interval: Intervalle des requêtes SSDP à utiliser pour trouver un appareil.
  • volume_step: Régler le pas à utiliser entre chaque changement de volume d'augmentation et de diminution.
  • debug: Permet d'utiliser un fichier .env pour définir des variables d'environnement.

autostart Démarrer automatiquement ce programme en tant que service

Si vous utilisez ce programme tous les jours avec vos enceintes, il sera préférable de le configurer en tant que service système sur un serveur Linux ou sur votre ordinateur personnel. Ce programme sera alors toujours disponible.

linux20-2 Linux avec systemd

Vous pouvez installer simplement le service sur Linux en entrant ces commandes

sudo node install_service.js

Cela va créer un fichier /etc/systemd/system/devialet.service

Vous pouvez ensuite démarrer le service avec la commande sudo systemctl start devialet

Windows Windows

Vous pouvez simplement installer le service sur Windows en entrant la commande

npm install node-windows
node install_service.js

Pour vérifier si tout fonctionne, ouvrez simplement la page http://127.0.0.1:8090 sur votre navigateur.

✏️ Contribuer

  • Ajouter de nouvelles fonctionnalités de contrôle
  • Ajouter un panneau de contrôle utilisable directement depuis le navigateur

🎓 Copyright and license

Code distribué sous la GNU General Public License v3.0.

💰 Donation

Si ce projet vous aide, pensez à m'offrir une tasse de thé :)

paypal