Mise en place d’un podcast matinal avec Codex : du briefing ChatGPT à l’écoute sur iPhone

9 min de lecture

Un briefing quotidien préparé avec ChatGPT permet de regrouper les informations que l’on souhaite suivre. Encore faut-il prendre le temps de le lire. Dans mon cas, je souhaitais pouvoir l’écouter sur mon iPhone en me préparant le matin.

Vous utilisez déjà ChatGPT pour préparer une veille et vous souhaitez la retrouver en audio ? Je vais présenter la solution mise en place chez moi avec Codex, un agent d’IA capable d’installer et de configurer des logiciels avec les accès que je lui accorde. Dans ce projet, ChatGPT rédige le briefing et Codex a mis en place le système qui le transforme en podcast.

La particularité de cette expérience est que je n’ai réalisé aucune manipulation technique. J’ai donné l’idée, précisé les contraintes et validé les choix nécessaires. Codex a pris en charge l’installation, la configuration et les vérifications, entièrement à distance. Je n’ai même pas eu à me lever pour intervenir sur le matériel.

Illustration : un serveur domestique produit un MP3 qui peut être écouté sur un iPhone via Slack.
Illustration de principe : génération de la voix sur le serveur domestique et écoute sur l’iPhone via Slack.

Contexte et objectif de la solution

Avant de commencer, je disposais d’une tâche ChatGPT programmée tous les matins à 7 heures pour produire un briefing écrit, ainsi que de mon ordinateur portable Lenovo, qui faisait déjà tourner Home Assistant pour gérer la domotique de la maison. Cet ordinateur restait allumé en permanence : il me servait déjà de serveur domestique.

Ci-dessous le rôle des différents appareils :

Matériel Utilisation
Serveur domestique : portable Lenovo ThinkPad T470, 32 Go de mémoire, SSD de 1 To Héberger Home Assistant et les services nécessaires à la génération du podcast
Mac Échanger avec Codex et suivre la mise en place
iPhone Écouter le fichier audio reçu dans Slack, une application de messagerie
Support USB SanDisk Extreme déjà branché au serveur domestique Conserver les sauvegardes nécessaires à la migration

Le podcast prend ici la forme d’un épisode privé, envoyé en fichier MP3 dans Slack et écouté depuis cette application sur mon iPhone.

L’objectif était de réutiliser le matériel existant avec trois contraintes : conserver le fonctionnement de la domotique, effectuer l’installation à distance et permettre au podcast d’être produit même lorsque le Mac est éteint.

La mise en place s’est organisée en quatre étapes :

  1. Préparer l’infrastructure et sécuriser la migration de Home Assistant.
  2. Automatiser le passage du briefing ChatGPT au fichier audio.
  3. Tester l’ensemble du processus et vérifier le résultat.
  4. Documenter la configuration afin de faciliter les évolutions.

Préparation de l’infrastructure et migration de Home Assistant

Le serveur domestique utilisait initialement Home Assistant OS, le système d’exploitation dédié à Home Assistant. Afin de lui confier plusieurs fonctions, Codex a proposé d’installer Proxmox, qui permet d’héberger plusieurs machines virtuelles sur un même ordinateur physique.

Une machine virtuelle, ou VM, fonctionne comme un ordinateur distinct avec son propre système et ses applications, tout en utilisant le matériel du serveur. La configuration retenue en comporte deux :

Machine virtuelle Rôle
Home Assistant OS Conserver la domotique et les connexions avec les équipements
Debian avec Docker Héberger n8n, l’outil qui organise les tâches automatiques, ainsi que la génération de voix et la liaison avec Slack

Debian est le système Linux de cette seconde machine virtuelle. Docker permet d’y installer les différents services dans des environnements séparés, appelés conteneurs.

L’intérêt de cette organisation est de séparer les services du podcast de la domotique, tout en partageant les ressources du serveur domestique.

Architecture : Codex sur le Mac configure le serveur domestique à distance. Proxmox héberge une VM Home Assistant et une VM Debian avec les services du podcast. Le Mac peut ensuite rester éteint.
Organisation de l’infrastructure après migration. Cliquer sur le schéma pour l’agrandir.

Cette migration nécessitait de remplacer le système présent sur le SSD, le disque de stockage du serveur. Avant l’installation, Codex a vérifié le matériel, les accès disponibles et les sauvegardes. Il a préparé une procédure pour restaurer l’ancienne installation en cas de problème, puis demandé ma confirmation explicite avant l’effacement du disque.

Pour effectuer cette installation sans préparer de clé USB ni intervenir devant l’écran de l’ordinateur, Codex a préparé un système temporaire exécuté dans la mémoire vive de cet ordinateur. Cela permettait de travailler sur le disque tout en gardant le contrôle par le réseau. Un premier test a confirmé que la connexion pouvait être rétablie après ce démarrage, avant de poursuivre la migration.

Une fois Proxmox installé, Codex a créé les machines virtuelles et restauré Home Assistant. Il a ensuite contrôlé les services et la disponibilité des équipements. Par exemple, certains interrupteurs de la cuisine étaient devenus indisponibles après la restauration. Une actualisation des informations de leur passerelle, le boîtier qui assure leur liaison avec Home Assistant, a permis de les retrouver sans les reconnecter un par un.

Ces vérifications ne remplacent pas un essai physique de chaque automatisation, mais elles permettent de contrôler davantage que le simple accès à l’interface Home Assistant.

Automatisation du briefing vers le podcast

