<?xml
version="1.0" encoding="utf-8"?>
<rss version="2.0" 
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:atom="http://www.w3.org/2005/Atom"
>

<channel xml:lang="fr">
	<title>Teddy Payet</title>
	<link>https://preprod.teddypayet.com/</link>
	
	<language>fr</language>
	<generator>SPIP - www.spip.net</generator>
	<atom:link href="https://www.preprod.teddypayet.com/spip.php?id_rubrique=7&amp;page=backend" rel="self" type="application/rss+xml" />

	<image>
		<title>Teddy Payet</title>
		<url>https://www.preprod.teddypayet.com/local/cache-vignettes/L144xH162/siteon0-84dcb.png?1724344960</url>
		<link>https://preprod.teddypayet.com/</link>
		<height>162</height>
		<width>144</width>
	</image>

                   

<item xml:lang="fr">
		<title>L'&#201;criture Guid&#233;e par l'Intelligence Artificielle : Une R&#233;volution Technologique</title>
		<link>https://www.preprod.teddypayet.com/L-Ecriture-Guidee-par-l-Intelligence-Artificielle-Une-Revolution-Technologique</link>
		<guid isPermaLink="true">https://www.preprod.teddypayet.com/L-Ecriture-Guidee-par-l-Intelligence-Artificielle-Une-Revolution-Technologique</guid>
		<dc:date>2023-10-20T06:30:00Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>Teddy Payet</dc:creator>



		<description>
&lt;p&gt;Dans l'&#232;re actuelle de l'innovation technologique, l'intelligence artificielle (IA) se positionne comme une force motrice dans divers domaines. Un exemple frappant de cette avanc&#233;e est la r&#233;daction assist&#233;e par une IA, qui a permis la cr&#233;ation de l'article que vous lisez ici. Dans cet article, nous explorerons comment cette technologie r&#233;volutionnaire a &#233;t&#233; mise en &#339;uvre pour concevoir des contenus informatifs et captivants. &lt;br class='autobr' /&gt; L'IA dans le R&#244;le d'&#201;crivain &lt;br class='autobr' /&gt;
L'article pr&#233;sent&#233; a &#233;t&#233; r&#233;dig&#233; (&#8230;)&lt;/p&gt;


-
&lt;a href="https://www.preprod.teddypayet.com/Blog" rel="directory"&gt;Blog&lt;/a&gt;


		</description>


 <content:encoded>&lt;img src='https://www.preprod.teddypayet.com/local/cache-vignettes/L150xH150/yomex-owo-xq83fk3uof8-unsplash_article_176-90eec.jpg?1724344960' class='spip_logo spip_logo_right' width='150' height='150' alt=&#034;&#034; /&gt;
		&lt;div class='rss_chapo'&gt;&lt;p&gt;Dans l'&#232;re actuelle de l'innovation technologique, l'intelligence artificielle (IA) se positionne comme une force motrice dans divers domaines. Un exemple frappant de cette avanc&#233;e est la r&#233;daction assist&#233;e par une IA, qui a permis la cr&#233;ation de l'article que vous lisez ici. Dans cet article, nous explorerons comment cette technologie r&#233;volutionnaire a &#233;t&#233; mise en &#339;uvre pour concevoir des contenus informatifs et captivants.&lt;/p&gt;&lt;/div&gt;
		&lt;div class='rss_texte'&gt;&lt;h2 class=&#034;spip&#034;&gt;L'IA dans le R&#244;le d'&#201;crivain&lt;/h2&gt;
&lt;p&gt;L'article pr&#233;sent&#233; a &#233;t&#233; r&#233;dig&#233; par une IA sophistiqu&#233;e d&#233;velopp&#233;e par OpenAI, connue sous le nom de ChatGPT. Cette IA s'appuie sur l'architecture GPT-3.5, entra&#238;n&#233;e sur un corpus de texte immense. Elle a la capacit&#233; unique de&lt;strong&gt; g&#233;n&#233;rer des contenus vari&#233;s, allant des articles aux po&#232;mes, en passant par des r&#233;ponses d&#233;taill&#233;es aux questions.&lt;/strong&gt;&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;L'Apprentissage Machine et la Cr&#233;ativit&#233;&lt;/h2&gt;
&lt;p&gt;L'apprentissage machine est au c&#339;ur de cette r&#233;alisation. ChatGPT a &#233;t&#233; expos&#233; &#224; d'innombrables exemples de texte, lui permettant &lt;strong&gt;d'internaliser les structures linguistiques, les nuances stylistiques et les caract&#233;ristiques s&#233;mantiques.&lt;/strong&gt; Cela se traduit par la cr&#233;ation de textes qui sont fluides, informatifs et parfaitement adapt&#233;s &#224; leur sujet.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Le Duo Gagnant : Humain et IA&lt;/h2&gt;
&lt;p&gt;L'utilisation de l'IA en tant &lt;strong&gt;qu'outil d'&#233;criture compl&#233;mentaire&lt;/strong&gt; &#224; la cr&#233;ativit&#233; humaine &lt;strong&gt;ouvre des perspectives stimulantes.&lt;/strong&gt; ChatGPT peut aider &#224; produire du contenu de qualit&#233; avec une rapidit&#233; impressionnante, lib&#233;rant ainsi du temps pour les r&#233;dacteurs humains pour se concentrer sur des t&#226;ches plus cr&#233;atives et conceptuelles. Cette synergie entre l'homme et la machine offre des opportunit&#233;s uniques dans le monde de la cr&#233;ation de contenu.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Un Appel &#224; la Transparence&lt;/h2&gt;
&lt;p&gt;Cependant, il est imp&#233;ratif de souligner qu'alors que l'IA offre une aide pr&#233;cieuse dans la r&#233;daction, &lt;strong&gt;la transparence est cruciale.&lt;/strong&gt; Les lecteurs doivent &#234;tre inform&#233;s lorsqu'un article est g&#233;n&#233;r&#233; par une IA, &lt;strong&gt;afin de garantir une compr&#233;hension claire de l'origine du contenu et de permettre une &#233;valuation ad&#233;quate.&lt;/strong&gt;&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Le Futur de la R&#233;daction Assist&#233;e par IA&lt;/h2&gt;
&lt;p&gt;Cette utilisation de l'IA dans la r&#233;daction n'est qu'une &#233;tape dans l'&#233;volution de la technologie du langage naturel. Alors que les recherches continuent et que de nouvelles avanc&#233;es &#233;mergent, nous pouvons nous attendre &#224; des d&#233;veloppements encore plus impressionnants dans les ann&#233;es &#224; venir.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;L'article que vous lisez ici incarne la fusion harmonieuse entre l'ing&#233;niosit&#233; humaine et la puissance de l'IA. ChatGPT, aliment&#233; par une technologie d'IA de pointe, &lt;strong&gt;ouvre de nouvelles perspectives dans le domaine de la cr&#233;ation de contenu.&lt;/strong&gt; Restez &#224; l'aff&#251;t des prochaines avanc&#233;es dans ce domaine passionnant.&lt;/p&gt;
&lt;p&gt;&lt;i&gt; &lt;strong&gt;Remarque :&lt;/strong&gt; Bien que cet article ait &#233;t&#233; g&#233;n&#233;r&#233; par ChatGPT, il a &#233;t&#233; soigneusement r&#233;vis&#233; et adapt&#233; pour garantir la qualit&#233; et la pertinence du contenu.&lt;/i&gt;&lt;/p&gt;&lt;/div&gt;
		&lt;div class='rss_ps'&gt;&lt;p&gt;Photo de &lt;a href=&#034;https://unsplash.com/fr/@yomex4life?utm_content=creditCopyText&amp;utm_medium=referral&amp;utm_source=unsplash&#034;&gt;Yomex Owo&lt;/a&gt; sur &lt;a href=&#034;https://unsplash.com/fr/photos/XQ83fk3uOF8?utm_content=creditCopyText&amp;utm_medium=referral&amp;utm_source=unsplash&#034;&gt;Unsplash&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;
		</content:encoded>


		

	</item>
<item xml:lang="fr">
		<title>Les prochains d&#233;fis passionnants en tant que CTO : Innover, &#201;voluer, R&#233;ussir</title>
		<link>https://www.preprod.teddypayet.com/Les-prochains-defis-passionnants-en-tant-que-CTO-Innover-Evoluer-Reussir</link>
		<guid isPermaLink="true">https://www.preprod.teddypayet.com/Les-prochains-defis-passionnants-en-tant-que-CTO-Innover-Evoluer-Reussir</guid>
		<dc:date>2023-10-18T06:30:00Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>Teddy Payet</dc:creator>



		<description>
&lt;p&gt;En tant que Chief Technical Officer (CTO), chaque jour apporte son lot de d&#233;fis stimulants et de nouvelles opportunit&#233;s pour fa&#231;onner le paysage technologique de notre entreprise. &#192; mesure que la technologie &#233;volue, notre r&#244;le en tant que leader technologique &#233;volue &#233;galement. Dans cet article, je vais partager quelques-uns des d&#233;fis passionnants qui se profilent &#224; l'horizon et comment nous pouvons les aborder pour continuer &#224; innover et &#224; r&#233;ussir. &lt;br class='autobr' /&gt; 1. Adoption de Nouvelles Technologies (&#8230;)&lt;/p&gt;


-
&lt;a href="https://www.preprod.teddypayet.com/Blog" rel="directory"&gt;Blog&lt;/a&gt;


		</description>


 <content:encoded>&lt;img src='https://www.preprod.teddypayet.com/local/cache-vignettes/L150xH105/ronda-dorsey-zovr7mphmgo-unsplash-372b5.jpg?1724344961' class='spip_logo spip_logo_right' width='150' height='105' alt=&#034;&#034; /&gt;
		&lt;div class='rss_chapo'&gt;&lt;p&gt;En tant que Chief Technical Officer (CTO), chaque jour apporte son lot de d&#233;fis stimulants et de nouvelles opportunit&#233;s pour fa&#231;onner le paysage technologique de notre entreprise. &#192; mesure que la technologie &#233;volue, notre r&#244;le en tant que leader technologique &#233;volue &#233;galement. Dans cet article, je vais partager quelques-uns des d&#233;fis passionnants qui se profilent &#224; l'horizon et comment nous pouvons les aborder pour continuer &#224; innover et &#224; r&#233;ussir.&lt;/p&gt;&lt;/div&gt;
		&lt;div class='rss_texte'&gt;&lt;h2 class=&#034;spip&#034;&gt;1. Adoption de Nouvelles Technologies&lt;/h2&gt;
&lt;p&gt;Le monde technologique &#233;volue &#224; une vitesse fulgurante. En tant que CTO, l'un de nos d&#233;fis principaux est de rester &#224; la pointe des derni&#232;res avanc&#233;es et de les int&#233;grer de mani&#232;re strat&#233;gique dans notre entreprise. Cela signifie &#233;valuer continuellement les nouvelles technologies et d&#233;terminer comment elles peuvent am&#233;liorer nos op&#233;rations. Cette d&#233;marche n&#233;cessite une compr&#233;hension approfondie des tendances &#233;mergentes, de l'Internet des Objets &#224; l'intelligence artificielle, et de leur application potentielle dans notre domaine. L'adoption judicieuse de ces technologies peut non seulement renforcer notre comp&#233;titivit&#233;, mais aussi ouvrir de nouvelles perspectives pour l'innovation et la croissance.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;2. S&#233;curit&#233; et Protection des Donn&#233;es&lt;/h2&gt;
&lt;p&gt;Avec la menace croissante de la cybercriminalit&#233;, la s&#233;curit&#233; des donn&#233;es est plus importante que jamais. Notre d&#233;fi est de mettre en place des politiques et des technologies de pointe pour garantir la s&#233;curit&#233; et la confidentialit&#233; des informations sensibles de notre entreprise et de nos clients.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;3. Optimisation des Processus&lt;/h2&gt;
&lt;p&gt;Dans un environnement technologique en constante mutation, l'optimisation des processus devient imp&#233;rative pour maintenir la comp&#233;titivit&#233;. En tant que Chief Technical Officer (CTO), il nous incombe de scruter minutieusement chaque facet d'op&#233;ration. Cela englobe l'analyse approfondie de chaque phase, de chaque interaction, &#224; la recherche d'opportunit&#233;s d'am&#233;lioration.&lt;/p&gt;
&lt;p&gt;Chaque processus, du d&#233;veloppement de produits &#224; la gestion de projets, doit &#234;tre examin&#233; avec une attention critique. Nous devons identifier les &#233;ventuels points de congestion, &#233;liminer les redondances et int&#233;grer des technologies avanc&#233;es qui automatisent les t&#226;ches r&#233;p&#233;titives. Cette qu&#234;te incessante de l'optimisation vise non seulement &#224; accro&#238;tre l'efficacit&#233;, mais &#233;galement &#224; lib&#233;rer le potentiel cr&#233;atif de nos &#233;quipes.&lt;/p&gt;
&lt;p&gt;En outre, l'optimisation des processus n'est pas une fin en soi, mais plut&#244;t un moyen de garantir que chaque minute de travail est consacr&#233;e &#224; des activit&#233;s &#224; forte valeur ajout&#233;e. Cela se traduit par une utilisation plus judicieuse des ressources, une r&#233;duction des d&#233;lais et une am&#233;lioration globale de la satisfaction client.&lt;/p&gt;
&lt;p&gt;L'optimisation des processus ne se limite pas &#224; une r&#233;vision unique, mais devrait &#234;tre un processus continu et dynamique. Cela exige une culture d'am&#233;lioration constante, o&#249; chaque membre de l'&#233;quipe est encourag&#233; &#224; proposer des id&#233;es novatrices et &#224; remettre en question le statu quo. Ensemble, nous forgerons des processus qui non seulement r&#233;pondent &#224; nos besoins actuels, mais qui nous pr&#233;parent &#233;galement &#224; relever les d&#233;fis futurs avec agilit&#233; et efficacit&#233;.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;4. Gestion des Ressources Humaines et D&#233;veloppement d'&#201;quipe&lt;/h2&gt;
&lt;p&gt;Notre &#233;quipe est notre atout le plus pr&#233;cieux, et en tant que Chief Technical Officer, il est imp&#233;ratif de veiller &#224; leur &#233;panouissement professionnel. Cela va au-del&#224; du simple recrutement des meilleurs talents, c'est &#233;galement une question de cultivation et de d&#233;veloppement.&lt;/p&gt;
&lt;p&gt;Chaque membre de notre &#233;quipe poss&#232;de un potentiel unique, et il est de notre responsabilit&#233; de fournir les ressources et les opportunit&#233;s n&#233;cessaires pour qu'ils puissent exceller. Cela se traduit par la mise en place de programmes de formation continue, des ateliers d'apprentissage, et la promotion d'une culture de mentorat interne.&lt;/p&gt;
&lt;p&gt;En outre, nous devons encourager l'exploration de nouvelles comp&#233;tences et offrir des opportunit&#233;s de progression de carri&#232;re. Cela peut prendre la forme de missions sp&#233;ciales, de projets innovants ou de l'acquisition de nouvelles responsabilit&#233;s au sein de l'&#233;quipe.&lt;/p&gt;
&lt;p&gt;En investissant dans le d&#233;veloppement de nos membres d'&#233;quipe, nous cultivons un environnement o&#249; l'apprentissage continu et l'am&#233;lioration sont encourag&#233;s. Cela renforce non seulement notre &#233;quipe actuelle, mais assure &#233;galement que nous sommes bien positionn&#233;s pour relever les d&#233;fis technologiques futurs.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;5. Gestion du Changement Technologique&lt;/h2&gt;
&lt;p&gt;Introduire de nouvelles technologies ou plateformes dans notre &#233;cosyst&#232;me technologique peut &#234;tre une transition d&#233;licate. En tant que CTO, notre d&#233;fi est de piloter ce changement de mani&#232;re &#224; minimiser les perturbations tout en garantissant une adoption en douceur par nos utilisateurs. Cela implique une communication transparente et une formation exhaustive pour assurer une compr&#233;hension approfondie des avantages et des proc&#233;dures associ&#233;es &#224; ces innovations.&lt;/p&gt;
&lt;p&gt;En outre, il est essentiel de mettre en place des m&#233;canismes d'&#233;valuation et de r&#233;troaction pour suivre l'efficacit&#233; de ces changements et pour &#234;tre r&#233;actif face &#224; d'&#233;ventuels ajustements n&#233;cessaires. Cette approche proactive favorise une transition fluide vers des technologies plus avanc&#233;es, renfor&#231;ant ainsi notre capacit&#233; &#224; rester &#224; la pointe de l'innovation.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;En tant que CTO, chaque jour apporte de nouveaux d&#233;fis et de nouvelles opportunit&#233;s. C'est avec enthousiasme que nous abordons ces d&#233;fis, car nous savons que chaque succ&#232;s technologique contribue &#224; fa&#231;onner le succ&#232;s global de notre entreprise. En innovant, en &#233;voluant et en r&#233;ussissant, nous continuons &#224; tracer la voie vers un avenir technologique prometteur.&lt;/p&gt;&lt;/div&gt;
		&lt;div class='rss_ps'&gt;&lt;p&gt;Cet article fait partie d'une s&#233;rie &#034;qui suis-je&#034; :
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; &lt;a href='https://www.preprod.teddypayet.com/Naviguer-entre-Graphisme-et-Technologie-Mon-Parcours-Atypique' class=&#034;spip_in&#034;&gt;Naviguer entre graphisme et technologie : mon parcours atypique&lt;/a&gt;
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; &lt;a href='https://www.preprod.teddypayet.com/L-Evolution-d-un-Visionnaire-Technologique-Mon-Parcours-en-tant-que-CTO' class=&#034;spip_in&#034;&gt;L'&#233;volution d'un visionnaire technologique : mon parcours en tant que CTO&lt;/a&gt;
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; &lt;a href='https://www.preprod.teddypayet.com/Les-prochains-defis-passionnants-en-tant-que-CTO-Innover-Evoluer-Reussir' class=&#034;spip_in&#034;&gt;Les prochains d&#233;fis passionnants en tant que CTO : Innover, &#201;voluer, R&#233;ussir&lt;/a&gt;&lt;/p&gt;
&lt;hr class=&#034;spip&#034; /&gt;
&lt;p&gt;Photo de &lt;a href=&#034;https://unsplash.com/fr/@thirtyspoke?utm_content=creditCopyText&amp;utm_medium=referral&amp;utm_source=unsplash&#034;&gt;Ronda Dorsey&lt;/a&gt; sur &lt;a href=&#034;https://unsplash.com/fr/photos/ZoVR7mPHMGo?utm_content=creditCopyText&amp;utm_medium=referral&amp;utm_source=unsplash&#034;&gt;Unsplash&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;
		</content:encoded>


		

	</item>
