Transfert SMS vers Email
Schéma de fonctionnement

Information Projet

  • Catégorie: Automatisation & Mobile
  • Technologies: Android, Tasker, N8N, SMTP
  • Date: MAI 2025
  • Difficulté: Intermédiaire
  • Durée: 3-4 heures hors installation de N8N

Transfert SMS & Notifications : Solution complète pour expatriés

Introduction

La demande initiale était de router les SMS reçus ainsi que les notifications sur une adresse mail du client qui se trouvait à l'étranger. La difficulté était de conserver un abonnement économique sur un téléphone en France et d'automatiser le transfert de SMS, ainsi que de forcer la mise en répondeur avec indication d'envoi de SMS. Cette solution a permis a mon client de garder son numéro de téléphone actif et de pouvoir consulter les SMS et les notifications (notamment pour la validation de connexion à des comptes via le 2FA SMS).

Prérequis

  • Abonnement SMS (idéalement Free à 2€)
  • Téléphone Android avec l'application Tasker (licence payante)
  • Serveur N8N (pour automatiser le traitement des SMS)
  • Adresse Mail pour recevoir les notifications
  • Lieu sécurisé en France pour brancher le téléphone

Guide Étape par Étape

1. Migration vers Free Mobile

Première étape cruciale pour optimiser les coûts :

  • Souscrire au forfait Free à 2€
  • Demander la portabilité de votre numéro
  • Attendre la confirmation de la migration (généralement sous 3 jours ouvrés)

2. Configuration de la line Free

Configurez votre ligne pour indiquer aux appellants d'envoyer un SMS :

  • Connectez-vous à votre espace Free Mobile
  • Cliquez sur "Mes services"
  • Activez l'option "Abonné absent"
Option Abonné absent Free Mobile

3. Installation et configuration de Tasker

Configurez Tasker pour intercepter les SMS et notifications :


    
                  Profil: MMS
    	Evénement: SMS reçu [ Type:Tous Expéditeur:* Contenu:* Carte SIM:* MMS Body:* ]

    Entrée Tâche: MMS N8N
  
    A1: Requête HTTP [
         Méthode: Publier
         URL: http://192.168.0.216:5678/webhook/b982946e-34fc-450c-9f13-36086ef5068c
         Corps: {
           "type": "MMS",
           "statut": "RECU",
           "expediteur": "%evtprm2",
           "contenuMMS": "%evtprm5",
         }
         Délai (Secondes): 30
         Structure Output (JSON, etc): Activé ]
    
    
    Profil: NOTIFICATION
    	Evénement: Notification [ Application propriétaire:* Titre:* Texte:* Sous texte:* Messages:* Autre texte:* Cat:* Nouveau uniquement:Désactivé ]
    
    
    
    Entrée Tâche: Notification N8N
    
    A1: Requête HTTP [
         Méthode: Publier
         URL: http://192.168.0.216:5678/webhook/b982946e-34fc-450c-9f13-36086ef5068c
         Corps: {
           "type": "NOTIFICATION",
           "statut": "RECU",
           "application": "%evtprm1",
           "expediteur": "%evtprm2",
           "texte": "%evtprm3,%evtprm4,%evtprm5,%evtprm6,%evtprm()"
         }
         Délai (Secondes): 30
         Structure Output (JSON, etc): Activé ]
    
    
    Profil: SMS
    	Evénement: SMS reçu [ Type:Tous Expéditeur:* Contenu:* Carte SIM:* MMS Body:* ]
    
    
    
    Entrée Tâche: SMS N8N
    
    A1: Requête HTTP [
         Méthode: Publier
         URL: http://192.168.0.216:5678/webhook/b982946e-34fc-450c-9f13-36086ef5068c
         Corps: {
           "type": "SMS",
           "statut": "RECU",
           "expediteur": "%evtprm2",
           "contenuSMS": "%evtprm3,%evtprm5"
         }
         Délai (Secondes): 30
         Structure Output (JSON, etc): Activé ]
    
    

    
    
                  

4. Configuration de N8N

Créez un workflow N8N pour traiter et transférer les données :

n8n workflow

