# myMedia for Alexa



### Installation comme Image Docker sur un NAS Synology

1. Se connecter au NAS comme administrateur.

2. Lancer Docker.

3. Cliquer sur **Registre** dans la barre latérale.

4. Dans la barre de recherche, entrer *'mymediaforalexa'* et cliquer sur **Rechercher**.

5. Clic-droit sur *bizmodeller/mymediaforalexa-adm64* (pour un DS916+) et choisir **Télécharger cette image**.

6. Une fois l'image est téléchargée, cliquer sur **Image** dans la barre latérale.

7. Choisir *bizmodeller/mymediaforalexa-adm64* et cliquer sur le bouton **Lancer**.

8. Dans **Paramètres généraux**, <u>décocher</u>:

    1. Exécuter le conteneur à l'aide de privilèges élevés
    2. Activer la limitation des ressources

    puis cliquer sur **Paramètres avancés**.

9. Dans **Paramètres avancés**, <u>cocher</u>:

    1. Activer le **redémarrage automatique**.
    2. Créer un raccourci sur le bureau. Page Web `https://clicclac.synology.me:52051`

    puis cliquer sur **Volume**.

10. Dans **Volume**:

    1. Cliquer sur **Ajouter un dossier**, puis sélectionner le dossier *docker*
    2. Cliquer sur **Créer dossier**: *mymediaforalexa* `\docker\mymediaforalex`
    3. Cliquer sur **Créer dossier**: *datadir* `\docker\mymediaforalex\datadir`
    4. Cliquer sur **Sélectionner**.
    5. Dans **Chemin d'accès**, entrer `/datadir`comme point de montage. S'assurer que **Lecture seule** <u>n'est pas</u> coché.
    6. Cliquer sur **Ajouter un dossier**, puis sélectionner le dossier qui contient les fichiers musicaux `\music`
    7. Dans **Chemin d'accès**, entrer `/medialibrary` comme point de montage. S'assurer que **Lecture seule** <u>est</u> coché.

    puis cliquer sur **Réseau**.

11. Dans **Réseau**: ne rien changer (bridge), puis cliquer sur **Paramètres des ports**.

12. Dans **Paramètres des ports**:

     1. Sous Port local, remplacer Local par la même valeur que le Port du container: 
     2. 52050 Local Port :fa-arrow-right: 52050 Container Port (TCP)
     3. 52051 Local Port :fa-arrow-right: 52051 Container Port (TCP)

     puis cliquer sur **Liens**.

13. Dans **Liens**:

     * Pas de changement

14. Dans **Environnement**:

     * Pas de changement

15. Cliquer sur **Appliquer**, puis **Suivant**.

16. Dans **Résumé**, s'assurer que **Exécuter ce conteneur lorsque l'assistant a terminé** est coché, puis cliquer sur **Appliquer**.

17. Cliquer sur **Conteneur** dans la barre latérale. Le conteneur *bizmodeller/mymediaforalexa-adm64* doit être lancé.

18. Dans le **Panneau de configuration**, aller dans **Sécurité** puis **Pare-feu**: s'assurer que les ports *tcp/52050* et  *tcp/52051* soient ouverts.

19. Dans le **Panneau de configuration**, aller dans **Portail des applications** puis **Proxy inversé**: 

     1. Cliquer sur **Créer**. Puis dans l'onglet **Général**,

     2. Dans **Description**, entrer *mymediaforalexa*.

     3. Dans **Source**:

        | Protocole                   | https                |
        | --------------------------- | -------------------- |
        | Nom d'hôte                  | clicclac.synology.me |
        | Port                        | 52052                |
        | Activer HSTS                | coché                |
        | Activer HTTP/2              | coché                |
        | Activer le contrôle d'accès | décoché              |

     4. Dans **Destination**:

        | Protocole  | http      |
        | ---------- | --------- |
        | Nom d'hôte | localhost |
        | Port       | 52051     |

20. *mymediaforalexa* est alors accessible à [https:\\clicclac.synology.me:52052]()

21. Quand *mymediaforalexa* est exécuté dans un container docker en mode bridge, it will likely automatically detect the docker host IP address  *incorrectly*. This will cause your alexa devices to be unable to play  songs from your mymediaforalexa.

22. Il faut se connecter à *mymediaforalexa* et cliquer sur **Settings**:

     1. Aller à **Listening IP Address** :
     2. Cliquer sur **Set** et mettre **Override IP Address** sur **On**.
     3. Entrer l'IP locale du serveur: `192.168.1.7`
     4. Aller à **Enable access outside of local network**:
     5. Sélectionner **Enable via Firewall NAT**
     6. Aller à **Admin Account Password** :
     7. Mettre **Require password for My Media web console** sur On.
     8. Entrer un mot de passe. Le login est toujours *'admin'*
     
23. Dans la livebox, créer une règle NAT:

     | Application    | Port interne | Port externe | Protocole |
     | -------------- | ------------ | ------------ | --------- |
     | mymedialibrary | 52050        | 52052        | TCP       |




D'après https://forum.bizmodeller.com/viewtopic.php?f=13&p=4820



#### Pour supprimer le mot de passe:

1. Arrêter le container (ou arrêter le service)
2. Dans le fichier préférences (`\docker\mymediaforalex\datadir\Preferences.xml`), supprimer la ligne `<PasswordHash>.... </PasswordHash>`et redémarrer le container. Se connecter avec <u>admin/admin</u> et supprimer le mot de passe.



## Commandes pour écouter sa musique sur Amazon Alexa

|                                                              |                                                              |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
| Alexa, demande à My Media de jouer l’album *The Wall*        | Joue *In the flesh*                                          |
| Alexa, demande à My Media de jouer la piste *Mother*         | Joue *Mother* (pas forcément de l'album The Wall)            |
| Alexa, demande à My Media de jouer ma Playlist               |                                                              |
| Alexa, demande à My Media de jouer de la musique Folk        | Joue *The Sicked Bed of Cuchulainn* par *The Pogues*         |
| Alexa, demande à My Media de jouer de la musique de *Pink Floyd* | Joue un titre des *Pink Floyd*                               |
| Alexa, demande à My Media ce qui joue                        | My Media joue actuellement *The Sicked Bed of Cuchulainn* par *The Pogues* |
| Alexa, précédent                                             |                                                              |
| Alexa, suivant                                               |                                                              |
| Alexa, arrête                                                |                                                              |
| Alexa, demande à My Media quel est mon serveur courant       | Votre serveur My Media actif est *bizmodeller-mymediaforalexa-amd641* |
| Alexa, demande à My Media de changer de serveur              |                                                              |
| Alexa, demande à My Media de jouer en boucle                 |                                                              |
| Alexa, demande à My Media de jouer en mode aléatoire         |                                                              |
| Alexa, demande à My Media de jouer ma [playlist] Playlist    |                                                              |
|                                                              |                                                              |
|                                                              |                                                              |
|                                                              |                                                              |
|                                                              |                                                              |
|                                                              |                                                              |
|                                                              |                                                              |

