Contrôle à distance

Le contrôle à distance vous permet d'envoyer un court SMS depuis un autre téléphone vers le vôtre, et de demander à SmsForwarder d'agir à votre place — répondre à un SMS pour vous, activer ou désactiver le transfert, vérifier l'état de l'application, vérifier que le téléphone est toujours en ligne, re-synchroniser l'état de l'abonnement avec Google Play, ou (avec un abonnement Advanced) donner une instruction en langage naturel.

Seuls les numéros que vous ajoutez explicitement à la liste autorisée peuvent envoyer ces commandes. Il n'y a pas de mot de passe partagé — le numéro de l'expéditeur fait office d'identifiant.

Avant de commencer

  1. Ouvrez Contrôle à distance dans les paramètres de l'application.
  2. Activez l'interrupteur principal Contrôle à distance.
  3. Ajoutez au moins un numéro autorisé. Utilisez le format international complet (par exemple +33612345678).
  4. Choisissez comment recevoir les résultats — voir Réception des réponses plus bas.
  5. Vérifiez que l'autorisation Envoyer des SMS est accordée si vous comptez utiliser #REPLY ou recevoir les réponses par SMS.

À quoi ressemble une commande

Chaque commande est un SMS classique envoyé depuis un numéro autorisé vers votre téléphone. La première ligne non vide est toujours le mot-clé de la commande (commençant par #). Pour les commandes nécessitant des informations supplémentaires, chaque valeur occupe sa propre ligne.

La commande elle-même n'est pas retransmise comme un SMS ordinaire — l'application la reconnaît et la consomme.

#REPLY — Envoyer une réponse SMS pour vous

À utiliser quand vous voulez que votre téléphone envoie un SMS à quelqu'un alors que vous ne l'avez pas en main.

Format :

#REPLY
<numéro du destinataire>
<corps du message>

Avec indication de SIM (facultatif, pour les téléphones double SIM — fixe quelle SIM envoie la réponse) :

#REPLY
#<numéro de votre SIM>
<numéro du destinataire>
<corps du message>

La ligne SIM commence par # et est comparée sur les 8 derniers chiffres. Omettez-la sur les téléphones mono-SIM ou pour utiliser la SIM par défaut.

Exemples :

#REPLY
+33612345678
J'arrive, dans 10 minutes.
#REPLY
#15557654321
+14155550123
Envoie celui-ci avec la deuxième SIM.

Remarques :

  • Le destinataire voit la réponse provenant du numéro de votre téléphone, et non de celui de l'expéditeur initial.
  • Nécessite l'autorisation Envoyer des SMS. Si elle est manquante ou révoquée, la commande ne peut pas s'exécuter.
  • Le corps de la réponse peut tenir sur plusieurs lignes.

#CTRL — Activer ou désactiver règles, canaux ou interrupteurs principaux

À utiliser pour basculer une règle de transfert, un canal d'envoi ou un interrupteur principal sans toucher au téléphone.

Format :

#CTRL
<CIBLE>
<NOM ou PORTÉE>
<ON ou OFF>
  • CIBLE est RULE, CHANNEL ou FORWARDING (insensible à la casse).
  • NOM ou PORTÉE dépend de la cible :
    • Pour RULE — le nom exact de la règle tel qu'il apparaît dans l'application (sensible à la casse, doit être unique).
    • Pour CHANNEL — le nom exact du canal tel qu'il apparaît dans l'application (sensible à la casse, doit être unique).
    • Pour FORWARDING — l'une des valeurs SMS, CALL, NOTIFICATION (ou NOTIFY), ou ALL.
  • ON / OFF accepte aussi 1 / 0, TRUE / FALSE, ou YES / NO.

Exemples :

Activer une règle particulière :

#CTRL
RULE
Alerte salaire
ON

Désactiver l'interrupteur principal du transfert SMS :

#CTRL
FORWARDING
SMS
OFF

Désactiver un canal d'envoi :

#CTRL
CHANNEL
Mon Telegram
OFF

Tout désactiver d'un coup (SMS, appels et notifications) :

#CTRL
FORWARDING
ALL
OFF

Remarques :

  • Cette commande fonctionne même quand le transfert SMS principal est désactivé — vous pouvez donc le réactiver à distance après l'avoir coupé.
  • Les noms de règles et de canaux doivent être uniques. Si deux règles partagent le même nom, la commande est rejetée pour éviter d'agir sur la mauvaise.
  • Les noms sont comparés exactement, casse et espaces compris.

#STATUS — Voir ce qui est actuellement actif

Requête en lecture seule. Retourne l'état des interrupteurs principaux et le nom de chaque règle et canal activé.

Format :

#STATUS

Exemple de réponse :

[Distant] État
Transfert · SMS on · Appel off · Notification off
Règles (2) : Alerte salaire, OTP
Canaux (1) : Mon Telegram

La réponse peut s'étaler sur plusieurs SMS selon le nombre de règles et de canaux. Votre opérateur facture chaque segment.

#PING — Vérifier le pouls du téléphone

Requête en lecture seule. Retourne un instantané de l'état actuel du téléphone — pratique quand vous voulez juste savoir qu'il est éveillé, en ligne, et qu'il n'est pas en panne de batterie.

Format :

#PING

Exemple de réponse :

[Distant] Pixel 7 · 2026-05-01 14:35
Batterie 73% · en charge
Économie d'énergie : off
Réseau : Wi-Fi · internet OK

Quand le téléphone est en données mobiles, la réponse indique aussi la génération réseau, l'opérateur, et (sous Android 10 et au-delà) un niveau de signal de 0 à 4 :

[Distant] OnePlus 9 · 2026-05-01 14:35
Batterie 45% · sur batterie
Économie d'énergie : on
Réseau : Mobile · internet OK
Mobile : 5G · Opérateur
Signal : 3/4

Remarques :

  • Sur les téléphones double SIM, le niveau de signal correspond à la SIM data, qui peut ne pas être celle qui a reçu la commande.
  • #PING s'exécute que le transfert principal soit activé ou non.

#HELP — Obtenir un lien vers cette référence

Requête en lecture seule. Retourne un lien vers cette référence de commandes en ligne. Pratique pour partager la documentation avec quelqu'un, ou si vous ne vous souvenez plus du format exact d'une commande et voulez le vérifier.

Format :

#HELP

Exemple de réponse :

[Distant] Référence des commandes : https://smsforward.zobubo.com/Remote-Control/

Aujourd'hui, #HELP renvoie la page anglaise par défaut, ou la version chinoise si l'application est en chinois. Les autres langues retombent encore sur la page anglaise — cette page couvre toutes les commandes. #HELP s'exécute que le transfert principal soit activé ou non.

#REFRESH — Re-synchroniser l'état de l'abonnement avec Google Play

Requête en lecture seule. Demande au téléphone d'interroger Google Play immédiatement à propos de l'abonnement actif lié au compte Google de cet appareil, et de réécrire l'état local avec ce que renvoie Play.

À utiliser quand vous vous êtes ré-abonné depuis un autre téléphone (ou venez d'effectuer un achat) et voulez que ce téléphone récupère le nouveau droit immédiatement, sans attendre la vérification quotidienne en arrière-plan.

Format :

#REFRESH

Exemples de réponses :

[Distant] Abonnement actualisé : abonnement mensuel actif
[Distant] Abonnement actualisé : abonnement annuel actif
[Distant] Actualisation terminée : aucun abonnement actif sur ce compte Google
[Distant] Échec de l'actualisation : impossible de joindre Google Play. Vérifiez le réseau et réessayez.

Remarques :

  • Le téléphone a besoin d'un accès réseau et d'une connexion Google Play opérationnelle. Sans cela, la commande signale un échec et l'état local de l'abonnement reste inchangé.
  • La requête utilise le compte Google actuellement connecté sur l'appareil. Vérifiez que c'est bien celui qui détient l'abonnement.
  • #REFRESH s'exécute même si l'abonnement local a expiré — c'est précisément le scénario de récupération pour lequel il a été conçu. Il s'exécute aussi indépendamment de l'état du transfert principal.
  • L'action est idempotente : envoyer #REFRESH plusieurs fois n'achète ni ne résilie rien ; cela se contente de relire ce que Google Play sait déjà.

#AI — Envoyer une instruction en langage naturel

À utiliser quand vous voulez donner au téléphone une instruction en langage courant, plutôt que d'écrire une commande structurée. SmsForwarder transmet votre message au fournisseur d'IA dans le cloud que vous avez configuré, lui demande de la reformuler en l'une des commandes existantes, puis exécute cette commande — mais uniquement si le résultat correspond toujours à l'un des mots-clés autorisés.

Format :

#AI
<votre instruction dans n'importe quelle langue>

Exemples :

#AI
Réponds à +33612345678 que j'arrive dans 10 minutes
#AI
Coupe tous les transferts pour l'instant
#AI
Quelle est la batterie et le signal du téléphone en ce moment ?

Prérequis :

  • Un abonnement Advanced actif sur le compte Google connecté à l'appareil.
  • L'interrupteur principal IA est activé et un canal IA cloud est configuré dans Paramètres → IA — soit le cloud intégré (par défaut pour les abonnés Advanced, sans clé API à fournir), soit un fournisseur BYOK (Gemini, Claude ou OpenAI) avec une clé API fonctionnelle.
  • L'interrupteur Commande à distance en langage naturel est activé dans Contrôle à distance.

Si l'un des prérequis manque, la commande est rejetée avec une raison courte.

Notes :

  • #AI s'exécute toujours dans le cloud. Le traitement IA de SmsForwarder est exclusivement cloud par conception.
  • Le texte produit par l'IA est vérifié face à la même liste blanche que #REPLY / #CTRL / #STATUS / #PING / #HELP / #REFRESH. Tout ce qui n'y figure pas est ignoré — #AI ne peut pas servir à exécuter de nouvelles commandes ni des commandes arbitraires.
  • La commande structurée traduite n'est pas renvoyée comme un nouveau SMS ; elle s'exécute exactement comme si vous aviez tapé la commande structurée vous-même. Le texte #AI d'origine et la commande traduite sont enregistrés ensemble dans le panneau de détails de l'historique de transfert à des fins d'audit.
  • Si le fournisseur cloud est injoignable ou si la réponse ne peut pas être interprétée comme une commande autorisée, le message de résultat l'indique et rien d'autre ne se produit.

Réception des réponses

Chaque commande produit un court message de résultat. Vous pouvez le recevoir par l'un ou l'autre des moyens suivants — ou les deux — configurables dans Contrôle à distance :

  • Réponse SMS à l'expéditeur. Le résultat est renvoyé sous forme de SMS classique au numéro qui a émis la commande. Nécessite l'autorisation Envoyer des SMS. Si vous la révoquez, cette option se désactive automatiquement.
  • Envoi vers les canaux de livraison. Le résultat est routé via un ou plusieurs canaux d'envoi déjà configurés (Telegram, e-mail, webhook, etc.). Jusqu'à dix canaux peuvent être sélectionnés. Les canaux désactivés ou non configurés sont ignorés.

Les deux options sont indépendantes. Vous pouvez n'en utiliser qu'une, les deux, ou aucune (auquel cas les commandes s'exécutent quand même, mais sans accusé de réception).

Erreurs courantes

Si une commande est mal formée, vous recevez un message du type :

[Distant] Commande rejetée : <motif>

Motifs typiques :

  • destinataire manquant#REPLY envoyé sans numéro de destination.
  • contenu de réponse manquant#REPLY envoyé sans corps de message.
  • cible manquante#CTRL n'a pas indiqué RULE, CHANNEL ou FORWARDING en deuxième ligne.
  • cible inconnue — la deuxième ligne de #CTRL n'était pas l'une des trois valeurs valides.
  • nom manquant#CTRL RULE ou #CTRL CHANNEL n'a pas indiqué de nom.
  • ON / OFF manquant — la ligne de bascule était vide.
  • valeur de bascule invalide — la ligne de bascule n'est pas une valeur reconnue.
  • portée invalide#CTRL FORWARDING a reçu autre chose que SMS, CALL, NOTIFICATION / NOTIFY ou ALL.
  • Aucune règle / canal « X » — le nom ne correspond à aucune règle ou aucun canal.
  • Plusieurs règles / canaux « X » — noms en double ; renommez-en un dans l'application d'abord.

À savoir

  • Les commandes provenant de numéros absents de la liste autorisée sont ignorées sans bruit.
  • La liste autorisée compare le numéro de l'expéditeur de manière exacte. Saisissez-le dans le format dans lequel votre opérateur le délivre (le format international avec + est le plus fiable).
  • Les SMS en forme de commande sont reconnus et consommés, ils n'apparaîtront donc pas dans l'historique en tant que SMS retransmis.
  • Certaines voies de réponse (comme la réponse par SMS) consomment votre quota d'SMS opérateur, comme tout autre message envoyé.

Si une commande ne se comporte pas comme prévu, consultez la page Support technique.