// Webhook Node
{
  "name": "SMS TO EMAIL",
  "nodes": [
    {
      "parameters": {
        "httpMethod": "POST",
        "path": "b982946e-34fc-450c-9f13-36086ef5068c",
        "options": {}
      },
      "type": "n8n-nodes-base.webhook",
      "typeVersion": 2,
      "position": [
        -780,
        -120
      ],
      "id": "744a0c10-c0a1-4eb1-9660-08d122707dc4",
      "name": "Webhook",
      "webhookId": "b982946e-34fc-450c-9f13-36086ef5068c"
    },
    {
      "parameters": {
        "rules": {
          "values": [
            {
              "conditions": {
                "options": {
                  "caseSensitive": true,
                  "leftValue": "",
                  "typeValidation": "strict",
                  "version": 2
                },
                "conditions": [
                  {
                    "leftValue": "={{ $json.body.type }}",
                    "rightValue": "SMS",
                    "operator": {
                      "type": "string",
                      "operation": "equals"
                    },
                    "id": "52cb48aa-9268-4be9-9d58-92704c7cc1b8"
                  }
                ],
                "combinator": "and"
              },
              "renameOutput": true,
              "outputKey": "SMS"
            },
            {
              "conditions": {
                "options": {
                  "caseSensitive": true,
                  "leftValue": "",
                  "typeValidation": "strict",
                  "version": 2
                },
                "conditions": [
                  {
                    "id": "679f2ae7-adf9-48fe-9483-ce5f7254e370",
                    "leftValue": "={{ $json.body.type }}",
                    "rightValue": "MMS",
                    "operator": {
                      "type": "string",
                      "operation": "equals",
                      "name": "filter.operator.equals"
                    }
                  }
                ],
                "combinator": "and"
              },
              "renameOutput": true,
              "outputKey": "MMS"
            },
            {
              "conditions": {
                "options": {
                  "caseSensitive": true,
                  "leftValue": "",
                  "typeValidation": "strict",
                  "version": 2
                },
                "conditions": [
                  {
                    "id": "7615c82b-e311-40f5-90c0-391f2f1f3d89",
                    "leftValue": "={{ $json.body.type }}",
                    "rightValue": "NOTIFICATION",
                    "operator": {
                      "type": "string",
                      "operation": "equals",
                      "name": "filter.operator.equals"
                    }
                  }
                ],
                "combinator": "and"
              },
              "renameOutput": true,
              "outputKey": "NOTIFICATION"
            }
          ]
        },
        "options": {}
      },
      "type": "n8n-nodes-base.switch",
      "typeVersion": 3.2,
      "position": [
        -540,
        -120
      ],
      "id": "da74b743-530c-49cf-97ce-a20b7c0f97f4",
      "name": "Switch"
    },
    {
      "parameters": {
        "toRecipients": "votreadressemail",
        "subject": "={{ $('Webhook').item.json.body.type }} {{ $('Webhook').item.json.body.statut }} de {{ $('Webhook').item.json.body.expediteur }}",
        "bodyContent": "={{ $json.body.contenuSMS }}",
        "additionalFields": {}
      },
      "type": "n8n-nodes-base.microsoftOutlook",
      "typeVersion": 2,
      "position": [
        -140,
        -380
      ],
      "id": "db213617-3285-4fea-b3fa-85346feb7749",
      "name": "Microsoft Outlook",
      "webhookId": "d7177ade-de56-4b15-af6a-e0aad179ed1e",
      "credentials": {
        "microsoftOutlookOAuth2Api": {
          "id": "Ae4OTa9O00brITWS",
          "name": "Microsoft Outlook account"
        }
      }
    },
    {
      "parameters": {
        "toRecipients": "votreadressemail",
        "subject": "={{ $('Webhook').item.json.body.type }} {{ $('Webhook').item.json.body.statut }} de {{ $('Webhook').item.json.body.expediteur }}",
        "bodyContent": "={{ $json.body.texte }}",
        "additionalFields": {}
      },
      "type": "n8n-nodes-base.microsoftOutlook",
      "typeVersion": 2,
      "position": [
        -140,
        40
      ],
      "id": "331b23dc-7e9f-44b7-a488-e3535c56d7a1",
      "name": "Microsoft Outlook1",
      "webhookId": "d7177ade-de56-4b15-af6a-e0aad179ed1e",
      "credentials": {
        "microsoftOutlookOAuth2Api": {
          "id": "Ae4OTa9O00brITWS",
          "name": "Microsoft Outlook account"
        }
      }
    },
    {
      "parameters": {
        "toRecipients": "votreadressemail",
        "subject": "={{ $('Webhook').item.json.body.type }} {{ $('Webhook').item.json.body.statut }} de {{ $('Webhook').item.json.body.expediteur }}",
        "bodyContent": "={{ $json.body.contenuMMS }}",
        "additionalFields": {}
      },
      "type": "n8n-nodes-base.microsoftOutlook",
      "typeVersion": 2,
      "position": [
        -140,
        -160
      ],
      "id": "6a0a8ef3-ea30-4c47-9313-a1fdbf07b10f",
      "name": "Microsoft Outlook2",
      "webhookId": "d7177ade-de56-4b15-af6a-e0aad179ed1e",
      "credentials": {
        "microsoftOutlookOAuth2Api": {
          "id": "Ae4OTa9O00brITWS",
          "name": "Microsoft Outlook account"
        }
      }
    }
  ],
  "pinData": {},
  "connections": {
    "Webhook": {
      "main": [
        [
          {
            "node": "Switch",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Switch": {
      "main": [
        [
          {
            "node": "Microsoft Outlook",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Microsoft Outlook2",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Microsoft Outlook1",
            "type": "main",
            "index": 0,
          }
        ]
      ]
    }
  },
  "active": true,
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "c2364732-90b7-445e-9d62-ec1b45527bac",
  "meta": {
    "templateCredsSetupCompleted": true,
    "instanceId": "c73d1d9a07d0b80f4876e53e06a956273023a2a493c6b8a2dff03fd53807173e"
  },
  "id": "Zkcgw9gSQK46Hs6i",
  "tags": []
}
                  

5. Installation physique

Mise en place du dispositif :

  • Branchez le téléphone sur une alimentation stable
  • Connectez-le à un réseau WiFi fiable
  • Désactivez les mises à jour automatiques

Notes de Sécurité

  • Sécurisez l'endpoint N8N avec une authentification
  • Utilisez HTTPS pour toutes les communications
  • Chiffrez les données sensibles dans les configurations
  • Limitez les permissions de Tasker au strict nécessaire
  • Surveillez régulièrement les logs pour détecter les anomalies

Dépannage

  • Tasker ne répond pas : Vérifiez les permissions et l'optimisation de la batterie
  • Messages manquants : Contrôlez la connexion WiFi et les logs N8N
  • Notifications non transmises : Vérifiez les autorisations d'accès aux notifications

Conclusion

Cette solution permet de :

  • Maintenir un numéro français actif à moindre coût
  • Recevoir tous les SMS et notifications importantes par email
  • Gérer efficacement les codes 2FA et validations de compte
  • Automatiser complètement le processus de communication

Pensez à tester exhaustivement le système avant de partir à l'étranger et prévoyez une personne de confiance en France pour les interventions physiques si nécessaire.

Bonus : Contrôle à Distance du Téléphone

Si vous avez la possibilité d'accéder à distance à un ordinateur et y faire connecté le téléphone en France (par exemple via TeamViewer), vous pouvez utiliser scrcpy, un logiciel open source gratuit qui permet de contrôler le téléphone Android via USB.

Avantages de cette solution :

  • Contrôle total du téléphone à distance
  • Possibilité de résoudre des problèmes en temps réel
  • Configuration et maintenance facilitées
  • Aucun coût supplémentaire (logiciel gratuit)

Pour mettre en place cette solution complémentaire :

  1. Installez TeamViewer (ou équivalent) sur l'ordinateur en France
  2. Installez scrcpy sur le même ordinateur
  3. Activez le mode développeur et le débogage USB sur le téléphone Android
  4. Connectez-vous à distance via TeamViewer et utilisez scrcpy pour contrôler le téléphone

Besoin d'une mise en œuvre professionnelle ?

Vous souhaitez bénéficier de cette solution sans avoir à gérer l'aspect technique ? Notre équipe peut prendre en charge l'intégralité du projet pour vous.

  • Installation et configuration complète du système
  • Personnalisation de la solution
  • Support technique dédié
  • Maintenance et surveillance continue
  • Solution personnalisée selon vos besoins
Demander un devis personnalisé