<item xml:lang="fr">
		<title>L'&#233;volution d'un visionnaire technologique : mon parcours en tant que CTO</title>
		<link>https://www.preprod.teddypayet.com/L-Evolution-d-un-Visionnaire-Technologique-Mon-Parcours-en-tant-que-CTO</link>
		<guid isPermaLink="true">https://www.preprod.teddypayet.com/L-Evolution-d-un-Visionnaire-Technologique-Mon-Parcours-en-tant-que-CTO</guid>
		<dc:date>2023-10-16T07:00:00Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>Teddy Payet</dc:creator>



		<description>
&lt;p&gt;Dans le monde en constante &#233;volution de la technologie, il est essentiel d'&#234;tre non seulement comp&#233;tent sur le plan technique, mais aussi d'avoir une vision strat&#233;gique claire. En tant que Chief Technical Officer (CTO), j'ai eu le privil&#232;ge de non seulement ma&#238;triser les comp&#233;tences techniques essentielles, mais aussi de les mettre en &#339;uvre de mani&#232;re &#224; transformer les entreprises. Cet article vise &#224; mettre en lumi&#232;re quelques-uns de mes points forts qui m'ont permis de prosp&#233;rer dans ce (&#8230;)&lt;/p&gt;


-
&lt;a href="https://www.preprod.teddypayet.com/Blog" rel="directory"&gt;Blog&lt;/a&gt;


		</description>


 <content:encoded>&lt;img src='https://www.preprod.teddypayet.com/local/cache-vignettes/L113xH150/charlota-blunarova-hmzkfgdeov4-unsplash-7f63a.jpg?1724344961' class='spip_logo spip_logo_right' width='113' height='150' alt=&#034;&#034; /&gt;
		&lt;div class='rss_chapo'&gt;&lt;p&gt;Dans le monde en constante &#233;volution de la technologie, il est essentiel d'&#234;tre non seulement comp&#233;tent sur le plan technique, mais aussi d'avoir une vision strat&#233;gique claire. En tant que Chief Technical Officer (CTO), j'ai eu le privil&#232;ge de non seulement ma&#238;triser les comp&#233;tences techniques essentielles, mais aussi de les mettre en &#339;uvre de mani&#232;re &#224; transformer les entreprises. Cet article vise &#224; mettre en lumi&#232;re quelques-uns de mes points forts qui m'ont permis de prosp&#233;rer dans ce r&#244;le exigeant et passionnant.&lt;/p&gt;&lt;/div&gt;
		&lt;div class='rss_texte'&gt;&lt;h2 class=&#034;spip&#034;&gt;1. Leadership Technologique&lt;/h2&gt;
&lt;p&gt;Au c&#339;ur de mon succ&#232;s en tant que CTO r&#233;side un leadership technologique solide. De la gestion des d&#233;veloppements logiciels &#224; la coordination entre les services internes, j'ai d&#233;montr&#233; ma capacit&#233; &#224; influencer et &#224; diriger dans le domaine de la technologie. Mon exp&#233;rience m'a permis de d&#233;velopper des comp&#233;tences de leadership qui vont au-del&#224; de la simple ma&#238;trise technique.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;2. Vision Strat&#233;gique et Transformation Digitale&lt;/h2&gt;
&lt;p&gt;En tant que CTO, j'ai toujours consid&#233;r&#233; la technologie comme un levier puissant pour la transformation des entreprises. J'ai eu l'occasion privil&#233;gi&#233;e de mettre en place des strat&#233;gies de transformation digitale visionnaires, d&#233;ployant des efforts significatifs pour aligner la technologie sur les objectifs commerciaux &#224; long terme. Cette vision strat&#233;gique approfondie a &#233;t&#233; le catalyseur de changements notables au sein des organisations pour lesquelles j'ai travaill&#233;, transcendant les simples ajustements technologiques pour embrasser une refonte globale et durable des processus op&#233;rationnels. En adoptant une perspective &#233;largie, j'ai d&#233;velopp&#233; des initiatives de transformation digitale qui transcendent les silos fonctionnels, favorisant une int&#233;gration holistique de la technologie dans l'ensemble de la structure organisationnelle. Cette approche &#233;largie de la transformation digitale a renforc&#233; la r&#233;silience de l'entreprise face aux d&#233;fis du march&#233; et a stimul&#233; l'innovation &#224; tous les niveaux, cr&#233;ant ainsi un &#233;cosyst&#232;me organisationnel agile et tourn&#233; vers l'avenir.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;3. Polyvalence et Adaptabilit&#233;&lt;/h2&gt;
&lt;p&gt;Naviguer avec succ&#232;s entre les aspects techniques et strat&#233;giques du r&#244;le exige une polyvalence et une capacit&#233; d'adaptation constantes. J'ai su tirer parti de ma capacit&#233; &#224; aborder des responsabilit&#233;s vari&#233;es, passant habilement de la gestion d'&#233;quipes techniques &#224; la d&#233;finition minutieuse de la feuille de route technologique de l'entreprise. Cette polyvalence m'a permis de m'adapter de mani&#232;re proactive aux changements rapides du paysage technologique, en int&#233;grant de nouvelles approches et technologies pour r&#233;pondre aux besoins &#233;volutifs de l'entreprise. Mon engagement envers une adaptabilit&#233; dynamique s'&#233;tend &#233;galement &#224; la gestion des ressources, o&#249; j'ai su orchestrer avec souplesse les comp&#233;tences de l'&#233;quipe pour maximiser l'efficacit&#233; op&#233;rationnelle. La combinaison judicieuse de polyvalence et d'adaptabilit&#233; a &#233;t&#233; essentielle pour relever les d&#233;fis complexes du r&#244;le de CTO dans un environnement en constante &#233;volution, contribuant ainsi de mani&#232;re significative &#224; la r&#233;silience et &#224; la croissance strat&#233;gique de l'entreprise.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;4. Gestion d'&#201;quipe et Encadrement&lt;/h2&gt;
&lt;p&gt;Diriger une &#233;quipe technique en tant que Chief Technical Officer (CTO) requiert bien plus que des comp&#233;tences techniques avanc&#233;es. J'ai consciencieusement d&#233;velopp&#233; des comp&#233;tences de gestion d'&#233;quipe solides, en veillant m&#233;ticuleusement &#224; ce que chaque membre de l'&#233;quipe soit non seulement comp&#233;tent sur le plan technique, mais &#233;galement motiv&#233;, inspir&#233; et parfaitement align&#233; sur les objectifs strat&#233;giques de l'entreprise. Ma approche holistique de la gestion d'&#233;quipe englobe la promotion d'un environnement de travail collaboratif, encourageant la cr&#233;ativit&#233; et l'innovation. J'ai eu le privil&#232;ge de voir les membres de mon &#233;quipe exceller et innover gr&#226;ce &#224; ce leadership attentif, construisant ainsi une culture d'&#233;quipe dynamique et orient&#233;e vers les r&#233;sultats. La communication ouverte et transparente a &#233;galement &#233;t&#233; au c&#339;ur de ma gestion, favorisant un &#233;change constant d'id&#233;es et de r&#233;troactions, cr&#233;ant ainsi un cadre propice &#224; l'apprentissage continu. En outre, ma capacit&#233; &#224; reconna&#238;tre et &#224; cultiver les talents au sein de l'&#233;quipe a &#233;t&#233; un facteur d&#233;terminant pour le succ&#232;s collectif, renfor&#231;ant la coh&#233;sion et la performance globale. &#192; travers ces pratiques de gestion d'&#233;quipe, j'ai constamment cherch&#233; &#224; &#233;tablir un &#233;quilibre entre la motivation individuelle et la r&#233;alisation des objectifs organisationnels, contribuant ainsi de mani&#232;re significative &#224; l'&#233;panouissement professionnel de chaque membre tout en atteignant les r&#233;sultats strat&#233;giques souhait&#233;s.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;5. Veille Technologique et Innovation&lt;/h2&gt;
&lt;p&gt;L'industrie technologique &#233;volue rapidement, et rester &#224; la pointe des derni&#232;res tendances est crucial. J'ai toujours &#233;t&#233; d&#233;termin&#233; &#224; rester &#224; jour avec les derni&#232;res avanc&#233;es, ce qui m'a permis de proposer des solutions novatrices et de garantir que l'entreprise reste comp&#233;titive dans un environnement en constante &#233;volution.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;Mon parcours en tant que CTO est une aventure passionnante, o&#249; je peux mettre en pratique mes comp&#233;tences techniques tout en d&#233;veloppant une vision strat&#233;gique claire. J'ai appris que le leadership technologique va bien au-del&#224; de la ma&#238;trise des outils, c'est aussi une question de vision, de gestion d'&#233;quipe et d'adaptabilit&#233;. Je suis impatient de relever de nouveaux d&#233;fis et de continuer &#224; transformer des entreprises gr&#226;ce &#224; la technologie.&lt;/p&gt;&lt;/div&gt;
		&lt;div class='rss_ps'&gt;&lt;p&gt;Cet article fait partie d'une s&#233;rie &#034;qui suis-je&#034; :
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; &lt;a href='https://www.preprod.teddypayet.com/Naviguer-entre-Graphisme-et-Technologie-Mon-Parcours-Atypique' class=&#034;spip_in&#034;&gt;Naviguer entre graphisme et technologie : mon parcours atypique&lt;/a&gt;
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; &lt;a href='https://www.preprod.teddypayet.com/L-Evolution-d-un-Visionnaire-Technologique-Mon-Parcours-en-tant-que-CTO' class=&#034;spip_in&#034;&gt;L'&#233;volution d'un visionnaire technologique : mon parcours en tant que CTO&lt;/a&gt;
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; &lt;a href='https://www.preprod.teddypayet.com/Les-prochains-defis-passionnants-en-tant-que-CTO-Innover-Evoluer-Reussir' class=&#034;spip_in&#034;&gt;Les prochains d&#233;fis passionnants en tant que CTO : Innover, &#201;voluer, R&#233;ussir&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;
		</content:encoded>


		

	</item>
<item xml:lang="fr">
		<title>Naviguer entre graphisme et technologie : mon parcours atypique</title>
		<link>https://www.preprod.teddypayet.com/Naviguer-entre-Graphisme-et-Technologie-Mon-Parcours-Atypique</link>
		<guid isPermaLink="true">https://www.preprod.teddypayet.com/Naviguer-entre-Graphisme-et-Technologie-Mon-Parcours-Atypique</guid>
		<dc:date>2023-10-12T11:00:00Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>Teddy Payet</dc:creator>



		<description>
&lt;p&gt;Je suis ravi de partager avec vous mon voyage professionnel qui m'a conduit &#224; explorer les horizons passionnants du graphisme et de la technologie. De la cr&#233;ation visuelle &#224; la programmation complexe, chaque &#233;tape a &#233;t&#233; une opportunit&#233; d'apprentissage et de croissance. Je vous invite &#224; plonger dans mon univers o&#249; l'art et la science se rencontrent. &lt;br class='autobr' /&gt; De l'Art &#224; la Technologie &lt;br class='autobr' /&gt;
Mon parcours d&#233;bute dans le monde du graphisme, o&#249; j'ai d&#233;couvert ma passion pour la cr&#233;ation visuelle. Au fil des (&#8230;)&lt;/p&gt;


-
&lt;a href="https://www.preprod.teddypayet.com/Blog" rel="directory"&gt;Blog&lt;/a&gt;


		</description>


 <content:encoded>&lt;img src='https://www.preprod.teddypayet.com/local/cache-vignettes/L150xH67/article_173-74f15.jpg?1724344962' class='spip_logo spip_logo_right' width='150' height='67' alt=&#034;&#034; /&gt;
		&lt;div class='rss_chapo'&gt;&lt;p&gt;Je suis ravi de partager avec vous mon voyage professionnel qui m'a conduit &#224; explorer les horizons passionnants du graphisme et de la technologie. De la cr&#233;ation visuelle &#224; la programmation complexe, chaque &#233;tape a &#233;t&#233; une opportunit&#233; d'apprentissage et de croissance. Je vous invite &#224; plonger dans mon univers o&#249; l'art et la science se rencontrent.&lt;/p&gt;&lt;/div&gt;
		&lt;div class='rss_texte'&gt;&lt;h2 class=&#034;spip&#034;&gt;De l'Art &#224; la Technologie&lt;/h2&gt;
&lt;p&gt;Mon parcours d&#233;bute dans le monde du graphisme, o&#249; j'ai d&#233;couvert ma passion pour la cr&#233;ation visuelle. Au fil des ann&#233;es, j'ai choisi de compl&#233;ter mon bagage en devenant un d&#233;veloppeur multim&#233;dia, &#233;largissant ainsi mes comp&#233;tences pour int&#233;grer la sph&#232;re technologique. Cette fusion m'a permis d'explorer de nouveaux territoires, alliant esth&#233;tique et fonctionnalit&#233;.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Vers de Nouveaux Horizons&lt;/h2&gt;
&lt;p&gt;Poursuivant ma qu&#234;te de connaissances, j'ai choisi de consolider mes comp&#233;tences avec un MBA en Management et Conseil en Syst&#232;mes d'Informations. Cette &#233;tape a marqu&#233; un tournant d&#233;cisif dans ma carri&#232;re, me permettant d'appr&#233;hender les enjeux strat&#233;giques et de contribuer de mani&#232;re significative &#224; la vision globale de l'entreprise.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;CTO : Le Pont Entre la Technologie et la Strat&#233;gie&lt;/h2&gt;
&lt;p&gt;Actuellement, en tant que Chief Technical Officer, je navigue entre les aspects techniques et strat&#233;giques. Mon r&#244;le consiste &#224; mettre en &#339;uvre des solutions innovantes qui transforment les entreprises et &#224; guider les &#233;quipes vers l'excellence op&#233;rationnelle. Cette exp&#233;rience m'a confort&#233; dans ma conviction que la technologie est un catalyseur de croissance.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Explorons Ensemble&lt;/h2&gt;
&lt;p&gt;Cette pr&#233;sente page est une invitation &#224; explorer avec moi les intrications entre le graphisme et la technologie. Nous aborderons des sujets allant de la veille technologique &#224; la cr&#233;ation visuelle, en passant par les d&#233;fis de la gestion de projets complexes. J'esp&#232;re que ce voyage sera aussi enrichissant pour vous que cela l'a &#233;t&#233; pour moi.&lt;/p&gt;
&lt;p&gt;Ensemble, nous pouvons continuer &#224; repousser les fronti&#232;res de la cr&#233;ativit&#233; et de l'innovation.&lt;/p&gt;
&lt;p&gt;Merci de faire partie de cette aventure !&lt;/p&gt;&lt;/div&gt;
		&lt;div class='rss_ps'&gt;&lt;p&gt;Cet article fait partie d'une s&#233;rie &#034;qui suis-je&#034; :
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; &lt;a href='https://www.preprod.teddypayet.com/Naviguer-entre-Graphisme-et-Technologie-Mon-Parcours-Atypique' class=&#034;spip_in&#034;&gt;Naviguer entre graphisme et technologie : mon parcours atypique&lt;/a&gt;
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; &lt;a href='https://www.preprod.teddypayet.com/L-Evolution-d-un-Visionnaire-Technologique-Mon-Parcours-en-tant-que-CTO' class=&#034;spip_in&#034;&gt;L'&#233;volution d'un visionnaire technologique : mon parcours en tant que CTO&lt;/a&gt;
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; &lt;a href='https://www.preprod.teddypayet.com/Les-prochains-defis-passionnants-en-tant-que-CTO-Innover-Evoluer-Reussir' class=&#034;spip_in&#034;&gt;Les prochains d&#233;fis passionnants en tant que CTO : Innover, &#201;voluer, R&#233;ussir&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;
		</content:encoded>


		

	</item>
<item xml:lang="fr">
		<title>Je suis pass&#233; &#224; SPIP 4.0</title>
		<link>https://www.preprod.teddypayet.com/Je-suis-passe-a-SPIP-4-0</link>
		<guid isPermaLink="true">https://www.preprod.teddypayet.com/Je-suis-passe-a-SPIP-4-0</guid>
		<dc:date>2021-09-14T06:00:00Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>Teddy Payet</dc:creator>


		<dc:subject>Traitement automatique des images</dc:subject>
		<dc:subject>Notes de d&#233;veloppement</dc:subject>
		<dc:subject>PHP</dc:subject>
		<dc:subject>Git</dc:subject>

		<description>
&lt;p&gt;&#199;a y est ! Je suis pass&#233; &#224; SPIP 4.0 ! Je ne sais pas si vous avez suivi, mais SPIP 4.0 est sorti cet &#233;t&#233; pour ses 20 ans. Il y a pas mal de petites nouveaut&#233;s, je vous laisse lire l'article sur le Blog de SPIP qui en parle tr&#232;s tr&#232;s bien. &lt;br class='autobr' /&gt; Introduction Je me suis d&#233;cid&#233; &#224; passer &#224; SPIP 4.0 en cette rentr&#233;e 2021. Pour &#234;tre honn&#234;te, j'avais un peu peur de ce passage car j'avais quitt&#233; un peu l'actualit&#233; de SPIP (ses d&#233;veloppements, son &#233;volution, etc.). Je ne savais pas o&#249; j'allais mettre (&#8230;)&lt;/p&gt;


-
&lt;a href="https://www.preprod.teddypayet.com/Blog" rel="directory"&gt;Blog&lt;/a&gt;

