Cloud Intelligence™Cloud Intelligence™

Cloud Intelligence™

Suivre le retour de l'école de vos enfants avec Google Home, Cloud Functions, Datastore, Maps Directions API et un soupçon de Cloud KMS ;-)

By Aviv LauferSep 11, 20182 min read

Cette page est également disponible en English, Deutsch, Español, Italiano, 日本語 et Português.

1 tkfa3vgeiwubmszkk7gqxw

Je viens de décrocher deux certifications Google Cloud : Professional Cloud Architect et Professional Data Engineer. L'équipe de Google Tel-Aviv a eu la gentillesse de m'offrir un Google Home pour me féliciter (merci Nir Atias & Ifat Yanai !)

Maintenant que j'ai mon nouveau jouet, place au fun !

Mes enfants sont scolarisés à l'autre bout de la ville et prennent le bus scolaire. Je voulais donc savoir quand ils arrivent à la maison, sans avoir à sortir mon téléphone pour ouvrir l'app Find my iPhone. C'était aussi une bonne occasion d'écrire quelques actions Google Assistant ;-)

Je voulais que mon estimateur d'heure d'arrivée soit 100 % serverless. J'ai donc opté pour Cloud Functions (qui s'écrit désormais en Python !) comme endpoint, Cloud Datastore comme couche de stockage persistant et Cloud KMS pour stocker les secrets en toute sécurité.

Quand un utilisateur déclenche l'action (baptisée school bus), on lui demande le prénom de son enfant (pratique si, comme moi, vous en avez plusieurs). La cloud function prend alors le relais.

Elle récupère dans Datastore toutes les données nécessaires et obtient la localisation via l'API Find My iPhone.

https://gist.github.com/avivl/183d27f20cc1d8742f9f74853299790f

Une fois la position connue, un appel à l'API Google Maps Directions calcule l'heure d'arrivée estimée. Celle-ci est renvoyée à Google Assistant, qui l'annonce ou l'affiche à l'utilisateur.

https://gist.github.com/avivl/f5a156eaf87d6a1c68b7b7a908777bdb

Un projet sympa et bien utile au quotidien. Le code complet est disponible sur Github.

Envie d'autres articles ? Faites un tour sur notre blog, ou suivez Aviv sur Twitter.