Pour que le briefing soit récupéré même lorsque mon Mac est éteint, nous avons retenu un canal Slack privé nommé brief-du-matin. Cet espace de discussion, réservé aux membres autorisés, sert de point de passage entre ChatGPT et le serveur.

Un petit programme installé sur le serveur surveille l’arrivée du texte dans ce canal : c’est le relais Slack. Il déclenche ensuite le workflow n8n, c’est-à-dire l’enchaînement automatique des étapes nécessaires à la production du fichier.

Ci-dessous le principe de fonctionnement :

  1. La tâche ChatGPT démarre à 7 heures, prépare le briefing et publie le texte dans Slack.
  2. Le relais Slack détecte le briefing du jour.
  3. Le workflow n8n déclenche la synthèse vocale, qui transforme le texte en parole, puis la création du fichier audio MP3.
  4. Le fichier MP3 est envoyé dans le même canal Slack pour être écouté sur l’iPhone.
ChatGPT prépare le briefing à partir de 7 h, Slack reçoit le texte, le serveur domestique lance le relais, n8n et Piper, puis renvoie le MP3 dans Slack pour l’écoute sur iPhone. Internet reste nécessaire ; le Mac n’intervient pas.
Parcours complet du briefing. Le traitement vocal est local, tandis que ChatGPT et Slack fonctionnent en ligne. Cliquer pour agrandir.

Choix de la synthèse vocale : Piper et Kokoro

Piper et Kokoro sont deux solutions de synthèse vocale : elles transforment un texte en parole grâce à une voix générée par ordinateur. Toutes deux peuvent fonctionner directement sur le serveur, avec les modèles de voix installés sur celui-ci. Je n’ai donc pas besoin d’enregistrer moi-même le briefing au microphone.

Codex a installé les deux solutions et préparé un exemple audio en français avec chacune. Parmi ces essais, j’ai préféré la voix proposée par Piper et l’ai retenue pour le podcast. Codex a ensuite configuré son utilisation dans le workflow et la conversion du son en MP3.

Fonctionnement au quotidien

Le suivi des briefings traités permet d’éviter de republier plusieurs fois le même épisode. Le relais surveille le canal pendant la plage du matin, sans intervention quotidienne de ma part.

La synthèse vocale est effectuée sur le serveur domestique. En revanche, ChatGPT et Slack restent des services en ligne : la solution nécessite une connexion Internet. Le Mac sert à piloter la mise en place, mais n’intervient pas dans la chaîne de production du podcast.

Test complet et validation du résultat

Une fois les composants configurés, j’ai demandé un test complet, depuis la tâche ChatGPT jusqu’à la lecture du fichier dans Slack. Codex a déclenché la tâche existante et suivi le traitement jusqu’à la réception du MP3.

Ci-dessous les résultats mesurés lors de ce test :

Indicateur Résultat
Durée du podcast produit Environ 9 minutes et 9 secondes
Temps de génération de l’audio Environ 62 secondes
Délai entre la publication du texte et la réception du MP3 dans Slack Environ 97 secondes

Le fichier a été vérifié et sa lecture testée dans Slack. Le Mac était allumé pour déclencher le test et en observer le déroulement, mais il n’a assuré ni le transfert du texte, ni la synthèse vocale, ni l’envoi du MP3.

Ce premier essai a confirmé le fonctionnement de la chaîne complète. Il restait alors à observer le déclenchement à l’heure prévue et la régularité sur plusieurs jours. L’horaire de 7 heures correspond au début de la préparation du briefing ; le fichier audio arrive ensuite, après la rédaction et la synthèse vocale.

Documentation et préparation des évolutions

Une installation de ce type doit pouvoir être comprise et modifiée plus tard. J’ai donc demandé à Codex de centraliser la documentation dans un dépôt GitHub privé appelé home, un espace de stockage des fichiers qui conserve l’historique des modifications.

Cette documentation reprend l’architecture du serveur domestique, les configurations de référence, le workflow du podcast et les procédures de sauvegarde et de restauration. Les mots de passe et les clés d’accès sont conservés séparément.

Cette base pourra accueillir progressivement les autres appareils de la maison et leur configuration. Elle permettra aussi de préparer un changement de voix ou l’ajout d’un service sans devoir reconstituer le fonctionnement de l’installation.

Répartition du travail et retour d’expérience

Dans cette mise en place, mon intervention a porté sur les décisions et les autorisations. La réalisation technique a été prise en charge par Codex.

Mon intervention Travail réalisé par Codex
Définir le besoin et les contraintes Examiner le matériel et proposer l’architecture
Autoriser la migration et l’effacement du SSD Préparer les sauvegardes, installer Proxmox et restaurer Home Assistant
Me connecter aux services et approuver les accès Configurer Slack, le relais et le workflow audio
Écouter les exemples et choisir Piper Installer la synthèse vocale et produire le MP3
Demander un test complet et une documentation Exécuter les vérifications et documenter la solution sur GitHub

L’assistance de Codex a aussi porté sur les difficultés rencontrées en cours de route, comme le démarrage à distance ou la récupération des équipements après la migration.

Cette autonomie reste liée aux outils et aux accès disponibles. Elle ne signifie pas que toute intervention future sur le serveur domestique pourra être réalisée à distance, notamment en cas de panne empêchant l’accès au réseau.

Le même ordinateur héberge désormais la domotique et la génération audio. J’ai reçu un premier podcast dans Slack et je dispose d’une configuration documentée pour faire évoluer l’installation.

Pour découvrir une autre expérience de mise en œuvre avec Codex : De StretchTap à un workflow de skills IA : de l’idée à la soumission Apple.

Leave a comment