/ 
&lt;a href="https://www.preprod.teddypayet.com/Traitement-automatique-des-images" rel="tag"&gt;Traitement automatique des images&lt;/a&gt;, 
&lt;a href="https://www.preprod.teddypayet.com/Notes-de-developpement" rel="tag"&gt;Notes de d&#233;veloppement&lt;/a&gt;, 
&lt;a href="https://www.preprod.teddypayet.com/PHP" rel="tag"&gt;PHP&lt;/a&gt;, 
&lt;a href="https://www.preprod.teddypayet.com/Git" rel="tag"&gt;Git&lt;/a&gt;

		</description>


 <content:encoded>&lt;img src='https://www.preprod.teddypayet.com/local/cache-vignettes/L150xH113/kulli-kittus-qyt0cpbyjjs-unsplash-eebe2.jpg?1724344962' class='spip_logo spip_logo_right' width='150' height='113' alt=&#034;&#034; /&gt;
		&lt;div class='rss_chapo'&gt;&lt;p&gt;&#199;a y est ! Je suis pass&#233; &#224; SPIP 4.0 ! Je ne sais pas si vous avez suivi, mais SPIP 4.0 est sorti &lt;a href=&#034;https://blog.spip.net/SPIP-4-0-tout-simplement.html&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;cet &#233;t&#233; pour ses 20 ans&lt;/a&gt;. Il y a pas mal de petites nouveaut&#233;s, je vous laisse lire l'article sur le Blog de SPIP qui en parle tr&#232;s tr&#232;s bien.&lt;/p&gt;&lt;/div&gt;
		&lt;div class='rss_texte'&gt;&lt;h2 class=&#034;spip&#034;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Je me suis d&#233;cid&#233; &#224; passer &#224; SPIP 4.0 en cette rentr&#233;e 2021. Pour &#234;tre honn&#234;te, j'avais un peu peur de ce passage car j'avais quitt&#233; un peu l'actualit&#233; de SPIP (ses d&#233;veloppements, son &#233;volution, etc.). Je ne savais pas o&#249; j'allais mettre les pieds m&#234;me si j'ai toujours aim&#233; ce CMS. Je vais vous parler de mon chemin vers son adoption.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Par beau temps&lt;/h2&gt;
&lt;p&gt;Mon site &#233;tait sous SPIP 3.2.9. Et j'utilise Zcore avec un template maison bas&#233; sur Bootstrap. Jusque l&#224;, rien de bien m&#233;chant. J'ai d&#233;cid&#233; de profiter de cette mont&#233;e de version de SPIP pour revoir mon template et avoir &#233;galement la derni&#232;re version de bootstrap : 5.1.1&lt;/p&gt;
&lt;p&gt;J'ai d&#251; retravailler les diff&#233;rentes classes que j'avais. Pas trop m&#233;chant. J'ai fait les choses &#233;tape par &#233;tape. Avant de migrer pour SPIP 4.0, j'ai fait la mise &#224; jour de SPIP en 3.2.11 qui permet d'avoir la compatibilit&#233; PHP 7.4 (la version minimum pour SPIP 4.0 est PHP 7.3).&lt;/p&gt;
&lt;p&gt;Mon h&#233;bergeur, OVH pour ne pas le citer, prend en charge cette version de PHP. Ouf.&lt;/p&gt;
&lt;p&gt;D&#233;but septembre, j'ai mis en ligne mon template avec bootstrap 5.1.1 et SPIP 3.2.11. Cela me laissait le temps de tester en &#034;live&#034; la compatibilit&#233; avec PHP 7.4. Une lettre &#224; la poste par beau temps !&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Puis vint la pluie&#8230;&lt;/h2&gt;
&lt;p&gt;SPIP 3.2.11, PHP 7.4, Boostrap 5.1.1, c'&#233;tait trop beau pour &#234;tre vrai ! J'ai test&#233; en local le passage &#224; SPIP 4.0. Depuis le back-office, belle page avec la nouvelle interface de l'espace priv&#233;. Responsive, prenant toute la largeur de la fen&#234;tre, c'est beau ! Certains diront que l'espace priv&#233; n'a pas chang&#233; depuis sa cr&#233;ation, mais en fait tout a chang&#233; ! Il est plus light, plus agr&#233;able avec ces nouveaux jeux d'ic&#244;nes SVG.&lt;/p&gt;
&lt;p&gt;Puis, j'ai cliqu&#233; sur le bouton &#034;voir le site public&#034;&#8230; Et patatra ! La page met du temps &#224; se charger&#8230; Je me dis que ce n'est que le cache qui se recalcule&#8230; Et ben non, j'ai une belle erreur php me disant soit que je n'ai suffisamment de m&#233;moire allou&#233;e (mouais&#8230; 128Mo puis 256Mo&#8230;), soit qu'il ne trouvait pas une variable dans les scripts php&#8230;&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Panique &#224; bord !&lt;/h2&gt;
&lt;p&gt;Je cherche&#8230; d&#233;sesp&#233;r&#233;ment&#8230; Je regarde mes scripts PHP maison en pensant trouver la bonne piste&#8230; Et non, rien y fait. J'y passe des heures sur le sujet, je change m&#234;me d'environnement : d'un raspberry Pi avec LAMP, je passe sous MAMP sur mon mac et m&#234;me en preprod sur mon espace d'h&#233;bergement. Rien y fait. Toujours ces erreurs al&#233;atoires. Pourtant, tout fonctionne sous SPIP 3.2.11 en PHP 7.4.&lt;/p&gt;
&lt;p&gt;Je sais que la gestion des documents et des logos a chang&#233; sous SPIP 4.0. Et j'utilise avec grand plaisir les filtres sur mes templates. Je d&#233;cide alors d'aller vers cette piste.&lt;/p&gt;
&lt;p&gt;Mes images sur mon site sont en moyenne &#224; 2500px de largeur. &#199;a me permet d'avoir des images de bonnes dimensions et de pouvoir les redimensionner selon mon design. Je d&#233;cide de venir &#224; une version plus all&#233;g&#233;e de mes filtres. Suppression des filtres &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;image_passe_partout&lt;/code&gt;, &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;image_recadre&lt;/code&gt;, &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;image_aplatir&lt;/code&gt; et j'en passe. Rien y fait !&lt;/p&gt;
&lt;p&gt;Je peste sur mon id&#233;e de passer &#224; SPIP 4.0 avec la &lt;a href=&#034;https://www.la-rache.com/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;m&#233;thode R.A.C.H.E&lt;/a&gt;. M&#234;me en sachant que SPIP 4.0 avait chang&#233; son approche pour les logos, je ne pensais pas que cela allait &#234;tre aussi compliqu&#233;.&lt;/p&gt;
&lt;p&gt;J'utilise un mod&#232;le nomm&#233; &#034;logo.html&#034;. Ce mod&#232;le me permet de ne pas dupliquer mes filtres pour les visuels de mes articles, rubriques et cie. Je d&#233;cide de l'ouvrir dans PHPStorm par raccourcis clavier &#034;Search everywhere&#034;. Je tape donc &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;modeles/logo.html&lt;/code&gt;. Et OH ! Surprise ! le plugin medias utilise un mod&#232;le logo en SPIP 4.0.&lt;/p&gt;
&lt;p&gt;Ah tiens&#8230; En fait, j'&#233;tais tellement subjugu&#233; par la nouvelle interface que je n'avais pas remarqu&#233; qu'aucun de mes logos d'articles ne s'affichait. J'ai regard&#233; en base de donn&#233;es dans la table &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;spip_documents&lt;/code&gt; comment SPIP indique les logos d'articles. Je pige le truc rapidement. J'adopte la m&#233;thode R.A.C.H.E&#8230; La migration des donn&#233;es par SPIP n'a pas bien ins&#233;r&#233;e les &#034;anciens&#034; logos dans la table de documents. Que cela ne tienne ! Je cr&#233;e un petite fonction PHP qui va ins&#233;rer dans la bdd mes logos d'article (de rubriques et de sites) en respectant les bons chemins (exemple : logo/arton-XX.png). &#199;a se fait rapidement.&lt;/p&gt;
&lt;p&gt;Je reviens au fichier &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;modeles/logo.html&lt;/code&gt; du plugin &lt;i&gt;medias&lt;/i&gt;. Je consulte ce fichier et constate son extr&#234;me simplicit&#233; et efficacit&#233; :&lt;/p&gt;
&lt;div class=&#034;precode&#034;&gt;&lt;pre class='spip_code spip_code_block' dir='ltr' style='text-align:left;'&gt;&lt;code&gt;[&lt;a href=&#034;(#ENV{lien})&#034;&gt;]&lt;img src=&#034;#ENV{logo_on}&#034; class=&#034;spip_logo[ spip_logo_(#ENV{align})][(#ENV{logo_off}|oui)spip_logo_survol]&#034;[ width=&#034;(#ENV{width})&#034;][ height=&#034;(#ENV{height})&#034;] alt=&#034;&#034;[ data-src-hover=&#034;(#ENV{logo_off})&#034;]/&gt;[(#ENV{lien}|?{&lt;/a&gt;})]&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Je n'ai pas trouv&#233; exactement o&#249; &#233;tait appel&#233; ce fichier. Mais j'ai pour principe de ne jamais utiliser les m&#234;me noms que dans un framework. Cela &#233;vite les effets de bord ind&#233;sirables. Donc, je renomme mon mod&#232;le maison en &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;modeles/visuel.html&lt;/code&gt;. Cela colle bien &#224; son utilisation premi&#232;re.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Une &#238;le paradisiaque au loin&lt;/h2&gt;
&lt;p&gt;Suite &#224; ce renommage, je commence &#224; avoir de nouveau un d&#233;but de page sur mon espace public. Il y a encore quelques petits effets &#224; r&#233;gler. Des warnings plus compr&#233;hensibles. Je m'att&#232;le &#224; r&#233;gler &#231;a.&lt;/p&gt;
&lt;p&gt;J'adopte de fa&#231;on syst&#233;matique (pas comme les antibiotiques) l'utilisation de &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;modeles/visuel.html&lt;/code&gt;, je vide les r&#233;pertoires &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;local&lt;/code&gt;, &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;tmp/cache&lt;/code&gt; et &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;tmp/logs/&lt;/code&gt; avant chaque grosse modification. Le site est &#224; nouveau op&#233;rationnel et je retrouve le m&#234;me template que j'utilisais en SPIP 3.2.21 en production en d&#233;but de mois de septembre.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Je respire enfin.&lt;/strong&gt; L'espoir en moi renait.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Un avenir radieux&lt;/h2&gt;
&lt;p&gt;Je teste toujours sur mon propre site la derni&#232;re version de SPIP avant de la proposer &#224; mes clients. Ainsi, j'aurais d&#233;j&#224; essuy&#233; les pl&#226;tres. Il sera plus simple pour passer la peinture chez les clients.&lt;br class='autobr' /&gt;
L'erreur &#233;tait toute b&#234;te, mon mod&#232;le logo g&#234;nait SPIP dans sa nouvelle monture. Ma surcharge changeait le comportement attendu. Je suis incapable de dire exactement pourquoi cela faisait planter PHP. Je n'ai pas cherch&#233; &#224; le savoir non plus pour &#234;tre franc.&lt;/p&gt;
&lt;p&gt;Je constate surtout que SPIP est plus rapide. Merci PHP 7.4, merci &#224; la core team d'avoir rendu SPIP plus l&#233;ger et v&#233;loce. Je sais que si je passe &#224; PHP 8.0, cela sera encore plus rapide. Mais j'ai plusieurs sites sur mon h&#233;bergement OVH qui ne sont pas compatibles PHP 8.0.&lt;/p&gt;
&lt;p&gt;Vous pouvez consulter le r&#233;sultat de cette migration en lisant cet article. En effet, en ce mardi 14 septembre, mon site est officiellement sous SPIP 4.0 sous vos yeux &#233;bahis !&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Et la suite ?&lt;/h2&gt;
&lt;p&gt;J'ai commenc&#233; &#224; travailler sur mes plugins de la communaut&#233; pour une compatibilit&#233; avec SPIP 4.0 :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; &lt;a href=&#034;https://plugins.spip.net/info_spip.html&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Info SPIP&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;https://plugins.spip.net/socicon.html&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Socicon&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;https://plugins.spip.net/lister_constantes.html&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Lister les constantes PHP de SPIP&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;https://plugins.spip.net/lister_config.html&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Lister les pages de configuration&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;https://plugins.spip.net/lister_exec.html&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Lister les pages ?exec=xxx&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;https://plugins.spip.net/lister_fonctions.html&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Lister les fonctions PHP de SPIP&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;https://plugins.spip.net/lister_objets.html&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Lister les objets principaux de SPIP&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;https://plugins.spip.net/lister_dossiers.html&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Lister les dossiers&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;https://plugins.spip.net/rss_commits.html&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Commits de projet&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;https://plugins.spip.net/jqvmap.html&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;jQuery Vector Maps&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;https://plugins.spip.net/projets.html&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Projets&lt;/a&gt; (je ne fais que la maintenance de ce plugin, je n'en suis pas le cr&#233;ateur, je tiens &#224; le pr&#233;ciser)&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;https://plugins.spip.net/projets_sites.html&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Sites pour projets&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Il m'en reste quelques uns &#224; migrer dont le plus gros : InfoSites. Il est dans les bacs. Il est d&#233;pendant d'un plugin qui est en attente de mise en compatibilit&#233; avec SPIP 4.0. Plus qu'un pour pouvoir livrer la v2 de ce plugin qui me tient &#224; c&#339;ur.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Fin de vie pour&#8230;&lt;/h2&gt;
&lt;p&gt;La liste pr&#233;c&#233;dente est plut&#244;t longue. Mais il y aura des &#034;laiss&#233;s pour compte&#034; dans la course &#224; SPIP 4.0. En effet, selon ma vision, un plugin n'a plus lieu d'&#234;tre :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; Agrandir la largeur de page (SPIP_hop pour les intimes) : l'interface de l'espace priv&#233; a &#233;t&#233; revu pour prendre toute la largeur de la fen&#234;tre et va m&#234;me plus loin que ce qu'offrait spip_hop. Je ne vois pas l'utilit&#233; de le maintenir pour SPIP 4.0&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Pour le moment, je n'ai plus le temps/besoin pour certains autres plugins. Donc leur mise &#224; jour est repouss&#233;e &#224; une date ult&#233;rieure :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; D&#233;r&#233;f&#233;rencer les m&#233;dias ;&lt;/li&gt;&lt;li&gt; Nettoyer la m&#233;diath&#232;que.&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Voil&#224; le p&#233;riple que j'ai connu avec SPIP 4.0. Je n'ai pas de regrets pour mon passage vers cette derni&#232;re version. Au contraire. :-)&lt;/p&gt;&lt;/div&gt;
		
		</content:encoded>


		

	</item>
<item xml:lang="fr">
		<title>Home Assistant : Routine le matin avant l'&#233;cole</title>
		<link>https://www.preprod.teddypayet.com/Home-Assistant-Routine-le-matin-avant-l-ecole</link>
		<guid isPermaLink="true">https://www.preprod.teddypayet.com/Home-Assistant-Routine-le-matin-avant-l-ecole</guid>
		<dc:date>2021-04-26T06:00:00Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>Teddy Payet</dc:creator>


		<dc:subject>Domotique</dc:subject>
		<dc:subject>Home Assistant</dc:subject>

		<description>
&lt;p&gt;Gr&#226;ce &#224; l'utilisation des &#233;v&#233;nements cr&#233;&#233;s, je pouvais diffuser des messages le matin pour rythmer l'activit&#233; de mes enfants pour ne pas &#234;tre en retard pour l'&#233;cole. Nous nous r&#233;veillons &#224; la m&#234;me heure, prenons notre petit d&#233;jeuner ensemble. Parfois, on pouvait laisser le temps s'&#233;couler tranquillement et ainsi &#234;tre en retard. De ce fait, cette routine &#233;tait la bienvenue. &lt;br class='autobr' /&gt; Avant Home Assistant &lt;br class='autobr' /&gt;
Comme indiqu&#233; dans le second article de la s&#233;rie &#171; Home Assistant, ma domotique open source &#187;, (&#8230;)&lt;/p&gt;


-
&lt;a href="https://www.preprod.teddypayet.com/Blog" rel="directory"&gt;Blog&lt;/a&gt;

/ 
&lt;a href="https://www.preprod.teddypayet.com/Domotique" rel="tag"&gt;Domotique&lt;/a&gt;, 
&lt;a href="https://www.preprod.teddypayet.com/Home-Assistant" rel="tag"&gt;Home Assistant&lt;/a&gt;

		</description>


 <content:encoded>&lt;img src='https://www.preprod.teddypayet.com/local/cache-vignettes/L150xH100/arton163-e97d2.jpg?1724344962' class='spip_logo spip_logo_right' width='150' height='100' alt=&#034;&#034; /&gt;
		&lt;div class='rss_chapo'&gt;&lt;p&gt;Gr&#226;ce &#224; l'utilisation des &#233;v&#233;nements cr&#233;&#233;s, je pouvais diffuser des messages le matin pour rythmer l'activit&#233; de mes enfants pour ne pas &#234;tre en retard pour l'&#233;cole. Nous nous r&#233;veillons &#224; la m&#234;me heure, prenons notre petit d&#233;jeuner ensemble. Parfois, on pouvait laisser le temps s'&#233;couler tranquillement et ainsi &#234;tre en retard. De ce fait, cette routine &#233;tait la bienvenue.&lt;/p&gt;&lt;/div&gt;
		&lt;div class='rss_texte'&gt;&lt;h2 class=&#034;spip&#034;&gt;Avant Home Assistant&lt;/h2&gt;
