Forum eedomus
http://forum.eedomus.fr/

Pour les utilisateurs de SONOS
http://forum.eedomus.fr/viewtopic.php?f=13&t=756
« Précédent  Page 4 sur 18  Suivant »
Auteur:  darkwinter [ 10 Juin 2013 19:51 ]
Sujet du message:  Re: Pour les utilisateurs de SONOS

@dj Momo, j'ai vi ton commentaire il faut aussi rajouter dans le fichier le lien suivant pour indiquer ou se trouve le dossier de partage web :

$directory = "SERVEUR/web"; //pour celles et ceux ayant un synology avec les fichiers directement dans le dossier web.
Auteur:  darkwinter [ 10 Juin 2013 20:02 ]
Sujet du message:  Re: Pour les utilisateurs de SONOS

Autre remarque, si j'ai bien compris chaque message envoyé doit normalement générer 1 mp3 différents si le message est différents. Par contre j'ai beau changé le message j'ai toujours 1 seul mp3 dans le dossier audio/fr/

J'essai de comprendre un peu le code pour le pb de taille du fichier mp3, dois y avoir soit un pb niveau du code soit un pb de droit sur le synology, je vois que cela pour le moment.
Auteur:  DjMomo [ 10 Juin 2013 22:30 ]
Sujet du message:  Re: Pour les utilisateurs de SONOS

Jette un oeil au niveau des droits, cela fonctionne sur mon Syno :

Code : Tout sélectionner
NAS> ll
drwxrwxrwx    3 admin    users         4096 Jun  8 20:24 .
drwxrwxrwx   12 admin    users         4096 May 23 18:49 ..
drwxr-xr-x    3 nobody   nobody        4096 Jun  8 20:24 audio
-rw-rw-rw-    1 admin    users         1181 Jun  8 19:34 index.php
-rw-rw-rw-    1 admin    users        15945 Jun  8 20:24 sonos.class.php
obelix> cd audio/
NAS> ll
drwxr-xr-x    3 nobody   nobody        4096 Jun  8 20:24 .
drwxrwxrwx    3 admin    users         4096 Jun  8 20:24 ..
drwxr-xr-x    2 nobody   nobody        4096 Jun  8 20:38 fr
NAS> cd fr
NAS> ll
drwxr-xr-x    2 nobody   nobody        4096 Jun  8 20:38 .
drwxr-xr-x    3 nobody   nobody        4096 Jun  8 20:24 ..
-rw-rw-rw-    1 nobody   nobody       33264 Jun  8 20:24 TTS-934dc5fc1d05e3763b79a1c247b2c1c4.mp3
-rw-rw-rw-    1 nobody   nobody       14112 Jun  8 20:38 TTS-b0812b331a1db9e249bb27d2247302f6.mp3
Auteur:  DjMomo [ 10 Juin 2013 22:31 ]
Sujet du message:  Re: Pour les utilisateurs de SONOS

darkwinter a écrit:Autre remarque, si j'ai bien compris chaque message envoyé doit normalement générer 1 mp3 différents si le message est différents


Tout à fait.
Auteur:  DjMomo [ 10 Juin 2013 22:32 ]
Sujet du message:  Re: Pour les utilisateurs de SONOS

darkwinter a écrit:@dj Momo, j'ai vi ton commentaire il faut aussi rajouter dans le fichier le lien suivant pour indiquer ou se trouve le dossier de partage web :

$directory = "SERVEUR/web"; //pour celles et ceux ayant un synology avec les fichiers directement dans le dossier web.


Effectivement, oubli de ma part hier soir :?
Auteur:  tchex [ 11 Juin 2013 08:08 ]
Sujet du message:  Re: Pour les utilisateurs de SONOS

Bonjour,
pas encore testé mais j'ai hâte !

cette phrase en particulier vrai vraiment rêver !

diffusons un message texte généré par notre eedomus, même si un titre est en cours de diffusion sur notre Sonos. Cerise sur le gâteau, la diffusion sonore reprendra là où elle en était, et avec son niveau sonore, avant la diffusion du message.


en tous cas merci pour tout ça :P
Auteur:  darkwinter [ 11 Juin 2013 08:51 ]
Sujet du message:  Re: Pour les utilisateurs de SONOS

Je suis aussi Ok sur les droits. Il faudrait une autre personne qui test afin de voir si il y a une erreur dans le code ou non.

Tu as créer un user spécial sur le syno?
Auteur:  tchex [ 11 Juin 2013 09:16 ]
Sujet du message:  Re: Pour les utilisateurs de SONOS

bonjour,

moi j'ai bien un nouveau mp3 qui se crée (si pas déjà existant).
par contre c'est illisible avec mediaplayer (pas testé avec sonos car pas chez moi)
je l'ai mis en pj, ça correspond à :
sonos.php?message=coucou&volume=50&force_unmute=1

