https://a.storyblok.com/f/270183/1368x665/61d01d621c/25oct_dev-blog_vertex-ai-rcs.jpg

Générer et envoyer de la musique avec Vertex AI et RCS

Publié le November 4, 2025

Temps de lecture : 4 minutes

Introduction

Dans ce billet de blog, nous allons prendre une description des goûts musicaux d'un utilisateur envoyée via un message RCS, la passer dans le modèle Vertex AI Lyria de Google pour générer un morceau, et envoyer le résultat directement sur son téléphone sous la forme d'une RCS Rich Card jouable en utilisant l Vonage Messages API.

Le code complet de ce projet est disponible sur GitHub. code complet de ce projet est disponible sur GitHub. conversation between Vonage Test Demo Agent and a user that firstly sends a rich card track with a playable song, followed by a user requesting a musical taste “power metal”, followed by a response of the requested style with a generated song.RCS Example

Conditions préalables

Contexte

Lyria est un modèle audio génératif hébergé sur Vertex AI. Pour cet article de blog, à partir d'une invite textuelle telle que "warm lofi piano, vinyl crackle, 85 BPMLyria crée une vidéo MP4 avec une image de couverture statique qui est lue en ligne sur le téléphone. Une fois le MP4 prêt, nous le renvoyons à l'intérieur d'une carte riche en utilisant le type de message personnalisé de l'API Messages de Vonage. Vous pouvez consulter tous les types de messages pris en charge par Types de messages pris en charge par RCS.

Configurer l'application

Commencez par créer une nouvelle application Vonage dans le tableau de bord du développeur.

  • Pour créer une application, allez à la page Créer une application sur le tableau de bord de Vonage, et définissez un nom pour votre application.

  • Si vous avez l'intention d'utiliser une API qui utilise des Webhooks, vous aurez besoin d'une clé privée. Cliquez sur "Générer une clé publique et privée", votre téléchargement devrait démarrer automatiquement. Conservez-la en lieu sûr ; cette clé ne peut pas être retéléchargée si elle est perdue. Elle suivra la convention de nommage suivante private_<votre identifiant d'application>.key. Cette clé peut maintenant être utilisée pour authentifier les appels à l'API. Remarque : votre clé ne fonctionnera pas tant que votre application n'aura pas été sauvegardée.

  • Choisissez les fonctionnalités dont vous avez besoin (par exemple, Voice, Messages, RTC, etc.) et fournissez les webhooks requis (par exemple, URL d'événement, URL de réponse ou URL de message entrant). Ces éléments seront décrits dans le tutoriel.

  • Pour sauvegarder et déployer, cliquez sur "Générer une nouvelle application" pour finaliser la configuration. Votre application est maintenant prête à être utilisée avec les API de Vonage.

Lors de la configuration de l'application, veillez à activer la fonctionnalité Applications et à sélectionner RCS comme canal. Vous configurerez par la suite les URL des webhooks qui gèrent les événements entrants et les événements d'état.

Pour permettre à RCS de récupérer des médias sur votre machine locale, installez et exécutez ngrok pour exposer publiquement votre serveur.

Dans un autre terminal, exécutez ngrok http 3000 et copiez l'URL de transfert HTTPS qui apparaît.

De retour dans le tableau de bord de Vonage, réglez votre webhook entrant sur https://<ngrok>/webhooks/inbound et votre webhook d'état à https://<ngrok>/webhooks/status.

Installer les dépendances

Nous devons exécuter npm install à partir de votre terminal ou d'une commande d'invite pour installer les dépendances suivantes :

dotenv, @vonage/server-sdk, @vonage/messages, google-auth-library, node-fetchet ffmpeg-static qui sont listés dans votre fichier fichier package.json.

Note : Vous pouvez en savoir plus sur chaque dépendance en cliquant dessus et en lisant sa description sur NPM.

Créer un fichier .env

Vous aurez besoin de quelques variables d'environnement pour ce projet. Ajoutez les variables suivantes à un fichier .env que vous devez créer et remplir.

GOOGLE_CLOUD_PROJECT_ID=yourProjectId  

GOOGLE_CLOUD_LOCATION=us-central1  

GOOGLE_APPLICATION_CREDENTIALS=./service-account.json  

VONAGE_APPLICATION_ID=your-vonage-app-id  

VONAGE_PRIVATE_KEY=./private.key  

RCS_SENDER_ID=your-rbm-agent-id  

PHONE_NUMBER=447XXXXXXXXX  

PORT=3000  

PUBLIC_BASE_URL=https://your-ngrok-url  

Comment ça marche

Vous initiez la conversation car les utilisateurs ne peuvent pas démarrer un nouveau chat RCS de leur propre chef. En visitant une URL telle que https://<ngrok>/test?q=dark%20synthwavevotre serveur génère de la musique avec Lyria, la convertit au format MP4, l'héberge sur le point de terminaison /output puis envoie une première Rich Card à votre appareil téléphonique compatible RCS.

Ensuite, l'utilisateur peut répondre avec de nouvelles invites. Le webhook entrant capture chaque réponse, la transmet à Lyria, la convertit en fichier MP4 et la renvoie sous la forme d'une nouvelle Rich Card avec le titre et la description de la piste.

L'implémentation complète en JavaScript est disponible dans index.js. est disponible dans index.js.

Exécuter le serveur

Assurez-vous que ngrok est en cours d'exécution, que vos webhooks sont configurés et que vos variables d'environnement sont définies. Démarrez le serveur avec node index.js.

Ouvrez l'URL de test dans votre navigateur, par exemple, dans lequel vous passez la requête "dark synthwave with pulsing bass"https://<ngrok>/test?q=dark%20synthwave%20with%20pulsing%20bass.

Le serveur enverra la première Rich Card à votre appareil compatible RCS. Vous pouvez alors répondre directement dans le chat avec quelque chose comme "piano lofi avec pluie", et vous recevrez une autre Rich Card avec une nouvelle piste générée.

Envoyer un fichier audio

Nous avons utilisé RCS Rich Cards dans ce billet de blog ; cela a beaucoup de sens, car vous pouvez lire le fichier sur votre téléphone. Si vous préférez ne pas utiliser les Rich Cards et envoyer le fichier audio généré en pièce jointe, c'est possible. J'ai abordé ce sujet dans un article de blog séparé sur l'envoi de fichiers avec RCS.

Conclusion

Vous avez réussi ! Dans cet article de blog, vous avez vu comment demander la génération de musique via des conversations RCS à l'aide de Lyria et de l'API Messages de Vonage.

Vous avez une question ou souhaitez partager ce que vous construisez ?

Restez connecté et tenez-vous au courant des dernières nouvelles, astuces et événements concernant les développeurs.

Partager:

https://a.storyblok.com/f/270183/400x400/3f6b0c045f/amanda-cavallaro.png
Amanda CavallaroDéfenseur des développeurs