FR 2845856 A1 20040416 FR 0212632 A 20021010 La présente invention concerne un dispositif à faible cot permettant d'offrir des services aux utilisateurs de téléphones mobiles par réception et envoi de messages électroniques ainsi qu'un procédé de mise en oeuvre de ce dispositif. Ces dernières années, la téléphonie mobile a pris un tel essor que dans certains pays, plus d'un habitant sur deux est équipé d'un téléphone mobile. Les opérateurs tirent principalement leur revenus des communications téléphoniques vocales. Cependant une autre application a pris une grande ampleur: le SMS (" Short Message Service ") ou encore message court. Très prisé chez les jeunes, la transmission de tels messages ne cote pratiquement rien aux opérateurs qui 10 possèdent sur ce service des marges appréciables. De nouveaux services basés sur ce mode de communication ont vu le jour. Pour certains d'entre eux, l'utilisateur doit d'abord s'abonner afin de recevoir régulièrement des informations, comme par exemple la météo tous les matins. Pour d'autres, l'utilisateur doit faire une 15 demande par SMS afin de recevoir une réponse. En voici quelques exemples: * Demande d'information: utilisateur envoie un SMS contenant un mot clef à un numéro de téléphone spécial, et reçoit une information en échange, comme la météo ou les programmes de télévision de la soirée. * Quizz: l'utilisateur envoie un SMS contenant la réponse à une question à un numéro de 20 téléphone spécial et gagne un cadeau si celle-ci est correcte. * Tirage au sort: l'utilisateur envoie un SMS à un numéro de téléphone spécial pour participer à un tirage au sort et gagne un cadeau si son message est tiré au sort. * Téléchargement de sonneries, d'écrans de veille ou de fonds d'écran: l'utilisateur envoie un SMS contenant la référence d'une sonnerie, d'un écran de veille ou d'un fond d'écran 25 à un numéro de téléphone spécial. En retour la sonnerie, l'image ou l'animation est téléchargée sur son téléphone. * Ces applications peuvent être couplées: quizz avec tirage au sort pour les bonnes réponses, quizz avec gain d'un téléchargement, etc.... Cette liste n'est pas exhaustive. Depuis peu, certains opérateurs ont mis en place des numéros courts afin de pouvoir offrir des services par SMS surtaxés, (appelés également " SMS+ " ou " SMS Premium "), plus chers que les SMS standards, pour lesquels une partie des recettes est reversée aux fournisseurs de services. D'autres types de messages électroniques, améliorations des SMS, arrivent sur le marché: les EMS (" Enhanced Message Service ") et les MMS (" Multimedia Message Services "). Ceux-ci ajoutent un contenu multimédia (images, sons ou vidéos) aux SMS. Ces nouveaux messages laissent présager des applications inédites. -2 Traditionnellement, ces services sont réalisés en connectant un serveur appartenant à l'éditeur de services au centre serveur de messages (SMS-C, EMS-C, MMS-C,...) du réseau de téléphonie mobile de l'opérateur. La connexion doit être sécurisée afin d'éviter toute manoeuvre 5 frauduleuse et assurer une certaine qualité de service. C'est pourquoi certains opérateurs exigent que les éditeurs placent leurs serveurs dans un de leurs réseaux privés. D'autres opérateurs établissent des connexions sécurisées via Internet. La connexion au centre serveur de messages peut être directe ou indirecte par l'intermédiaire d'une passerelle jouant aussi le rôle de pare-feu. La mise en place de tels services n'est pas simple et n'est réservée qu'à un petit nombre: 10 les opérateurs ne veulent pas ouvrir leurs infrastructures à n'importe qui et préfèrent limiter le nombre de prétendants afin d'éviter une gestion et un support technique coteux. Les serveurs, sont généralement des ordinateurs puissants dont le cot et celui de leurs maintenances ne sont pas négligeables. De plus, les cots de raccordement sont élevés et supportés la plupart du temps par les éditeurs de services. Pour ces raisons ceux-ci sont invités à partager les infrastructures d'un " facilitateur " (ou " hébergeur ") permettant ainsi de répartir les cots qui restent cependant tout de même élevés. Le dispositif, selon l'invention permet de remédier à ces inconvénients. A cette fin, l'invention propose de remplacer avantageusement le serveur de l'éditeur de services et sa connexion au centre serveur de messages par un appareil mobile, éventuellement équipé d'une carte SIM proactive (" Subscriber Identity Module "), capable d'émettre et de recevoir 25 des messages courts sans fil via un réseau de téléphonie mobile auquel il est abonné et équipé d'un programme serveur chargé de réagir aux messages reçus, d'élaborer une réponse adaptée, et de retourner cette réponse à l'expéditeur de manière autonome et sans intervention humaine. Eventuellement, l'appareil mobile pourra être équipé d'un second programme permettant de paramétrer le programme serveur à distance, par interactions avec le clavier, ou par chargement 30 de fichiers par liaison filaire, infrarouge, réseau local sans fil, ou à partir d'une mémoire de masse. Il pourra également être équipé d'un troisième programme permettant récupérer certains calculs effectués par le programme serveur par affichage ou transmission de ces données. L'invention propose également un procédé de mise en oeuvre de ce dispositif par téléchargement de ces programmes sur un appareil mobile standard ou sur sa carte SIM. Ce dispositif ne nécessite aucune connexion supplémentaire au réseau de l'opérateur, car il est déjà implicitement connecté par un lien radio au centre serveur de messages et ses communications sont sécurisées par le réseau de téléphonie mobile. Comme nous allons le voir, il est très peu coteux et utilisable par un très grand nombre. -3 Selon une première caractéristique de l'invention, le dispositif contient un appareil mobile capable de recevoir et d'émettre des messages courts sans fil éventuellement équipé d'une carte SIM. En effet certaines normes de téléphonie mobile ne requièrent pas de carte SIM, dont un équivalent est inclus directement dans l'appareil. L'appareil mobile peut prendre plusieurs formes: * Téléphone mobile. * Assistant personnel ou ordinateur connecté à un modem adapté au réseau de téléphonie mobile. * Assistant personnel ou ordinateur connecté par câble, liaison infrarouge ou réseau local 10 sans fil à un autre appareil capable de jouer le rôle de modem pour communiquer sur le réseau de téléphonie mobile. Certains de ces appareils peuvent être à la fois branchés sur batterie et sur secteur, ils peuvent ainsi résister plusieurs heures à des pannes de courrant. 15 Par réseau local sans fil, on entend ici et par la suite, un réseau tel que (mais non exclusivement) Bluetooth ou 802.11. Les messages considérés ici et par la suite le sont au sens large: SMS, MMS, EMS... (liste non limitative). Selon une cette même caractéristique de l'invention, le dispositif comporte des mémoires volatiles et non volatiles, ainsi qu'un programme serveur appelé également tout simplement " serveur ". Ce programme, analyse à leur arrivée les messages électroniques reçus, puis élabore manière autonome (sans intervention humaine) une réponse adaptée qu'il expédie à l'émetteur du 25 premier message. Pour cela, il a donc accès aux contenus des messages et aux numéros de téléphone de leurs émetteurs. Il est capable de recevoir et d'envoyer des messages électroniques. Les messages de réponse peuvent-être de simples accusés de réception ou des informations spécifiques demandées. Le programme serveur peut également communiquer par tout moyen de communication offert par l'appareil mobile, comme l'envoi de télécopies ou de courriers 30 électroniques (" e-mail "), et attendre de recevoir des informations par ces mêmes moyens. Il peut également effectuer des calculs, lire et écrire dans les mémoires volatiles et non volatiles de l'appareil mobile, y compris les fichiers de la carte SIM (comme le répertoire téléphonique). Il peut également envoyer des commandes spécifiques à l'appareil mobile ou à sa carte SIM et en particulier demander à valider leurs codes PIN. Les mémoires non volatiles considérées ici peuvent être de type eeprom, mémoire flash, disque dur, disque optique inscriptible, disquettes ou tout autre mémoire de masse, y compris les fichiers de la carte SIM. (liste non limitative) Les mémoires volatiles considérées ici sont des mémoires de type RAM ou équivalent. Ces mémoires peuvent être situées dans l'appareil ou dans la carte SIM. -4 Ce programme serveur, peut résider directement dans l'appareil faisant office de modem. Il peut également se trouver dans un appareil qui lui est connecté. Avantageusement, il peut-être 5 également embarqué dans la carte SIM si celle-ci est proactive. En effet les cartes SIM dites " proactives " ou " phase 2+ ", peuvent être programmées afin d'interagir avec le téléphone, permettant, entre autres, de filtrer et d'établir des communications vocales ou par messages électroniques. Selon une seconde caractéristique de l'invention, l'appareil mobile peut comporter un clavier, un écran, ainsi qu'un programme de paramétrage du programme serveur inclus dans le dispositif. Il permet de configurer comportement du programme serveur de plusieurs façons: par entrée de données au clavier ou par réception d'un ou plusieurs messages électroniques émis par l'utilisateur ou tout protocole décrit précédemment pour le chargement du programme serveur. Si la 15 programmation se fait par réception de messages électroniques, ceux-ci doivent contenir un code d'authentification choisi au préalable par l'utilisateur (par exemple l'un des codes PIN de l'appareil mobile oude la carte SIM). Ce programme est donc capable de solliciter l'appareil mobile ou sa carte SIM pour valider leurs codes PIN. Le programme serveur peut-être l'interpréteur de programmes textuels ou binaires écrits 20 dans un langage de programmation particulier. Le paramétrage consiste alors à écrire un programme dans ce langage et à le conserver dans l'appareil mobile ou sa carte SIM. Le programme de paramétrage permet également de gérer l'ensemble des fichiers programmes, de les télécharger, de les supprimer ou d'en créer de nouveaux, en utilisant les 25 moyens d'affichage et d'interaction de l'appareil mobile. Il permet également de faire la vérification syntaxique des programmes textuels. Et éventuellement de les transformer en programmes binaires afin de gagner en compacité et en temps d'exécution. Ce langage de programmation contiens des commandes implicites ou explicites d'envoi et 30 de réception de messages électroniques. Il peut éventuellement permettre la reconnaissance de motifs, afin d'analyser les messages entrants. Il peut exécuter des calculs et conserver les résultats dans ses mémoires volatiles et non volatiles et accéder aux fichiers de la carte SIM ou de l'appareil mobile. Il peut également envoyer à l'appareil mobile et à sa carte SIM des commandes spécifiques afin d'en exploiter toutes les caractéristiques. 35 Ainsi le programme serveur est conçu de manière générique, pour répondre à un grand nombre de services. -5 Cependant, la mémoire disponible pour le serveur étant assez réduite, pour réaliser un tirage au sort, le programme serveur ne pourra peut-être pas conserver l'ensemble des participants pour effectuer ensuite un tirage. Il devra alors utiliser une stratégie de tirages successifs et conserver seulement en mémoire les gagnants courants à un instant donné. Pour cet algorithme on considère que chaque joueur peur jouer autant de fois qu'il veut. A chaque nouvelle participation, on tire au sort un nombre entier compris entre 1 et n, bornes comprises, o n est le nombre total de participants (y compris le message qui vient d'arriver). Si le nombre tiré est 1, le nouveau gagnant courant est le nouveau participant, le 10 gagnant précédant est alors considéré comme perdant. Pour tout autre valeur tirée, le nouveau participant sera considéré comme perdant et le gagnant courant ne changera pas. A la fin du tirage au sort, le gagnant courant est déclaré gagnant du tirage au sort. On peut montrer facilement par que cet algorithme est équitable et que finalement le gagnant a la même probabilité d'être tiré au sort que dans un tirage traditionnel. 15 Si on désire tirer au sort m gagnants, on répète l'algorithme m fois, et pour chaque étape le nouveau participant est le perdant du tirage précédent et le nombre de participants est diminué de 1. On peut montrer facilement par que cet algorithme est équitable et que finalement les m 20 gagnants ont les même probabilités de gagner que dans un tirage traditionnel. Selon une troisième caractéristique de l'invention, un programme d'accès aux données non volatiles du programme serveur, peut permettre de consulter ou de transmettre par tout moyen de 25 communication à sa disposition les informations contenues dans les mémoires non volatiles du dispositif définies par les programmes exécutables du serveur ainsi que certains fichiers de la carte SIM ou de son équivalent dans l'appareil mobile. Ainsi l'invention pourra gérer des abonnements, conserver les gagnants des tirages au sort 30 et permettre à l'organisateur de consulter ces informations. Selon une quatrième caractéristique de l'invention, un procédé de mise en oeuvre du dispositif peu être réalisé de l'une des façons suivantes: * En usine, par chargement du programme dans une mémoire non volatile de l'appareil ou de la carte SIM. * Au cours de la vie de l'appareil ou de sa carte SIM: o Par téléchargement via le réseau de téléphonie mobile o Par téléchargement via un câble connecté à un ordinateur, un assistant personnel ou un téléphone mobile contenant ce programme. O Par téléchargement via un réseau local sans fil. O Par chargement via un lecteur de carte mémoire, disquette ou cédérom ou tout autre dispositif comparable. O Par chargement sur la carte SIM à partir d'un ordinateur ou d'un assistant personnel équipé d'un lecteur de carte à puce. Ou encore à partir d'un téléphone mobile contenant un second lecteur de carte à puce. L'invention telle qu'elle est décrite ici peut être réalisée facilement avec des équipements du marché tels que les téléphones mobiles et leurs cartes SIM, qui sont donc beaucoup moins cher que les serveurs traditionnels. De plus ils peuvent être réalisés sans accord spécifique avec un opérateur. Ils sont donc accessibles à un plus grand nombre. Il est bien entendu que l'on peut, sans sortir du cadre de l'invention, imaginer d'autres variantes et perfectionnements de détail et de même envisager l'emploi de moyens équivalents. Nous allons illustrer un mode de réalisation par l'exemple d'un éditeur de service désirant réaliser par SMS un quizz à une seule question dont la réponse est " BLEU " avec tirage au sort 20 d'un seul gagnant. Il possède un téléphone GSM standard équipé d'une carte SIM proactive contenant un programme serveur générique fourni par l'opérateur, ainsi qu'un abonnement valide. Il désire pouvoir relancer quand il le souhaite un nouveau tirage et connaître le gagnant à distance. Il appuie sur la touche " services " de son téléphone et choisit " programmer serveur " dans 25 le menu affiché. Puis il choisit " nouveau programme " dans le menu suivant et tape le programme suivant: Init -> f total=O; gagnant=0;} BLEU" -> (total=total+l; nbr=rand(1,total); if(nbr==1) f gagnant=sender;); send 'bonne 30 réponse",} "Gagnant"X-> fif(CheckCHV1(X") send gagnant; else send "erreur d'authentification,-] "RAZ"X-> j f(CheckCHV1 (X") (gagnant=O; ttl=O;} else send "erreur d'authentification";] Other -> send "mauvaise réponse"; Puis il valide le programme qui est alors enregistré dans un fichier de la carte SIM. Puis une vérification syntaxique est déclenchée. Finalement le message " Programme OK " est affiché sur le téléphone. -7 Maintenant lorsqu'un utilisateur envoie le message "BLEU" au numéro de téléphone de l'éditeur de service, la carte SIM l'intercepte, et répond à l'expéditeur: " bonne réponse ". Si le message " RAZ " suivit du code PIN de la carte SIM est envoyé, le tirage est remis à zero. Si le code PIN n'est pas le bon la demande est rejetée avec un message d'erreur. Si le message " Gagnant " suivit du code PIN de la carte SIM est envoyé, le nom du gagnant est envoyé. Ainsi l'éditeur de service peut connaître à distance le nom du gagnant en l'interrogeant depuis un autre téléphone mobile. Si le code PIN n'est pas le bon la demande est rejetée avec un message d'erreur Pour tout autre message l'invention retournera " mauvaise réponse " Si l'éditeur de service a établi un accord particulier avec l'opérateur de téléphonie mobile, celui-ci lui reverse une partie des recettes générées par les SMS reçus. Les réponses que le téléphone mobile envoie peuvent selon l'accord ne pas être facturées par l'opérateur. Le dispositif selon l'invention est particulièrement destiné à la réalisation de tirages au sort et services d'information par SMS -8 REVENDICATIONS 1) Dispositif permettant d'offrir des services aux utilisateurs de téléphones mobiles par réception et envoi de messages électroniques (SMS, MMS, EMS...), caractérisé en ce qu'il comporte un appareil mobile capable d'émettre et de recevoir des messages électroniques par transmission radio via un réseau de téléphonie mobile pour lequel il est abonné et 5 caractérisé en ce que le dit appareil mobile contient un programme serveur permettant de réagir aux messages reçus, d'élaborer une réponse adaptée, et de retourner cette réponse à l'expéditeur de manière autonome et sans intervention humaine. 2) Dispositif selon la revendication 1 caractérisé en ce que l'appareil mobile capable 10 d'émettre et de recevoir des messages électroniques est un téléphone mobile. 3) Dispositif selon la revendication 1 caractérisé en ce que l'appareil mobile capable d'émettre et de recevoir des messages est un assistant personnel ou un ordinateur connecté à un modem adapté au réseau de téléphonie mobile ou à un autre dispositif 15 jouant le rôle de modem connecté par tout type de liaison (câble, infrarouge, réseau local sans fil...). 4) Dispositif selon une quelconque des revendications précédentes, caractérisé en ce que l'appareil mobile est équipé de mémoires volatiles permettant de conserver 20 temporairement certains calculs et de mémoires non volatiles permettant d'en conserver d'autres indéfiniment, et caractérisé en ce que le programme serveur est capable de manière autonome et sans intervention humaine de: - Recevoir et d'émettre des messages électroniques. - D'exécuter des calculs. - De lire et d'écrire dans les mémoires volatiles et non volatiles de l'appareil mobile. - D'analyser les messages reçus et de retrouver le numéro de téléphone de l'émetteur. - De communiquer par d'autres moyens offerts part l'appareil mobile comme l'envoi de courriers électroniques, et d'attendre de recevoir des informations par ces mêmes moyens. - D'envoyer des instructions spécifiques à l'appareil mobile - Demander la validations des codes PIN de l'appareil mobile. ) Dispositif selon la revendication précédente, caractérisé en ce que le programme serveur est un interpréteur, capable d'exécuter des programmes sous forme textuelle ou binaire 35 contenus dans une mémoire non volatile de l'appareil mobile dont les commandes correspondent au moyens d'actions décrits à la revendication précédente, afin d'adapter les messages de réponse aux messages reçus en fonction des services demandés. -9 6) Dispositif selon la revendication précédente, caractérisé en ce que l'appareil mobile est équipé d'un écran, d'un clavier et d'un programme permettant gérer des programmes exécutables par le programme serveur et conservés dans la mémoire non volatile de l'appareil mobile et caractérisé également en ce qu'il propose de: - les créer - les effacer - les télécharger (par câble, infrarouge, réseau local sans fil ou support de stockage), - les recevoir par concaténation messages électroniques (SMS, EMS, MMS...) contenant un code d'authentification. - les saisir sous forme textuelle sur le clavier. - faire un vérification syntaxique de ces programmes. - transformer les programmes textuels en programme binaire afin d'augmenter leur compacité et leur vitesse d'exécution. 7) Dispositif selon la revendication 5 ou la revendication 6, caractérisé en ce que l'appareil est équipé d'un programme permettant de consulter à l'écran de l'appareil mobile ou de transmettre par tout moyen de communication adapté à l'appareil mobile, certains fichiers de la carte SIM et les données définies dans les programmes exécutables par le programme serveur et qui sont conservées dans la mémoire non volatile de l'appareil, afin 20 de consulter les différents résultats obtenus par le programme serveur. 8) Dispositif selon une quelconque des revendications précédentes, caractérisé en ce que l'appareil mobile est équipé d'une carte SIM proactive et caractérisé en ce que les codes PIN de l'appareil mobile sont ceux de la carte SIM sur laquelle sont également 25 embarqués: - Les différents programmes énoncés dans les revendications précédentes. - Les mémoires volatiles - Les mémoires non volatiles de l'appareil parmi lesquelles se trouvent les fichiers de la carte SIM. 9) Dispositif selon une quelconque des revendications précédentes, caractérisé en ce que le programme serveur et ses programmes textuels ou binaires appliquent un algorithme de tirages successifs pour déterminer m gagnants d'un tirage au sort, caractérisé par l'utilisation d'une mémoire permettant de conserver ces gagnants et comprenant les 35 étapes suivantes: A. Tous les gagnants à déterminer sont mis à une valeur nulle. B. Le nombre total de participants est mis à 0. C. Pour chaque message de participation reçu on exécute les étapes I à li/: - 10 I. On incrémente le nombre total de participants. Il. Le message à traiter devient le message reçu. On met un compteur qui représente le nombre de gagnants déjà traités à 0. Ill. Pour chaque gagnant à déterminer, tant que le message à traiter n'est pas nul, on exécute les étapes a à c: a. Si le message gagnant courant est la valeur nulle, alors celui-ci devient le message de participation reçu. Le message à traiter est mis à la valeur nulle. Sinon on tire au hasard un nombre entier compris entre 1 et le nombre total de messages de participants reçus moins la valeur 10 du compteur (bornes comprises). b. Si le nombre tiré est 1, le message à traiter et le message gagnant échangent leurs valeurs. c. On incrémente le compteur D. Les gagnants du tirage au sort sont les m messages courants gagnants. (si le 15 nombre de participants est suffisant, sinon ce sont les n premiers messages courants qui sont gagnants o n est le nombre de total de participants. ) Procédé de mise en oeuvre du dispositif selon une quelconque des revendications précédentes, caractérisé en ce que l'appareil mobile est un appareil standard ainsi que sa 20 carte SIM, et. comprenant l'une des étapes suivante: - chargement en usine - téléchargement au cours de la vie de l'appareil mobile et de sa carte SIM à la demande du propriétaire de l'appareil ou à l'instigation de l'opérateur, via le réseau mobile de l'opérateur, par câble, via un réseau local sans fil ou grâce à un support de 25 stockage et un lecteur inclus dans l'appareil - chargement direct sur la carte SIM à l'aide d'un assistant personnel ou un ordinateur équipé d'un lecteur de carte à puce, à la demande du propriétaire de l'appareil ou à l'instigation de l'opérateur dans ses locaux.