&lt;p&gt;Comme indiqu&#233; dans le second article de la s&#233;rie &lt;strong&gt;&#171; Home Assistant, ma domotique open source &#187;&lt;/strong&gt;, j'utilisais les &#233;v&#233;nements dans un calendrier Google Agenda pour lancer des messages. J'utilisais le m&#234;me principe pour la routine des enfants le matin pour leur autonomie. Ils aiment se pr&#233;parer sans avoir leurs parents sur le dos. &#128522; Je ne les bl&#226;merais pas sur le sujet. Ils ont appris &#224; &#234;tre autonome tr&#232;s rapidement.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Configuration&lt;/h2&gt;
&lt;p&gt;Pour la configuration, l&#224; encore, tout est expliqu&#233; dans mon &lt;a href='https://www.preprod.teddypayet.com/Home-Assistant-Envoyer-des-messages-a-mes-Google-Home-Mini' class=&#034;spip_in&#034;&gt;second article&lt;/a&gt;. Nous utilisons :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; Google Agenda&lt;/li&gt;&lt;li&gt; Les Google Home Mini&lt;/li&gt;&lt;li&gt; Google Translate TTS&lt;/li&gt;&lt;li&gt; Les automations HA&lt;/li&gt;&lt;li&gt; Les scripts HA&lt;/li&gt;&lt;/ul&gt;&lt;h2 class=&#034;spip&#034;&gt;Disclaimer&lt;/h2&gt;
&lt;p&gt;&lt;i&gt;Pour des raisons de &#171; vie priv&#233;e &#187;, je donnerai un exemple de planning commun &#224; un ensemble de parents et d'enfants. Le but n'est pas dire si oui ou non mes enfants ou les enfants en g&#233;n&#233;ral ont CE programme. L'exemple pourrait tr&#232;s bien &#234;tre un programme pour un adulte. Ce n'est qu'un sc&#233;nario de mise en place d'automatisation.&lt;/i&gt;&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Le principe de fonctionnement&lt;/h2&gt;
&lt;p&gt;En p&#233;riode scolaire, nos enfants se r&#233;veillent &#224; 7h. Puis vont prendre leur petit-d&#233;jeuner. &lt;br class='autobr' /&gt;
&#192; 7h30, ils doivent aller se pr&#233;parer dans la salle de bain.&lt;br class='autobr' /&gt;
&#192; 7h45, un petit rappel est lanc&#233; au cas o&#249; ce matin on aurait du mal.&lt;br class='autobr' /&gt;
&#192; 8h00, c'est bient&#244;t l'heure d'aller &#224; l'&#233;cole. Donc, on doit avoir fait les derni&#232;res t&#226;ches de la matin&#233;e.&lt;br class='autobr' /&gt;
&#192; 8h10, il est temps de mettre ses chaussures.&lt;br class='autobr' /&gt;
&#192; 8h15, on prend son sac &#224; dos et on part &#224; l'&#233;cole.&lt;/p&gt;
&lt;p&gt;Le d&#233;roul&#233; est tr&#232;s simple comme vous pouvez le voir. Nous avons le principe suivant :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; Nous sommes un jour d'&#233;cole primaire&lt;/li&gt;&lt;li&gt; Nous ne sommes pas en p&#233;riode de vacances&lt;/li&gt;&lt;li&gt; Nous sommes &#224; une heure pr&#233;cise de la matin&#233;e.&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Nous avons tous nos crit&#232;res pour ex&#233;cuter la routine.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Les capteurs (sensors)&lt;/h2&gt;
&lt;p&gt;Nous allons cr&#233;er &#224; minima 2 capteurs :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; &lt;strong&gt;P&#233;riode scolaire :&lt;/strong&gt; d&#233;terminer si nous sommes en vacances ou pas ;&lt;/li&gt;&lt;li&gt; &lt;strong&gt;Jour d'&#233;cole primaire :&lt;/strong&gt; dans notre acad&#233;mie, les enfants ont &#233;coles le lundi, mardi, jeudi et vendredi.&lt;/li&gt;&lt;/ul&gt;&lt;h2 class=&#034;spip&#034;&gt;Capteurs &#171; P&#233;riode scolaire &#187;&lt;/h2&gt;
&lt;p&gt;Pour ce capteur, nous utiliserons 2 calendriers :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; Jours f&#233;ri&#233;s en France. Cf. &lt;a href=&#034;https://www.data.gouv.fr/fr/datasets/jours-feries-en-france/&#034; class=&#034;spip_url spip_out auto&#034; rel=&#034;nofollow external&#034;&gt;https://www.data.gouv.fr/fr/datasets/jours-feries-en-france/&lt;/a&gt;&lt;/li&gt;&lt;li&gt; Vacances scolaires de la zone C. Cf. &lt;a href=&#034;https://www.data.gouv.fr/fr/datasets/le-calendrier-scolaire-2019-2020-et-2020-2021-format-ical/&#034; class=&#034;spip_url spip_out auto&#034; rel=&#034;nofollow external&#034;&gt;https://www.data.gouv.fr/fr/datasets/le-calendrier-scolaire-2019-2020-et-2020-2021-format-ical/&lt;/a&gt;&lt;/li&gt;&lt;li&gt; Vacances compl&#233;mentaires, compl&#233;ments. Ce calendrier est cr&#233;&#233; manuellement et permet d'indiquer des jours qui ne sont pas &#171; officiels &#187; dans l'un des 2 calendriers pr&#233;c&#233;dents. Exemple : un pont, une journ&#233;e enfant malade, etc.&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Vous pouvez ajouter tr&#232;s facilement des calendriers au format ics dans Google Agenda. Ce qui permettra &#224; notre int&#233;gration HA de les retrouver. Cf. &lt;a href=&#034;https://www.home-assistant.io/integrations/calendar.google/&#034; class=&#034;spip_url spip_out auto&#034; rel=&#034;nofollow external&#034;&gt;https://www.home-assistant.io/integrations/calendar.google/&lt;/a&gt; &lt;br class='autobr' /&gt;
Le calendrier des jours f&#233;ri&#233;s en France sera nomm&#233; dans le pr&#233;sent article &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;calendar.jours_feries_en_france&lt;/code&gt;. Et le calendrier des vacances scolaires &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;calendar.calendrier_scolaire_zone_c&lt;/code&gt;.&lt;br class='autobr' /&gt;
Pour le calendrier de &#171; vacances scolaires compl&#233;mentaires &#187;, il suffira de cr&#233;er au besoin un &#233;v&#233;nement sur une journ&#233;e enti&#232;re (donc sans horaire) pour indication.&lt;/p&gt;
&lt;p&gt;Dans notre fichier &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;configuration.yaml&lt;/code&gt;, je dois indiquer o&#249; trouver mes sensors. Je choisis, comme pour les automatisations d'avoir tous mes sensors dans un r&#233;pertoire :&lt;/p&gt; &lt;textarea readonly='readonly' cols='40' rows='2' class='spip_cadre spip_cadre_block' dir='ltr'&gt;sensor: !include_dir_list sensors/&lt;/textarea&gt;
&lt;p&gt;Cela fait, je cr&#233;e un fichier &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;periode_scolaire.yaml&lt;/code&gt; dans le r&#233;pertoire &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;sensors/&lt;/code&gt;&lt;/p&gt; &lt;textarea readonly='readonly' cols='40' rows='17' class='spip_cadre spip_cadre_block' dir='ltr'&gt;platform: template sensors: periode_scolaire: friendly_name: 'P&#233;riode scolaire' unique_id: sensor_periode_scolaire value_template: &gt;- {%- if is_state('calendar.jours_feries_en_france', 'off') and is_state('calendar.vacances_scolaires_complements', 'off') and is_state('calendar.calendrier_scolaire_zone_c', 'off') -%} on {%- else -%} off {%- endif -%}&lt;/textarea&gt;
&lt;p&gt;Ce capteur v&#233;rifie si les 2 calendriers ont la valeur &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;off&lt;/code&gt; pour savoir &#224; quelle p&#233;riode je me trouve. La valeur &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;off&lt;/code&gt; pour ces calendriers signifient qu'il n'y a pas d'&#233;v&#233;nements dans la journ&#233;e. Donc, pas de vacances, pas de jours f&#233;ri&#233;s, pas de pont du weekend, etc.&lt;br class='autobr' /&gt;
Nous serons bien en p&#233;riode scolaire.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Capteurs &#171; jours d'&#233;cole primaire &#187;&lt;/h2&gt;
&lt;p&gt;Pour ce capteur ci, nous allons simplement indiquer que nous sommes l'un de ces jours :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; Lundi&lt;/li&gt;&lt;li&gt; Mardi&lt;/li&gt;&lt;li&gt; Jeudi&lt;/li&gt;&lt;li&gt; Vendredi&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Le mercredi, l'&#233;cole primaire n'a pas classe le mercredi dans notre r&#233;gion.&lt;br class='autobr' /&gt;
Pour les enfants au coll&#232;ge, on pourrait tout simplement utiliser l'int&#233;gration de &#171; workday &#187;. &lt;a href=&#034;https://www.home-assistant.io/integrations/workday/&#034; class=&#034;spip_url spip_out auto&#034; rel=&#034;nofollow external&#034;&gt;https://www.home-assistant.io/integrations/workday/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;M&#234;me principe que pr&#233;c&#233;demment, nous cr&#233;ons un fichier &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;jour_ecole_primaire.yaml&lt;/code&gt; dans le r&#233;pertoire &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;sensors/&lt;/code&gt; :&lt;/p&gt; &lt;textarea readonly='readonly' cols='40' rows='15' class='spip_cadre spip_cadre_block' dir='ltr'&gt;platform: template sensors: jour_ecole_primaire: friendly_name: 'Jours &#233;cole primaire' unique_id: sensor_jour_ecole_primaire value_template: &gt;- {%- if (now().weekday() = 0) or (now().weekday() = 1) or (now().weekday() = 3) or (now().weekday() = 4) -%} on {%- else -%} off {%- endif -%}&lt;/textarea&gt;
&lt;p&gt;Nous utilisons les fonctions &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;now()&lt;/code&gt; et &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;weekeday()&lt;/code&gt; qui retourneront, combin&#233;es, un chiffre correspondant au num&#233;ro de la semaine &lt;i&gt;(Lundi -&gt; 0, mardi -&gt; 1, mercredi -&gt; 2, jeudi -&gt; 3, vendredi -&gt; 4, samedi -&gt; 5 et dimanche -&gt; 6)&lt;/i&gt;. &lt;br class='autobr' /&gt;
On pourrait &#233;crire ce template de fa&#231;on plus condens&#233;e. Mais j'ai voulu privil&#233;gier la lisibilit&#233; dans le pr&#233;sent article.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;L'automatisation&lt;/h2&gt;
&lt;p&gt;Nous pourrions cr&#233;er une automatisation par heure de d&#233;clenchement&#8230; &#199;a se fait&#8230; Mais plus nous avons d'heure de d&#233;clenchement, plus nous auront de fichiers &#224; cr&#233;er et &#224; maintenir.&lt;br class='autobr' /&gt;
Nous allons donc cr&#233;er un fichier d'automatisation et utiliser la m&#233;thode &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;choose&lt;/code&gt; de HA. &lt;a href=&#034;https://www.home-assistant.io/docs/scripts/#choose-a-group-of-actions&#034; class=&#034;spip_url spip_out auto&#034; rel=&#034;nofollow external&#034;&gt;https://www.home-assistant.io/docs/scripts/#choose-a-group-of-actions&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Voici le code que j'ai utilis&#233; :&lt;/p&gt;
&lt;div class=&#034;precode&#034;&gt;&lt;pre class='spip_code spip_code_block' dir='ltr' style='text-align:left;'&gt;&lt;code&gt;id: automation_ecole_routines alias: Routines en p&#233;riode scolaire. trigger: platform: time_pattern hours: '*' minutes: '*' condition: - condition: and conditions: - condition: state entity_id: sensor.periode_scolaire state: 'on' action: - choose: ############################## ############################## ## 07:05 - conditions: - condition: and conditions: - condition: template value_template: &#034;{{ (now().timestamp() | timestamp_custom('%H:%M')) == '07:05' }}&#034; - condition: state entity_id: sensor.jour_ecole_primaire state: 'on' sequence: - service: rest_command.mm_showalert data_template: titre: '&lt;h2&gt;Attention&lt;/h2&gt;' texte: 'Il est l'heure de se r&#233;veiller les enfants. Il faut se r&#233;veiller.' duree: &#034;120000&#034; - service: script.media_player_notify_all data_template: message: &gt; {{ [ &#034;Il est l'heure de se r&#233;veiller les enfants. Il faut se r&#233;veiller.&#034;, &#034;Il est l'or! L'or de se r&#233;veiller! Il est l'or&#034;, &#034;Bonjour mes amours, il est temps de se lever.&#034;, &#034;Bien grandir, &#231;a commence d&#232;s le matin !&#034; ] | random }} volume: 0.6 ############################## ############################## ## 07:35 - conditions: - condition: and conditions: - condition: template value_template: &#034;{{ (now().timestamp() | timestamp_custom('%H:%M')) == '07:35' }}&#034; - condition: state entity_id: sensor.jour_ecole_primaire state: 'on' sequence: - service: rest_command.mm_showalert data_template: titre: '&lt;h2&gt;Attention&lt;/h2&gt;' texte: 'Les enfants, il faut aller se pr&#233;parer maintenant, brossage de dents et des cheveux.' duree: &#034;120000&#034; - service: script.media_player_notify_all data_template: message: &gt; {{ [ &#034;Les enfants, il faut aller se pr&#233;parer maintenant, brossage de dents et des cheveux.&#034;, &#034;L'heure de se pouponner est arriv&#233;e.&#034;, &#034;Il est temps de se rev&#234;tir de son plus bel apparat!&#034;, &#034;Le soin &#224; son hygi&#232;ne et son apparence sont tr&#232;s importants! Direction la salle de bain.&#034; ] | random }} volume: 0.6 ############################## ############################## ## 07:45 - conditions: - condition: and conditions: - condition: template value_template: &#034;{{ (now().timestamp() | timestamp_custom('%H:%M')) == '07:45' }}&#034; - condition: state entity_id: sensor.jour_ecole_primaire state: 'on' sequence: - service: rest_command.mm_showalert data_template: titre: '&lt;h2&gt;Attention&lt;/h2&gt;' texte: '1er rappel, les enfants, il faut aller se pr&#233;parer maintenant, brossage de dents et des cheveux.' duree: &#034;120000&#034; - service: script.media_player_notify_all data_template: message: &gt; {{ [ &#034;1er rappel, les enfants, il faut aller se pr&#233;parer maintenant, brossage de dents et des cheveux.&#034;, &#034;1er rappel, l'heure de se pouponner est arriv&#233;e.&#034;, &#034;1er rappel, il est temps de se rev&#234;tir de son plus bel apparat!&#034;, &#034;1er rappel, le soin &#224; son hygi&#232;ne et son apparence sont tr&#232;s importants! Direction la salle de bain.&#034; ] | random }} volume: 0.6 ############################## ############################## ## 08:00 - conditions: - condition: and conditions: - condition: template value_template: &#034;{{ (now().timestamp() | timestamp_custom('%H:%M')) == '08:00' }}&#034; - condition: state entity_id: sensor.jour_ecole_primaire state: 'on' sequence: - service: rest_command.mm_showalert data_template: titre: '&lt;h2&gt;Attention&lt;/h2&gt;' texte: &#034;Derni&#232;re ligne droite avant l'&#233;cole, donc t&#226;ches m&#233;nag&#232;res, bisous et c&#226;lins.&#034; duree: &#034;120000&#034; - service: script.media_player_notify_all data_template: message: &gt; {{ [ &#034;Derni&#232;re ligne droite avant l'&#233;cole, donc t&#226;ches m&#233;nag&#232;res, bisous et c&#226;lins.&#034;, &#034;Bient&#244;t le d&#233;part pour l'&#233;cole, attenons-nous &#224; nos derni&#232;res t&#226;ches.&#034;, &#034;Le sourire aux l&#232;vres, tenons-nous pr&#234;t pour le d&#233;part &#224; l'&#233;cole.&#034;, &#034;La vie a la couleur que tu lui donnes! Choisie bien la couleur pour que chaque jour soit un kif.&#034; ] | random }} volume: 0.6 ############################## ############################## ## 08:10 - conditions: - condition: and conditions: - condition: template value_template: &#034;{{ (now().timestamp() | timestamp_custom('%H:%M')) == '08:10' }}&#034; - condition: state entity_id: sensor.jour_ecole_primaire state: 'on' sequence: - service: rest_command.mm_showalert data_template: titre: '&lt;h2&gt;Attention&lt;/h2&gt;' texte: 'Il est 8h10, on met les chaussures. Hop hop hop. Dans la joie et la bonne humeur!' duree: &#034;120000&#034; - service: script.media_player_notify_all data_template: message: &gt; {{ [ &#034;Il est 8h10, on met les chaussures. Hop hop hop. Dans la joie et la bonne humeur!&#034;, &#034;Derni&#232;re ligne droite avant le d&#233;part pour ce lieu de savoir!&#034;, &#034;Mettons nos derniers accessoires, C'est bient&#244;t l'heure du d&#233;part.&#034; ] | random }} volume: 0.6 ############################## ############################## ## 08:15 - conditions: - condition: and conditions: - condition: template value_template: &#034;{{ (now().timestamp() | timestamp_custom('%H:%M')) == '08:15' }}&#034; - condition: state entity_id: sensor.jour_ecole_primaire state: 'on' sequence: - service: rest_command.mm_showalert data_template: titre: '&lt;h2&gt;Attention&lt;/h2&gt;' texte: 'Il est 8h15, on prend son sac &#224; dos et on commence sa journ&#233;e!' duree: &#034;120000&#034; - service: script.media_player_notify_all data_template: message: &gt; {{ [ &#034;Il est 8h15, on prend son sac &#224; dos et on commence sa journ&#233;e!&#034;, &#034;C'est l'heure du d&#233;part des troupes pour l'&#233;cole! Soyons fort!&#034;, &#034;Ce n'est pas parce que nous nous quittons maintenant, que nous ne nous retrouverons pas mieux ce soir.&#034; ] | random }} volume: 0.6&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Je n'explique pas plus ce code car tout a &#233;t&#233; dit auparavant. Sauf un petit point, un bonus : le service &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;rest_command&lt;/code&gt;. Vous avez pu voir que j'ai un Magic Mirror &#224; la maison. Je l'utilise pour afficher un message selon l'alerte.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;RESTful command&lt;/h2&gt;
&lt;p&gt;Il n'y a rien de complexe ici. J'utilise l'int&#233;gration HA des &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;rest_command&lt;/code&gt;. Cf. &lt;a href=&#034;https://www.home-assistant.io/integrations/rest_command/&#034; class=&#034;spip_url spip_out auto&#034; rel=&#034;nofollow external&#034;&gt;https://www.home-assistant.io/integrations/rest_command/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Voici mon code ins&#233;r&#233; dans &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;configuration.yaml&lt;/code&gt; :&lt;/p&gt; &lt;textarea readonly='readonly' cols='40' rows='13' class='spip_cadre spip_cadre_block' dir='ltr'&gt;rest_command: mm_showalert: url: http://192.168.0.217:8080/api/module/alert/showalert method: POST headers: accept: 'application/json, text/html' user-agent: 'Mozilla/5.0 {{ useragent }}' payload: '{&#034;title&#034;: &#034;{{titre}}&#034;, &#034;message&#034;: &#034;{{texte}}&#034;,&#034;timer&#034;: {{ duree }} }' content_type: 'application/json; charset=utf-8'&lt;/textarea&gt;
&lt;p&gt;J'ai install&#233; sur le MagicMirror le module &#171; MMM Remote Control &#187; pour b&#233;n&#233;ficier de l'API &lt;a href=&#034;https://github.com/Jopyth/MMM-Remote-Control/blob/master/API/README.md#basic-examples-for-showing-an-alert-on-the-screen&#034; class=&#034;spip_url spip_out auto&#034; rel=&#034;nofollow external&#034;&gt;https://github.com/Jopyth/MMM-Remote-Control/blob/master/API/README.md#basic-examples-for-showing-an-alert-on-the-screen&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Je n'offre pas de SAV sur le sujet &#9786;&#65039; C'est juste un bonus pour cette automatisation.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Pour aller plus loin&lt;/h2&gt;
&lt;p&gt;On pourrait aller beaucoup plus loin en prenant en compte par exemple des capteurs :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; Est-ce que l'humidit&#233; a augment&#233; dans la salle de bain ? Si oui, c'est qu'elle est en cours d'utilisation, donc, pas la peine de lancer le rappel.&lt;/li&gt;&lt;li&gt; Est-ce que le capteur de mouvement a per&#231;u une pr&#233;sence dans la salle &#224; manger ou la cuisine ?&lt;/li&gt;&lt;li&gt; Est-ce qu'il y a encore des personnes &#224; la maison ? D&#233;tection d'un t&#233;l&#233;phone portable sur le r&#233;seau ? Non, alors tout le monde est parti.&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;La seule limite &#224; ces automatisations est notre imagination. Les capteurs sont accessibles financi&#232;rement et facilement int&#233;grable &#224; HA. Il faut juste prendre le temps n&#233;cessaire pour l'acqu&#233;rir et l'int&#233;grer. &#128513;&lt;/p&gt;
&lt;p&gt;Voil&#224;. Comme d'habitude, je suis preneur de vos points d'am&#233;liorations, de votre vision des choses.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Dans la m&#234;me s&#233;rie&lt;/h2&gt;
&lt;p&gt;&lt;a href='https://www.preprod.teddypayet.com/Ma-domotique-open-source' class=&#034;spip_in&#034;&gt;Pr&#233;sentation &lt;/a&gt;&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; &lt;a href='https://www.preprod.teddypayet.com/Home-Assistant-Envoyer-des-messages-a-mes-Google-Home-Mini' class=&#034;spip_in&#034;&gt;#1 Messages envoy&#233;s sur les GHM &lt;/a&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; &lt;a href='https://www.preprod.teddypayet.com/Home-Assistant-Routine-le-matin-avant-l-ecole' class=&#034;spip_in&#034;&gt;#1.1 Routine le matin avant l'&#233;cole &lt;/a&gt;&lt;/li&gt;&lt;li&gt; #1.2 Routine du soir&lt;/li&gt;&lt;li&gt; #1.3 L'&#233;cole &#224; la maison&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt; #2 &#201;teindre les lumi&#232;res&lt;/li&gt;&lt;li&gt; #3 Baisser le volume des GHM&lt;/li&gt;&lt;li&gt; #4 T&#226;ches m&#233;nag&#232;res&lt;/li&gt;&lt;li&gt; #5 Habit Tracker&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;
		&lt;div class='rss_ps'&gt;&lt;p&gt;Photo by &lt;a href=&#034;https://unsplash.com/@deleece?utm_content=creditCopyText&#034;&gt;Deleece Cook&lt;/a&gt; on &lt;a href=&#034;https://unsplash.com/s/photos/back-to-school?utm_content=creditCopyText&#034;&gt;Unsplash&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;
		</content:encoded>


		

	</item>
<item xml:lang="fr">
		<title>Home Assistant : Envoyer des messages &#224; mes Google Home Mini</title>
		<link>https://www.preprod.teddypayet.com/Home-Assistant-Envoyer-des-messages-a-mes-Google-Home-Mini</link>
		<guid isPermaLink="true">https://www.preprod.teddypayet.com/Home-Assistant-Envoyer-des-messages-a-mes-Google-Home-Mini</guid>
		<dc:date>2021-03-12T07:30:00Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>Teddy Payet</dc:creator>



		<description>
&lt;p&gt;Comme annonc&#233; dans mon pr&#233;c&#233;dent article, je vais vous expliquer comment j'ai mis en place une m&#233;canique pour envoyer r&#233;guli&#232;rement des messages sur mes Google Home Mini. Tout cela est possible gr&#226;ce &#224; Google Agenda. &lt;br class='autobr' /&gt; Avant Home Assistant J'utilisais des &#233;v&#233;nements sur un agenda d&#233;di&#233; dans Google Agenda pour indiquer les messages &#224; diffuser sur le ou les Google Home Mini de l'appartement. En gros, le titre de l'&#233;v&#233;nement correspond au message que le Google Home doit &#233;noncer. Le descriptif (&#8230;)&lt;/p&gt;


-
&lt;a href="https://www.preprod.teddypayet.com/Blog" rel="directory"&gt;Blog&lt;/a&gt;


		</description>


 <content:encoded>&lt;img src='https://www.preprod.teddypayet.com/local/cache-vignettes/L150xH94/arton162-4a1b4.jpg?1724344963' class='spip_logo spip_logo_right' width='150' height='94' alt=&#034;&#034; /&gt;
		&lt;div class='rss_chapo'&gt;&lt;p&gt;Comme annonc&#233; dans mon &lt;a href='https://www.preprod.teddypayet.com/Ma-domotique-open-source' class=&#034;spip_in&#034;&gt;pr&#233;c&#233;dent article&lt;/a&gt;, je vais vous expliquer comment j'ai mis en place une m&#233;canique pour envoyer r&#233;guli&#232;rement des messages sur mes Google Home Mini. Tout cela est possible gr&#226;ce &#224; Google Agenda.&lt;/p&gt;&lt;/div&gt;
		&lt;div class='rss_texte'&gt;&lt;h2 class=&#034;spip&#034;&gt;Avant Home Assistant&lt;/h2&gt;
&lt;p&gt;J'utilisais &lt;strong&gt;des &#233;v&#233;nements sur un agenda d&#233;di&#233; dans Google Agenda pour indiquer les messages &#224; diffuser sur le ou les Google Home Mini&lt;/strong&gt; de l'appartement. En gros, &lt;strong&gt;le titre de l'&#233;v&#233;nement correspond au message&lt;/strong&gt; que le Google Home doit &#233;noncer. Le descriptif contient le nom de chaque Google Home sur lequel doit &#234;tre &#233;nonc&#233; le message. Bien entendu, le message est diffus&#233; &#224; l'heure du d&#233;but de l'&#233;v&#233;nement. Nous pouvions donc &lt;strong&gt;depuis notre agenda Google planifier des messages,&lt;/strong&gt; des rappels etc. Donc, cette solution est &lt;strong&gt;accessible aux personnes non geek.&lt;/strong&gt;&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Configuration&lt;/h2&gt;
&lt;p&gt;Tous mes Google Home Mini (cf. GHM) ont &#233;t&#233; ajout&#233; par l'int&#233;gration &lt;a href=&#034;https://www.home-assistant.io/integrations/cast/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;&#034;Google Cast&#034;&lt;/a&gt;. Ils sont reconnus par HA en tant que &lt;a href=&#034;https://www.home-assistant.io/integrations/media_player/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;&#034;media_player&#034;&lt;/a&gt;. Tout cela se fait depuis l'interface d'HA.&lt;/p&gt;
&lt;p&gt;Mes calendriers Google ont &#233;t&#233; ajout&#233; par l'int&#233;gration &lt;a href=&#034;https://www.home-assistant.io/integrations/calendar.google/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;&#034;Google Calendar Event&#034;&lt;/a&gt;. La configuration a &#233;t&#233; faite dans mon fichier &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;configuration.yaml&lt;/code&gt; gr&#226;ce au code suivant :&lt;/p&gt;
&lt;div class=&#034;precode&#034;&gt;&lt;pre class='spip_code spip_code_block' dir='ltr' style='text-align:left;'&gt;&lt;code&gt;google: client_id: !secret google_client_id client_secret: !secret google_client_secret&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Si votre int&#233;gration s'est correctement d&#233;roul&#233;e, vous devriez avoir un fichier &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;google_calendars.yaml&lt;/code&gt; au m&#234;me niveau que votre fichier &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;configuration.yaml&lt;/code&gt;. Il ne faudra pas y toucher car il contient l'ensemble des calendriers associ&#233;s et accessibles de votre compte Google. C'est &#233;galement dans ce fichier que vous trouverez le nom du calendrier qui vous int&#233;resse.&lt;/p&gt;
&lt;blockquote class=&#034;alert alert-info&#034;&gt;
&lt;h4&gt;Remarque&lt;/h4&gt;
&lt;p&gt;Vous pouvez voir que j'utilise &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;!secret&lt;/code&gt; au lieu de mettre directement la valeur r&#233;elle. Cela n'a rien de secret, :-D&lt;br class='autobr' /&gt;
C'est une fonction native de HA : &lt;a href=&#034;https://www.home-assistant.io/docs/configuration/secrets/&#034; class=&#034;spip_url spip_out auto&#034; rel=&#034;nofollow external&#034;&gt;https://www.home-assistant.io/docs/configuration/secrets/&lt;/a&gt; Je vous laisse d&#233;couvrir cela par vous m&#234;me.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Je fonctionne pratiquement qu'avec des fichiers yaml pour la mise en place de mon &#233;cosyst&#232;me. Et entre autres, pour mes routines, j'utilise le r&#233;pertoire &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;automations/&lt;/code&gt; gr&#226;ce &#224; cette ligne de code dans &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;configuration.yaml&lt;/code&gt; :&lt;/p&gt;
&lt;div class=&#034;precode&#034;&gt;&lt;pre class='spip_code spip_code_block' dir='ltr' style='text-align:left;'&gt;&lt;code&gt;automation: !include_dir_list automations/&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;J'ai ainsi tout ce qu'il me faut pour cr&#233;er une automatisation qui d&#233;tectera le d&#233;but d'un nouvel &#233;v&#233;nement et de ce fait, le moment auquel le message doit &#234;tre diffus&#233; sur les GHM.&lt;/p&gt;
&lt;p&gt;Presque tous les &#233;l&#233;ments sont en place. Il ne manque plus qu'&#224; indiquer la configuration de la fonction &#034;Text-To-Speech&#034; de HA. Pour cela, il suffit de configurer l'&#233;l&#233;ment suivant dans votre fichier &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;configuration.yaml&lt;/code&gt; :&lt;/p&gt;
&lt;div class=&#034;precode&#034;&gt;&lt;pre class='spip_code spip_code_block' dir='ltr' style='text-align:left;'&gt;&lt;code&gt;# Example configuration.yaml entry for Google Translate TTS service tts: - platform: google_translate cache: true cache_dir: /tmp/tts time_memory: 300 base_url: http://192.168.0.10:8123&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Source : &lt;a href=&#034;https://www.home-assistant.io/integrations/tts/&#034; class=&#034;spip_url spip_out auto&#034; rel=&#034;nofollow external&#034;&gt;https://www.home-assistant.io/integrations/tts/&lt;/a&gt;&lt;br class='autobr' /&gt;
Il faudra indiquer l'adresse IP correspondante &#224; votre Home Assistant. Dans l'exemple donn&#233;, Home Assistant est joignable &#224; l'adresse IP 192.168.0.10&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;La routine, l'automatisation&lt;/h2&gt;
&lt;p&gt;Je parle de routine car une automatisation est appel&#233;e &#034;Routine&#034; chez Google Assistant. Mais cela n'a pas de cons&#233;quence ici, je tiens &#224; le pr&#233;ciser. :-) Et surtout, je trouve que ce mot induit l'id&#233;e de r&#233;p&#233;tition plus qu'une &#034;automatisation&#034;. Nous n'allons pas &#233;piloguer sur le sujet.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Cr&#233;ation de l'&#233;v&#233;nement&lt;/h2&gt;
&lt;p&gt;Sur Google Agenda, nous avons cr&#233;&#233; notre agenda d&#233;di&#233; aux messages &#224; diffuser sur les GHM. On le nommera &#034;Messages GHM&#034; pour simplifier. On y met en place les routines propres &#224; nos besoins.&lt;/p&gt;
&lt;p&gt;Je vais prendre l'exemple suivant : &lt;strong&gt;tous les jours ouvr&#233;s, &#224; 8h15, je dois diffuser le message &#034;Il est l'heure d'aller &#224; l'&#233;cole&#034;.&lt;/strong&gt; Je cr&#233;e donc un &#233;v&#233;nement qui se r&#233;p&#233;tera comme d&#233;sir&#233;. L&#224;, rien de sorcier, c'est accessible &#224; tous.&lt;br class='autobr' /&gt;
Pour rappel, le titre de l'&#233;v&#233;nement est le message qui sera diffus&#233; sur les GHM. Ne faites pas un monologue, il faut &#234;tre concis dans ce que vous voulez dire. J'essaie de ne pas d&#233;passer les 200 caract&#232;res. Je reste m&#234;me en dessous de 100 caract&#232;res la plus part du temps. C'est plus simple pour s'y retrouver dans l'agenda par la suite.&lt;/p&gt;
&lt;p&gt;J'ai pris pour habitude &#233;galement de mettre une dur&#233;e de 10 minutes pour chacun de ces &#233;v&#233;nements. Cela pour plusieurs raisons :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; On a besoin uniquement, dans ce contexte d'utilisation, que du titre et de son heure de d&#233;but ;&lt;/li&gt;&lt;li&gt; Il faut que cela reste facilement cliquable dans l'interface Google Agenda ;&lt;/li&gt;&lt;li&gt; Si on a plusieurs &#233;v&#233;nements les uns derri&#232;res les autres, cela sera plus lisible.&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;On peut en cr&#233;er autant d'&#233;v&#233;nements que l'on d&#233;sire. Libre &#224; vous d'adapter les messages selon votre mode de vie.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Cr&#233;ation de l'automatisation&lt;/h2&gt;
&lt;p&gt;Les &#233;v&#233;nements maintenant cr&#233;&#233;s, il nous faut cr&#233;er dans HA l'automatisation qui g&#233;rera la diffusion au moment opportun.&lt;/p&gt;
&lt;p&gt;Dans le r&#233;pertoire &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;automations/&lt;/code&gt;, cr&#233;er le fichier &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;messages_ghm.yaml&lt;/code&gt;. Puis dans ledit fichier, nous pourrons mettre le code suivant :&lt;/p&gt;
&lt;div class=&#034;precode&#034;&gt;&lt;pre class='spip_code spip_code_block' dir='ltr' style='text-align:left;'&gt;&lt;code&gt;alias: Diffusion des messages trigger: platform: state entity_id: calendar.messages_ghm from: 'off' to: 'on' action: - service: media_player.volume_set data_template: entity_id: media_player.nom_du_ghm volume_level: 0.6 - service: tts.google_translate_say data_template: entity_id: media_player.nom_du_ghm message: '{{ state_attr('calendar.alarmes_maison', 'message') }}' language: 'fr'&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;Explications :&lt;/strong&gt;&lt;br class='autobr' /&gt;
L'automatisation va se d&#233;clencher (cf. &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;trigger&lt;/code&gt;) lorsque &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;calendar.messages_ghm&lt;/code&gt;, notre calendrier d&#233;di&#233; passera &#224; &#034;on&#034;. C'est-&#224;-dire qu'un &#233;v&#233;nement commence. Donc dans notre probl&#233;matique qu'un message doit &#234;tre diffus&#233;.&lt;br class='autobr' /&gt;
Dans les actions, nous utilisons le service &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;media_player.volume_set&lt;/code&gt; pour modifier le volume du GHM. &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;volume_level&lt;/code&gt; &#233;tant la valeur que nous d&#233;sirons. C'est histoire que le message soit entendu correctement.&lt;br class='autobr' /&gt;
Nous utilisons le service &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;tts.google_translate_say&lt;/code&gt; &lt;i&gt;(que nous avons d&#233;fini plus haut dans configuration)&lt;/i&gt; pour transmettre au GHM d&#233;sir&#233;. Le message est le titre de l'&#233;v&#233;nement, soit &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;{{ state_attr('calendar.alarmes_maison', 'message') }}&lt;/code&gt;. Ce n'est qu'un pur hasard mais HA indique le titre de l'&#233;v&#233;nement par l'attribut &#034;message&#034;. Nous le prendrons sans broncher.&lt;/p&gt;
&lt;p&gt;Bon, c'est pas mal. &#199;a fait le job d&#233;sir&#233;. Malheureusement, tel quel, on envoie le message &#224; un et un seul GHM. Comment faire pour l'envoyer &#224; plusieurs GHM ?&lt;/p&gt;
&lt;blockquote class=&#034;alert alert-warning&#034;&gt;
&lt;h4&gt;Spoiler alert&lt;/h4&gt;
&lt;p&gt;Contrairement &#224; la solution que j'utilisais avec &#034;Assistant-Plugins&#034; avant HA, je n'ai pas trouv&#233; la m&#233;thode pour indiquer les GHM &#224; qui je dois transmettre le message. En gros, j'ai &#034;GHM Salon&#034;, &#034;GHM Chambre enfants&#034;, &#034;GHM Bureau&#034;. Je ne sais pas pour le moment (mars 2021) comment indiquer &#224; HA que je veux que tel message soit envoy&#233; &#224; GHM Salon et GHM Chambre enfant. Puis tel autre message &#224; GHM Bureau uniquement.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Avec la liste de GHM ci-dessous, nous allons cr&#233;&#233; un script permettant d'envoyer les messages &#224; ceci.&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; GHM Salon (cf. &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;media_player.ghm_salon&lt;/code&gt;)&lt;/li&gt;&lt;li&gt; GHM Premi&#232;re Chambre (cf. &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;media_player.ghm_premiere_chambre&lt;/code&gt;)&lt;/li&gt;&lt;li&gt; GHM Deuxi&#232;me Chambre (cf. &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;media_player.ghm_deuxieme_chambre&lt;/code&gt;)&lt;/li&gt;&lt;li&gt; GHM Suite Parentale (cf. &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;media_player.ghm_suite_parentale&lt;/code&gt;)&lt;/li&gt;&lt;li&gt; GHM Salle de bain (cf. &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;media_player.ghm_salle_de_bain&lt;/code&gt;)&lt;/li&gt;&lt;/ul&gt;&lt;h2 class=&#034;spip&#034;&gt;Cr&#233;ation d'un script&lt;/h2&gt;
&lt;p&gt;Comme dans la section pr&#233;c&#233;dente, nous avons vu comment envoyer des messages depuis une automatisation. Nous allons nous cr&#233;er un &lt;a href=&#034;https://www.home-assistant.io/integrations/script/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;script&lt;/a&gt; pour nous simplifier la vie. Le but &#233;tant de pouvoir appeler ce script autant de fois que nous d&#233;sirions notifier l'ensemble des GHM.&lt;br class='autobr' /&gt;
En fait, on va en cr&#233;er 2 :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; un script pour faire parler un media_player ;&lt;/li&gt;&lt;li&gt; un script qui va notifier TOUS les media_player que nous voulons.&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Dans notre fichier &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;configuration.yaml&lt;/code&gt;, je dois indiquer o&#249; trouver mes scripts. Je choisis, comme pour les automatisations d'avoir tous mes scripts dans un r&#233;pertoire :&lt;/p&gt;
&lt;div class=&#034;precode&#034;&gt;&lt;pre class='spip_code spip_code_block' dir='ltr' style='text-align:left;'&gt;&lt;code&gt;script: !include_dir_merge_named scripts/&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Cela fait, je cr&#233;e un fichier &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;media_player_say.yaml&lt;/code&gt; dans le r&#233;pertoire scripts/&lt;/p&gt;
&lt;div class=&#034;precode&#034;&gt;&lt;pre class='spip_code spip_code_block' dir='ltr' style='text-align:left;'&gt;&lt;code&gt;media_player_say: alias: &#034;[Helper] Media Player says&#034; sequence: - service: media_player.volume_set data_template: entity_id: '{{speaker_location}}' volume_level: '{% if (volume_level | float) &gt; 0 %} {{volume_level}} {% else %} 0.7 {% endif %}' - service: tts.google_translate_say data_template: entity_id: '{{speaker_location}}' message: '{{message}}' language: 'fr'&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Ce script attend qu'on lui indique 3 param&#232;tres :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; &lt;i&gt;speaker_location&lt;/i&gt; : l'entity_id de mon GHM (exemple : media_player.ghm_salon)&lt;/li&gt;&lt;li&gt; &lt;i&gt;volume_level&lt;/i&gt; : le niveau sonore attendu&lt;/li&gt;&lt;li&gt; &lt;i&gt;message&lt;/i&gt; : le message &#224; diffuser.&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Nous allons maintenant cr&#233;&#233; le 2&#232;me script qui fera appel &#224; &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;script.media_player_say&lt;/code&gt;. On r&#233;p&#232;te les m&#234;me op&#233;rations : cr&#233;e un fichier &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;media_player_notify_all.yaml&lt;/code&gt; dans le r&#233;pertoire &lt;i&gt;scripts/&lt;/i&gt;. Et y mettre le code suivant :&lt;/p&gt;
&lt;div class=&#034;precode&#034;&gt;&lt;pre class='spip_code spip_code_block' dir='ltr' style='text-align:left;'&gt;&lt;code&gt;media_player_notify_all: alias: &#034;[Helper] Notify all media players&#034; sequence: - delay: 0 - data_template: speaker_location: media_player.ghm_salon message: &#034;{{ message }}&#034; volume_level: &#034;{{ volume }}&#034; service: script.media_player_say - delay: 0 - data_template: speaker_location: media_player.ghm_salle_de_bain message: &#034;{{ message }}&#034; volume_level: &#034;{{ volume }}&#034; service: script.media_player_say - delay: 0 - data_template: speaker_location: media_player.ghm_deuxieme_chambre message: &#034;{{ message }}&#034; volume_level: &#034;{{ volume }}&#034; service: script.media_player_say - delay: 0 - data_template: speaker_location: media_player.ghm_premiere_chambre message: &#034;{{ message }}&#034; volume_level: &#034;{{ volume }}&#034; service: script.media_player_say&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Vous r&#233;p&#233;tez autant de fois que n&#233;cessaire l'appel au service &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;script.media_player_say&lt;/code&gt;, autant de fois que vous d&#233;sirez de GHM. Vous pouvez voir que nous indiquons &#224; chaque fois les 3 param&#232;tres obligatoires : &lt;i&gt;speaker_location&lt;/i&gt;, &lt;i&gt;message&lt;/i&gt; et &lt;i&gt;volume_level&lt;/i&gt;.&lt;/p&gt;
&lt;p&gt;De ce fait, on pourra simplifier l'automatisation avec ce script. Et on pourra l'utiliser partout o&#249; on le d&#233;sire. Pour r&#233;sumer, l'automatisation appellera un script qui appellera un script. :-) &lt;br class='autobr' /&gt;
Cela donne ceci :&lt;/p&gt;
&lt;div class=&#034;precode&#034;&gt;&lt;pre class='spip_code spip_code_block' dir='ltr' style='text-align:left;'&gt;&lt;code&gt;alias: Diffusion des messages trigger: platform: state entity_id: calendar.messages_ghm from: 'off' to: 'on' action: - service: script.media_player_notify_all data_template: message: &#034;{{ state_attr('calendar.alarmes_maison', 'message') }}&#034; volume: 0.6&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 class=&#034;spip&#034;&gt;Am&#233;liorer le script&lt;/h2&gt;
&lt;p&gt;Ces scripts et cette automatisation sont plut&#244;t pratiques et m'apportent satisfaction en soit. Tout est g&#233;r&#233; par le biais des agendas. Donc libre &#224; chacun de mettre les messages quand cela est n&#233;cessaire. Je n'ai pas de probl&#232;mes d'isolation sonore dans mon appartement. Toutefois, j'ai ajout&#233; une s&#233;curit&#233; : une heure de d&#233;but et de fin de diffusion des messages, une tranche horaire donc.&lt;br class='autobr' /&gt;
Pour leurs utilisations, il est n&#233;cessaire de mettre en place les &lt;a href=&#034;https://www.home-assistant.io/docs/scripts/#test-a-condition&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;conditions&lt;/a&gt; (&lt;a href=&#034;https://www.home-assistant.io/docs/scripts/conditions/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;ici aussi&lt;/a&gt;) dans le script &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;media_player_say.yaml&lt;/code&gt;&lt;/p&gt;
&lt;div class=&#034;precode&#034;&gt;&lt;pre class='spip_code spip_code_block' dir='ltr' style='text-align:left;'&gt;&lt;code&gt;media_player_say: alias: &#034;[Helper] Media Player says&#034; sequence: - condition: and conditions: - condition: state entity_id: input_boolean.speech_notifications state: 'on' - condition: template value_template: &gt; {{ now().strftime(&#034;%H:%M&#034;) &gt; states.input_datetime.speech_notifications_start.state }} - condition: template value_template: &gt; {{ now().strftime(&#034;%H:%M&#034;) &lt; states.input_datetime.speech_notifications_end.state }} - service: media_player.volume_set data_template: entity_id: '{{speaker_location}}' volume_level: '{% if (volume_level | float) &gt; 0 %} {{volume_level}} {% else %} 0.7 {% endif %}' - service: tts.google_translate_say data_template: entity_id: '{{speaker_location}}' message: '{{message}}' language: 'fr'&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 class=&#034;spip&#034;&gt;Pour aller plus loin&lt;/h2&gt;
&lt;p&gt;Tout &#231;a c'est bien beau, mais j'aimerai trouver une solution pour baisser le volume en soir&#233;e ou voir m&#234;me tr&#232;s t&#244;t le matin pour ne pas &#234;tre agressif dans le foyer. &lt;br class='autobr' /&gt;
En plus de cela, je voudrais utiliser des tableaux que je passerai en param&#232;tre &#224; un script. Je ne suis pas s&#251;r qu'Home Assistant le permet par yaml. Il faudrait peut-&#234;tre passer par &lt;a href=&#034;https://appdaemon.readthedocs.io/en/latest/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;AppDaemon&lt;/a&gt; qui permet d'utiliser des scripts python. Merci &#224; &lt;a href=&#034;https://hacs.xyz/docs/categories/appdaemon_apps/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;HACS&lt;/a&gt; pour son int&#233;gration.&lt;br class='autobr' /&gt;
Il y a encore de belles possibilit&#233;s offertes par HA et consort. Il faut que j'apprenne &#224; mieux conna&#238;tre Home Assistant. Cela est en cours. Si vous avez des suggestions, des am&#233;liorations, des remarques, je suis preneur. ;-)&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Dans la m&#234;me s&#233;rie&lt;/h2&gt;
&lt;p&gt;&lt;a href='https://www.preprod.teddypayet.com/Ma-domotique-open-source' class=&#034;spip_in&#034;&gt;Pr&#233;sentation&lt;/a&gt;&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; &lt;a href='https://www.preprod.teddypayet.com/Home-Assistant-Envoyer-des-messages-a-mes-Google-Home-Mini' class=&#034;spip_in&#034;&gt;#1 Messages envoy&#233;s sur les GHM &lt;/a&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; &lt;a href='https://www.preprod.teddypayet.com/Home-Assistant-Routine-le-matin-avant-l-ecole' class=&#034;spip_in&#034;&gt;#1.1 Routine le matin avant l'&#233;cole &lt;/a&gt;&lt;/li&gt;&lt;li&gt; #1.2 Routine du soir&lt;/li&gt;&lt;li&gt; #1.3 L'&#233;cole &#224; la maison&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt; #2 &#201;teindre les lumi&#232;res&lt;/li&gt;&lt;li&gt; #3 Baisser le volume des GHM&lt;/li&gt;&lt;li&gt; #4 T&#226;ches m&#233;nag&#232;res&lt;/li&gt;&lt;li&gt; #5 Habit Tracker&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;
		
		</content:encoded>


		

	</item>
<item xml:lang="fr">
		<title>Ma domotique open source</title>
		<link>https://www.preprod.teddypayet.com/Ma-domotique-open-source</link>
		<guid isPermaLink="true">https://www.preprod.teddypayet.com/Ma-domotique-open-source</guid>
		<dc:date>2021-03-03T11:37:38Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>Teddy Payet</dc:creator>



		<description>
&lt;p&gt;Cela fait un moment que je fais de la domotique &#224; la maison, en restant raisonnable bien entendu. Cela fait longtemps aussi que je ne vous ai pas &#233;crit d'articles sur mon blog. Nous connaissons tous la situation internationale depuis d&#233;but 2020. A cette occasion, lors du premier confinement en mars 2020, j'ai eu plus de temps libre mine de rien. J'en ai profit&#233; pour installer Home Assistant, un gestionnaire de domotique open source. Je vais vous en parler un peu... voir beaucoup ! (&#8230;)&lt;/p&gt;


-
&lt;a href="https://www.preprod.teddypayet.com/Blog" rel="directory"&gt;Blog&lt;/a&gt;


		</description>


 <content:encoded>&lt;img src='https://www.preprod.teddypayet.com/local/cache-vignettes/L150xH94/arton161-33493.jpg?1724344964' class='spip_logo spip_logo_right' width='150' height='94' alt=&#034;&#034; /&gt;
		&lt;div class='rss_chapo'&gt;&lt;p&gt;Cela fait un moment que je fais de la domotique &#224; la maison, en restant raisonnable bien entendu. &lt;i&gt;Cela fait longtemps aussi que je ne vous ai pas &#233;crit d'articles sur mon blog.&lt;/i&gt; Nous connaissons tous la situation internationale depuis d&#233;but 2020. A cette occasion, lors du premier confinement en mars 2020, j'ai eu plus de temps libre mine de rien. J'en ai profit&#233; pour installer Home Assistant, un gestionnaire de domotique open source. Je vais vous en parler un peu... voir beaucoup !&lt;/p&gt;&lt;/div&gt;
		&lt;div class='rss_texte'&gt;&lt;h2 class=&#034;spip&#034;&gt;Pr&#233;ambule&lt;/h2&gt;
&lt;p&gt;J'avais un Raspberry Pi 3b+ qui dormait dans un coin. Je me suis dit qu'il &#233;tait temps de le r&#233;veiller un peu et de voir ce que pouvait m'offrir &lt;a href=&#034;https://www.home-assistant.io/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Home Assistant&lt;/a&gt;. Je vous traduis leur pr&#233;sentation :&lt;/p&gt;
&lt;blockquote&gt;
Une domotique open source qui met au premier plan le contr&#244;le local et la confidentialit&#233;. Propuls&#233; par une communaut&#233; mondiale de bricoleurs et d'enthousiastes DIYeurs. Parfait pour fonctionner sur un Raspberry Pi ou un serveur local.
&lt;/blockquote&gt;
&lt;p&gt;Il existe d'autres solutions &#233;quivalentes open source : Gladys, OpenHab, Domoticz, Jeedom, etc. Ma pr&#233;f&#233;rence est partie vers Home Assistant car je regarde beaucoup de vid&#233;os de Youtubers DIYeurs anglophones. Ils sont tr&#232;s friands de cette solution. Il faut dire que l'aspect esth&#233;tique de l'interface utilisateur &#233;tait un point important. &lt;strong&gt;Home Assistant &#233;tait sobre et moderne &#224; mes yeux.&lt;/strong&gt;&lt;br class='autobr' /&gt;
De plus, une communaut&#233; francophone commen&#231;ait &#224; se mettre en place depuis fin 2019-d&#233;but 2020 gr&#226;ce &#224; l'impulsion de &lt;i&gt;&#034;Paradis Artificiels&#034;&lt;/i&gt;, un youtubeur fran&#231;ais. J'ai peu regard&#233; ses vid&#233;os mais il est tr&#232;s appr&#233;ci&#233; par la communaut&#233; HACF&lt;span class=&#034;spip_note_ref&#034;&gt; [&lt;a href=&#034;#nb1&#034; class=&#034;spip_note&#034; rel=&#034;appendix&#034; title=&#034;Soit &#034;Home Assistant Communaut&#233; Francophone&#034;&#034; id=&#034;nh1&#034;&gt;1&lt;/a&gt;]&lt;/span&gt;.&lt;/p&gt;
&lt;p&gt;Les diff&#233;rents articles que je vais &#233;crire sur Home Assistant et les solutions que j'ai mis en place n'aborderont pas l'installation from scratch d'HA. Il existe d'autres sites, blogs qui en parlent d&#233;j&#224;. Ce n'est pas la peine d'&#234;tre redondant. Bien entendu, s'il y a une configuration pertinente, je l'indiquerai au fil de l'eau.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Mon approche&lt;/h2&gt;
&lt;p&gt;Comme vous avez pu le constater, je parle un peu de &lt;a href='https://www.preprod.teddypayet.com/MagicMirror&#178;-planification-des-taches' class=&#034;spip_in&#034;&gt;domotique&lt;/a&gt; sur mon blog, pas forc&#233;ment de DIY mat&#233;riels. Je ne sais pas souder les composants entre eux, ce n'est pas mon dada. J'ai plut&#244;t l'&#226;me d'un d&#233;veloppeur applicatif. Ma philosophie est que si je dois &lt;strong&gt;faire plus de 2 fois quelque chose, c'est que je peux l'automatiser. &lt;/strong&gt; &lt;br class='autobr' /&gt;
De l&#224;, mon objectif pour HomeAssistant est &lt;strong&gt;d'automatiser mes actions r&#233;p&#233;titives, me simplifier la vie et celle de ma petite famille.&lt;/strong&gt; Bien entendu, il ne faut pas s'enlever le piment de la vie et de devenir comme les humains dans &#034;WALL-E&#034;.&lt;/p&gt;
&lt;div class='spip_document_258 spip_document spip_documents spip_document_image spip_documents_center spip_document_center spip_document_avec_legende' data-legende-len=&#034;55&#034; data-legende-lenx=&#034;x&#034;
&gt;
&lt;figure class=&#034;spip_doc_inner&#034;&gt; &lt;a href='https://www.preprod.teddypayet.com/IMG/jpg/walle-hoverchair08.jpg' class=&#034;spip_doc_lien mediabox&#034; type=&#034;image/jpeg&#034;&gt; &lt;img src='https://www.preprod.teddypayet.com/local/cache-vignettes/L500xH211/walle-hoverchair08-e2be3-82d34.jpg?1724344964' width='500' height='211' alt='' /&gt;&lt;/a&gt;
&lt;figcaption class='spip_doc_legende'&gt; &lt;div class='spip_doc_titre '&gt;&lt;strong&gt;Les humains dans WALL-E
&lt;/strong&gt;&lt;/div&gt; &lt;div class='spip_doc_credits '&gt;Pixar Animation Studios, 2008
&lt;/div&gt;
&lt;/figcaption&gt;&lt;/figure&gt;
&lt;/div&gt;&lt;h2 class=&#034;spip&#034;&gt;Mon mat&#233;riel&lt;/h2&gt;
&lt;p&gt;Mon mat&#233;riel se r&#233;sume aux &#233;l&#233;ments suivants :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; 3 interrupteurs Sonoff Touch Wifi&lt;/li&gt;&lt;li&gt; 3 interrupteurs Tuya Zigbee&lt;/li&gt;&lt;li&gt; 2 contr&#244;leurs Wifi monocouleur MagicHome&lt;/li&gt;&lt;li&gt; 1 prise Zigbee&lt;/li&gt;&lt;li&gt; 2 prises wifi&lt;/li&gt;&lt;li&gt; 2 Raspberry Pi 3&lt;/li&gt;&lt;li&gt; Une cl&#233; Conbee2&lt;/li&gt;&lt;li&gt; 5 Google Home Mini&lt;/li&gt;&lt;li&gt; 1 Alexa Echo Dot&lt;/li&gt;&lt;li&gt; 7 capteurs d'ouverture (Zigbee)&lt;/li&gt;&lt;li&gt; 1 capteur de lumi&#232;re (Zigbee)&lt;/li&gt;&lt;li&gt; 7 capteurs de temp&#233;rature et d'humidit&#233;&lt;/li&gt;&lt;li&gt; 2 boutons poussoirs Aqara (Zigbee)&lt;/li&gt;&lt;li&gt; Une Webcam 5MP Reolink Wifi&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;1 des Raspberry PI 3 est utilis&#233; pour mon MagicMirror. Le deuxi&#232;me h&#233;berge mon &lt;a href=&#034;https://www.home-assistant.io/installation/raspberrypi&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;installation HomeAssistant&lt;/a&gt;.&lt;/p&gt;
&lt;div class='spip_document_259 spip_document spip_documents spip_document_image spip_documents_center spip_document_center'&gt;
&lt;figure class=&#034;spip_doc_inner&#034;&gt; &lt;a href='https://www.preprod.teddypayet.com/IMG/png/raspberry-pi-pcb.png' class=&#034;spip_doc_lien mediabox&#034; type=&#034;image/png&#034;&gt; &lt;img src='https://www.preprod.teddypayet.com/local/cache-vignettes/L500xH354/raspberry-pi-pcb-2e4a3-74d89.png?1724344964' width='500' height='354' alt='' /&gt;&lt;/a&gt;
&lt;/figure&gt;
&lt;/div&gt;&lt;h2 class=&#034;spip&#034;&gt;L'avant Home Assistant&lt;/h2&gt;
&lt;p&gt;Avant d'installer et de configurer HA, j'utilisais le raspberry Pi du MagicMirror pour envoyer des messages aux Google Home de la maison pour &lt;strong&gt;rythmer la journ&#233;e. &lt;/strong&gt; J'avais install&#233; &lt;a href=&#034;https://aymkdn.github.io/assistant-plugins/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Assistant-Plugins&lt;/a&gt; qui fonctionnait pas trop mal. J'ai m&#234;me cr&#233;&#233; un petit &lt;a href=&#034;https://aymkdn.github.io/assistant-plugins/?plugin=rappel-calendrier&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;add-on&lt;/a&gt; qui me permettait de lire le contenu d'un fichier ics (le calendrier Google) et &lt;strong&gt;envoyer des messages sur les GHM.&lt;/strong&gt;&lt;br class='autobr' /&gt;
&lt;i&gt;Avant cette solution Assistant-Plugins, je diffusais les messages sur les haut-parleurs du MagicMirror.&lt;/i&gt;&lt;/p&gt;
&lt;h4&gt;#1 Messages envoy&#233;s sur les GHM&lt;/h4&gt;
&lt;p&gt;En gros, &lt;strong&gt;le titre de l'&#233;v&#233;nement correspond au message&lt;/strong&gt; que le Google Home doit &#233;noncer. Le descriptif contient le nom de chaque Google Home sur lequel doit &#234;tre &#233;nonc&#233; le message. Bien entendu, le message est diffus&#233; &#224; l'heure du d&#233;but de l'&#233;v&#233;nement. Nous pouvions donc &lt;strong&gt;depuis notre agenda Google planifier des messages,&lt;/strong&gt; des rappels etc. Donc, cette solution est &lt;strong&gt;accessible aux personnes non geek.&lt;/strong&gt;&lt;/p&gt;
&lt;h5&gt;#1.1 Routine le matin avant l'&#233;cole&lt;/h5&gt;
&lt;p&gt;Gr&#226;ce &#224; l'utilisation des &#233;v&#233;nements cr&#233;&#233;s, je pouvais diffuser des messages le matin pour &lt;strong&gt;rythmer l'activit&#233; de mes enfants pour ne pas &#234;tre en retard&lt;/strong&gt; pour l'&#233;cole. Nous nous r&#233;veillons &#224; la m&#234;me heure, prenons notre petit d&#233;jeuner ensemble. Parfois, on pouvait laisser le temps s'&#233;couler tranquillement et ainsi &#234;tre en retard. De ce fait, cette routine &#233;tait la bienvenue.&lt;/p&gt;
&lt;h5&gt;#1.2 Routine du soir&lt;/h5&gt;
&lt;p&gt;Apr&#232;s l'&#233;cole, les enfants ont leur temps libre de d&#233;tente. Mais arriv&#233;s &#224; une certaine heure, ils doivent faire leurs devoirs, pr&#233;parer les affaires pour le lendemain, aller prendre la douche, etc. Ils aiment leur autonomie. Les messages permettaient encore une fois de les aiguiller. &lt;strong&gt;Tout cela est r&#233;p&#233;titif.&lt;/strong&gt;&lt;br class='autobr' /&gt;
Le plus sympa est qu'ils se sont pris au jeu. Ils venaient me dire quand un message n'a pas &#233;t&#233; diffus&#233;. C'&#233;tait m&#234;me un challenge entre nous, je devais faire en sorte que tout fonctionne correctement.&lt;/p&gt;
&lt;h5&gt;#1.3 L'&#233;cole &#224; la maison&lt;/h5&gt;
&lt;p&gt;Durant le confinement de mars 2020, les enfants ont eu cours &#224; la maison comme tous (ou presque) les autres enfants de leur &#226;ge &#224; cette p&#233;riode. De ce fait, ayant install&#233; Home Assistant entre temps, j'ai cr&#233;&#233; une routine (une automatisation) pour &lt;strong&gt;rythmer la journ&#233;e d'apprentissage comme si on &#233;tait &#224; l'&#233;cole&lt;/strong&gt;. Un message est diffus&#233; r&#233;guli&#232;rement :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; 9h25, pr&#233;venir que l'&#233;cole va bient&#244;t commencer ;&lt;/li&gt;&lt;li&gt; 9h30 d&#233;but de la journ&#233;e ;&lt;/li&gt;&lt;li&gt; 10h00, d&#233;but de la r&#233;cr&#233;ation ;&lt;/li&gt;&lt;li&gt; 10h15, fin de la r&#233;cr&#233;ation, reprise des cours ;&lt;/li&gt;&lt;li&gt; 10h45, d&#233;but de la longue r&#233;cr&#233;ation ;&lt;/li&gt;&lt;li&gt; 11h15, fin de la r&#233;cr&#233;ation, reprise des cours ;&lt;/li&gt;&lt;li&gt; 11h45, d&#233;but de la r&#233;cr&#233;ation ;&lt;/li&gt;&lt;li&gt; 12h00, fin de la r&#233;cr&#233;ation, reprise des cours ;&lt;/li&gt;&lt;li&gt; 12h30, pause d&#233;jeuner.&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Et l'apr&#232;s-midi, on reprenait les cours &#224; 14h30. Le m&#234;me rythme &#233;tait mis en place en respectant la technique &#034;&lt;a href=&#034;https://fr.wikipedia.org/wiki/Technique_Pomodoro&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Pomodoro&lt;/a&gt;&#034;, soit 30 minutes de travail, 15 minutes de pause.&lt;/p&gt;
&lt;div class='spip_document_260 spip_document spip_documents spip_document_image spip_documents_center spip_document_center spip_document_avec_legende' data-legende-len=&#034;35&#034; data-legende-lenx=&#034;x&#034;
&gt;
&lt;figure class=&#034;spip_doc_inner&#034;&gt; &lt;a href='https://www.preprod.teddypayet.com/IMG/jpg/aron-visuals-bxoxnq26b7o-unsplash_cropped-min.jpg' class=&#034;spip_doc_lien mediabox&#034; type=&#034;image/jpeg&#034;&gt; &lt;img src='https://www.preprod.teddypayet.com/local/cache-vignettes/L500xH313/aron-visuals-bxoxnq26b7o-unsplash_cropped-min-d7e03.jpg?1724344965' width='500' height='313' alt='' /&gt;&lt;/a&gt;
&lt;figcaption class='spip_doc_legende'&gt; &lt;div class='spip_doc_credits '&gt;&lt;span&gt;Photo by &lt;a href=&#034;https://unsplash.com/@aronvisuals?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText&#034;&gt;Aron Visuals&lt;/a&gt; on &lt;a href=&#034;https://unsplash.com/s/photos/time?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText&#034;&gt;Unsplash&lt;/a&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;/figcaption&gt;&lt;/figure&gt;
&lt;/div&gt;&lt;h4&gt;#2 &#201;teindre les lumi&#232;res&lt;/h4&gt;
&lt;p&gt;En plus de mon calendrier d&#233;di&#233; aux &#034;alertes&#034; sur les Google Home Mini, j'ai cr&#233;&#233; un calendrier d&#233;di&#233; &#224; la &lt;strong&gt;gestion des lumi&#232;res&lt;/strong&gt; (mes interrupteurs). Le titre de chaque &#233;v&#233;nement correspond &#224; ce que je voulais faire &#034;&#233;teindre&#034; ou &#034;allumer&#034; et le nom de la lumi&#232;re avec laquelle je d&#233;sirais interagir. Exemple : &lt;i&gt;&#034;Eteindre Lumi&#232;re bureau&#034;, &#034;Allumer Chambre Parentale&#034;, etc.&lt;/i&gt;&lt;br class='autobr' /&gt;
Ici, pas que de l'Assistant-Plugins. Tout &#233;tait li&#233; &#224; des actions dans IFTTT qui communiquait avec Pushbullet... C'&#233;tait moins accessible, mais autonome une fois mis en place.&lt;br class='autobr' /&gt;
Gr&#226;ce &#224; cela, je pouvais &lt;strong&gt;&#233;teindre les lumi&#232;res &#224; une certaine heure de la nuit.&lt;/strong&gt; Tr&#232;s pratique si nous avions oubli&#233; d'&#233;teindre des lumi&#232;res.&lt;/p&gt;
&lt;h4&gt;#3 Baisser le volume des GHM&lt;/h4&gt;
&lt;p&gt;En m&#234;me temps que les lumi&#232;res s'&#233;teignent la nuit, je d&#233;sire que le volume des GHM soit au plus bas, qu'ils passent en &lt;strong&gt;mode nuit&lt;/strong&gt;. Ainsi, nous ne devrions pas &#234;tre surpris par un son &#233;manant d'eux.&lt;br class='autobr' /&gt;
Au petit matin, je remettais le volume &#224; quelque chose de plus adapt&#233;e.&lt;/p&gt;
&lt;h4&gt;#4 T&#226;ches m&#233;nag&#232;res&lt;/h4&gt;
&lt;p&gt;Nous sommes une famille de 5 personnes. Les plus grands enfants participent aux t&#226;ches m&#233;nag&#232;res. Pour le moment, les 2 plus grands &lt;strong&gt;&#224; tour de r&#244;le mettent la table.&lt;/strong&gt; J'utilise encore une fois la force des calendriers pour les r&#233;p&#233;titions des &#233;v&#233;nements. Un enfant place et d&#233;barrasse la table tous les 2 jours, &lt;strong&gt;met &#233;galement toute la vaisselle dans le lave-vaisselle.&lt;/strong&gt; Et lorsque l'autre enfant ne place pas la table, il est charg&#233; de &lt;strong&gt;sortir la poubelle,&lt;/strong&gt; &lt;strong&gt;d'ouvrir les volets le matin&lt;/strong&gt; et de &lt;strong&gt;les fermer le soir.&lt;/strong&gt;&lt;br class='autobr' /&gt;
Sur le MagicMirror, on affiche dans une zone d&#233;di&#233;e le nom de la personne en charge de la &#034;Table&#034;. Tout d&#233;coule de l&#224;.&lt;/p&gt;
&lt;h4&gt;#5 Habit Tracker&lt;/h4&gt;
&lt;p&gt;En &#034;plus&#034; des t&#226;ches m&#233;nag&#232;res, mes 2 plus &lt;strong&gt;grands enfants ont un &lt;a href=&#034;https://www.lapenderiedechloe.com/2020/04/trackers-a-imprimer.html&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;tableau&lt;/a&gt; leur permettant de cocher les &#233;l&#233;ments r&#233;alis&#233;s dans la journ&#233;e.&lt;/strong&gt; C'est un &lt;a href=&#034;http://planwithady.com/habit-tracker/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;habit tracker&lt;/a&gt;. Le principe est de &lt;strong&gt;suivre&lt;/strong&gt; des &#034;habitudes&#034; de fa&#231;on quotidienne, hebdomadaire, etc.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;L'installation d'HomeAssistant&lt;/h2&gt;
&lt;p&gt;Comme indiqu&#233; en d&#233;but de cet article, je ne vais pas faire un pas &#224; pas de comment installer HomeAssistant. Beaucoup de bloggers et de Youtubers (fran&#231;ais comme anglais) ont trait&#233; le sujet. Je n'ai pas envie d'&#234;tre redondant. La meilleure documentation sur le sujet reste pour moi la documentation officielle :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; &lt;a href=&#034;https://www.home-assistant.io/installation/raspberrypi&#034; class=&#034;spip_url spip_out auto&#034; rel=&#034;nofollow external&#034;&gt;https://www.home-assistant.io/installation/raspberrypi&lt;/a&gt; (&lt;a href=&#034;https://translate.google.com/translate?sl=en&amp;tl=fr&amp;u=https://www.home-assistant.io/installation/raspberrypi&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;en fran&#231;ais&lt;/a&gt;)&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;https://www.home-assistant.io/getting-started/onboarding/&#034; class=&#034;spip_url spip_out auto&#034; rel=&#034;nofollow external&#034;&gt;https://www.home-assistant.io/getting-started/onboarding/&lt;/a&gt; (&lt;a href=&#034;https://translate.google.com/translate?sl=en&amp;tl=fr&amp;u=https://www.home-assistant.io/getting-started/onboarding/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;en fran&#231;ais&lt;/a&gt;)&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Je vous ai indiqu&#233; les versions &#034;fran&#231;aises&#034; qui en fait les traductions automatiques de Google Translate. Elles sont suffisamment compr&#233;hensible m&#234;me si elles ne sont pas dans un fran&#231;ais acad&#233;mique. :-)&lt;/p&gt;
&lt;p&gt;Apr&#232;s avoir lanc&#233; mon HomeAssistant, j'ai ajout&#233; les add-ons suivants :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; &lt;a href=&#034;https://www.home-assistant.io/getting-started/configuration/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Check Home Assistant configuration&lt;/a&gt;&lt;/li&gt;&lt;li&gt; File Editor&lt;/li&gt;&lt;li&gt; Log Viewer&lt;/li&gt;&lt;li&gt; Samba Share&lt;/li&gt;&lt;li&gt; Spotify Connect&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;https://community.home-assistant.io/t/home-assistant-community-add-on-ssh-web-terminal/33820&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Terminal &amp; SSH&lt;/a&gt;&lt;/li&gt;&lt;li&gt; deConz (pour g&#233;rer mes appareils Zigbee)&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;https://github.com/sabeechen/hassio-google-drive-backup&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Home Assistant Google Drive Backup&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Pour les int&#233;grations, j'ai ceci :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; &lt;a href=&#034;https://www.home-assistant.io/integrations/deconz/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Phoscon deCONZ&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;https://www.home-assistant.io/integrations/cast/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Google Cast&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;https://apps.apple.com/fr/app/home-assistant/id1099568401&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;iOS Home Assistant&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;https://www.home-assistant.io/integrations/ifttt/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;IFTTT&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;https://www.home-assistant.io/integrations/met/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Meteorologisk institutt&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;https://www.home-assistant.io/integrations/meteo_france/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;M&#233;t&#233;o-France&lt;/a&gt; (pour la ville de mon domicile)&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;https://www.home-assistant.io/integrations/tuya/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Tuya&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;https://www.home-assistant.io/integrations/mqtt/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;MQTT&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;J'ai d'autres &#233;l&#233;ments qui sont int&#233;gr&#233; par configuration yaml. J'en parlerai si n&#233;cessaire le moment venu.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;What's next ?&lt;/h2&gt;
&lt;p&gt;Avant tout, merci d'avoir pris le temps de me lire jusqu'ici. Je ne pensais pas &#233;crire un aussi long article, mais il est n&#233;cessaire en l'&#233;tat. En effet, vous avez une petite id&#233;e maintenant de ce qui vous attend bient&#244;t, non ? :-D Aaaaahhhhh le teasing !&lt;/p&gt;
&lt;div style=&#034;width:100%;height:0;padding-bottom:56%;position:relative;&#034;&gt;&lt;iframe src=&#034;https://giphy.com/embed/hsCmhhjGgrZArg7YYE&#034; width=&#034;100%&#034; height=&#034;100%&#034; style=&#034;position:absolute&#034; frameBorder=&#034;0&#034; class=&#034;giphy-embed&#034; allowFullScreen&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;p&gt;&lt;br class='manualbr' /&gt;Le chemin est trac&#233; pour mes prochains articles et les s&#233;ries associ&#233;es :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; &lt;a href='https://www.preprod.teddypayet.com/Home-Assistant-Envoyer-des-messages-a-mes-Google-Home-Mini' class=&#034;spip_in&#034;&gt;#1 Messages envoy&#233;s sur les GHM &lt;/a&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; &lt;a href='https://www.preprod.teddypayet.com/Home-Assistant-Routine-le-matin-avant-l-ecole' class=&#034;spip_in&#034;&gt;#1.1 Routine le matin avant l'&#233;cole &lt;/a&gt;&lt;/li&gt;&lt;li&gt; #1.2 Routine du soir&lt;/li&gt;&lt;li&gt; #1.3 L'&#233;cole &#224; la maison&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt; #2 &#201;teindre les lumi&#232;res&lt;/li&gt;&lt;li&gt; #3 Baisser le volume des GHM&lt;/li&gt;&lt;li&gt; #4 T&#226;ches m&#233;nag&#232;res&lt;/li&gt;&lt;li&gt; #5 Habit Tracker&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Je vous ai indiqu&#233; ce que j'avais mis en place AVANT d'avoir Home Assistant. Maintenant que je l'ai, je vais retranscrire toutes ces routines &#224; la mani&#232;re d'HA. C'est tr&#232;s tr&#232;s int&#233;ressant. J'esp&#232;re que cela vous plaira. &lt;br class='autobr' /&gt;
A tr&#232;s bient&#244;t !&lt;/p&gt;&lt;/div&gt;
		&lt;hr /&gt;
		&lt;div class='rss_notes'&gt;&lt;div id=&#034;nb1&#034;&gt;
&lt;p&gt;&lt;span class=&#034;spip_note_ref&#034;&gt;[&lt;a href=&#034;#nh1&#034; class=&#034;spip_note&#034; title=&#034;Notes 1&#034; rev=&#034;appendix&#034;&gt;1&lt;/a&gt;] &lt;/span&gt;Soit &#034;Home Assistant Communaut&#233; Francophone&#034; &lt;a href=&#034;https://hacf.fr/&#034; class=&#034;spip_url spip_out auto&#034; rel=&#034;nofollow external&#034;&gt;https://hacf.fr/&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;&lt;/div&gt;
		&lt;div class='rss_ps'&gt;&lt;p&gt;&lt;span&gt;Photo by &lt;a href=&#034;https://unsplash.com/@itfeelslikefilm?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText&#034;&gt;&#127480;&#127470; Janko Ferli&#269;&lt;/a&gt; on &lt;a href=&#034;https://unsplash.com/collections/19990344/finnley%27s-site-ideas?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText&#034;&gt;Unsplash&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
		</content:encoded>


		

	</item>
<item xml:lang="fr">
		<title>Quelques changements &#224; venir</title>
		<link>https://www.preprod.teddypayet.com/Quelques-changements-a-venir</link>
		<guid isPermaLink="true">https://www.preprod.teddypayet.com/Quelques-changements-a-venir</guid>
		<dc:date>2020-07-25T06:00:00Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>Teddy Payet</dc:creator>



		<description>
&lt;p&gt;J'&#233;cris peu souvent pour des raisons personnelles sur mon blog. Toutefois, je tiens &#224; vous informer que ma situation professionnelle &#224; beaucoup &#233;voluer depuis 1 an. Apr&#232;s avoir obtenu mon dipl&#244;me en Master de Management et Conseils en SI, j'ai &#233;t&#233; Lead Developer chez AdUX d'octobre 2019 &#224; avril 2020 (Une tr&#232;s belle exp&#233;rience). Suite &#224; cela, j'ai d&#233;cid&#233; en ce mois de juillet 2020 de renouer avec une ancienne aventure, mais sous un autre angle : l'entreprenariat ! &lt;br class='autobr' /&gt;
Je suis &#224; nouveau (&#8230;)&lt;/p&gt;


-
&lt;a href="https://www.preprod.teddypayet.com/Blog" rel="directory"&gt;Blog&lt;/a&gt;


		</description>


 <content:encoded>&lt;img src='https://www.preprod.teddypayet.com/local/cache-vignettes/L150xH100/arton160-a9a66.jpg?1724416526' class='spip_logo spip_logo_right' width='150' height='100' alt=&#034;&#034; /&gt;
		&lt;div class='rss_texte'&gt;&lt;p&gt;J'&#233;cris peu souvent pour des raisons personnelles sur mon blog. Toutefois, je tiens &#224; vous informer que ma situation professionnelle &#224; beaucoup &#233;voluer depuis 1 an. &lt;br class='autobr' /&gt;
Apr&#232;s avoir obtenu mon dipl&#244;me en Master de Management et Conseils en SI, j'ai &#233;t&#233; Lead Developer chez AdUX d'octobre 2019 &#224; avril 2020 (Une tr&#232;s belle exp&#233;rience). Suite &#224; cela, j'ai d&#233;cid&#233; en ce mois de juillet 2020 de renouer avec une ancienne aventure, mais sous un autre angle : l'entreprenariat !&lt;/p&gt;
&lt;p&gt;Je suis &#224; nouveau disponible pour des missions de freelance : cr&#233;ation de sites internet, d&#233;veloppement d'applicatifs (PHP), conseil en communication, en mise en place de strat&#233;gie IT, etc. &lt;strong&gt;De ce fait, mon site internet va conna&#238;tre quelques changements dans les semaines &#224; venir pour refl&#233;ter ma nouvelle mission en tant que CTO as a service. &lt;/strong&gt; K&#233;zako ?&lt;/p&gt;
&lt;p&gt;CTO signifie &#034;Chief Technical Officer&#034;. Vous pouvez trouver une d&#233;finition &lt;a href=&#034;https://whatis.techtarget.com/fr/definition/CTO-Directeur-technique&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;ici&lt;/a&gt;. Pour citer cette source, les principales responsabilit&#233;s du directeur technique sont les suivantes :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; &lt;strong&gt;Strat&#233;gie en mati&#232;re de technologie :&lt;/strong&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; Assurer une veille des tendances technologiques, sociales et scientifiques susceptibles d'influer sur les objectifs commerciaux de l'entreprise.&lt;/li&gt;&lt;li&gt; Identifier les opportunit&#233;s et risques pour l'entreprise.&lt;/li&gt;&lt;li&gt; Participer aux d&#233;cisions de la direction en mati&#232;re de gouvernance d'entreprise.&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt; &lt;strong&gt;Recherche et d&#233;veloppement :&lt;/strong&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; Rechercher et recommander les syst&#232;mes de gestion de contenu (CMS, Content Management System) les plus efficaces.&lt;/li&gt;&lt;li&gt; Tenir &#224; jour des informations relatives aux normes technologiques et &#224; la r&#233;glementation en mati&#232;re de conformit&#233;.&lt;/li&gt;&lt;li&gt; Diriger la recherche et le d&#233;veloppement sur les technologies, g&#233;rer les actifs informatiques et le chiffre d'affaires associ&#233;.&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt; &lt;strong&gt;Sensibilisation :&lt;/strong&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; Communiquer la strat&#233;gie technologique de l'entreprise aux partenaires, dirigeants, investisseurs et employ&#233;s.&lt;/li&gt;&lt;li&gt; Participer aux actions de recrutement, de fid&#233;lisation, d'acquisition et de vente de l'entreprise. B&#226;tir des relations avec les fournisseurs, les communaut&#233;s et les clients.&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;L'avantage d'un CTO freelance est d'&#234;tre appel&#233; au moment o&#249; l'entreprise en aura le plus besoin dans son d&#233;veloppement. Tout cela li&#233; par un contrat de prestation sans faire parti des effectifs imm&#233;diat de l'entreprise.&lt;/p&gt;
&lt;p&gt;Je d&#233;velopperai cet aspect dans un prochain article. Le pr&#233;sent article &#233;tant surtout pour vous pr&#233;venir de nombreux changements et d'une mise en coh&#233;rence de ma vision d'aujourd'hui de ma nouvelle aventure ! Soyez attentif ! ;-)&lt;/p&gt;&lt;/div&gt;
		
		</content:encoded>


		

	</item>
<item xml:lang="fr">
		<title>La domotique et moi, 2&#232;me partie</title>
		<link>https://www.preprod.teddypayet.com/La-domotique-et-moi-2eme-partie</link>
		<guid isPermaLink="true">https://www.preprod.teddypayet.com/La-domotique-et-moi-2eme-partie</guid>
		<dc:date>2020-04-29T07:00:00Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>Teddy Payet</dc:creator>


		<dc:subject>Notes de d&#233;veloppement</dc:subject>
		<dc:subject>Domotique</dc:subject>

		<description>
&lt;p&gt;Alors, avez-vous pu lire la 1&#232;re partie ? Si cela n'est pas fait, je vous invite &#224; le lire avant d'entamer la lecture du pr&#233;sent article. C'est fait ? Parfait. &lt;br class='autobr' /&gt;
Je vais continuer de vous exposer simplement et concr&#232;tement ma vision de la domotique, ce qui m'y int&#233;resse. Nous allons voir les points suivants : L'accessibilit&#233;, l'interface homme/machine Le contr&#244;le et l'automatisation L'open source &lt;br class='autobr' /&gt; L'accessibilit&#233;, l'interface homme/machine &lt;br class='autobr' /&gt;
De part mon exp&#233;rience professionnelle et au (&#8230;)&lt;/p&gt;


-
&lt;a href="https://www.preprod.teddypayet.com/Blog" rel="directory"&gt;Blog&lt;/a&gt;

/ 
&lt;a href="https://www.preprod.teddypayet.com/Notes-de-developpement" rel="tag"&gt;Notes de d&#233;veloppement&lt;/a&gt;, 
&lt;a href="https://www.preprod.teddypayet.com/Domotique" rel="tag"&gt;Domotique&lt;/a&gt;

		</description>


 <content:encoded>&lt;img src='https://www.preprod.teddypayet.com/local/cache-vignettes/L150xH100/arton159-f65f3.jpg?1724416526' class='spip_logo spip_logo_right' width='150' height='100' alt=&#034;&#034; /&gt;
		&lt;div class='rss_chapo'&gt;&lt;p&gt;Alors, avez-vous pu lire la &lt;a href='https://www.preprod.teddypayet.com/MagicMirror&#178;-planification-des-taches' class=&#034;spip_in&#034;&gt;1&#232;re partie&lt;/a&gt; ? Si cela n'est pas fait, je vous invite &#224; le lire avant d'entamer la lecture du pr&#233;sent article. C'est fait ? Parfait.&lt;/p&gt;
&lt;p&gt;Je vais continuer de vous exposer simplement et concr&#232;tement ma vision de la domotique, ce qui m'y int&#233;resse. Nous allons voir les points suivants :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; L'accessibilit&#233;, l'interface homme/machine&lt;/li&gt;&lt;li&gt; Le contr&#244;le et l'automatisation&lt;/li&gt;&lt;li&gt; L'open source&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;
		&lt;div class='rss_texte'&gt;&lt;h2 class=&#034;spip&#034;&gt;L'accessibilit&#233;, l'interface homme/machine&lt;/h2&gt;
&lt;p&gt;De part mon exp&#233;rience professionnelle et au fil de mes rencontres, j'ai acquis la conviction que &lt;strong&gt;l'utilisateur doit pouvoir prendre la main sur la machine&lt;/strong&gt; (Skynet ?). De ce fait, si je ne peux contr&#244;ler un produit manuellement sans passer par internet ou autre, alors c'est une mauvaise int&#233;gration du produit.&lt;/p&gt;
&lt;p&gt;Il en va de m&#234;me pour les solutions logicielles accompagnant ces produits qui doivent &#234;tre simples de prise en main. En effet, par exemple, ma femme doit &lt;strong&gt;pouvoir configurer/d&#233;sactiver une alarme sans devoir toucher &#224; une seule ligne de codes.&lt;/strong&gt; De m&#234;me, mes enfants doivent pouvoir commander une lumi&#232;re sans difficult&#233; particuli&#232;re.&lt;/p&gt;
&lt;p&gt;Un second volet de l'accessibilit&#233; est le code source de ce que j'utilise pour contr&#244;ler mes appareils connect&#233;s. J'utilise des produits de diff&#233;rentes marques, mais &lt;strong&gt;ils doivent pouvoir communiquer entre eux. Si une solution open source existe, j'irai vers cette solution.&lt;/strong&gt; Mais si une solution payante et abordable fait la m&#234;me chose en moins compliqu&#233;e et plus ergonomique, je testerai cette solution. &lt;strong&gt;Si elle s'av&#232;re fiable, je prendrais cette solution payante.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Encore une fois, quelque soit la solution, je dois pouvoir interagir avec elle depuis ma centrale, ma &#8220;box&#8221; domotique.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Le contr&#244;le et l'automatisation&lt;/h2&gt;
&lt;p&gt;Le nerf de la guerre ! &lt;strong&gt;Pouvoir contr&#244;ler et automatiser est essentiel dans la domotique.&lt;/strong&gt; Ici, ma philosophie de d&#233;veloppeur prend les devants : &lt;strong&gt;si je fais une action plus de 2 fois, alors c'est que je peux l'automatiser ou la simplifier.&lt;/strong&gt; Si je ne sais pas le faire, c'est que je n'ai pas la connaissance pour le moment de le faire.&lt;/p&gt;
&lt;p&gt;Gr&#226;ce &#224; cet &#233;tat d'esprit, en outre de pouvoir contr&#244;ler par la voix les lumi&#232;res, je r&#233;fl&#233;chis syst&#233;matiquement &#224; comment simplifier notre vie au quotidien.&lt;/p&gt;
&lt;p&gt;Tous les jours, &#224; 00h25, le mode nuit s'active &#224; la maison (extinction de toutes les lumi&#232;res, volume des GHM et d'Alexa &#224; 10%). A 6h30, le mode jour se met en place (volume des m&#233;dias players &#224; 60%). Ceux sont des actions tr&#232;s simples. Une autre automatisation est d'allumer la lumi&#232;re de la pi&#232;ce de vie si le soleil s'est couch&#233; et qu'il y a du monde &#224; la maison.&lt;/p&gt;
&lt;p&gt;Je pourrais automatiser encore des &#233;l&#233;ments dans l'appartement mais il me faut quelques capteurs de plus pour y arriver. &lt;strong&gt;Chaque chose en son temps.&lt;/strong&gt;&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Open source&lt;/h2&gt;
&lt;p&gt;Comme je l'ai d&#233;j&#224; abord&#233; pr&#233;c&#233;demment, &lt;strong&gt;je pr&#233;f&#232;re des solutions open source. &lt;/strong&gt; Malheureusement, ce n'est pas toujours possible, surtout dans un pays francophone. En effet, si je d&#233;sire avoir un contr&#244;le par la voix des mes produits, il existe pl&#233;thore de solutions open source d'assistants personnels virtuels (Mycroft, Kalliope, Stephanie, Open Assistant, Jasper, Jarvis, etc.) Si &lt;strong&gt;ces solutions ont le m&#233;rite d'exister, les voix sont anglaises.&lt;/strong&gt; Je ne suis pas contre, mais tout le monde n'est pas bilingue &#224; la maison. &lt;strong&gt;Si des solutions avec des voix fran&#231;aises existent, elles sont payantes&lt;/strong&gt;, avec licence.&lt;/p&gt;
&lt;p&gt;Ceci est un point important notamment pour mon choix de Google Home Mini. Google est tr&#232;s en avance sur le contr&#244;le par la voix dans plusieurs langues. De plus, Google a mis &#224; disposition &lt;strong&gt;des API qui permettent des interactions avec ses appareils.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Toutefois les Google Home Mini ne seront chez moi &lt;strong&gt;qu'une interface vers ma domotisation.&lt;/strong&gt; J'ai fait des recherches sur internet de solution de &#8220;syst&#232;me domotique&#8221; :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; OpenHab&lt;/li&gt;&lt;li&gt; Home Assistant&lt;/li&gt;&lt;li&gt; Jeedom (Cocorico ! Une solution fran&#231;aise)&lt;/li&gt;&lt;li&gt; Domoticz&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Ceux sont les noms que j'entendais le plus parler sur la toile. Mon choix pour ces 4 solutions est bas&#233; sur &lt;strong&gt;plusieurs crit&#232;res :&lt;/strong&gt;&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; Rapide &#224; prendre en main ;&lt;/li&gt;&lt;li&gt; Compatible Raspberry Pi 3 ;&lt;/li&gt;&lt;li&gt; Flexible ;&lt;/li&gt;&lt;li&gt; &lt;strong&gt;Communaut&#233; importante et r&#233;active ;&lt;/strong&gt;&lt;/li&gt;&lt;li&gt; Bien document&#233; ;&lt;/li&gt;&lt;li&gt; Pas de licences &#224; payer (ben oui, on est en open source l&#224;)&lt;/li&gt;&lt;li&gt; &lt;strong&gt;Un maximum de compatibilit&#233;&lt;/strong&gt; avec des produits/API ;&lt;/li&gt;&lt;li&gt; &lt;strong&gt;L'esth&#233;tique de l'interface.&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;La d&#233;cision finale s'est port&#233;e sur Home assistant.&lt;/strong&gt; Il est compatible avec beaucoup d'outils que j'utilise d&#233;j&#224;. Ce qui a fait pencher la balance est &#233;galement un des Youtubers que je suis : &lt;a href=&#034;https://www.youtube.com/channel/UC7G4tLa4Kt6A9e3hJ-HO8ng&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;DrZzs&lt;/a&gt;. Son discours dans les vid&#233;os de sa cha&#238;ne m'a conquis. De plus, &lt;strong&gt;Home Assistant a le vent en poupe en France.&lt;/strong&gt; Je ne m'&#233;terniserai pas plus sur ce choix car cela n'est pas le but du pr&#233;sent article. Mais une s&#233;rie d'articles appara&#238;tra prochainement sur le sujet.&lt;/p&gt;
&lt;p&gt;Quoiqu'il en soit, j'ai install&#233; Home Assistant sur mon Raspberry Pi 3+ sur une carte MiniSD de 32Go gr&#226;ce &#224; Hass.io. Apr&#232;s quelques configurations,&lt;strong&gt; il n'y a que Home Assistant&lt;/strong&gt; (Hass.io ou HA pour les intimes) &lt;strong&gt;qui sera connect&#233; &#224; des solutions propri&#233;taires telles que Google&lt;/strong&gt; (cf. Google Assistant). J'ai ajout&#233; &#224; HA une cl&#233; USB Conbee 2 qui me permet de contr&#244;ler des produits compatible avec le protocole Zigbee. Comme Google Assistant est connect&#233; &#224; mon compte Hass.io, il ne verra que du feu quelque soit le protocole que j'utiliserai sur HA. Magique. Un seul point d'entr&#233;e.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;Voici ma vision de la domotique ou du moins ce qui m'int&#233;resse dans la domotique. Je n'ai pas abord&#233; tous les points de la domotique tels que la vid&#233;o-surveillance (cam&#233;ras) ou la s&#233;curit&#233; (les serrures connect&#233;es), j'en parlerai peut-&#234;tre plus tard. Tout le monde n'a pas la m&#234;me vision de la domotique ni les m&#234;me centres d'int&#233;r&#234;ts. Mon &#233;pouse n'aime pas &#234;tre envahie par les &#8220;robots&#8221; (encore toi Skynet ?), elle veut pouvoir d&#233;cider par elle-m&#234;me de ce qu'elle d&#233;sire faire (et elle a raison). Moi, j'aimerai aider mes enfants &#224; &#234;tre plus autonomes et &#233;galement pouvoir avoir un oeil protecteur sur eux (ils ont 5, 10 et 13 ans). A cela, j'aimerai me faciliter la vie (flemmard un d&#233;veloppeur ? &#8220;C'est pas faux&#8221;).&lt;/p&gt;
&lt;p&gt;Au fil du temps et de mes installations, &lt;strong&gt;je voudrais rendre plus discret la domotique et indispensable.&lt;/strong&gt;&lt;/p&gt;&lt;/div&gt;
		
		</content:encoded>


		

	</item>



</channel>

</rss>
