Bonjour à tous,
Voici un nouveau scénario afin qu’Alexa puisse vous rappeler votre agenda Google automatiquement (à 22h chez moi) pour le lendemain.
Cela évite de lui demander explicitement, ça m’a souvent sauvé
A 22h j’ai parfois alexa qui me notifi
Mes seigneurs, vous avez un|des évènements pour demain. Pour la journée anniversaire de maman !, à 15h kiné.
Oui Alexa nous doit le respect !
Prérequis :
- Le plugin iCalendar
- Le plugin Alexa - API
Je passe rapidement sur la configuration du plugin iCalendar puisque qu’une doc existe déjà, voici tout de même mes paramêtres :
Le scénario et ses deux paramêtres à configurer:
-
$cmdTomorrow = cmd::byId(484);
484 à remplacer par l’ID de la commande J+1 d’iCalendar.
Il faut cliquer depuis iCalendar sur « Configuration avancée » → onglet « Information » → Dans la partie « Nom » visualiser la ligne (J+1) et cliquer sur la roue crantée à droite puis relever L’ID -
$cmdAlexaSpeak = cmd::byId(1237);
1237 à remplacer par l’ID de la commande « Faire parler Alexa » d’Alexa - API
Depuis le plugin aller dans l’onglet « Commande » puis A relever depuis la colonne « # » du plugin sur la ligne Faire parler Alexa.
Le block code PHP qui se lance à 22h:
$cmdTomorrow = cmd::byId(484);
$cmdAlexaSpeak = cmd::byId(1237);
$tomorrow = $cmdTomorrow->execCmd();
$scenario->setLog($tomorrow);
$messages = array();
$events = explode("||", $tomorrow);
for($i=0; $i < count($events); $i++)
{
$data = explode(";", $events[$i]);
if(isset($data[0]) && isset($data[3]) )
{
if($data[0] != "00:00")
{
$heures = explode(":", $data[0]);
if(substr($heures[0],0,1) == "0") $heures[0] = substr($heures[0],1,1);
if($heures[1] == "00") $heures[1] = "";
if(substr($heures[1],0,1) == "0") $heures[1] = substr($heures[1],1,1);
$heure = " A ".$heures[0]." heure ".$heures[1].", ";
}
else $heure = " Pour la journée, ";
array_push($messages, $heure." ".$data[3].".");
}
}
if( count($messages)>0)
{
$pluriel = ( count($messages) === 1 ) ? "un évènement" : "des évènements";
$message = "Mes seigneurs, vous avez ".$pluriel." pour demain.".implode('', $messages);
$cmdAlexaSpeak->execCmd(array('title'=>'', 'message'=> $message));
}
Plus jamais vous n’oublierez un anniversaire