Pièces jointes:
TTS-9187dc827e1e2995341991160d750cfe.zip
(809 octet(s)) Téléchargé 495 fois
Auteur:  tchex [ 11 Juin 2013 09:24 ]
Sujet du message:  Re: Pour les utilisateurs de SONOS

d'ailleurs attention dans les exemples donnés il y a un $ en trop ici

http://IP_serveur_web/chemin/vers/sonos/sonos.php?$message=Mon message à diffuser&volume=50&force_unmute=1
Auteur:  tchex [ 11 Juin 2013 09:36 ]
Sujet du message:  Re: Pour les utilisateurs de SONOS

pour info j'ai testé tous les fichiers avec 'mp3validator' et il me dit 'unknown file format' à chaque fois.
Auteur:  tchex [ 11 Juin 2013 09:51 ]
Sujet du message:  Re: Pour les utilisateurs de SONOS

ça se complique.. on dirait que tout le monde n'a pas le droit d'utiliser l'api.
Le mp3 généré n'est pas un mp3 mais une page web qui dit que mon client n'a pas le droit d'accéder à cette page :
<!DOCTYPE html><html lang=en><meta charset=utf-8><meta name=viewport content="initial-scale=1, minimum-scale=1, width=device-width"><title>Error 403 (Forbidden)!!1</title><style>*{margin:0;padding:0}html,code{font:15px/22px arial,sans-serif}html{background:#fff;color:#222;padding:15px}body{margin:7% auto 0;max-width:390px;min-height:180px;padding:30px 0 15px}* > body{background:url(//www.google.com/images/errors/robot.png) 100% 5px no-repeat;padding-right:205px}p{margin:11px 0 22px;overflow:hidden}ins{color:#777;text-decoration:none}a img{border:0}@media screen and (max-width:772px){body{background:none;margin-top:0;max-width:none;padding-right:0}}</style><a href=//www.google.com/><img src=//www.google.com/images/errors/logo_sm.gif alt=Google></a><p><b>403.</b> <ins>That’s an error.</ins><p>Your client does not have permission to get URL <code>/translate_tts?q=bonjour%2C+il+pleut+aujourd+hui&amp;tl=fr</code> from this server. (Client IP address: XXX.XXX.XXX.XXX)<br><br>


<ins>That’s all we know.</ins>



changez l'extension fichier de mp3 à txt pour voir si c'est pareil chez vous.

c'est une histoire de user agent ?
Auteur:  tchex [ 11 Juin 2013 10:11 ]
Sujet du message:  Re: Pour les utilisateurs de SONOS

je crois avoir résolu le problème en forçant le user agent :
après le 'require', insérer la ligne :
Code : Tout sélectionner
ini_set('user_agent', 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.110 Safari/537.36');


et ça devrait marcher. en tous cas ça marche pour moi ! :P
Auteur:  darkwinter [ 11 Juin 2013 19:21 ]
Sujet du message:  Re: Pour les utilisateurs de SONOS

Chez moi j'ai toujours le pb même en rajoutant le user agent, un seul fichier mp3 créer sonos me dit que le fichier est mal codé. Il fait 0ko le fichier, rien à l'intérieur en ouvrant avec un txt. Autre bug j'ai changé à plusieurs reprises le message à lire, toujours un seul fichier mp3 de créer.(alors que pour chaque message différents je dois avoir un autre mp3)
@Dj Momo si tu as une piste je suis preneur :)

Pour info pour baisser le son de 50% du sonos avec le code donné cela fonctionne, c'est TTS qui pose pb
Auteur:  tchex [ 12 Juin 2013 09:39 ]
Sujet du message:  Re: Pour les utilisateurs de SONOS

bonjour,

concernant le directory, peut-il pointer vers un serveur web ?
Mes scripts sont exécutés à distance et les fichiers mp3 sont stockés eux aussi à distance.
J'ai mis $directory = "monsite.web/sonos";
monsite.web/sonos/audio/fr est bien accessible via un navigateur.
Mais malheureusement ça ne fonctionne pas..
des idées ?

merci !
Auteur:  DjMomo [ 12 Juin 2013 13:45 ]
Sujet du message:  Re: Pour les utilisateurs de SONOS

Je viens de prendre en compte la suggestion de tchex concernant le user agent, mise à jour dispo sur mon Git : http://github.com/djmomo/sonos

darkwinter : remplace le fichier sonos.class.php par celui ci : https://github.com/DjMomo/sonos/archive ... winter.zip
Depuis ton navigateur, essaie d'appeler ton script pour générer un message sonore. Tu va avoir différents messages qui vont s'afficher sur ton navigateur, peux tu me les recopier ici ou dans un fichier txt ?

tchex, il faut que le serveur web soit hébergé chez toi. Le sonos va lire ensuite les fichiers audio en CIFS (équivalent de Samba), protocole qui ne passe pas par Internet. De plus, les Sonos devraient être accessibles depuis Internet (et je ne sais pas si c'est très propice) pour pouvoir les piloter...
A moins que j'ai mal compris ?
Auteur:  tchex [ 12 Juin 2013 13:54 ]
Sujet du message:  Re: Pour les utilisateurs de SONOS

merci pour ces infos djmomo.
effectivement mes sonos sont accessibles par internet dans cette configuration via des ports particuliers... c'est effectivement pas top niveau sécurité..
mais comme j'ai pas de NAS et que j'ai pas envie de laisser mon pc tourner jour et nuit... pour l'instant c'est la config qui me convient le mieux.
.. bon bah ça m'arrange pas alors.. :?
Auteur:  darkwinter [ 12 Juin 2013 16:00 ]
Sujet du message:  Re: Pour les utilisateurs de SONOS

Voici donc les infos du TXT généré sous firefox :

Nom du fichier : d41d8cd98f00b204e9800998ecf8427e
Chemin complet du fichier : audio/fr/TTS-d41d8cd98f00b204e9800998ecf8427e.mp3
Le fichier n'existe pas -> création
Fichier MP3 :
Contenu du fichier audio/fr/TTS-d41d8cd98f00b204e9800998ecf8427e.mp3 :



Voici le fichier sonos.tts.php

<?php
// Exemple de l'utilisation de la fonction Text-to-speech
require("sonos.class.php");
$IP_sonos_1 = "192.168.0.12"; // A adapter avec l'adresse IP du Sonos à contrôler

$volume = 0;
$force_unmute = 0;
$directory = "SERVEUR/web";
if (isset($_GET['force_unmute'])) $force_unmute = $_GET['force_unmute']; // Force la désactivation de la sourdine. Optionnel
if (isset($_GET['volume'])) $volume = $_GET['volume']; // Niveau sonore. Optionnel.
$message = $_GET['message']; // Message à diffuser

//Instanciation de la classe
$sonos_1 = new SonosPHPController($IP_sonos_1);
$sonos_1->PlayTTS($message,$directory,$volume,$force_unmute); //Lecture du message
?>

L’ensemble est hébergé sous un synology j'ai tout mis dans la racine du répertoire web.

Le fichier mp3 est bien créer mais il fait 0ko.

J'ai beau changé le message j'ai à chaque fois le même mp3 qui est dans le fichier audio, pas d'autres mp3 de créer. Il faut faire des réglages particuliers sur le synology?
Auteur:  DjMomo [ 12 Juin 2013 21:39 ]
Sujet du message:  Re: Pour les utilisateurs de SONOS

Je comprends pas pourquoi ca fonctionne pas chez toi. J'ai moi aussi un Syno et ca roule...

A tout hasard, quelle version du DSM tourne sur ton NAS ?

Je viens de modifier le code, essaie de nouveau, j'ai modifié la façon dont le script récupère les données depuis Google.

Toujours https://github.com/DjMomo/sonos/archive ... winter.zip
Auteur:  darkwinter [ 13 Juin 2013 08:37 ]
Sujet du message:  Re: Pour les utilisateurs de SONOS

Merci Djmomo pour le nouveau code. Je tourne sous le dsm 4.2 dernière version à jour.

Je viens de réessayer avec le nouveau code, ce qui est bizarre c'est que dans le fichier sonos.tts.php tu n'indiques pas l'emplacement du directory c'est à dire :

$directory = "SERVEUR/web";

Chez toi sans indiquer l'emplacement cela fonctionne?
Auteur:  tchex [ 13 Juin 2013 08:40 ]
Sujet du message:  Re: Pour les utilisateurs de SONOS

@djmomo,

pour info, les URI pour Napster sont du type "npsdy:Tra.96854651.mp3".
Dans la fonction PlayTTS les pistes Napster sont actuellement reconnues comme des radios et donc une fois le TTS diffusé les pistes redémarrent au début.

Pour corriger ça j'ai modifié le test :

Code : Tout sélectionner
if ((stripos($actual['track']["TrackURI"],"x-file-cifs://")) != false)


en

Code : Tout sélectionner
if (((stripos($actual['track']["TrackURI"],"x-file-cifs://")) != false) or ((stripos($actual['track']["TrackURI"],".mp3")) != false))


je ne sais pas si c'est ce qu'il y a de plus propre à faire mais ça solutionne mon problème !
Page 4 sur 18 Le fuseau horaire est UTC+1 heure