# Intégration de Free Mobile

**URL:** <https://community.gladysassistant.com/t/integration-de-free-mobile/8816>\
**Category:** Demandes livrées\
**Created:** [Avril 3, 2024, 4:19 UTC](https://community.gladysassistant.com/t/integration-de-free-mobile/8816 "2024-04-03T16:19:30Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![McFlyPartages](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/mcflypartages/32/15670_2.png) [@McFlyPartages](https://community.gladysassistant.com/u/McFlyPartages)\
**Post date:** [Avril 3, 2024, 4:19 UTC](https://community.gladysassistant.com/t/integration-de-free-mobile/8816/1 "2024-04-03T16:19:30Z")

</div>

**Feature description**

Suite a mon intervention dans ce sujet [Envoyer des SMS avec Gladys Plus](https://community.gladysassistant.com/t/envoyer-des-sms-avec-gladys-plus/8183) Je propose de pouvoir intégrer directement Free Mobile (a la façon Gladys, donc avec simplicité).

Je sais qu’actuellement, il est possible de le faire via Node Red ou via les appels HTTP.

A vos avis et votes

---

<div class="post-metadata">

**Author:** ![lmilcent](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/lmilcent/32/7023_2.png) [@lmilcent](https://community.gladysassistant.com/u/lmilcent)\
**Post date:** [Avril 4, 2024, 7:30 UTC](https://community.gladysassistant.com/t/integration-de-free-mobile/8816/2 "2024-04-04T07:30:04Z")

</div>

Très bonne idée ! 👍

---

<div class="post-metadata">

**Author:** ![Will\_71](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/will_71/32/9582_2.png) [@Will\_71](https://community.gladysassistant.com/u/Will_71)\
**Post date:** [Novembre 4, 2024, 9:10 UTC](https://community.gladysassistant.com/t/integration-de-free-mobile/8816/4 "2024-11-04T21:10:12Z")

</div>

Pour m’entraîner à coder, j’ai codé l’intégration SMS avec Free Mobile

![image](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/1/f/1fb473a372fcb857f8e46d1919668a2a43348104.png)

 ![image](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/b/c/bc50e1cd3d9601335d91de20dd604846199ac413.png)

Et l’ajout d’une nouvelle action Envoyer un sms dans les scènes  
 ![image](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/f/2/f2397de2e94393224c9609a89d9bad8124272647.png)

Chez moi c’est fonctionnel. Voici une image pour ceux qui utilisent Free Mobile et qui veulent tester:

```auto
willde71/gladys-test:free-mobile-sms

```

@pierre-gilles, voila la PR, dans l’attente de ton retour.

> <https://github.com/GladysAssistant/Gladys/pull/2157>
>
> \### Pull Request check-list
> 
> To ensure your Pull Request can be accepted as fa…st as possible, make sure to review and check all of these items:
> 
> \- \[x\] If your changes affects code, did your write the tests?
> \- \[x\] Are tests passing? (\`npm test\` on both front/server)
> \- \[x\] Is the linter passing? (\`npm run eslint\` on both front/server)
> \- \[x\] Did you run prettier? (\`npm run prettier\` on both front/server)
> \- \[x\] If you are adding a new features/services, did you run integration comparator? (\`npm run compare-translations\` on front)
> \- \[x\] Did you test this pull request in real life? With real devices? If this development is a big feature or a new service, we recommend that you provide a Docker image to the community (\[french forum\](https://community.gladysassistant.com/)/\[english forum\](https://en-community.gladysassistant.com/)) for testing before merging.
> \- \[\] If your changes modify the API (REST or Node.js), did you modify the API documentation? (Documentation is based on comments in code)
> \- \[\] If you are adding a new features/services which needs explanation, did you modify the user documentation? See \[the GitHub repo\](https://github.com/GladysAssistant/v4-website) and the \[website\](https://gladysassistant.com).
> \- \[\] Did you add fake requests data for the demo mode (\`front/src/config/demo.js\`) so that the demo website is working without a backend? (if needed) See \[https://demo.gladysassistant.com\](https://demo.gladysassistant.com).
> 
> NOTE: these things are not required to open a PR and can be done afterwards / while the PR is open.
> 
> \### Description of change
> 
> Add new integration to send SMS via the Free Mobile API

---

<div class="post-metadata">

**Author:** ![pierre-gilles](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/pierre-gilles/32/5886_2.png) [@pierre-gilles](https://community.gladysassistant.com/u/pierre-gilles)\
**Post date:** [Novembre 5, 2024, 8:00 UTC](https://community.gladysassistant.com/t/integration-de-free-mobile/8816/5 "2024-11-05T08:00:18Z")

</div>

Génial @Will_71 🙂 Je me suis permis de déplacer ton post ici vu que c’était plus en lien avec cette demande !

Je ne suis pas client free mobile donc je ne pourrais pas tester, preneur de testeurs déjà et ensuite je te ferais une review technique !

---

<div class="post-metadata">

**Author:** ![JeuFore](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/jeufore/32/7544_2.png) [@JeuFore](https://community.gladysassistant.com/u/JeuFore)\
**Post date:** [Novembre 5, 2024, 10:19 UTC](https://community.gladysassistant.com/t/integration-de-free-mobile/8816/6 "2024-11-05T10:19:44Z")

</div>

Bonjour à vous,

@_Will_71 Je viens de tester ton développement, c’est super !!  
J’ai pas eu de soucis dans l’utilisation, avec des scènes, en passant des variables ou non.

Beau travail 😊

La seule chose que je pourrais redire, c’est le champ «&nbsp;Clé d’identification au service&nbsp;» à mettre en type password je pense.

---

<div class="post-metadata">

**Author:** ![Will\_71](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/will_71/32/9582_2.png) [@Will\_71](https://community.gladysassistant.com/u/Will_71)\
**Post date:** [Novembre 5, 2024, 10:33 UTC](https://community.gladysassistant.com/t/integration-de-free-mobile/8816/7 "2024-11-05T10:33:28Z")

</div>

Merci du retour.

Pour la clé je me suis basé sur les autres intégrations et elles ne sont pas du type password non plus.

Mais je peux le modifier

---

<div class="post-metadata">

**Author:** ![pierre-gilles](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/pierre-gilles/32/5886_2.png) [@pierre-gilles](https://community.gladysassistant.com/u/pierre-gilles)\
**Post date:** [Novembre 5, 2024, 5:04 UTC](https://community.gladysassistant.com/t/integration-de-free-mobile/8816/8 "2024-11-05T17:04:26Z")

</div>

Le seul souci de passer en champ «&nbsp;password&nbsp;» c’est que du coup ensuite les autocomplete viennent remplacer la data dedans automatiquement par ton mot de passe Gladys

Firefox est d’ailleurs le pire avec ça, il ne respecte pas le «&nbsp;autocomplete=off&nbsp;» et du coup il faut faire des astuces un peu sales pour l’empêcher de mettre le mot de passe partout ^^

Du coup oui c’est bien de mettre en password, mais si c’est mal fait ça créé plus de problèmes que ça en résout ^^

---

<div class="post-metadata">

**Author:** ![pierre-gilles](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/pierre-gilles/32/5886_2.png) [@pierre-gilles](https://community.gladysassistant.com/u/pierre-gilles)\
**Post date:** [Novembre 9, 2024, 8:35 UTC](https://community.gladysassistant.com/t/integration-de-free-mobile/8816/9 "2024-11-09T08:35:45Z")

</div>

@Will_71 Je sais pas si tu as vu mais les tests ne passent pas sur Github 🙂

---

<div class="post-metadata">

**Author:** ![Will\_71](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/will_71/32/9582_2.png) [@Will\_71](https://community.gladysassistant.com/u/Will_71)\
**Post date:** [Novembre 9, 2024, 8:42 UTC](https://community.gladysassistant.com/t/integration-de-free-mobile/8816/10 "2024-11-09T08:42:08Z")

</div>

Oui j’ai vu, j’ai pas encore compris pourquoi car en locale sur mon pc les tests passent

---

<div class="post-metadata">

**Author:** ![pierre-gilles](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/pierre-gilles/32/5886_2.png) [@pierre-gilles](https://community.gladysassistant.com/u/pierre-gilles)\
**Post date:** [Novembre 9, 2024, 9:15 UTC](https://community.gladysassistant.com/t/integration-de-free-mobile/8816/11 "2024-11-09T09:15:43Z")

</div>

En local tu fais tourner tous les tests ou juste les tests sur freemobile en .only ?

Edit: J’ai testé chez moi dans les deux cas, et ça passe bien sur ta PR :

![Screenshot 2024-11-09 at 10.16.35](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/c/5/c5f7eeae217fbda437c802ebae24867cde8868af.png)

Sauf que sur le CI tout est plus lent, donc c’est possible que côté CI la fonction send() resolve alors qu’en fait le call API n’est pas fini, à voir si le code est bien bon là dessus

---

<div class="post-metadata">

**Author:** ![Will\_71](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/will_71/32/9582_2.png) [@Will\_71](https://community.gladysassistant.com/u/Will_71)\
**Post date:** [Novembre 9, 2024, 2:04 UTC](https://community.gladysassistant.com/t/integration-de-free-mobile/8816/12 "2024-11-09T14:04:40Z")

</div>

Quand je suis en train de d’écrire les tests je fait en .only  
 ![image](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/a/6/a6ff46ad4aacddf8a350d6706908c0f3d6f708df.png)

Sinon je relance sans le .only quand j’ai fini.  
 ![image](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/6/5/6594eb5e3fda43797ef58130c8154590905e19b6.png)

Je regarderais dans le code dès que je peux.

---

<div class="post-metadata">

**Author:** ![pierre-gilles](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/pierre-gilles/32/5886_2.png) [@pierre-gilles](https://community.gladysassistant.com/u/pierre-gilles)\
**Post date:** [Novembre 11, 2024, 8:02 UTC](https://community.gladysassistant.com/t/integration-de-free-mobile/8816/13 "2024-11-11T08:02:29Z")

</div>

Ok tiens moi au courant, et n’hésite pas si tu as besoin d’aide

---

<div class="post-metadata">

**Author:** ![Will\_71](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/will_71/32/9582_2.png) [@Will\_71](https://community.gladysassistant.com/u/Will_71)\
**Post date:** [Novembre 11, 2024, 9:54 UTC](https://community.gladysassistant.com/t/integration-de-free-mobile/8816/14 "2024-11-11T21:54:56Z")

</div>

@pierre-gilles , j’ai besoin de ton aide car je ne comprends pas.  
J’ai apporté des corrections et j’ai toujours des erreurs et les tests serveur ne passent pas.

Mais cette fois-ci voilà ce que j’obtient directement sur GitHub:  
Les test de l’intégration OK  
 ![Capture d’écran du 2024-11-11 22-46-16](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/e/0/e03c16c84c159d1dc736e919d91f4793306ab6b4.png)

Le coverage est OK

 ![Capture d’écran du 2024-11-11 22-47-46](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/0/a/0a73fe2bde9e4a50331a2b5600902369828b67ec.png)

Mais il y a 10 erreurs lié à NetAtmo

 ![Capture d’écran du 2024-11-11 22-47-04](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/e/6/e6bf8795060e1d417b763574614f0b43a28f6144.png)

Il y a surement quelque chose mais la je ne voit pas. Si tu pouvais m’aiguiller. Merci d’avance.

---

<div class="post-metadata">

**Author:** ![pierre-gilles](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/pierre-gilles/32/5886_2.png) [@pierre-gilles](https://community.gladysassistant.com/u/pierre-gilles)\
**Post date:** [Novembre 12, 2024, 5:09 UTC](https://community.gladysassistant.com/t/integration-de-free-mobile/8816/15 "2024-11-12T17:09:13Z")

</div>

@Terdious déjà eu ces soucis avec l’intégration Netatmo ?

---

<div class="post-metadata">

**Author:** ![Will\_71](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/will_71/32/9582_2.png) [@Will\_71](https://community.gladysassistant.com/u/Will_71)\
**Post date:** [Novembre 13, 2024, 8:07 UTC](https://community.gladysassistant.com/t/integration-de-free-mobile/8816/16 "2024-11-13T20:07:11Z")

</div>

Je ne pense pas que cela provient de l’integration Netatmo car j’ai remarqué dans chaque erreur qu’il y a une ligne lié à mon fichier de test.

![image](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/6/e/6e6339a8163157198ce5f46a721ab200c32cb832.png)

---

<div class="post-metadata">

**Author:** ![Terdious](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/terdious/32/6316_2.png) [@Terdious](https://community.gladysassistant.com/u/Terdious)\
**Post date:** [Novembre 18, 2024, 8:40 UTC](https://community.gladysassistant.com/t/integration-de-free-mobile/8816/17 "2024-11-18T20:40:52Z")

</div>

Salutation à vous 2 !  
Alors non mais oui ^^ de souvenir j’avais eu des grosses galeres avec les reinitialisations et les delais écoulés dans les tests. Mais je ne sais plus si c’etait sur cette partie.  
Peut-être que @Will_71 en à le meme usage et que ca impact l’autre… ou c’est moi qui avait mal fait … j’avoue que comme ça je ne saurais dire.

N’hésitez pas à me dire si besoin, je prendrais le temps de remonter mon PC de dev si il y a un kwak de mon côté (pas encore terminé les travaux, mais ca avance ^^)

---

<div class="post-metadata">

**Author:** ![pierre-gilles](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/pierre-gilles/32/5886_2.png) [@pierre-gilles](https://community.gladysassistant.com/u/pierre-gilles)\
**Post date:** [Novembre 19, 2024, 6:52 UTC](https://community.gladysassistant.com/t/integration-de-free-mobile/8816/18 "2024-11-19T18:52:08Z")

</div>

Salut @Will_71, je peux regarder vendredi si tu veux 🙂

Est-ce que tu as pu résoudre ce souci depuis ?

---

<div class="post-metadata">

**Author:** ![Will\_71](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/will_71/32/9582_2.png) [@Will\_71](https://community.gladysassistant.com/u/Will_71)\
**Post date:** [Novembre 19, 2024, 9:01 UTC](https://community.gladysassistant.com/t/integration-de-free-mobile/8816/19 "2024-11-19T21:01:23Z")

</div>

Je veux bien que tu regardes et m’aiguille un peu.  
J’ai essayé de faire des choses mais je ne suis arrivé à résoudre le problème.  
Je ne suis pas encore à l’aise avec les tests alors j’ai surement un problème de réinitialisation quelque part.

---

<div class="post-metadata">

**Author:** ![pierre-gilles](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/pierre-gilles/32/5886_2.png) [@pierre-gilles](https://community.gladysassistant.com/u/pierre-gilles)\
**Post date:** [Novembre 22, 2024, 8:36 UTC](https://community.gladysassistant.com/t/integration-de-free-mobile/8816/20 "2024-11-22T08:36:47Z")

</div>

@Will_71 J’ai rebase ta branche, et j’ai testé en local, j’ai pas eu le souci, on va voir ce que ça donne sur le CI 🙂

Edit: Bon l’erreur est toujours là

Ok je pense savoir ce que c’est, les deux intégrations mettent en place le même stub et donc ça coince. Il faut créer une sandbox pour éviter que ça pollue d’autres tests :

Exemple:

```auto
const sinon = require('sinon');

let sandbox;

beforeEach(() => {
    sandbox = sinon.createSandbox();
});

afterEach(() => {
    sandbox.restore();
});

it('should test something', () => {
    const stub = sandbox.stub(SomeObject, 'someMethod');
    // Test code...
});

```

---

<div class="post-metadata">

**Author:** ![pierre-gilles](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/pierre-gilles/32/5886_2.png) [@pierre-gilles](https://community.gladysassistant.com/u/pierre-gilles)\
**Post date:** [Novembre 22, 2024, 8:57 UTC](https://community.gladysassistant.com/t/integration-de-free-mobile/8816/21 "2024-11-22T08:57:00Z")

</div>

@Will_71 c’est bon j’ai fixé ta PR 🙂

Est-ce que tu peux faire une PR sur la documentation ?

J’ai juste un mini commentaire sur la PR, il manque un placeholder: [add new integration Free Mobile SMS by William-De71 · Pull Request #2157 · GladysAssistant/Gladys · GitHub](https://github.com/GladysAssistant/Gladys/pull/2157#pullrequestreview-2453770561)

Ensuite ça sera bon pour moi pour que ça parte !

@Terdious est-ce que à l’occasion tu pourras corriger les tests Netatmo pour utiliser une sandbox ? ça évitera de casser d’autres tests dans d’autres PR à l’avenir 🙂

[Page suivante](https://community.gladysassistant.com/t/integration-de-free-mobile/8816.md?page=2)
