Suite

Problème de boîte de message Arcpad et de bouton de clavier

Problème de boîte de message Arcpad et de bouton de clavier


J'utilise ArcPad 8 avec ArcPad Studio pour créer une application personnalisée à utiliser sur les appareils Windows Mobile 6. Il existe des formulaires de saisie de données et sur ces formulaires se trouvent des boutons qui, lorsqu'ils sont cliqués, présentent à l'utilisateur des informations dans une boîte de message. Pour l'événement onclick d'un bouton, je spécifie un script d'événement (à l'aide de JScript) tel que :

Application.MessageBox("Quelques informations pour l'utilisateur… ");

Que tout fonctionne bien. Cependant, lorsque l'utilisateur ferme la boîte de message, le bouton permettant de basculer entre le clavier/le transcripteur/la reconnaissance qui se trouve dans le coin inférieur droit de la fenêtre de l'application disparaît immédiatement, ce qui empêche l'utilisateur d'afficher et de masquer le clavier lorsqu'il tente de entrer des données dans d'autres divers contrôles sur le formulaire. Est-ce que quelqu'un d'autre a déjà eu ce problème et connaît des solutions ? Merci!


Il s'agit d'un bogue vérifié dans ArcPad. J'ai rencontré ce problème et plusieurs autres dans ArcPad v8.1 et j'ai soumis ce bogue à ESRI le 13 septembre 2010. ESRI lui a attribué le numéro de rapport de bogue CQ00312491. Il était censé être corrigé dans ArcPad v10.0.2 mais, à ma connaissance, il n'a pas été corrigé (le statut est toujours répertorié comme Ouvert). Je ne pense pas qu'aucun des autres bogues ArcPad que j'ai vérifiés, signalés et auxquels des numéros de bogue ont été attribués en 2010 aient été corrigés non plus. À condition que vous utilisiez vbScript, comme solution de contournement, vous pouvez utiliser l'instruction MsgBox ( MsgBox ).


REVENDICATION PRIORITAIRE ET RENVOI
La présente demande revendique la priorité sur la demande de brevet provisoire US Ser. n° 60/369 271, déposé le 2 avril 2002, intitulé « Services accessibles par chat dans un système de communication », attribué au cessionnaire de la présente demande et incorporé ici par référence dans son intégralité. La présente demande est également liée à ce qui suit demandes co-pendantes, qui sont cédées au cessionnaire de la présente demande et incorporées ici par référence dans leur intégralité :
Demande de brevet américain Ser. n° 10/404 110, déposé en même temps que la présente et intitulé « Système de facturation pour les services fournis via des communications instantanées »
Demande de brevet américain Ser. n° 10/404 111, déposé en même temps que la présente et intitulé « Messaging Response System »
Demande de brevet américain Ser. n° 10/404 113, déposé en même temps que la présente et intitulé « Passerelle de communication avec interface de communication de messagerie »
Demande de brevet américain Ser. No. 10/404,104, déposé en même temps que la présente et intitulé « Système de facturation pour les services de communication impliquant la téléphonie et les communications instantanées »
Demande de brevet américain Ser. n° 10/404 330, déposé en même temps que la présente et intitulé « Achèvement d'appel via Instant Communications Client »
Demande de brevet américain Ser. n° 10/404 079, déposé en même temps que la présente et intitulé « Enhanced Services Call Completion »
Demande de brevet américain Ser. n° 10/404 541, déposé en même temps que la présente et intitulé « Fourniture d'informations de présence à un système de services téléphoniques » et
Demande de brevet américain Ser. n° 10/404 094, déposé en même temps que la présente et intitulé « Système de services téléphoniques avec améliorations des communications instantanées ».
La présente demande concerne un sujet divulgué dans les brevets U.S. Nos. n° 6 351 464. La présente demande concerne également un sujet décrit dans le document Internet Engineering Task Force RFC 2778, « A Model for Presence and Instant Messaging » par Day M., Rosenberg, J. et H. Sugano, février 2000.
CONTEXTE
1. Domaine technique
La présente invention concerne d'une manière générale le traitement de données et, en particulier, l'autorisation d'accès à des services par des communications de messagerie instantanée.
2. Description de l'art connexe
Dans la téléphonie traditionnelle, une variété de services d'opérateurs sont disponibles auprès des fournisseurs de services téléphoniques. En général, les services d'opérateur impliquent qu'un agent du fournisseur de services assiste un appelant téléphonique dans l'établissement ou la conduite de sessions de communication. Dans certains cas, cet agent peut être un opérateur humain qui converse avec un appelant pour fournir une assistance. L'agent peut également être un système automatisé qui répond aux entrées vocales ou au clavier d'un appelant en fournissant une assistance ou en agissant autrement sur les entrées de l'appelant.
Un exemple bien connu d'un service d'opérateur est « l'assistance d'annuaire » par laquelle un appelant peut demander et recevoir le numéro de téléphone d'une autre partie d'un agent du fournisseur de services. Les services de l'opérateur peuvent en outre être utilisés pour, au nom d'un appelant, effectuer des actes tels que l'achèvement d'un appel, établir des conférences téléphoniques multipartites, fournir un accès aux services de téléphonie par des appelants utilisant des cartes d'appel ou d'autres modalités de facturation (par exemple, appels à frais virés), fournir relais ou autres services aux appelants ayant des besoins spéciaux, etc.
Dans le cas des services d'assistance-annuaire, l'appelant souhaite initier un appel téléphonique vers un autre correspondant, mais ne connaît pas le bon numéro de téléphone à composer pour joindre le correspondant. Dans un scénario d'assistance-annuaire classique, l'appelant compose d'abord un opérateur ("0") ou un numéro d'assistance-annuaire ("411" ou indicatif régional + "555-1212"), et l'appelant est connecté à un agent. L'appelant indique alors à l'agent quel interlocuteur il souhaite joindre. L'agent consulte une liste ou une base de données pour localiser un numéro de téléphone ou d'autres informations relatives à la partie identifiée et fournit les informations à l'appelant verbalement ou par synthèse vocale. L'appelant peut simplement enregistrer les informations pour référence future ou peut immédiatement chercher à contacter la partie en composant le numéro de téléphone fourni.
Dans de nombreuses mises en œuvre, l'agent peut également offrir à l'appelant la possibilité de terminer automatiquement l'appel vers l'autre partie en tant qu'extension de l'appel d'assistance-annuaire, évitant ainsi à l'appelant d'avoir à enregistrer le numéro de téléphone fourni par l'assistance-annuaire, puis de le rappeler immédiatement. -Entrez le numéro de téléphone lors d'une tentative d'appel ultérieure. De tels services d'assistance-annuaire et d'achèvement d'appel sont souvent fournis moyennant des frais que le fournisseur de services peut facturer à l'appelant ou chercher à faire payer immédiatement, par exemple par le biais d'un téléphone payant.
Plus récemment, des sources d'informations d'annuaire et similaires sont devenues disponibles sur Internet. Une personne ayant besoin des coordonnées d'une autre partie peut accéder à un site Web via Internet à l'aide d'une application de navigateur et saisir des informations d'identification sur une partie. Afin de faciliter la saisie des informations d'identification, un formulaire est généralement présenté comprenant des champs de saisie pour le nom (d'une personne ou d'une entreprise), adresse, ville, état, etc. afin que l'utilisateur à l'origine de la demande puisse spécifier toute information connue sur la partie pour laquelle les coordonnées sont recherchées. Plus la spécificité fournie par le demandeur est grande, moins les enregistrements de candidats seront renvoyés par le moteur de recherche du site Web.
Bien que de nombreux services d'informations d'annuaire disponibles sur Internet soient fournis gratuitement, les informations fournies sont souvent incomplètes ou obsolètes. De nombreuses bases de données sous-jacentes à ces sites Web ne sont pas dérivées directement et en temps voulu des informations actuelles utilisées par les fournisseurs de services de communication pour acheminer les appels, mais sont plutôt compilées indirectement à partir d'autres sources. Dans le cas où un site Web de recherche d'annuaire ne peut pas résoudre une demande donnée ou ne peut trouver aucun enregistrement, il est ambigu de savoir si la demande est intrinsèquement inutilisable ou si le site Web manque simplement des données nécessaires. Beaucoup de ces sites Web fournissent simplement des liens vers d'autres sites similaires que l'utilisateur peut essayer.
Assez fréquemment, une personne utilise un ordinateur pour effectuer diverses tâches lorsque le besoin s'en fait sentir d'obtenir les coordonnées d'une partie donnée. Ces informations de contact peuvent être nécessaires pour établir immédiatement des communications avec la partie, par exemple par le biais d'un appel téléphonique. Alternativement, ces informations de contact peuvent être nécessaires dans le cadre d'une tâche sur l'ordinateur, telle que la préparation d'une lettre sortante ou d'un rapport qui doit inclure les informations de contact. Naturellement, la personne engagée dans une telle tâche voudra utiliser l'ordinateur pour obtenir les informations de contact, en particulier si l'ordinateur est couplé à Internet et peut accéder à des sites Web de recherche d'annuaire comme décrit ci-dessus.
L'un des avantages d'employer cette approche, plutôt que de passer un appel téléphonique à un agent d'assistance-annuaire, est que les informations souhaitées sont renvoyées au système informatique dans un format textuel qui peut être facilement copié et « collé » dans un document de traitement de texte, une base de données ou une autre application s'exécutant sur le système informatique. En recevant et en saisissant les informations sous forme entièrement électronique, l'utilisateur économise un temps et des efforts considérables par rapport à l'obtention des informations souhaitées auprès d'un agent d'assistance-annuaire au format audio, puis à la saisie manuelle des informations dans le système informatique. La réduction du temps et des efforts est particulièrement importante lorsque les informations comprennent des données longues, telles qu'une adresse postale complète et/ou des informations de contact secondaires (par exemple, numéro de téléphone portable, numéro de fax, adresse e-mail, URL de site Web).
Un autre facteur important qui motive la recherche d'annuaire en ligne est la prévalence des connexions par modem « d'accès commuté » à Internet. Si un utilisateur n'a accès qu'à une seule ligne téléphonique et que l'utilisateur utilise déjà la ligne téléphonique pour se connecter à Internet, il est difficile pour l'utilisateur de « couper » la connexion par modem à Internet et de passer un appel téléphonique conventionnel pour obtenir services d'assistance-annuaire. De plus, les informations d'annuaire en ligne peuvent être gratuites ou moins coûteuses que d'appeler un opérateur d'assistance-annuaire.
RÉSUMÉ DE LA PRÉSENTE INVENTION
Compte tenu de ce qui précède, la présente invention propose des procédés, des systèmes et des produits de programme qui permettent d'accéder à des services, tels que l'assistance-annuaire, par le biais d'une communication textuelle instantanée, telle qu'une messagerie instantanée ou une session dite de "chat". Une entité telle qu'un fournisseur de services commercial peut fournir des informations ou peut autrement être en mesure de fournir des services via une interaction de messagerie instantanée ou de messagerie courte. En utilisant une application cliente de chat d'un certain type, les parties ayant besoin de tels services ou informations établissent des communications instantanées avec l'entité fournissant le service. L'entité de fourniture de services est de préférence identifiée auprès de ces parties à l'aide d'un identifiant de « nom d'écran » particulier. Un "nom d'écran" est un terme appliqué à un identifiant par lequel une partie est connue dans le contexte d'un service de messagerie ou d'un système de messagerie particulier. L'entité de fourniture de services peut fournir un ou plusieurs répondants ou « agents de discussion » pour traiter et répondre aux demandes des parties accédant au service.
Conformément à la présente invention, l'accès à des services sur un réseau est fourni via une session de conversation. Une entité, telle qu'un fournisseur de services commerciaux ayant accès à des informations, fournit un système de réponse aux messages comprenant un ou plusieurs agents de chat capables de répondre aux demandes des clients de chat. Un agent de chat peut être une station de messagerie actionnée par l'homme ou un répondant automatisé agissant par l'intermédiaire d'une station de messagerie ou d'une interface client de messagerie.
Selon un mode de réalisation préféré, le fournisseur de services peut communiquer simultanément avec de nombreuses parties différentes et répondre à leurs demandes, même si le même nom d'écran pour le fournisseur de services peut être connu et utilisé par de nombreuses parties sensiblement simultanément. Conformément à un nouvel aspect de certains modes de réalisation de la présente invention, des volumes de demandes entrantes peuvent être répartis entre une pluralité de participants au chat représentant le fournisseur de services et peuvent être correctement traités sur une base individuelle, même si toutes les demandes entrantes peuvent être adressées au même nom d'écran. Ce comportement est obtenu par une approche nouvelle et utile de routage des communications de messagerie, comme vers une station de messagerie du répondant, basée sur l'identité ou le nom d'écran de l'expéditeur plutôt que sur la base de l'adresse du destinataire spécifiée dans les communications de messagerie.
Selon un procédé décrit ici, une passerelle d'agent de chat indique sa présence à un service de présence de messagerie instantanée pour informer les clients de chat de sa disponibilité à recevoir des demandes de service. En réponse à la réception par la passerelle d'agent d'une demande de services par un client de discussion via une session de discussion, la passerelle d'agent de discussion transmet la demande à une station au sein d'un système de services basé sur la discussion. La station fournit alors les services demandés, et la passerelle d'agent de chat communique des informations concernant les services demandés au client de chat dans la session de chat.
Conformément à certains modes de réalisation de la présente invention, un système de service accessible par chat offre la possibilité à un demandeur utilisant un client de chat d'avoir un appel vers une autre partie à la demande via le système de service.
Conformément à certains modes de réalisation de la présente invention, un système de service accessible par chat peut établir des communications entre un client de chat et une autre partie via une connexion téléphonique informatique, une connexion de chat à commande vocale ou une connexion texte-chat-téléphone-voix traduite. .
Un exemple de mode de réalisation de la présente invention concerne un convertisseur de communication comprenant des moyens de réception vocale agissant pour recevoir des informations audio, des moyens de conversion parole-texte agissant pour convertir des informations audio provenant des moyens de réception vocale en informations textuelles correspondantes, et des moyens de sortie d'informations textuelles agissant pour fournir les informations textuelles à un premier client de communications instantanées.
Un autre exemple de mode de réalisation de la présente invention concerne un convertisseur de communication comprenant des moyens de réception d'informations textuelles agissant pour recevoir des informations textuelles d'un premier client de communications instantanées, des moyens de conversion texte-parole agissant pour convertir les informations textuelles en informations audio correspondantes, et une sortie d'informations audio des moyens agissant pour fournir les informations audio à une première partie via une connexion téléphonique.
Un autre mode de réalisation exemplaire de la présente invention décrit un convertisseur de communication agissant pour faciliter la communication entre une connexion téléphonique et un client de communications instantanées. Le traducteur comprenant une interface de communications instantanées agissant pour effectuer des communications de messagerie impliquant le client de communications instantanées, une interface de communications téléphoniques agissant pour communiquer des informations audio via la connexion téléphonique, et des moyens de traduction agissant pour effectuer au moins l'une des traductions parole-texte et texte -la traduction vocale entre les informations audio et les communications de messagerie.
Un autre mode de réalisation exemplaire de la présente invention décrit un procédé pour faciliter les communications entre une connexion téléphonique et un client de communications instantanées. Le procédé comprend la réception d'informations textuelles du client de communications instantanées, la traduction des informations textuelles en informations audio correspondantes et la fourniture des informations audio à coupler à la connexion téléphonique.
Un autre mode de réalisation exemplaire de la présente invention décrit un procédé pour faciliter les communications entre une connexion téléphonique et un client de communications instantanées. Le procédé comprend la réception d'informations audio via la connexion téléphonique, la traduction des informations audio en informations textuelles correspondantes et la fourniture des informations textuelles à communiquer au client de communications instantanées.
Un autre mode de réalisation exemplaire de la présente invention décrit un support lisible par ordinateur comprenant des instructions qui, lorsqu'elles sont exécutées par un processeur, amènent un système de communication à exécuter un procédé pour faciliter les communications entre une connexion téléphonique et un client de communications instantanées. Le procédé comprend la réception d'informations textuelles du client de communications instantanées, la traduction des informations textuelles en informations audio correspondantes et la fourniture des informations audio à coupler à la connexion téléphonique.
Un autre mode de réalisation exemplaire de la présente invention décrit un procédé pour faciliter les communications entre une connexion téléphonique et un client de communications instantanées. Le procédé comprend la réception d'informations audio via la connexion téléphonique, la traduction des informations audio en informations textuelles correspondantes et la fourniture des informations textuelles à communiquer au client de communications instantanées.BRÈVE DESCRIPTION DES DESSINS
Les nouvelles caractéristiques considérées comme caractéristiques de l'invention sont présentées dans les revendications annexées. Cependant, l'invention elle-même, ainsi qu'un mode d'utilisation préféré, d'autres objets et avantages de celle-ci, seront mieux compris en se référant à la description détaillée suivante d'un mode de réalisation illustratif lorsqu'elle est lue conjointement avec les dessins joints, dans lesquels :
FIGUE. 1 illustre un schéma fonctionnel de haut niveau d'un mode de réalisation d'un système de communication qui prend en charge l'accès basé sur le chat aux services conformément à la présente invention
FIGUE. 2 représente un exemple d'interface utilisateur graphique d'un client de chat selon un mode de réalisation de la présente invention
FIGUE. 3 illustre une description plus détaillée du réseau et du système de fournisseur de services du système de communication représenté sur la Fig. 1
FIGUE. 4 illustre un exemple de procédé par lequel des stations automatisées et à assistance humaine dans le système de fournisseur de services de la Fig. 3 enregistrer la présence d'un nom d'écran de service basé sur le chat avec un service de messagerie instantanée
FIGUE. 5A illustre un exemple de mode de réalisation d'une table d'enregistrement utilisée par le processus de routage de session représenté sur la Fig. 4 pour suivre les stations assistées et automatisées enregistrées avec le processus de routage de session et leurs capacités respectives
FIGUE. 5B illustre un exemple de mode de réalisation d'une table de routage utilisée par le processus de routage de session représenté sur la Fig. 4 pour acheminer les demandes de services et les réponses à ces demandes entre les passerelles d'agent et les stations assistées et automatisées
FIGUE. 6 représente un exemple de scénario par lequel un client de chat accède à des services basés sur le chat conformément à la présente invention
FIGUE. 7 est un organigramme logique de haut niveau d'un exemple de procédé par lequel le processus de routage de session illustré sur la Fig. 6 achemine la communication entre les stations au sein du système de service basé sur le chat et les passerelles d'agent conformément à la présente invention
FIGUES. 8A-8B sont des organigrammes d'appels d'une séquence exemplaire de communications par lesquelles un client de conversation accède à des services d'achèvement d'appel basés sur la conversation conformément à la présente invention
FIGUE. 9 est un diagramme échelonné de haut niveau d'un exemple de mode de réalisation d'un système de facturation selon la présente invention et
FIGUE.10 représente un système informatique qui peut être utilisé pour mettre en œuvre un mode de réalisation de la présente invention ou pour mettre en œuvre divers éléments de celle-ci. Sur les figures, des numéros de référence identiques indiquent généralement des éléments identiques, fonctionnellement similaires et/ou structurellement similaires.
DESCRIPTION DÉTAILLÉE
L'invention concerne des systèmes, des procédés et des processus mis en œuvre par ordinateur pour le traitement d'appels. Dans la description suivante, à des fins d'explication, de nombreux détails spécifiques sont présentés afin de fournir une compréhension approfondie de la présente invention. Cependant, il apparaîtra à l'homme du métier que la présente invention peut être mise en pratique sans ces détails spécifiques ou avec un autre agencement équivalent. Dans d'autres cas, des structures et dispositifs bien connus sont représentés sous forme de schéma fonctionnel afin d'éviter d'obscurcir inutilement la présente invention.
La présente invention offre des avantages en ce que les parties peuvent accéder à des services via des communications instantanées, telles que par messagerie instantanée. Conformément à un mode de réalisation préféré, la présente invention prévoit en outre qu'un type de service accessible via des communications instantanées implique que des parties soient capables d'initier d'autres sessions de communication, même celles impliquant des réseaux téléphoniques. Dans un exemple d'application de cette capacité, une première partie utilisant un client de messagerie instantanée peut établir des communications avec une seconde partie qui est accessible par téléphone.
Une forme de communication popularisée ces dernières années est la messagerie électronique. Les communications de messagerie sont généralement caractérisées par une partie communicante déterminant une quantité finie d'informations à envoyer sous forme de message. Les communications de messagerie impliquent généralement un ou plusieurs messages discrets envoyés par une partie à une ou plusieurs autres parties. Un message peut comprendre par exemple du texte, des données ou des informations audio ou vidéo numérisées, voire des combinaisons de celles-ci. Le courrier électronique (e-mail) et la radiomessagerie sont des formes de communication par messagerie électronique.
Contrairement à la messagerie, d'autres formes de communication, telles que la téléphonie, permettent une période de conversation bidirectionnelle essentiellement continue (et généralement en duplex intégral) entre les parties dans le cadre d'une session ou d'une connexion unique. Comme dans l'exemple de la téléphonie, les parties ne déterminent généralement que la durée de la session globale et ne sont pas engagées dans la composition et l'envoi de messages d'une taille spécifique.
La « messagerie instantanée » fait référence aux communications par messagerie dans lesquelles les retards dans la préparation du message pour la livraison (comme l'adressage à un destinataire), le transport du message et le fait de porter le message à l'attention du destinataire sont suffisamment courts ou imperceptibles pour que les parties puissent communiquer en une manière presque conversationnelle. Dans le cas d'une forme de communication instantanée connue sous le nom de sessions de « chat textuel », le rythme de la conversation est souvent limité principalement par le temps qu'il faut aux participants au chat pour composer et finaliser les messages à transmettre. La marge de retard acceptable dans la transmission des messages peut être à une échelle différente de celle des marges de retard de bout en bout dans les communications téléphoniques, mais l'impact répréhensible d'un retard excessif sur la fluidité perçue des communications est un préjudice commun aux deux modes de communication.
La messagerie instantanée peut être considérée comme un type de communication instantanée. Certaines applications populaires couramment utilisées pour la messagerie instantanée incluent, par exemple, America Online (AOL) Instant Messenger™ (ci-après AIM), Yahoo!® Messenger et MSN® Messenger. La présente invention n'est pas limitée à des modes de réalisation utilisant ces applications, technologies ou services spécifiques.
Dans un sens, les « communications instantanées » peuvent faire référence à un style de communication dans lequel les parties en communication subissent un établissement sensiblement immédiat de communications sur une base par message. Dans le cadre de la messagerie instantanée, une sélection effectuée initialement par un premier interlocuteur pour ouvrir un dialogue avec un second interlocuteur spécifique. Par la suite, les parties peuvent spontanément générer et envoyer des messages sans avoir à adresser chaque message ou effectuer d'autres étapes préparatoires à l'envoi de chaque message.
En outre, le terme "communications instantanées" peut être applicable dans le sens où il n'y a pas d'établissement de session perceptible par l'utilisateur lorsque chaque message est envoyé, même si chaque message est en fait envoyé sous la forme d'une brève rafale d'activité de transmission d'informations à travers le réseau. À un certain niveau, chaque salve de transmission peut être traitée comme une session de communication distincte.
L'utilisateur n'a pas à s'engager dans l'établissement d'une session par message, le cas échéant, et aucun retard significatif n'est perçu par l'utilisateur résultant du lancement automatique de la session qui pourrait être brièvement effectué à un certain niveau via, par exemple, un protocole TCP/IP. connexion. À un certain égard, alors, l'instant des communications instantanées peut être considéré comme lié à la performance de l'initiation et de l'adressage de session sans alourdir l'utilisateur et avec suffisamment peu de retard pour être minimalement perceptible ou sans conséquence pour l'utilisateur.
Les communications instantanées peuvent également être « instantanées » dans le sens où, lorsqu'un message est composé et envoyé, il est assez immédiatement acheminé vers une destination, telle qu'un client de messagerie instantanée. Lorsqu'un message est composé et envoyé, l'expéditeur peut recevoir une indication que la destination est prête à recevoir des messages ou au moins a récemment déclaré être ouverte à la réception de messages. Cette connaissance en coup droit peut être fournie par la technologie de présence décrite ci-dessous. À l'exception de la mise en file d'attente très brève dans les tampons de données des routeurs et des équipements de transmission au cours de la transmission, le message n'est substantiellement stocké nulle part dans le réseau dans le but d'être remis au destinataire à un moment ultérieur ou à un moment déterminé par le destinataire .
Ce traitement instantané des messages peut être comparé à un système de courrier électronique typique, dans lequel un message est souvent stocké dans un référentiel pendant une période de temps significative en attendant que l'application cliente de messagerie du destinataire recherche de nouveaux éléments de courrier à télécharger à partir du serveur de messagerie. Un message de courrier électronique peut être stocké sur un serveur de messagerie pour une durée inférieure à une minute, pendant plusieurs heures, plusieurs jours ou même indéfiniment.
Après avoir interrogé un serveur de messagerie et téléchargé tous les nouveaux messages, un client de messagerie met généralement fin à la communication avec le serveur de messagerie jusqu'à une date ultérieure où le client de messagerie interroge à nouveau le serveur. L'interrogation peut être déclenchée par un réglage d'intervalle de temps ou par une demande manuelle d'un utilisateur. Entre ces heures d'interrogation, le serveur de messagerie ou le service stocke simplement les messages.
Une autre caractéristique typique des communications instantanées est la présentation immédiate du contenu du message à la partie réceptrice à l'arrivée du message. Un message reçu par un client de messagerie instantanée est immédiatement présenté, par exemple dans une fenêtre d'une interface utilisateur graphique sur un dispositif d'affichage, ou autrement porté à la connaissance de la partie destinataire. L'utilisateur n'est pas tenu de prendre des mesures pour recevoir ou lancer la livraison de chaque message qui arrive. La réception et la présentation des messages sont généralement automatiques et immédiates.
Contrairement aux clients de messagerie électronique, il n'est généralement pas nécessaire dans les communications instantanées que l'utilisateur interroge un serveur manuellement ou automatiquement à certains intervalles de temps, et l'utilisateur n'a pas non plus besoin de prendre des mesures supplémentaires, comme c'est le cas avec « l'ouverture » ​​d'un e-mail. mail, pour en afficher le contenu. En outre, contrairement à une "boîte de réception" de courrier électronique stockée sous forme de fichier dans un périphérique de stockage non volatile, il n'y a généralement pas de stockage systématique du message reçu à l'extrémité destinataire dans le but de présenter le message au destinataire pour la première fois. à un moment bien plus tard qu'il n'a été reçu.
Les communications instantanées peuvent faire référence à toutes les communications impliquant un client de communications instantanées, tel qu'une application cliente de messagerie instantanée exécutée sur un ordinateur. Un client de communications instantanées peut être une application intégrée telle qu'incarnée dans un assistant numérique personnel (PDA), un téléphone mobile ou un autre dispositif portable. Un client de communication instantanée peut prendre en charge la messagerie instantanée, telle qu'un chat textuel. Un client de communications instantanées peut également prendre en charge des communications audio ayant un délai suffisamment court pour permettre une interaction entre les parties communicantes dans un style presque conversationnel. En tant que mode de communication, les communications instantanées peuvent être comparées à la téléphonie de qualité interurbaine, qui fournit des communications en duplex intégral, tout retard de transmission étant principalement attribuable à la propagation (à des vitesses électroniques) et aux retards de traitement du signal du vocodeur. Les utilisateurs de clients de messagerie texte et de communications instantanées activées par la voix en conjonction avec des réseaux de transport de données peuvent subir des retards plus importants ou un transport moins fiable que par un mode de communication téléphonique. Néanmoins, de nombreux utilisateurs trouvent que les communications instantanées sont adéquates, plus rentables et même préférables à la téléphonie plus traditionnelle dans certaines circonstances. La qualité « instantanée » de ces communications est beaucoup plus interactive en temps réel que les modes de communication par pagination ou par courrier électronique.
Dans de nombreuses implémentations, les communications instantanées sont complétées par une technologie de « présence », un mécanisme par lequel les parties reçoivent des informations en temps opportun sur la disponibilité des autres pour communiquer. Un service de présence agit comme un intermédiaire par l'intermédiaire duquel une partie peut exprimer sa disponibilité à communiquer et peut être informée de la disponibilité d'autres parties. Une description de la technologie de présence peut être trouvée dans le document RFC 2778 de l'Internet Engineering Task Force (IETF).
La technologie de présence facilite la messagerie instantanée et prend en charge la nature instantanée perçue de celle-ci. En effet, l'une des principales motivations pour appliquer les techniques de présence dans le contexte de la messagerie instantanée est que, comme décrit ci-dessus, il y a généralement très peu de stockage de messages pour une livraison ultérieure à un destinataire. Par conséquent, il est souvent utile pour un expéditeur de savoir, avant d'assembler et d'envoyer des messages, si les messages sont susceptibles d'être reçus ou présentés au destinataire en temps opportun. Dans l'expérience de l'expéditeur, la technologie de présence peut être un facteur affectant les attentes ou la perception de l'instant. À la partie ayant l'intention d'envoyer un message, la technologie de présence tente de fournir une connaissance de l'état de disponibilité du destinataire prévu (ou au moins de l'état de préparation du client de communications instantanées du destinataire) avant que les communications ne soient envoyées au destinataire. Lorsqu'une partie émettrice constate qu'un destinataire est présent via la technologie de présence, la partie peut alors envoyer des communications en toute confiance et s'attendre raisonnablement à ce que la transmission et la présentation du message au destinataire soient immédiates ou presque instantanées. La présence diffère, par exemple, du placement d'un appel à frais virés dans le fait que les informations de présence d'un correspondant sont souvent conservées avant le moment où elles sont réellement nécessaires dans le contexte d'une communication avec un correspondant.
En général, la technologie de présence est destinée à fournir une indication à jour de la présence d'autres parties. Bien entendu, les informations de disponibilité pour une partie peuvent être sujettes à changement et au désir de la partie d'accepter les communications. L'actualité des informations sur la disponibilité peut également varier en fonction de la mise en œuvre. Un expéditeur potentiel de communications n'a généralement pas besoin d'effectuer des actions supplémentaires pour vérifier la présence d'autres parties à tout moment, comme immédiatement avant d'envoyer un message. Au lieu de cela, comme dans de nombreuses applications clientes de messagerie instantanée, l'état de présence d'un groupe de destinataires est constamment mis à jour et indiqué sur une interface utilisateur. Cet aspect de mise à jour automatique de certaines implémentations de présence confère en outre à l'instant et à la spontanéité avec lesquels les utilisateurs peuvent initier et poursuivre des communications instantanées.
Une partie communicante peut s'engager dans des communications instantanées à l'aide d'un client de communications instantanées, tel qu'une application cliente de messagerie instantanée s'exécutant sur un ordinateur. Un client de communications instantanées peut être une application intégrée telle qu'incarnée dans un assistant numérique personnel (PDA), un téléphone mobile ou un autre dispositif portable. Un client de communications instantanées peut prendre en charge la messagerie instantanée, telle que le chat textuel. Un client de communications instantanées peut également prendre en charge des communications audio ayant un délai suffisamment court pour permettre une interaction entre les parties communicantes dans un style presque conversationnel. En tant que mode de communication, les communications instantanées peuvent être comparées à la téléphonie de qualité interurbaine, qui fournit des communications en duplex intégral, tout délai de transmission étant principalement attribuable à la propagation (à des vitesses électroniques) et aux délais de traitement du signal du vocodeur. Les utilisateurs de clients de messagerie texte et de communications instantanées activées par la voix en conjonction avec des réseaux de transport de données peuvent subir des retards plus importants ou un transport moins fiable que par un mode de communication téléphonique. Néanmoins, de nombreux utilisateurs trouvent que les communications instantanées sont adéquates, plus rentables et même préférables à la téléphonie plus traditionnelle dans certaines circonstances. La qualité « instantanée » de ces communications est beaucoup plus interactive en temps réel que les modes de communication par pagination ou par courrier électronique.
Dans divers modes de réalisation, la présente invention utilise avantageusement une technologie de communication instantanée et de présence, comme décrit ci-dessus, pour fournir des services aux parties qui utilisent des clients de communication instantanée comme cela sera maintenant décrit en liaison avec la FIG. 1.
En référence maintenant aux figures, et en particulier en référence à la Fig. 1, il est illustré un schéma fonctionnel de haut niveau d'un mode de réalisation d'un système de communication qui fournit des services basés sur le chat conformément à la présente invention. Comme illustré, le système de communication 10 comprend un système de traitement de données 12 couplé par un réseau de communication, le réseau 20, à un système de fournisseur de services 30 qui fournit des services basés sur le chat. Le système de traitement de données 12 peut comprendre un ordinateur personnel de bureau, un ordinateur portable ou un ordinateur de poche, un assistant numérique personnel (PDA), un téléphone mobile, un décodeur de télévision ou tout autre appareil électronique existant ou connu ou développé qui prend en charge la communication avec réseau 20. Comme cela est bien compris par l'homme du métier en informatique, en plus du logiciel du système d'exploitation (non explicitement montré), le système de traitement de données 12 peut exécuter le client de conversation 14 en tant qu'application. Le client de conversation 14 est une forme de client de communication instantanée qui prend en charge la communication de messagerie instantanée en temps réel ou sensiblement en temps réel par un principal (c'est-à-dire un utilisateur humain, un programme logiciel ou une combinaison d'utilisateur humain et de programme logiciel) associé au système de traitement de données 12.
En utilisant le client de discussion 14, le principal peut communiquer avec un ou plusieurs autres principaux accessibles via le réseau 20. (Notez que les principaux qui peuvent utiliser le client de discussion 14, le téléphone IP 92 ou le téléphone conventionnel 62 en tant qu'appareils de communication ne sont pas représentés séparément sur la figure 1 .) Le client de chat 14 peut être mis en œuvre par ou basé sur des programmes de messagerie instantanée et/ou de client de chat bien connus, tels que America Online (AOL) Instant Messenger™ (ci-après AIM), Yahoo!® Messenger ou MSN® Messenger. En variante, le client de discussion 14 et le serveur de messagerie instantanée 22 peuvent représenter des systèmes de messagerie propriétaires, privés ou semi-privés qui, par exemple, sont exploités au sein d'une entreprise ou d'une organisation commerciale. Le client de conversation 14 est montré pour inclure un certain nombre de modules 16, 17, 18 et 19 qui permettent la communication via une variété de médias comprenant du texte, de la voix, des images et de la vidéo, respectivement. Chaque module peut prendre en charge, par exemple, la composition, la transmission, le cryptage, l'encodage et la compression des communications sortantes et la réception, la décompression, le décodage, le décryptage et la présentation des communications entrantes pour un type de support donné.
Il existe plusieurs techniques pour faire fonctionner un système de messagerie instantanée. Selon une technique, un serveur intermédiaire, tel qu'un serveur de présence, communément accessible à une population d'utilisateurs, aide les parties à se connaître et à établir des communications. Une fois qu'un ensemble de parties a pris connaissance des adresses réseau des autres, le trafic de messages ultérieur entre les parties contourne le serveur commun et passe directement entre les clients de discussion en mode peer-to-peer. Selon une autre technique, les clients de chat établissent un contact les uns avec les autres et communiquent sans avoir besoin du tout d'un serveur intermédiaire. Conformément à encore une autre technique, un serveur communément accessible permet non seulement d'établir un contact entre les parties mais est également impliqué dans toutes les communications ultérieures. Dans ce cas, les parties communicantes n'ont pas besoin de connaître les adresses réseau des autres, mais plutôt uniquement les « noms d'écran » ou les identifiants par lesquels elles sont chacune identifiées de manière unique dans le serveur.
Ces variantes sont représentées sur la Fig. 1 par trois connexions. Les connexions peuvent être logiques ou physiques dans la pratique et réaliser un couplage ou une interface de communication entre les éléments. Les connexions peuvent être mises en œuvre sous forme de communications interprocessus entre des processus logiciels. Les connexions peuvent également faire référence à, ou être mises en œuvre comme, des communications entre des points desservis par un réseau de transport de données, même si le réseau de transport de données utilise une technique dite « sans connexion » pour acheminer les informations à l'intérieur. La connexion 23 entre le client de chat 14 et le service de messagerie instantanée (IM) 22 est le moyen par lequel le client de chat 14 peut signaler sa disponibilité à communiquer et être informé de la disponibilité d'autres parties à communiquer. La connexion 25 remplit un objectif similaire entre le système de fournisseur de services 30 et le service de messagerie instantanée 22. En plus de transporter des informations de présence, les connexions 23 et 25 peuvent également transporter des communications de discussion entre le client de discussion 14 et le système de fournisseur de services 30, en utilisant le service de messagerie instantanée 22 comme intermédiaire dans les messages de discussion.
Alternativement, les connexions 23 et 25 peuvent être utilisées uniquement pour l'indication de présence et une autre connexion 24 peut être formée via le réseau 20 pour acheminer les communications directement entre le client de discussion 14 et le système de fournisseur de services 30 sans impliquer le service IM 22.
Le client de conversation 14 de la Fig. 1 peut présenter une interface utilisateur similaire à ce qui est représenté sur la Fig. 2. En se référant brièvement à la Fig. 2 avant de poursuivre la discussion de la Fig. 1, il est illustré un exemple d'interface utilisateur graphique qui peut être présentée par le client de chat 14 dans un dispositif d'affichage du système de traitement de données 12 selon un mode de réalisation de la présente invention. Comme illustré, l'interface utilisateur graphique du client de chat 14 comprend une fenêtre de messagerie 100 ayant une barre de menus 102, une barre d'outils 104 et un cadre d'affichage 106.
Dans le cadre d'affichage 106, une liste d'amis 120 est affichée qui contient des identifiants de parties qui peuvent être contactées par le client de chat 14 via la messagerie instantanée.La liste d'amis 120 (également connue sous le nom de liste d'amis ou liste de contacts) peut inclure à la fois des identifiants par défaut placés automatiquement dans la liste d'amis 120 par le client de chat 14 et des identifiants fournis par l'utilisateur ajoutés à la liste d'amis 120 par un utilisateur du client de chat 14 via un utilitaire invoqué par sélection du bouton d'ajout 116 dans la barre d'outils 104. A tout moment, la liste ou l'apparence visuelle de chaque contact dans la liste d'amis 120 peut être affectée par les informations de présence reçues d'un serveur de présence. De cette manière, un principal utilisant le client de discussion 14 peut facilement déterminer lequel des contacts est disponible pour communiquer.
Dans l'exemple de scénario, la liste d'amis 120 est organisée dans une structure arborescente contenant à la fois des identifiants individuels 122 identifiant des parties individuelles (par exemple, "Dave") et des identifiants groupés 124a-124n, qui sont tous liés à une partie particulière (c'est-à-dire, " Services WCom »). Dans cet exemple, les identifiants groupés 124 représentent chacun une offre de service accessible par chat différente (par exemple, des services liés aux appels et un service de conciergerie) du système de fournisseur de services 30, comme détaillé ci-dessous. Un type d'identifiant pouvant être présenté dans la liste d'amis 120 ou rendu accessible via d'autres éléments d'interface utilisateur peut concerner un service personnalisé. En sélectionnant cet identifiant dans l'interface utilisateur, un principal utilisant le client de discussion 14 peut établir facilement des communications avec une entité de fourniture de services qui fournit des services personnalisés. Par exemple, le fournisseur de services peut avoir un mandant ou un mandant spécifique assigné pour fournir des services à un mandant particulier et savoir comment fournir des services. Lorsque le mandant sélectionne l'identifiant correspondant au service personnalisé, le mandant est mis en relation avec le répondant chargé de les servir. Cette activité peut également être personnalisée dans le sens où les informations relatives au principal, telles que les préférences ou les connaissances des sessions précédentes, peuvent être conservées par le fournisseur de services et appliquées au service du principal.
Pour communiquer des messages instantanés avec l'une des parties individuelles dans la liste d'amis 120 ou l'un des services accessibles par chat, l'utilisateur sélectionne généralement l'un des identifiants 122, 124a-n dans la liste d'amis 120, puis sélectionne le bouton de message 110. Comme décrit plus loin ci-dessous, le client de chat 14 peut alors présenter une fenêtre de messagerie instantanée à travers laquelle des messages instantanés textuels peuvent être échangés en temps réel avec une ou plusieurs autres parties. Bien entendu, pour d'autres types de communication, telles que des communications audio ou vidéo, le client de discussion 14 peut fournir d'autres éléments ou commandes d'interface utilisateur pertinents.
Alternativement, si l'utilisateur du client de discussion 14 souhaite établir ou rejoindre une salle de discussion (c'est-à-dire, généralement un forum vaguement thématique auquel un grand nombre d'utilisateurs peuvent participer), l'utilisateur sélectionne le bouton de discussion 112 sur la barre d'outils 104 pour invoquer l'affichage par discussion. client 14 d'une fenêtre de discussion à travers laquelle l'utilisateur peut sélectionner une salle de discussion et envoyer et recevoir des messages texte. Si l'utilisateur souhaite lancer un appel téléphonique, l'utilisateur peut sélectionner le bouton d'appel 114 pour invoquer l'affichage d'une interface téléphonique à travers laquelle un appel voix sur protocole Internet (VoIP) peut être établi. L'une quelconque des interfaces supplémentaires affichées par le client de chat 14 (par exemple, en réponse à la sélection des boutons 110-114) peut également inclure des commandes qui permettent à un utilisateur de demander des services spécifiques accessibles par chat.
De telles commandes peuvent être ajoutées facultativement par l'utilisateur ou peuvent être incluses dans le cadre de l'application 100 de fenêtre de messagerie. Il est également envisagé, comme le comprendra facilement l'homme du traitement des applications ou peut apparaître sous la forme d'une icône sur l'écran « bureau » d'un poste de travail. L'activation d'un tel contrôle peut provoquer l'apparition d'une fenêtre de client de chat et le démarrage automatique d'une session avec un nom d'écran spécifique correspondant à un service accessible par chat particulier. Par exemple, un bouton peut être ajouté à la barre d'outils d'une application de courrier électronique qui, lorsqu'il est activé, met instantanément l'utilisateur en contact avec un service, tel qu'un service d'informations d'annuaire, via une session de chat.
En se référant maintenant à la Fig. 1 et en reprenant l'exposé de celui-ci, le réseau 20 peut comprendre un ou plusieurs réseaux locaux (LAN) ou réseaux étendus (WAN), par exemple Internet, reliés par des ponts, routeurs ou analogues conventionnels. Alternativement ou en plus, le réseau 20 peut inclure des réseaux sans fil, des réseaux commutés et d'autres formes de lignes de transmission à opérateur commun et d'équipements qui peuvent relier des systèmes de traitement de données distants, tels que le système de traitement de données 12 au système de fournisseur de services 30.
Le système de fournisseur de services 30 est couplé au réseau 20 pour fournir des services aux principaux communiquant avec le système de fournisseur de services 30 sur le réseau 20 en utilisant des communications de conversation. Le système de fournisseur de services 30 peut être affilié ou non au même fournisseur de services réseau ou fournisseur de services Internet (FAI), le cas échéant, par l'intermédiaire duquel le système de traitement de données 12 accède au réseau 20. Le système de fournisseur de services 30 peut être mis en œuvre, par exemple, par un ou plusieurs systèmes informatiques exécutant un ou plusieurs modules ou processus logiciels. Le système de fournisseur de services 30 est réceptif aux communications, telles que les demandes, des parties qui accèdent au système via des communications instantanées. Dans un sens, le système de fournisseur de services 30 peut être qualifié de « service ». On peut dire que les utilisateurs contactent le service et que les fournisseurs de services exploitent le service, se référant dans les deux cas à la disponibilité du système de fournisseur de services 30 à titre utile.
Comme décrit plus en détail ci-dessous, les services fournis aux mandants par le système de fournisseur de services 30 peuvent inclure, sans s'y limiter, l'assistance-annuaire, l'achèvement d'appel, l'établissement d'une conférence téléphonique, le support client, les services de conciergerie et d'autres services traditionnellement fournis par les fournisseurs de services d'opérateur de téléphonie. Les services peuvent également inclure des services non traditionnellement offerts par les fournisseurs de services d'opérateurs de téléphonie, y compris, sans s'y limiter, l'établissement de vidéoconférences, l'assistance par chat ou par adresse e-mail, ou tout autre service actuellement connu ou envisagé ou développé à l'avenir. Étant donné que ces services offrent une valeur significative, le fournisseur de services 30 peut en outre être couplé à un système de facturation 40 qui détermine les frais associés à l'utilisation des services (par exemple, à un commettant associé au système de traitement de données 12, à un tiers, à une carte d'appel prépayée , etc.).
Il convient de noter que des aspects de la présente invention permettent à une partie demandant des services de créer de telles demandes d'une manière « libre », c'est-à-dire en utilisant un texte lisible par l'homme dans un style naturel proche du langage conversationnel. Le demandeur peut ne pas être tenu de composer des requêtes textuelles obéissant à une certaine syntaxe. L'accès aux services offert conformément aux modes de réalisation de la présente invention peut fournir une interface en langage naturel à de nombreux services qui n'ont jusqu'ici jamais fourni d'interfaces en langage naturel ni peut-être d'interfaces lisibles par l'homme de quelque type que ce soit. Conformément à des modes de réalisation exemplaires actuellement décrits, un dialogue en langage naturel effectué via une session de communication de messagerie peut être utilisé pour invoquer une seconde session de communication distincte qui peut être de nature téléphonique ou sans messagerie. D'une manière nouvelle, une session de discussion textuelle peut être utilisée pour établir une autre session de communication dans laquelle au moins une partie est capable de communiquer sans composer discrètement des messages.
Comme cela sera décrit plus en détail ultérieurement en relation avec la Fig. 3, le système de fournisseur de services 30 peut prendre en charge la fourniture à la fois de stations de messagerie de chat assistées par l'homme (ou « opérateur ») 142 constituant le système de services de chat assisté par l'homme 34 et de stations de messagerie de chat automatisées 140 constituant le système de services de chat automatisé 36. Soit ou à la fois le système de services de chat automatisé 36 et le système de services de chat assisté par l'homme 34 peuvent être inclus dans un système de services basé sur le chat 35. Ainsi, le système de services basés sur le chat 35 comprend une plate-forme de répondants de messagerie et peut prendre en charge la capacité de gérer chaque session avec un système de traitement de données client 12 par une interaction automatisée ou humaine ou une combinaison de celles-ci.
Il sera apprécié par l'homme du métier dans l'art pertinent que l'un quelconque des systèmes de services de chat 34, 35 et 36 peut également être appelé fonctions, services ou processus correspondants et peut être mis en œuvre de diverses manières impliquant, par exemple , le matériel du poste de travail, les connexions réseau et les processus implémentés par logiciel.
En outre, comme cela sera décrit plus en détail ci-dessous en liaison avec la Fig. 3, le système de fournisseur de services 30 comprend de préférence un routeur de session 32 qui dirige les sessions de discussion demandant des services vers les stations répondantes comprenant l'une ou les deux stations de messagerie assistée par l'homme 142 et les stations de messagerie automatisée 140, comme cela est requis ou avantageux pour fournir le service demandé.
Toujours en référence à la fig. 1, le système de communication 10 peut en outre comprendre un système de passerelle 50 couplé au réseau 20 ou au système de fournisseur de services 30 pour prendre en charge l'achèvement des appels entre le système de traitement de données 12 et les stations (par exemple, le téléphone 62) dans les réseaux de téléphonie sans fil ou filaires, tels que le Réseau téléphonique public commuté (RTPC) 60. Le RTPC 60 peut comprendre un équipement de commutation téléphonique et peut en fait représenter toute forme de réseau téléphonique, tel qu'un autocommutateur privé (PBX), un réseau privé virtuel (VPN) ou tout autre type de réseau tel que être apprécié par l'homme du métier.
Comme illustré, le système de passerelle 50 peut logiquement comprendre deux éléments : une passerelle de conversation intelligente 52 qui sert d'interface au système de fournisseur de services 30 et une passerelle de voix sur protocole Internet (VoIP) 54 qui sert d'interface de réseau téléphonique. En général, la passerelle VoIP 54 est une forme de passerelle de téléphonie par paquets similaire à celles bien connues dans l'art et caractérisée par un modèle de passerelle AS5300 fabriqué par Cisco Systems, Inc. Cependant, conformément à un nouvel aspect d'un mode de réalisation préféré de la présente invention, une telle fonction de passerelle est habilitée à générer des communications dans des réseaux disparates plutôt que de simplement transmettre des communications de signalisation et de support entre les réseaux. La passerelle VoIP 54 représente une classe plus large de passerelles de téléphonie par paquets ou de voix sur paquets (VoP), ce qui signifie qu'il est possible d'utiliser des réseaux de transport de données par paquets, que le protocole Internet particulier soit utilisé ou non. Via la connexion 59, la passerelle VoIP 54 s'interface à un réseau téléphonique, tel que PSTN 60. Le long des connexions 75, 78, 82, 84 et 85, la passerelle VoIP 54 peut présenter à peu près le même type d'interface de téléphonie par paquets que celle couramment utilisée pour communiquer avec IP. téléphones, tels que le téléphone IP 92.
Le système de fournisseur de services 30 peut communiquer le long de la connexion 51 avec la passerelle de conversation intelligente 52 pour amener la passerelle 50 à établir des connexions avec l'un ou les deux du réseau 20 et du RTPC 60. La communication le long de la connexion 51 peut comprendre des informations de contact concernant un client de messagerie qui est utilisé par le passerelle pour établir des communications avec le client de messagerie. En réponse aux demandes du système de fournisseur de services 30, la passerelle de discussion intelligente peut également communiquer avec d'autres éléments, tels qu'un convertisseur de communication intelligent, également appelé traducteur multimédia intelligent (IMT), 70 pour coordonner les connexions souhaitées entre les parties.
La passerelle de conversation intelligente 52 peut émettre des instructions ou envoyer des informations le long de la connexion 53 à la passerelle VoIP 54 pour provoquer ou faciliter la formation de voies de communication à travers cette dernière. En pratique, les connexions 51 et 53 peuvent chacune être un chemin de données à travers le réseau 20, peut-être sécurisé par cryptage, pare-feu, pratiques IPsec ou d'autres mesures. En ce qui concerne le système de fournisseur de services 30, la connexion 51 représente une interface de contrôle de réseau par laquelle un ou plusieurs réseaux de communication peuvent être contrôlés, par exemple via la passerelle 50.
La passerelle de discussion intelligente 52, en conjonction avec d'autres éléments tels que le système de fournisseur de services 30, peut mettre en œuvre un procédé de gestion des communications de messagerie via une passerelle, le procédé impliquant la réception d'une indication que les communications doivent être établies via la passerelle, puis provoquant l'engagement de la passerelle , par exemple, dans les communications impliquant un client de chat ou impliquant des communications de messagerie instantanée. Divers éléments de la fig. 1 peut également coopérer pour mettre en œuvre un procédé par lequel la passerelle 50, en fait via la fonction d'interface de messagerie 55, participe à des communications de messagerie instantanée ou à des communications avec des clients ou des serveurs de messagerie instantanée, puis certains aspects des communications via la passerelle, tels que la formation de connexions à partir de RTC 60 au réseau 20, sont affectés par l'activité de messagerie instantanée. De tels procédés peuvent être mis en œuvre en tant que produits de programme informatique pour exécution par des dispositifs de traitement informatique et peuvent être acheminés via un support lisible par ordinateur ou par transmission d'instructions exécutables. Ainsi, dans certaines mises en œuvre, la fonction d'interface de messagerie 55 peut conférer à la passerelle de conversation intelligente 52, ou à la passerelle 50 en général, la capacité d'interagir avec des systèmes de communication instantanée, tels que le service IM 22, en établissant des sessions de communication instantanée impliquant la passerelle 50 ou l'IMT 70. .
L'intégration de la passerelle de conversation intelligente 52 dans la passerelle 50, comme illustré sur la Fig. 1 n'est qu'un mode de réalisation envisagé. Dans divers modes de réalisation, la passerelle de conversation intelligente 52 peut être implémentée dans le matériel et/ou le logiciel en combinaison avec l'un ou les deux du système de fournisseur de services 30 et la passerelle VoIP 54 ou en tant que système autonome. Par exemple, la passerelle de conversation intelligente 52 peut être implémentée en tant que programme logiciel s'exécutant sur un ou plusieurs systèmes informatiques formant une partie du système de fournisseur de services 30. Alternativement, la passerelle de conversation intelligente 52 peut être implémentée en tant qu'adaptateur matériel et/ou module logiciel exécuté par la passerelle VoIP 54. La passerelle 50 peut être considérée comme un élément de réseau dans un réseau ou un système de communication plus vaste comprenant, par exemple, le RTPC 60 et le réseau 20. Il est envisagé que le système de fourniture de services 30 puisse exercer le contrôle ou effectuer la coordination des communications via un ou plusieurs systèmes de communication via une interface de contrôle en agissant sur des éléments de réseau autres qu'une passerelle telle que la passerelle 50.
La passerelle composite 50 peut être plus généralement caractérisée comme une nouvelle forme d'élément de réseau ayant au moins une interface de communication de messagerie par laquelle au moins une action de l'élément de réseau dans un système de communication est affectée par les communications de messagerie. Dans le cadre de sa fonction dans le système de communication, l'élément de réseau peut acheminer ou contrôler le trafic téléphonique ou d'autres formes de trafic sans messagerie. Conformément aux présents enseignements, de nombreux aspects du fonctionnement typique d'éléments de réseau peuvent être contrôlés par des communications de messagerie vers ceux-ci. Certains aspects du transport, du routage et du traitement du trafic de communication effectués par des éléments de réseau dans le système de communication qui peuvent être contrôlés ou affectés par les communications de messagerie, qui peuvent même provenir de demandes en langage naturel soumises via la messagerie instantanée, peuvent inclure, par exemple, la commutation , routage, entrée, sortie, multiplexage, démultiplexage, codage, décodage, surveillance, traduction, transformation, annulation d'écho et autres types de traitement appliqués au trafic.
Conformément à un exemple de mode de réalisation, la passerelle de discussion intelligente (ICG) 52 peut être mise en œuvre en tant que dispositif adaptateur pour faciliter les communications entre les éléments de messagerie, tels que le client de discussion 14, et la passerelle 50 via une interface de contrôle de passerelle, telle que le long de la connexion 53. Connexion 53 représente une interface de contrôle de passerelle en ce qu'il s'agit d'un point par lequel, par exemple, des informations de contrôle passent à la passerelle VoIP 54 pour l'amener à établir des connexions. En figue. 1, la passerelle de conversation intelligente 52 est représentée comme comprenant une fonction d'interface de messagerie 55, donnant à la passerelle 50 la possibilité de s'interfacer avec le service IM 22 dans le rôle d'un participant à la messagerie, au moins dans une certaine mesure. Via la connexion 86, la passerelle 50 peut effectuer des communications avec le service IM 22 au cours de l'établissement de communications impliquant l'une quelconque des connexions 82, 84, 85, 76, 77, 75 et 78, comme cela sera décrit ci-dessous. Via la fonction d'interface de messagerie 55, la passerelle de discussion intelligente 52 peut se coordonner avec le service IM 22 pour établir des communications impliquant le client de discussion 14. De telles communications peuvent être sensibles aux communications entre le système de fournisseur de services 30 et l'ICG 52. Par exemple, le système de fournisseur de services 30 peut fournir une indication à l'ICG 52 que des communications doivent être établies impliquant le client de chat 14. Le système de fournisseur de services 30 peut également fournir d'autres informations concernant lesdites communications ou peut en fait émettre des commandes à l'ICG 52 entraînant finalement des communications entre l'ICG 52 et le client de chat 14 ou entre VoIP passerelle 54 et client de discussion 14.
En réponse aux demandes du système de fournisseur de services 30, par exemple, la passerelle de conversation intelligente 52 peut amener la passerelle VoIP 54 à établir un appel dans le RTPC 60 ou à établir un chemin de données à travers le réseau 20. En ce qui concerne l'ICG 52, la connexion 86 ou la connexion 51 en conjonction avec SPS 30 peuvent être appelés interfaces entre l'ICG 52 et les sources de communications de messagerie telles que le service IM 22 ou le client de discussion 14.
Afin de fournir une connexion vocale de haute qualité, les appels demandés sont de préférence effectués via le réseau de données 20 en utilisant un flux de données voix sur paquets tel qu'un flux de données conforme au protocole de transport en temps réel (RTP), qui peut rivaliser avec un connexion téléphonique de qualité surtaxée. Le protocole de transport en temps réel est décrit dans le document RFC 1889 de l'Internet Engineering Task Force. D'autres techniques pour effectuer le transport de données vocales, telles que le mode de transfert asynchrone (ATM), le relais de trame ou d'autres types de la présente invention. Bien que des types spécifiques de transport de données vocales soient mentionnés dans la description de modes de réalisation exemplaires, la présente invention n'est pas limitée à l'utilisation d'un transport particulier.
En figue. 1, ce type de connexion RTP est représenté par les connexions 82 et 84 via le réseau 20. Comme pour toutes les autres "connexions" représentées sur la Fig. 1, la connexion 82 représente le passage d'informations à travers le réseau 20 dans un sens général et peut ou non être une connexion réelle dans le sens formel des styles de transport de données orientés connexion ou sans connexion. La connexion 82 peut représenter un ou plusieurs chemins compatibles RTP pour les données transportant des signaux vocaux entre le client de discussion 14 et la passerelle VoIP 54. La connexion 84 peut représenter le passage de communications de signalisation pour coordonner la création d'une connexion de transport 82. La connexion 84 peut impliquer divers appels. des protocoles de configuration tels que des éléments de la suite de protocoles ITU H.323 ou du protocole d'initiation de session (SIP) décrits dans le document IETF RFC 3261. Par exemple, pour établir un « appel » avec le client de discussion 14, la passerelle VoIP 54 peut envoyer un SIP Message « INVITE » au client de discussion 14.
En variante, des communications vocales de moindre qualité peuvent être établies si le client de chat 14 prend en charge le chat activé par la voix. Le chat vocal implique le transport « au mieux » des signaux vocaux numérisés à travers le réseau de données et peut impliquer des retards, des distorsions et des interruptions de la parole. De telles dégradations peuvent être acceptables pour certains utilisateurs dans de nombreuses circonstances. En figue. 1, la création d'une session de discussion vocale entre le client de discussion 14 et la passerelle VoIP 54 est représentée par la connexion 86 et la connexion 85. La connexion 86 est facultative et peut permettre à la passerelle 54 d'annoncer sa présence et de localiser le client de discussion 14, bien que cela peut être inutile si les informations de contact sur le client de conversation 14 sont déjà fournies à la passerelle VoIP 54 au cours de la signalisation entre le système de fournisseur de services 30 et la passerelle de conversation intelligente 52 et le long des connexions 51 et 53. La connexion 86 peut, dans certaines mises en œuvre, également servir pour acheminer des communications continues entre le client de conversation 14 et la passerelle VoIP 54 en utilisant le service IM 22 en tant qu'intermédiaire. Il est également possible dans certaines mises en œuvre que la connexion 86 ne soit pas nécessaire pour l'un ou les deux pour lancer et poursuivre les communications et que la connexion 85 puisse servir de connexion directe pour accomplir l'un ou l'autre de ces objectifs.
Une troisième alternative pour les communications entre le client de discussion 14 et la passerelle VoIP 54 implique la traduction entre une interface textuelle sur le client de discussion 14 et une interface audio sur la passerelle VoIP 54. Dans certains modes de réalisation, le système de communication 10 peut en outre comprendre un traducteur d'informations, tel que l'IMT 70. , qui peut comprendre l'un ou les deux d'un module de synthèse vocale 72 et d'un module de synthèse vocale 74 pour effectuer une conversion entre le chat textuel utilisé par le client de chat 14 et les signaux vocaux provenant de téléphones tels que le téléphone 62. module vocal 72 de la Fig. 1 peut représenter un processus ou une fonction de synthèse vocale et peut utiliser la technologie de synthèse vocale DECtalk™ développée par Digital Equipment Corporation, par exemple. Le module parole-texte 74 peut représenter un processus ou une fonction parole-texte et peut utiliser l'une quelconque des technologies de reconnaissance vocale bien connues disponibles auprès de sociétés telles que Nuance, SpeechWorks, International Business Machines ou Dragon Systems, par exemple.
L'IMT 70 peut comprendre un port, une connexion ou une autre interface pour recevoir des signaux vocaux, un processus de conversion parole-texte pour convertir les signaux vocaux reçus en informations textuelles correspondantes, et un port, une connexion ou une autre interface pour fournir finalement les informations textuelles à un client de messagerie, tel que le client de discussion 14. En variante ou en plus, l'IMT 70 peut comprendre un port, une connexion ou une autre interface pour recevoir des informations textuelles d'un client de messagerie, un processus de conversion texte-parole pour convertir les informations textuelles reçues en des signaux vocaux, et un port, une connexion ou une autre interface pour fournir les signaux vocaux via un support de communication, tel qu'une connexion téléphonique ou une session RTP.
Par exemple, sur la Fig. 1, les informations vocales d'un appelant utilisant le téléphone 62 sont acheminées via le RTPC 60 et arrivent sous la forme d'un signal téléphonique conventionnel à la passerelle VoIP 54. La passerelle VoIP 54 convertit les supports téléphoniques reçus en un flux de données en paquets adapté au transport via un réseau de données par paquets, tel en tant que réseau de transport de données 20. Le flux de données en paquets peut être dirigé vers le module parole-texte 74 pour convertir les signaux vocaux reçus en une représentation textuelle. Ces informations textuelles peuvent ensuite être envoyées à une interface de chat textuel du client de chat 14, peut-être sous la forme d'un message de chat typique, via le réseau 20 et peut-être impliquant le service IM 22. Du point de vue du client de chat 14, l'IMT 70 peut en effet ' semblent être simplement un autre client de chat. Un expéditeur de messagerie instantanée facultatif 79a est représenté le long de la connexion 76 représentant une nouvelle adaptation du module parole-texte 74 pour effectuer des communications instantanées avec le client de chat 14, bien que l'homme du métier appréciera qu'une telle adaptation puisse être considérée comme étant une entité distincte ou étant intégrée dans la fonction de l'IMT 70 ou du processus de conversion parole-texte 74. Dans tous les cas, grâce au module parole-texte 74, un utilisateur du client de conversation 14 verra des messages de conversation représentant des énoncés vocaux de la personne qui utilise le téléphone 62.
Tel qu'utilisé ici, le terme « parole » peut inclure des énoncés audio parlés ainsi que des informations audio non prononcées telles que des tonalités, des signaux ou des sons audibles qui ont une signification ou une signification communément reconnue ou au moins mutuellement convenue entre les parties communicantes. Par exemple, des rires, des tonalités musicales, des effets sonores, des signaux DTMF ou d'autres sons audibles familiers peuvent communiquer des informations ou exprimer des pensées et des émotions. Des modes de réalisation de la présente invention peuvent avantageusement comprendre divers aspects de reconnaissance, d'interprétation et de production de tels sons comme moyen d'améliorer les communications entre les parties. Une application pratique de ceci pourrait être de permettre à un utilisateur du système qui génère des informations textuelles d'interagir avec un système de traitement vocal qui est habitué à recevoir des tonalités DTMF en entrée.
Dans la discussion de l'IMT 70, « texte » ou « information textuelle » peut faire référence, par exemple, à des symboles, des caractères et des représentations d'éléments visuels ou tactiles qui peuvent ou non être des mots réels selon une langue écrite ou parlée donnée. Ainsi, il doit être compris que le module texte-parole 72 et le module parole-texte 74 peuvent fonctionner pour convertir vers/depuis des signaux audibles autres que des mots prononcés et pour convertir vers/depuis des données représentant des informations autres que des mots.
Dans le cadre de la facilitation des communications entre une partie utilisant un client de communications instantanées et une autre partie utilisant une connexion téléphonique, un aspect nouveau des présents enseignements concerne la manière dont les symboles, appelés « émoticônes » et apparaissant souvent avec des informations textuelles, peut être utilisé pour transmettre des émotions, des pensées ou des impressions.
Étant donné que les sessions de messagerie instantanée, en particulier les sessions de discussion en ligne, peuvent utiliser un certain nombre d'abréviations conventionnelles et de soi-disant « émoticônes », le module de synthèse vocale 74 et le module de synthèse vocale 72 peuvent utiliser des dictionnaires spécialisés (non illustrés). qui répertorient les équivalents appropriés pour effectuer la conversion entre la parole et le texte ou les symboles. Par exemple, le « LOL » couramment utilisé peut être traduit par l'équivalent parlé de « rire à haute voix » ou par un effet sonore qui ressemble à du rire. Les dictionnaires peuvent être personnalisables pour s'adapter aux préférences des interlocuteurs utilisant le système 10.
L'IMT 70 peut agir pour reconnaître des sons et restituer, dans la conversion effectuée par le module parole en texte 74, des représentations textuelles ou symboliques qui correspondent aux sons selon une certaine mise en correspondance conventionnelle ou souhaitée. Par exemple, les mots prononcés « rire à haute voix » ou encore la détection de sons de rire d'une partie peuvent évoquer un « LOL » textuel ou similaire qui est transmis à l'autre partie qui utilise une interface textuelle. En outre, pour faciliter une telle détection ou fournir un contrôle plus délibéré pour les parties communicantes, l'IMT 70 peut être réceptif aux commandes verbales et aux délimiteurs de commandes indiquant qu'un son ou un énoncé parlé doit être interprété selon cette caractéristique plutôt que comme des mots littéraux. Par exemple, un correspondant peut dire « insérer » ou « émoticône » suivi d'une expression souhaitée telle que « rire », « froncer les sourcils », « perplexe », etc. En reconnaissant un tel mot-clé, l'IMT 70 interprétera les sons adjacents et mappera le sons détectés dans des symboles appropriés à envoyer à une autre partie.
Lors de l'exécution de la conversion, l'IMT 70 peut être réceptif à d'autres signaux tels que des signaux DTMF. Lors de la communication via l'IMT 70, une personne utilisant un téléphone peut être en mesure d'appuyer sur des chiffres sur un clavier de numérotation pour avoir des émoticônes spécifiques ou d'autres symboles inclus dans la sortie textuelle du module de conversion. Par exemple, une représentation « smiley » peut être envoyée à un utilisateur de communications instantanées en réponse à un utilisateur de téléphonie entrant une séquence telle que « #8 » ou « 486 », dont cette dernière suit la forme d'un sourire sur un standard. Clavier à 12 touches. Les tonalités DTMF peuvent également être utilisées pour implémenter des délimiteurs de commandes reconnaissables dans le contexte de la discussion précédente.
Au cours de la conversion de la parole et d'autres signaux audibles en symboles ou texte correspondants, l'IMT 70 peut également effectuer une traduction entre différentes langues parlées et écrites, par exemple, convertir un texte anglais en parole espagnole et vice-versa. La décision d'invoquer ce type de conversion peut être effectuée dynamiquement en réponse à une entrée des parties lorsque les communications sont établies. En variante, les préférences linguistiques ou les compatibilités de l'une ou des deux parties peuvent être connues ou conservées dans une base de données de profils ou exprimées par des dispositifs, tels que le client de discussion 14, pour affecter la manière dont l'IMT 70 gère les communications. La conversion de langue peut être proposée en option aux utilisateurs et, d'un point de vue commercial, peut être proposée moyennant des frais supplémentaires pour compenser les coûts ou fournir une opération rentable pour un fournisseur de services.
Comme l'IMT 70 effectue la conversion, la manière dont chaque partie perçoit l'autre partie peut être affectée par l'interaction via le traducteur. Par exemple, un correspondant masculin utilisant un client de communications instantanées, tel que le client de chat 14, préférera probablement que toute parole synthétisée le représentant à un utilisateur de téléphonie soit rendue dans une voix masculine. D'autres aspects du rendu de la parole, tels que l'âge approximatif du locuteur, les caractéristiques vocales, l'inflexion et le dialecte local peuvent être modifiables ou configurables et peuvent être ajustés dynamiquement ou selon, par exemple, un profil maintenu pour un utilisateur donné. Dans certaines mises en œuvre, une partie peut choisir d'utiliser un personnage de discours fantaisiste ou qui émule les caractéristiques d'une personnalité reconnaissable populaire. Les utilisateurs peuvent payer une prime à un fournisseur de services pour l'utilisation de ces services personnalisés.
Un autre aspect de la façon dont une partie « expérimente » une autre partie concerne l'identification des parties les unes aux autres, en particulier la partie qui utilise un client de communications instantanées d'une certaine nature. Lors de la conduite de communications de messagerie, par exemple, une partie verra des messages de discussion provenant d'une autre partie, les messages de discussion ayant en fait été composés par le module parole-texte 74 sur la base d'une entrée vocale de l'autre partie. Le nom d'écran apparent de la partie distante peut être soumis à un contrôle dynamique lors de l'établissement de communications ou peut être affecté par un profil de préférences d'utilisateur consulté par le système 10 au cours de la fourniture du service de communication. Selon diverses mises en œuvre, la présentation de l'identité de l'utilisateur distant à l'utilisateur de messagerie peut comprendre un nom d'écran, une image ou une représentation iconique, un extrait sonore ou tout autre élément présentable. La manière dont une partie donnée souhaite être présentée à une partie distante peut faire l'objet d'une interaction avec un opérateur ou un système de fourniture de services interactifs pendant ou en préparation de l'établissement de communications impliquant les parties. Un fournisseur de services peut éventuellement évaluer des frais facturables à l'une ou aux deux parties liés à la fourniture, à l'utilisation ou à l'invocation de certaines de ces caractéristiques de présentation.
En ce qui concerne le couplage de l'IMT 70 au client de conversation 14, les connexions 76, 77 peuvent être mises en œuvre comme des communications à travers le réseau 20 même si, pour des raisons de simplicité, elles sont représentées comme des connexions directes sur la Fig. 1. De plus, les connexions 76, 77 peuvent être manipulées via le routeur de session 32. Autrement dit, de la même manière que le routeur de session 32 effectue le transfert entre les stations de messagerie au sein du SPS 30, le routeur de session 32 pourrait provoquer des communications à partir du client de discussion 14 le long de la connexion 24. , par exemple, pour être simplement redirigé vers l'IMT 70. Les avantages de cette opération sont que l'utilisateur du client de discussion 14 connaît la continuité de la session d'origine et qu'un répondant dans le SPS 30 peut rester en conférence sur les communications suivantes, peut-être afin de faciliter les communications initiales avec une deuxième partie.
De la même manière, le module de synthèse vocale 72 peut agir comme une entité de discussion impliquée dans les communications de discussion avec le client de discussion 14. Un récepteur de messagerie instantanée facultatif 79b est illustré le long de la connexion 77 pour adapter le module de synthèse vocale 72 pour agir comme un client de messagerie instantanée du destinataire. Comme pour l'expéditeur 79a, le récepteur 79h peut être implémenté comme, ou au moins conceptuellement considéré comme étant soit séparé ou intégré à l'IMT 70 ou au processus de conversion texte-parole 72. L'expéditeur 79a et le récepteur 79b peuvent en fait être implémentés comme un processus de messagerie unique, similaire à la manière dont le client de discussion 14 effectue des communications via la connexion 24, et peut effectuer à la fois l'envoi et la réception via une seule adresse réseau et un seul numéro de port. Lorsqu'une connexion est établie via la passerelle VoIP 54 et l'IMT 70, un correspondant utilisant le téléphone 62 entendra la parole synthétisée représentant les messages de discussion tels qu'ils sont reçus du client de discussion 14.
Bien que cela ne soit pas explicitement montré sur la Fig. 1, le passage de signaux téléphoniques en paquets le long des connexions 75 et 78 peut impliquer des interfaces assembleur/désassembleur de paquets et codec pour adapter les processus de conversion dans les modules 72 et 74 d'une manière nouvelle pour prendre en charge les présents enseignements. Il convient de noter que les connexions 75 et 78 peuvent représenter d'autres formes de connexion de canal support, telles que des signaux TDM provenant directement d'un réseau téléphonique tel que le RTPC 60. Dans le but de coupler un interlocuteur au téléphone 60 ou au téléphone IP 92 au client de conversation 14 à IMT 70, les signaux vocaux peuvent traverser un réseau de transport de données (utilisant par exemple RTP) ou un réseau téléphonique (sous forme de signaux analogiques ou TDM) ou une combinaison de réseaux de transport. La conception de l'IMT 70 peut varier en conséquence pour fonctionner avec des signaux téléphoniques sous la forme appropriée. L'utilisation de RTP pour acheminer des signaux vocaux vers/depuis l'IMT 70 comme le montre la Fig. 1 est considéré comme avantageux pour la compatibilité avec la passerelle VoIP 54 et sa capacité à effectuer alternativement des communications RTP directement avec des clients de chat correctement équipés 14.
En figue. 1, l'IMT 70 est représenté comme comprenant en outre au moins un contrôleur 73 qui peut s'interfacer avec, ou être en communication avec, l'un ou les deux de la passerelle de conversation intelligente 52 et du système de fournisseur de services 30 tel que représenté par les connexions 80. Le contrôleur 73 peut fonctionner pour recevoir des instructions ou des commandes du système de fournisseur de services 30 ou de la passerelle de conversation intelligente 52 à des fins de coordination des connexions telles que les communications vocales RTP le long des connexions 75 et 78 et les communications textuelles le long des connexions 76 et 77. Le contrôleur 73 peut participer à l'allocation des ressources de texte-à- module vocal 72 ou module parole-texte 74 et à déterminer l'adressage ou les numéros de port par lesquels ces modules sont engagés en communication avec d'autres éléments. Dans certains modes de réalisation, le contrôleur 73 peut émettre des commandes ou des informations le long des connexions 80, amenant l'un ou les deux du système de fournisseur de services 30 et de la passerelle de conversation intelligente 52 à établir des communications impliquant l'IMT 70.
Par l'intermédiaire du contrôleur 73 ou similaire, l'IMT 70 peut fournir un moyen d'interface de commande approprié pour communiquer divers types d'informations au cours de l'organisation des communications via l'IMT. Quelques exemples de types d'informations qui peuvent être communiquées via l'interface comprennent : un identifiant correspondant au client de messagerie, un identifiant correspondant à un flux RTP, une adresse IP, un identifiant correspondant à un port d'entrée de signal vocal du traducteur, un identifiant correspondant vers un port de sortie de signal vocal du traducteur, un identifiant correspondant à un port de réception d'informations textuelles du traducteur, un identifiant correspondant à un port de sortie d'informations textuelles du traducteur, un identifiant correspondant à une session impliquant le traducteur, un identifiant correspondant à une instance des moyens de traduction parole-texte, et un identifiant correspondant à une instance des moyens de traduction texte-parole.
Il convient de noter qu'un appelé participant à des communications via une connexion téléphonique, par exemple via une session de voix sur paquets RTP directement avec le client de discussion 14 ou via l'IMT 70, peut effectuer une communication vocalement via un téléphone et sans avoir à composer messages discrets. En d'autres termes, la messagerie ou d'autres communications instantanées entre un mandant utilisant le client de chat 14 et le système 10 peuvent donner lieu à d'autres communications encore dans lesquelles au moins certaines de ces dernières communications n'impliquent pas de messagerie ou dans lesquelles au moins une des parties communicantes n'a pas composer et envoyer des messages discrets.
En figue. 1, le système de fournisseur de services 30 est également représenté comme étant couplé au RTPC 60 via la connexion 56, représentant un couplage à toute forme de réseau téléphonique public ou privé. Le système de fournisseur de services 30 peut s'engager dans la signalisation téléphonique ou se coordonner d'une autre manière avec des systèmes et commutateurs téléphoniques pour fournir des services aux commettants. En outre, la connexion 71 représentée couplant le PSTN 60 à l'IMT 70 représente une connexion téléphonique, telle qu'une ligne téléphonique ou une ligne réseau, par laquelle l'IMT 70 peut communiquer des signaux téléphoniques avec un réseau téléphonique. Comme décrit plus en détail ci-dessous, les connexions 56 et 71 permettent une variété d'interactions ou de coopération avec un réseau téléphonique. Par exemple, chaque fois qu'il est décrit que la passerelle 50 amène le client de conversation 14 à communiquer avec le téléphone 60, il faut comprendre qu'un fonctionnement analogue via les connexions 56, 71 et PSTN 60 peut de manière similaire accomplir une connexion des parties impliquées.
L'homme du métier reconnaîtra que divers éléments représentés sur la Fig. 1 peut être combiné ou séparé tout en accomplissant toujours la même opération générale décrite ici. Par exemple, la fonction de l'IMT 70 peut être intégrée à la passerelle VoIP 54 formant un nouveau dispositif ou sous-système passerelle capable de s'interfacer directement entre un réseau téléphonique et un client de chat. L'homme du métier reconnaîtra également que, étant donné l'exemple de réalisation décrit dans la Fig. 1, une variété de techniques et de séquences d'événements peuvent être utilisées pour coordonner la formation et la dissolution des communications entre divers éléments et qu'une variété de connexions de signalisation ou de contrôle peuvent être ajoutées pour permettre à chaque élément de recevoir ou d'émettre des instructions « établissement d'appel ». Pour réaliser les fonctions décrites ici, un ou plusieurs des éléments représentés à la Fig. 1 peuvent être coordonnés dans leurs actions à l'aide d'un ou plusieurs contrôleurs, par exemple en utilisant une technologie de commutateur logiciel telle que recommandée par l'International Softswitch Consortium ou un arrangement de contrôle tel que décrit dans le brevet U.S. Nos. N° 6 098 094. Par exemple, un contrôleur 90 peut être couplé à tout ou partie des éléments de la Fig. 1 via le réseau 20 ou par un réseau séparé ou des connexions point à point. Comme cela apparaîtra à l'homme du métier, le contrôleur 90 peut envoyer des signaux à divers éléments via le réseau 20 pour accomplir les fonctions décrites ici.
Une telle conversion entre le texte du chat et les signaux vocaux peut être souhaitable ou nécessaire si, par exemple, un pare-feu de sécurité intranet à travers lequel le client de chat 14 communique est configuré pour bloquer les sessions IP en streaming du type utilisé pour acheminer la communication vocale ou parce qu'un client de chat particulier 14 ou le système de traitement de données 12 ne prend pas en charge la communication vocale (par exemple, n'est pas équipé d'un microphone).
En référence maintenant à la Fig. 3, il est illustré une description plus détaillée du réseau 20 et du système de fournisseur de services 30 (tels qu'introduits sur la figure 1) conformément à un mode de réalisation de la présente invention. Comme illustré, le réseau 20 comprend ou est couplé à un certain nombre de serveurs de messagerie instantanée 130a-c représentant différents services de messagerie instantanée (par exemple, AIM, MSN® Messenger, Yahoo!® Messenger, etc.). Comme mentionné précédemment, en fonction de la mise en œuvre, chaque service de messagerie instantanée peut ou non rester impliqué dans la transmission des messages de discussion après qu'une session entre les parties a été initiée. Chaque serveur de messagerie instantanée 130 peut fournir une fonctionnalité de présence et, dans certains cas, la présence peut être la fonction principale apportée par le serveur.
Le réseau 20 peut facultativement inclure, ou être couplé à, un répertoire de nom d'écran de service de chat global (CSSN) 132, auquel un utilisateur peut accéder via le client de chat 14 pour apprendre le ou les CSSN d'un fournisseur de services. Les CSSN appris à partir du répertoire CSSN mondial 132 peuvent ensuite être utilisés pour lancer des sessions de discussion et peuvent être ajoutés sélectivement à la liste d'amis 120 du client de discussion 14, comme décrit ci-dessus. Selon la disponibilité des noms d'écran, le CSSN pour un service donné peut être commun à tous les fournisseurs de services de messagerie instantanée ou peut être quelque peu différent parmi les fournisseurs, encourageant peut-être l'utilisation du répertoire 132. En général, tout au long de la présente description, les références à ' CSSN' doit être compris comme signifiant l'un ou les deux du nom d'écran du service de chat global tel que décrit ci-dessus ou un nom d'écran pour le service basé sur le chat tel qu'il est connu dans le contexte d'un service de messagerie instantanée particulier. Ces deux noms d'écran permettent de connaître le service et d'y accéder d'une manière ou d'une autre.
Comme illustré plus en détail sur la Fig. 3, le système de fournisseur de services (SPS) 30 comprend un système de services basé sur le chat 35 et un routeur de session facultatif 32, qui fournit une interface entre le réseau 20 et le système de services basés sur le chat 35. En vertu du système de services basé sur le chat 35, le SPS 30 peut être désigné comme étant, ou au moins comprenant, un système de réponse de messagerie. Le système de services basé sur le chat 35 peut fournir à la fois une réponse humaine via zéro ou plusieurs (dans ce cas, "m") postes de messagerie d'opérateur 142 et une réponse automatisée via zéro ou plus (dans ce cas, "n") postes de messagerie automatisés (appelés ici comme « chatbots ») 140. Les services basés sur le chat fournis par les stations de messagerie 140, 142 peuvent inclure, sans s'y limiter, l'un des plus d'une centaine de services actuellement fournis par les services d'opérateur de téléphonie (par exemple, l'assistance-annuaire téléphonique, l'achèvement d'appel, assistance, services de conciergerie, etc.) ou d'autres services non traditionnellement offerts par les services d'opérateurs de téléphonie (par exemple, assistance d'annuaire de chat, services de recherche d'informations, aide à la navigation interactive sur le Web, etc.).
Dans un premier mode de réalisation dans lequel le routeur de session 32 est omis, chaque station de messagerie 140, 142 a un CSSN différent (et peut-être un CSSN différent pour chaque service de messagerie instantanée) pour permettre une communication d'égal à égal entre les clients de discussion 14 et des stations de messagerie particulières. 140, 142. Chaque station 140, 142 peut se connecter à un ou plusieurs services de messagerie instantanée. Les clients de chat 14 peuvent prendre connaissance d'un ou plusieurs CSSN par lesquels atteindre les clients de chat dans un but particulier. Les CSSN des stations 140, 142 peuvent, par exemple, se conformer à un nom générique suivi d'un spécificateur tel que « DirAsst67 ». Le fournisseur de services pourrait faire savoir aux utilisateurs potentiels qu'un pseudonyme de « DirAsst » suivi de deux ou trois chiffres atteindra un agent de chat offrant un service donné. En moyenne, chacune des stations ayant des noms d'écran « DirAsst01 » à « DirAsst99 » recevra un volume approximativement égal de demandes, surtout si les utilisateurs sont encouragés à utiliser des numéros distribués de manière aléatoire tels que les deux derniers chiffres de leur numéro de téléphone ou émis par le gouvernement. numéro d'identification personnel. Si une station est surchargée de demandes et ne répond pas à temps, les utilisateurs peuvent essayer un pseudonyme différent dans la même « famille » de pseudonymes mais ayant un suffixe différent.
En variante, un répertoire peut être fourni par lequel un utilisateur peut obtenir d'un fournisseur de services un nom d'écran à utiliser temporairement. Ceci est comparable à la fonctionnalité de présence, sauf que l'état de disponibilité d'un écran exact n'est pas obtenu. Au lieu de cela, l'utilisateur peut demander en utilisant un nom d'écran générique et recevoir un nom d'écran spécifique actuellement disponible.
Une interface par laquelle l'utilisateur peut obtenir un nom d'écran temporaire peut être elle-même via une session de discussion avec un fournisseur de services utilisant un nom d'écran cohérent. Par exemple, un utilisateur peut contacter un nom d'écran de "DirAsst" annoncé par le fournisseur de services pour être une source d'informations. La session de discussion avec « DirAsst » peut fournir une réponse à l'utilisateur d'un nom d'écran d'un répondant de discussion disponible à une adresse plus spécifique telle que « DirAsst34 ». L'utilisateur peut alors commencer une session de discussion avec « DirAsst34 » libérant « DirAsst » pour acheminer d'autres requêtes initiales vers d'autres stations.
Dans une légère variation de cette approche, la demande à « DirAsst » peut être immédiatement déléguée à un autre répondant tel qu'un poste 140, 142 dans le système 30. Des informations suffisantes sur le client de chat demandeur glanées à partir de la demande de chat initiale peuvent être transmises à une station subordonnée qui pourrait alors engager le demandeur. Le principal qui a initié la demande adressée à « DirAsst » pourrait bientôt recevoir en retour une réponse de « DirAsst45 » ou « Operator6 » ou de tout autre pseudonyme correspondant à la station attribuée.
Ces approches sont avantageuses pour permettre au fournisseur de services de maintenir n'importe quel nombre de stations à un moment donné, au lieu d'avoir exactement une centaine ou un millier de participants au chat en ligne à tout moment. De telles approches permettent également une distribution dynamique entre les stations sous le contrôle du fournisseur de services.
Conformément à un autre mode de réalisation de la présente invention, plusieurs (et de préférence toutes) les stations 140, 142 utilisent un CSSN commun pour chaque offre de service distincte (par exemple, « Services d'appels » et « Conciergerie » de la figure 2), de sorte que plusieurs utilisateurs des services de messagerie instantanée éventuellement différents peuvent mener simultanément des sessions de discussion privées avec plusieurs stations 140, 142 sous un CSSN commun. Ainsi, les utilisateurs ont la possibilité d'apprendre et de se souvenir d'un seul CSSN pour chaque offre de service (ou même plusieurs offres de service), tout comme la fourniture de services d'appels à frais virés en composant le numéro de téléphone « 1-800-COLLECT ». Afin de prendre en charge le partage d'un CSSN par plusieurs stations 140, 142, le deuxième mode de réalisation comprend un routeur de session 32 interposé entre le système de services basés sur le chat 35 et le réseau 20 pour distribuer les demandes de chat adressées à un seul CSSN à plusieurs stations 140, 142. Le routeur de session 32 peut réaliser la "conférence" de plusieurs services de conversation et/ou stations 140, 142 dans la même session de conversation. En plus d'acheminer les demandes de chat vers les chatbots 140 et les postes opérateurs 142, le routeur de session 32 peut faciliter le transfert d'une session de chat d'un poste répondant à un autre ou d'un service basé sur le chat à un autre service basé sur le chat. Le routeur de session 32 peut être impliqué dans le routage des communications vers d'autres fournisseurs de services, tels qu'un fournisseur de services exploitant une banque de participants au chat similaire au SPS 30. Le routeur de session 32 ou SPS 30 peut également être en mesure d'acheminer les communications vers des ressources externes telles que communications téléphoniques ou à un système de prestation de services accessible par téléphone.
Une première partie et une seconde partie peuvent adresser des demandes au système fournisseur de services, la demande de l'une ou l'autre partie étant adressée à un nom d'écran commun ou à un autre identifiant spécifiant le système fournisseur de services. En outre, chaque partie accédant au système de fourniture de service reçoit des réponses qui semblent provenir du nom d'écran générique par lequel chaque partie a adressé des communications au service. En d'autres termes, une première partie qui a initié des communications en utilisant un pseudonyme tel que « Concierge » recevra des réponses dans lesquelles l'identifiant de l'expéditeur du message indiquera de la même manière « Concierge ». Une première partie et une seconde partie utilisant le service recevront des réponses ayant le même identifiant d'expéditeur. Les deux parties connaîtront la communication avec le « Concierge » même si elles peuvent en fait converser avec différentes stations de messagerie 140, 142 au sein du système fournisseur de services 30. Le processus de routage de session 136 fonctionne à la fois sur la messagerie de demande entrante et la messagerie de réponse sortante pour réaliser cette transparence.
Outre la transparence dont bénéficie le demandeur via le client de discussion 14, cette approche est avantageuse pour « masquer » les noms d'écran des stations individuelles et bloquer les tentatives d'étrangers pour atteindre une station particulière chaque fois qu'ils accèdent au système. Un nouvel aspect du routeur de session 32 est que, contrairement aux approches de messagerie IM typiques, il achemine les messages entrants sur la base de l'identification d'un client de conversation 14, ou d'une partie l'utilisant, plutôt que de l'adresse du destinataire contenue dans le message. Bien entendu, dans le scénario qui vient d'être décrit, tous les messages entrants auront la même adresse de destinataire, à savoir le CSSN correspondant au SPS 30. Ainsi, le choix de la station de messagerie du système de services de chat 35 recevant un message entrant est déterminé par le routeur de session et non par la partie qui a envoyé le message.
Dans le mode de réalisation représenté, le routeur de session 32 comprend une pluralité de passerelles d'agent 134a-c, qui fournissent chacune une interface pour un serveur de messagerie instantanée respectif 130. Les passerelles d'agent 134a-c rendent transparente la présence de station(s) de messagerie 140, 142 fournissant service aux utilisateurs. Il est possible de mettre en œuvre les stations 140, 142 sous la forme d'un ou plusieurs processus répartis sur un ou plusieurs dispositifs informatiques, même via des systèmes géographiquement répartis et/ou des services Web.
Comme indiqué sur la Fig. 3, afin de traiter un grand nombre de requêtes simultanées, plusieurs instances de chaque type de passerelle d'agent peuvent être instanciées, avec des techniques d'équilibrage de charge mises en œuvre pour gérer le trafic entre ces instances de chaque passerelle d'agent 134a-c. Cette approche peut également être avantageuse dans des mises en œuvre utilisant une redondance géographique pour améliorer la capacité de survie du système.
Chaque passerelle 134a-c agit en tant que client de discussion par rapport à un service de messagerie instantanée ou de présence particulier. L'utilisation de différents types de passerelles est rendue nécessaire par la diversité des technologies de messagerie instantanée propriétaires utilisées par les services via les serveurs 130a-c. Chaque service 130a-c représente une « marque » particulière de service de messagerie instantanée ou de service de présence ou une combinaison de ceux-ci. Il n'existe pas encore de norme commune selon laquelle les serveurs 130a-c peuvent interagir. Si et quand une telle interopérabilité est réalisée, alternativement ou en plus, une passerelle d'agent "universelle" peut être mise en œuvre pour prendre en charge la communication avec deux ou plusieurs services de messagerie instantanée qui utilisent un protocole de messagerie instantanée commun. Chaque passerelle d'agent 134a-c traduit la communication entre le protocole de messagerie instantanée utilisé dans la communication avec le système de traitement de données 12 via le réseau 20 et un protocole interne commun (par exemple, IP, un protocole de messagerie basé sur des normes ou un protocole de messagerie propriétaire) utilisé au sein du fournisseur de services système 30 pour la communication entre le routeur de session 32 et le système de services basés sur le chat 35. Bien que la plupart des communications de chat soient sans état et non cryptées, les divers protocoles de messagerie instantanée peuvent en outre exiger que les passerelles d'agent associées 134a-c gèrent les informations d'état et prennent en charge les implémentations de sécurité, telles que comme le cryptage, la certification, etc.
Le routeur de session 32 comprend en outre une ou plusieurs instances d'un processus de routage de session 136 (décrit en détail ci-dessous) qui achemine la communication entrante reçue des passerelles d'agent 134a-c vers les stations sélectionnées 140, 142 pour le service. Le processus de routage de session 136 achemine également les communications sortantes reçues des stations 140, 142 vers la passerelle d'agent appropriée 134a-c pour transmission à un client de conversation 14.
Comme en témoignent les connexions 24 et 25 de la Fig. 1 et par les passerelles d'agent 134a-c de la Fig. 3, le routeur de session 32 fournit une interface de système de messagerie utilisable pour communiquer des communications de messagerie entre un système de réponse par message et des parties accédant aux services fournis par le système de réponse par message.
En se référant maintenant à la Fig. 4, il est décrit un exemple de procédé par lequel le système de fournisseur de services 30 s'enregistre auprès d'un ou plusieurs fournisseurs de services de messagerie instantanée 103a-c pour les informer qu'un nom d'écran de service basé sur le chat (CSSN) est en ligne et disponible pour fournir un service. Comme indiqué au numéro de référence 150, lorsque chaque station 140, 142 dans le système de services basés sur le chat 35 devient disponible pour le service, généralement au démarrage du système, la station 140, 142 enregistrera son ou ses noms uniques (par exemple, nom logique, ID numérique ou adresse réseau) et son ou ses CSSN associés (si plusieurs CSSN sont utilisés) avec le processus de routage de session 136.
Dans le cadre de ce processus d'enregistrement, la station peut également informer le processus de routage de session 136 de ses capacités. Les capacités sur lesquelles une station peut informer le processus de routage de session 136 comprennent, par exemple, les langues prises en charge, les services fournis, les sessions simultanées pouvant être desservies, les services de messagerie instantanée (IM) et les types de supports pris en charge, les coûts de service, etc. . 5A, le processus de routage de session 136 entre ces informations dans les champs 164, 166, 167 et 168 d'une entrée de table d'enregistrement correspondante 162 d'une table d'enregistrement 160 (ou autre structure de données) maintenue par le processus de routage de session 136. Il convient de noter qu'une station peut se réenregistrer à tout moment pour informer le processus de routage de session 136 de capacités nouvelles ou changeantes, par exemple, pour mettre à jour dynamiquement le nombre de sessions ou de services pris en charge simultanément qui peuvent être fournis.
Sur la base de l'enregistrement des stations avec le processus de routage de session, une station de messagerie particulière peut être sélectionnée pour être associée à une partie donnée qui communique avec le système de fourniture de services. Cette sélection peut prendre en compte, par exemple, des informations de disponibilité relatives à la disponibilité de la station de messagerie telle que rapportée au routeur de session, au niveau d'activité de la station de messagerie, à l'aptitude de la station de messagerie à communiquer avec le correspondant, aux ressources disponibles pour la station de messagerie. , des capacités de la station de messagerie, une association préétablie de la station de messagerie avec la partie, et un attribut de la partie répondant aux critères pour être géré par la station de messagerie. L'association préétablie peut concerner la fourniture de services personnalisés comme décrit précédemment en relation avec la Fig. 2. En outre, certains des critères ou aspects d'adéquation peuvent se rapporter, par exemple, à la langue qu'un correspondant souhaite utiliser et aux stations capables de converser dans la langue souhaitée. Certains critères ou aspects d'adéquation peuvent être liés au sexe, à la personnalité, aux attributs personnels ou aux préférences de la partie desservie ou du répondant. Cela peut même s'étendre à la volonté du répondant à une station de messagerie de s'engager dans certains types d'interactions ou de services.
L'état de disponibilité de chaque station 140, 142 peut être présenté dans le champ d'informations d'état 167 des entrées 162 dans la table d'enregistrement 160. Par exemple, les valeurs de ce champ peuvent représenter qu'une station donnée est disponible pour gérer de nouvelles sessions, est indisponible ou est entièrement occupé par des séances de manipulation. Ces informations, ainsi que les informations du champ de capacités 166, peuvent être utilisées pour décider comment allouer des stations pour gérer les sessions.
En utilisant les champs 167, 168 des entrées de table d'enregistrement 162 dans la table d'enregistrement 160 (ou un autre mécanisme de suivi approprié), le processus de routage de session 136 de la Fig. 4 suit de préférence lequel des un ou plusieurs CSSN employés par les stations 140, 142 dans le système de services basés sur le chat 35 sont connectés aux divers services de messagerie instantanée disponibles. En variante, l'état de connexion au sein des divers services de messagerie instantanée peut être maintenu par les passerelles d'agent 134a-c ou déterminé en interrogeant chaque service de présence des serveurs 130a-c. Le processus de routage de session 136 peut également transmettre ces informations d'état de connexion aux stations 140, 142 si cela est souhaitable ou requis par les stations 140, 142.
Il peut être préférable dans de nombreuses mises en œuvre que chaque station 140, 142 soit capable de gérer des sessions appartenant à plusieurs CSSN. Une station peut être capable de prendre en charge l'agilité entre plusieurs CSSN ou peut même être capable de gérer simultanément des sessions provenant de plusieurs CSSN. Il est particulièrement intéressant de noter que chaque station peut également être capable de mener des sessions avec plusieurs parties qui accèdent au service en utilisant différents services de messagerie instantanée 130a-c. De plus, grâce au processus de routage de session 136 résolvant l'identification de session sur la base à la fois de l'adresse du client de discussion 173 et du CSSN 174 dans la table 170, une partie donnée accédant au système peut être simultanément desservie par une ou plusieurs stations 140, 142. Par exemple, un principal peut utiliser deux services différents auxquels on accède à l'aide de deux CSSN différents, mais au sein du système de fourniture de services, les sessions sont routées indépendamment les unes des autres, quelle que soit l'adresse commune du client de discussion. Le principal accédant au service peut ne pas savoir que les deux sessions sont desservies par le même système de fourniture de services ou peut-être même par le même poste répondant.
Lorsque le processus de routage de session 136 détermine qu'un CSSN utilisé par une station 140, 142 s'enregistre auprès du processus de routage de session 136 et n'est pas actuellement connecté à un service de messagerie instantanée, le processus de routage de session 136 envoie une demande de connexion aux passerelles d'agent associées 134a-c , comme indiqué au numéro de référence 152 de la Fig. 4. Généralement, en réponse à une ou plusieurs stations indiquant la disponibilité aux passerelles d'agent 134a-c, les passerelles d'agent 134a-c, utilisant le(s) protocole(s) approprié(s), se connecteront chacune à leurs services de messagerie instantanée respectifs en utilisant le(s) CSSN(s). ) pour laquelle le prestataire est alors réceptif aux sessions des utilisateurs. Cette action est représentée par le numéro de référence 154. Dans les modes de réalisation dans lesquels plus d'une instance d'une passerelle d'agent 134a-c est fournie pour au moins un service de messagerie instantanée, il est préférable qu'une seule instance d'une passerelle d'agent particulière 134 (par exemple, sélectionné par défaut ou par arbitrage) connecte un CSSN à la messagerie instantanée associée. Sinon, une tentative de connexion peut échouer ou amener le service de messagerie instantanée à déconnecter une passerelle d'agent précédemment connectée 134 partageant le même CSSN pour ce service de messagerie instantanée.
En référence maintenant à la Fig.6, il est représenté un exemple de flux de messages de discussion par lequel un principal associé au client de discussion 14 peut accéder à un service basé sur la discussion fourni par le système de fournisseur de services 30 conformément à la présente invention. Afin d'accéder à un service basé sur le chat, le principal associé au client de chat 14 devra d'abord connaître le CSSN associé au service souhaité. Par exemple, comme illustré sur la Fig. 2, le CSSN « Services d'appel » pourrait être affecté à un service basé sur le chat fournissant une assistance-annuaire, l'achèvement d'appels et d'autres services connexes, et le CSSN « Concierge » pourrait être affecté à des services de conciergerie basés sur le chat (par exemple, fournir un hébergement et réservations de restaurants). Comme indiqué ci-dessus, et comme indiqué généralement au numéro de référence 180, le principal peut connaître le CSSN d'un service souhaité en consultant le répertoire CSSN mondial 132 ou d'autres répertoires, en accédant à une entrée par défaut dans la liste d'amis 120, en recevant une publicité, en sélectionnant un site Web lien, etc. Par exemple, un fournisseur de services peut utiliser la télévision, la radio, des bannières Web, des panneaux d'affichage ou similaires pour annoncer un nom d'écran permettant aux utilisateurs d'accéder à un service particulier. Idéalement, les améliorations apportées aux services d'annuaire Web existants et/ou à l'annuaire CSSN mondial 132 pourraient incorporer des fonctionnalités permettant la recherche de CSSN en fonction de critères tels que la catégorie de service, le fournisseur de services, le coût, les évaluations des utilisateurs, etc.
Le principal initie ensuite des communications de discussion avec le CSSN associé au service souhaité, par exemple, en sélectionnant un CSSN dans la liste d'amis 120, puis en sélectionnant le bouton de discussion 112 dans la fenêtre de messagerie 100 de la Fig. 2. Comme indiqué sur la Fig. 6, le client de chat 14 répond au principal initiant une session de chat en envoyant une demande de session 182 au service de présence 130 du service de messagerie instantanée configuré pour le client de chat 14. Si le service de présence 130 indique que le CSSN est connecté au service de présence 130, par exemple, en renvoyant une adresse réseau associée au CSSN, le client de discussion 14 enverra une requête de discussion textuelle ou vocale 184 à l'adresse réseau renvoyée par le service de présence. L'adresse associée au CSSN dirigera la demande de discussion vers la passerelle d'agent appropriée 134 dans le routeur de session 32. Par exemple, si l'utilisateur a un client de discussion AIM, la demande de discussion peut être dirigée vers la passerelle d'agent AIM 134a. Comme mentionné précédemment, certains systèmes de messagerie instantanée gèrent tout le trafic de messagerie tandis que d'autres participent simplement à l'établissement initial des sessions de messagerie. D'autres encore fonctionnent de manière entièrement peer-to-peer sans impliquer de serveurs de messagerie intermédiaires. L'homme du métier reconnaîtra que la présente invention peut être mise en œuvre dans le contexte de l'une quelconque de ces formes de systèmes de messagerie. Par exemple, dans un environnement homogène où un seul système de messagerie ou protocole de messagerie doit être pris en charge, comme dans une entreprise privée, certains des éléments et pratiques décrits ici peuvent être omis ou modifiés de manière appropriée.
Comme discuté ci-dessus, en réponse à la réception de la demande de conversation 184, la passerelle d'agent 134 peut éventuellement traduire la demande de conversation 184 en une demande de conversation traduite qui est conforme au protocole de messagerie interne utilisé par le système de fournisseur de services 30, et le processus de routage de session 136 achemine la conversation traduite. demande à une ou plusieurs stations 140, 142 pour le service, comme indiqué de manière générale au numéro de référence 188. Comme discuté ci-dessus, le service fourni peut être l'un quelconque d'une myriade de services, et impliquera typiquement la transmission d'un message de réponse textuelle ou vocale d'une station (par exemple, chatbot-1 140) au client de chat 14, comme indiqué aux numéros de référence 190 et 186. Ce message de réponse de chat peut transmettre des informations recherchées par la demande de chat (par exemple, un numéro de téléphone, un nom d'écran de chat ou un autre contact informations) ou peut transmettre un accusé de réception (achèvement) ou un refus de la demande de chat. Il convient également de noter que la réponse de chat peut être dans un format différent de celui de la demande de chat (par exemple, une réponse de chat textuel à une demande de chat vocal).
Pour déterminer comment router la messagerie entrante vers les stations répondantes 140, 142 et router les réponses vers les passerelles d'agent appropriées 134a-c, le processus de routage de session 136 peut consulter la fonction d'association de routage 138 pour obtenir des informations de routage. La fonction d'association de routage (RAF) 138 peut mettre en œuvre une variété de techniques pour établir une association entre une station de messagerie et une partie qui utilise le système de fourniture de services 30. Par exemple, la fonction d'association de routage 138 peut comprendre, ou avoir accès à, une table de routage 170 et/ou table d'enregistrement 160. La fonction d'association de routage 38 peut appliquer des critères de sélection pour décider quelle station de messagerie doit gérer chaque session de communication entrante. Une association de routage manifestée dans la fonction d'association de routage 138 peut agir en associant un identifiant pour une partie à un identifiant de station de messagerie. Un identifiant pour une partie peut être, par exemple, un nom d'écran sous lequel la première partie est connue dans un système de messagerie instantanée, une adresse réseau pour un client de messagerie utilisé par la première partie, un nom de compte, un numéro de compte et un nom d'utilisateur sous lequel la première partie est connue du système de réponse de messagerie. La fonction d'association de routage 138 peut comprendre tout ou partie : d'une structure de données pour stocker des associations de routage, un processus pour déterminer des associations de routage et des moyens pour accéder aux informations d'association de routage à partir d'une autre source.
Dans certains cas, le processus de routage de session 136 peut également transférer une session de conversation vers une autre station ou "conférence dans" une station supplémentaire (par exemple, la station Oper-1 142) pour répondre à la demande de conversation, comme illustré généralement au numéro de référence 192 et comme discuté plus bas. Pour faciliter le traitement des demandes de conversation par plusieurs stations de manière séquentielle ou simultanée, le processus de routage de session 136 et/ou les stations 140,142 maintiendront suffisamment d'informations d'état pour chaque session de conversation dans la base de données 144 afin que toute session puisse être transférée de manière transparente vers une autre station 140, 142 à à tout moment pendant la session de chat. Le besoin de transférer la session peut survenir en raison de pannes du système, d'équilibrage de charge, de demandes de fonctionnalités non proposées par la station actuelle, etc. Une raison courante pour transférer le contrôle d'une session de discussion peut être la nécessité pour le chatbot 140 d'appeler le service d'un station assistée par l'homme 142. Un tel transfert, ainsi que l'ajout ou la suppression ou d'autres modifications du routage, peuvent être initiés par le chatbot 140, par l'utilisateur au client de discussion 14, par un opérateur à une station assistée par l'homme 142, ou sous-programmé contrôle d'une certaine nature opérant au sein du système 30 ou du système de services basé sur le chat 35. Un autre participant possible au transfert, à la conférence ou au contrôle peut être un tiers associé au SPS 30, tel qu'un superviseur à un poste de supervision dans celui-ci. Le transfert ou la conférence peut également impliquer une partie extérieure au SPS 30, tel qu'un autre système de fourniture de services similaire au SPS 30 ou même un centre d'appels, un opérateur ou un service d'assistance accessible par téléphone. La conférence, le transfert ou l'aiguillage impliquant une entité accessible par téléphone peuvent être accomplis via, par exemple, les connexions 56 et 71 représentées sur la Fig. 1.
Le processus de routage de session 136, par exemple par l'action de la fonction d'association de routage 138, peut être amené à ajouter une autre station en créant plusieurs enregistrements d'association de routage 172 mappés sur la même adresse client de discussion 173. La suppression d'une association de routage correspond à la suppression d'un enregistrement 172 dans table de routage 172. La réaffectation d'une station de messagerie différente pour traiter les demandes d'une partie donnée (comme lorsqu'un opérateur humain intervient et remplace un répondeur automatique au cours d'une session) peut être accomplie en ajoutant une association de routage sous la forme d'un nouvel enregistrement 172, puis suppression de l'ancien enregistrement d'association de routage.
Il convient de noter par souci de clarté que les sessions de messagerie instantanée sont généralement des interactions sans état. Les éléments impliqués dans la gestion des communications de messagerie ne conservent généralement pas les informations d'état. Par exemple, la livraison d'un message donné ne dépend pas du rappel par le système de messagerie d'informations relatives aux messages précédents ayant été envoyés. Le concept d'informations d'état de session décrit ici n'implique aucun changement de la nature sans état des sessions de discussion conventionnelles du point de vue des clients de discussion et des services de messagerie instantanée, ni n'exclut une modification de la messagerie instantanée pour inclure des notions d'état.
Dans certains cas, il peut être souhaitable de prévoir le stockage des informations de session. Cela peut être utile pour acheminer des informations d'une station à une autre lors du transfert d'une session. Cela peut également être utile pour maintenir une session même si un service dans le système de fourniture de services 30 est momentanément interrompu. Des exemples d'informations de session à stocker peuvent inclure un identifiant associé à une partie, des informations d'état liées à la session de communication avec la partie, le degré de progression à travers une séquence programmatique d'étapes exécutées par le système de réponse de messagerie, des copies d'au moins des parties de la messagerie communications, informations obtenues de la partie, informations demandées par la partie, informations relatives à la partie, informations obtenues à partir d'une base de données sensible aux communications avec la partie, informations relatives à une station de messagerie, et pointeurs, liens, descripteurs, indices et autres références aux endroits où des données supplémentaires peuvent être obtenues. Ces mêmes types d'informations peuvent également être transmises directement entre les stations avec ou sans être stockées dans une base de données. Ces mêmes informations peuvent également être utiles à des fins telles que la facturation, la prévention des fraudes et la collecte de statistiques d'exploitation.
En se référant maintenant à la Fig. 7, il est illustré un organigramme logique de haut niveau d'un exemple de procédé par lequel le processus de routage de session 136 de la Fig. 6 achemine la communication entre les passerelles d'agent 134a-c et les stations au sein du système de services basé sur le chat 135 selon un mode de réalisation préféré de la présente invention. Dans le mode de réalisation représenté, le processus de routage de session 136, qui peut être mis en œuvre dans le matériel, le logiciel ou une combinaison de ceux-ci, achemine une telle communication en se référant à la table de routage 170 représentée sur la Fig. 5B.
Comme décrit précédemment, la table de routage 170 peut être généralement caractérisée comme un moyen d'association de routage, chaque enregistrement y représentant une association de routage entre une station de messagerie et une partie accédant aux services accessibles par chat. Il est envisagé qu'une variété de structures de données alternatives ou d'approches algorithmiques puissent être utilisées pour représenter, déterminer et manipuler de telles associations de routage qui provoquent le routage des communications d'une partie vers une station répondante de messagerie particulière. Le processus 700 est un procédé de gestion des communications de messagerie et peut être mis en œuvre en tant que processus logiciel représenté par des instructions sur un support lisible par ordinateur.
En figue. 7, le processus 700 commence à l'étape 701 en réponse au processus de routage de session 136 recevant un message, tel que d'une passerelle d'agent 134 ou d'une station 140, 142. Dans le mode de réalisation représenté, le protocole de communication interne utilisé dans le système de fournisseur de services 30 comprend au moins trois types de messages : demandes de chat par les clients de chat 14, réponses de chat par les stations 140, 142 et messages de contrôle. A la réception d'un message à l'étape 701, le traitement se poursuit ensuite à l'étape 702, dans laquelle il est déterminé si le message est une demande de conversation d'un client de conversation 14 reçue d'une passerelle d'agent 134. Si c'est le cas, alors l'exécution passe à l'étape 712 pour déterminer si la demande de chat représente une nouvelle session. Cette détermination peut impliquer l'examen de la table de routage 170 pour les entrées ayant la même adresse de client de conversation 173 que le message entrant.
Si une telle entrée est trouvée, signifiant qu'il existe déjà une session et une station associée à la partie requérante, alors l'exécution passe à l'étape 716 dans laquelle la demande de conversation reçue à l'étape 701 est mise en correspondance avec une ou plusieurs entrées 172 dans la table de routage 170 sur la base sur de préférence à la fois l'adresse du client de chat et CSSN. En conséquence, le message est ensuite transmis à la ou aux stations appropriées comme indiqué par l'adresse de station de service correspondante 176 dans la table de routage 170. Des entrées multiples pour des stations desservant la même adresse de client de discussion peuvent se produire lorsque les stations effectuent une conférence, comme lorsqu'un humain- la station exploitée s'implique dans une session de chatbot. Après avoir envoyé la demande de conversation à la station attribuée, l'exécution du processus 700 se termine à l'étape 730 indiquant l'achèvement du traitement de la communication qui a été reçue à l'étape 701.
En revenant à l'étape 712, si aucune entrée 172 ayant une adresse de client de chat correspondant 173 et CSSN n'est trouvée, alors il est supposé que le message représente un nouveau client de chat qui n'est pas déjà associé à une session ou une station dans le système de fournisseur de services 30. Dans dans ce cas, l'exécution passe à l'étape 714 pour sélectionner une station à attribuer au client de conversation d'origine pour traiter la demande actuelle et toutes les demandes ultérieures. La sélection d'une station particulière parmi un pool de stations 140, 142 peut prendre en compte de nombreux facteurs, tels que la charge de travail actuelle, la disponibilité actuelle et l'adéquation de chaque station. Le processus de routage de session 136 sélectionne dans la table d'enregistrement 160 une station 140, 142 pour traiter la demande de conversation en fonction d'un ou plusieurs facteurs, tels que le type de demande, le coût du service, l'équilibrage de la charge de travail, la disponibilité du système, les ensembles de fonctionnalités, les capacités du système, les compétences de l'opérateur, etc.
La sélection d'une station de messagerie particulière parmi un pool de stations 140, 142 peut être sensible à au moins l'un des éléments suivants : disponibilité de la station de messagerie, niveau d'activité de la station de messagerie, aptitude de la station de messagerie à communiquer avec un correspondant donné, les ressources disponibles pour la station de messagerie, les capacités de la station de messagerie, l'association préétablie de la station de messagerie avec la partie, et au moins un attribut de la partie répondant aux critères à gérer par la station de messagerie.
Lors de la sélection d'une station à l'étape 714, le processus passe à l'étape 704 dans laquelle une nouvelle entrée 172 est ajoutée à la table de routage 170. Le processus de routage de session 136 entre alors l'adresse réseau ou l'identifiant de la station de service sélectionnée et un identifiant de session attribué dans les champs 176. et 177, respectivement, de l'entrée de table de routage 172. Le champ d'adresse de client de conversation 173 de l'entrée est rempli avec l'adresse de client de conversation du message entrant. Le CSSN correspondant au client de conversation est entré dans le champ CSSN 174 de l'entrée 172. L'adresse ou l'identité de la passerelle d'agent de service appropriée 134 est enregistrée dans le champ de passerelle d'agent de service 175.
Ces actions accomplissent une association ou « liaison » de la station avec la session et l'entité demandeuse. Ensuite, le processus 700 continue à l'étape 716 et la demande de conversation reçue à l'étape 701 est transmise à la station nouvellement associée sur la base du contenu mis à jour de la table de routage 170. Le processus se termine ensuite à l'étape 730.
De retour à l'étape 702, si le message reçu par le processus de routage de session 136 n'est pas une demande de conversation, alors l'exécution passe à l'étape 706 pour déterminer si le message est une réponse de conversation provenant d'une station 140, 142 et destinée à un client de conversation 14. Si le message est une réponse de chat par une station 140, 142, le processus passe à l'étape 708 dans laquelle le processus de routage de session 136 accède à la table de routage 170 et insère l'adresse réseau (par exemple, IP) du client de chat (et facultativement le CSSN) dans la réponse du chat, si nécessaire. Bien entendu, dans les modes de réalisation dans lesquels le processus de routage de session 136 transmet les adresses réseau des clients de discussion aux stations 140, 142 et aux stations 140, 142 reflétant les adresses des clients de discussion dans les réponses de discussion, le processus de routage de session 136 n'a pas besoin d'insérer une adresse réseau de client de discussion dans la réponse de discussion comme illustré à l'étape 708. Ensuite, à l'étape 710, la réponse de discussion est acheminée vers la passerelle d'agent appropriée 134. La passerelle d'agent 134 gérant la session de discussion transmet à son tour la réponse de discussion au client de discussion approprié 14.
Facultativement, à l'étape 708, une recherche supplémentaire peut être effectuée pour d'autres entrées 172 ayant les mêmes informations de client de chat et déterminant si d'autres stations sont en communication avec le client de chat donné. Pour accomplir une fonction de conférence de discussion, une réponse à envoyer au client de discussion peut également être copiée vers d'autres stations trouvées par cette recherche. Selon la manière dont cela est mis en œuvre, une telle conférence peut ou non être bilatérale. Dans certains cas, par exemple, il peut être souhaitable de supprimer les messages d'un opérateur humain 142 faisant écho à un chatbot 140.
En revenant à l'étape 706, dans le cas où le message reçu par le processus de routage de session 136 n'est pas une demande de conversation ou une réponse de conversation, le processus passe à l'étape 720 et aux étapes suivantes qui décrivent le processus de routage de session 136 traitant un message de contrôle. Dans le mode de réalisation représenté, de tels messages de contrôle comprennent au moins des demandes par des stations pour réaffecter des sessions de discussion à différentes stations et des notifications de fin de session. Comme indiqué par l'étape 718 intitulée « Autre traitement », le protocole de communication impliquant le processus de routage de session 136 peut également inclure d'autres messages de contrôle ou messages de discussion non explicitement décrits ici.
Si, à l'étape 720, il est déterminé qu'un message de contrôle reçu est une demande de réaffectation ou de transfert de la session vers une autre station, le processus passe à l'étape 722. À l'étape 722, le processus d'acheminement de session 136 répond à la demande de réaffectation de session, qui peut survenir lorsque les stations renvoient des demandes à d'autres stations sur la base, par exemple, des capacités appropriées déterminées à partir de la table d'enregistrement 160. Il est prévisible qu'un transfert entre les stations assistées par l'homme 140 et les stations automatisées 142 peut se produire assez souvent. Un transfert dynamique entre les stations peut également être effectué à des fins d'équilibrage de charge. Le processus de routage de session 136 met à jour le champ d'entrée 176 de l'entrée de table de routage 172 pour la session de conversation avec la nouvelle adresse de station de service, et transmet l'ID de session de la session de conversation à la nouvelle station de maintenance. Sur la base de l'ID de session et de l'état de session conservés dans la base de données 144 en association avec l'ID de session, la nouvelle station de service peut de manière transparente (c'est-à-dire sans aucune indication au client de discussion 14 ou au principal) fournir un service dans la session de discussion en commençant par le plus état récent.
Par exemple, un mandant pourrait être impliqué dans une session de discussion avec un chatbot 140 et requérir ensuite l'assistance d'un opérateur humain. Le principal ou le chatbot 140 pourrait demander que la session de discussion soit transférée vers une station assistée par un humain 142. En réponse, le processus de routage de session 136 peut transférer la session vers la station assistée par l'homme 142 (et éventuellement transférer ultérieurement la session de discussion vers un chatbot 140) ou rejoindre une station assistée par un humain 142 dans la session de discussion en cours. Après avoir effectué la réaffectation à l'étape 722, le processus se termine à l'étape 730.
En se référant maintenant à l'étape 724, si un message de contrôle reçu par le processus de routage de session 136 d'une station 140, 142 est une notification de fin de session, le processus 700 passe à l'étape 726. L'étape 726 illustre le processus de routage de session 136 mettant à jour la table de routage 170 en supprimer les entrées de table de routage 172 correspondant à la session de conversation terminée.Ensuite, le processus se termine à l'étape 730.
Si aucune des conditions testées par les étapes 702, 706, 720 ou 724 n'est vraie, alors l'exécution se poursuit à l'étape 718 pour traiter toute autre forme de message qui peut être reçue. Une fois que tout traitement nécessaire a été effectué à l'étape 718, le processus 700 se termine à l'étape 730.
En référence maintenant à la Fig. 8A, il est illustré un organigramme de messages d'un exemple de flux de communication par lequel un client de conversation accède aux services d'achèvement d'appel basés sur la conversation dans le système de communication 10 de la Fig. 1 conformément à la présente invention. Il doit être compris que de nombreuses variantes sont possibles dans la manière dont les éléments de la Fig. 1 pourrait communiquer pour accomplir des fonctions de service conformément à la présente invention. Comme indiqué, le client de discussion 14 lance l'accès aux services d'achèvement d'appel basés sur la discussion en transmettant une demande de session de discussion vocale ou textuelle 250, par exemple, en réponse à un principal humain associé sélectionnant le CSSN « Services d'appel » 124a et le bouton de discussion 112 dans Messenger. la fenêtre 100 de la Fig. 2. En réponse à la réception de la demande de session de conversation 250, le système de fournisseur de services 30 achemine la demande de session de conversation 250 vers une station particulière 140, 142, qui répond par une réponse de conversation 251 indiquant qu'une session de conversation a été établie avec succès. Par exemple, la réponse au chat 251 peut être un message de chat vocal ou textuel indiquant : « Bienvenue dans les services d'appel de chat. Comment puis-je vous aider?"
Le client de conversation 14 peut ensuite suivre une demande de conversation textuelle ou vocale 252, qui peut être une demande d'informations, telles que des informations de contact pour une autre partie. Une station 140, 142 peut trouver les informations demandées et ensuite renvoyer une réponse 254 au client de chat demandeur 14. Facultativement, l'exécution de la demande peut entraîner des frais à facturer au demandeur ou à une autre partie. Par conséquent, le système de facturation 40 peut être notifié de l'exécution de la demande par un message 253 qui peut être acheminé le long de la connexion 42. Dans certaines mises en œuvre, le système de facturation 40 peut être consulté dans le cadre d'une détermination de savoir si une demande doit être satisfaite en fonction de la capacité pour obtenir le paiement pour répondre à la demande. Ce type de rôle d'autorisation est représenté par le message 253a et peut impliquer que le système de facturation 40 vérifie si un compte valide existe et qu'un solde est suffisant pour supporter les frais associés à l'exécution des demandes. En réponse au message 253a, il est possible que le système de fournisseur de services 30 exécute de manière sélective d'autres étapes, telles que répondre via le message 254, en fonction du fait que le système de facturation 40 autorise ou non la fourniture de services. L'homme du métier reconnaîtra que le système de facturation 40 peut être notifié de l'utilisation ou peut être consulté pour l'autorisation à un certain nombre de points représentés sur les Fig. 8A-8B. L'utilisation facturable peut être évaluée pour divers aspects de l'exécution du service, comme cela sera décrit plus en détail ici en liaison avec la FIG. 9.
En figue. 8A, les informations fournies dans le message 254 peuvent satisfaire les besoins immédiats de la partie demandeuse ou du principal utilisant le client de discussion 14. La session de discussion avec le système de fournisseur de services 30 peut alors être expressément interrompue par le principal ou le fournisseur de services ou peut être simplement interrompue. automatiquement après une période d'inactivité, par exemple.
En variante, le principal utilisant le client de discussion 14 peut souhaiter initier immédiatement des communications avec une partie pour laquelle le fournisseur de services a trouvé des informations de contact. Le client de conversation 14 peut envoyer une demande d'achèvement d'appel 255 au système de fournisseur de services 30 pour demander qu'une partie soit contactée via le système de fournisseur de services 30 et d'autres composants du système 10.
A la réception d'une demande d'achèvement d'appel 255, le système de fournisseur de services 30 peut communiquer des instructions, via la demande d'établissement d'appel 256, à la passerelle de conversation intelligente 52 pour commencer le processus d'établissement de communications entre le principal demandeur et une autre partie. Bien que cela ne soit pas explicitement montré, la procédure d'établissement d'appel de cette manière peut être précédée par le fait que le système de facturation 40 vérifie qu'un tel établissement d'appel est autorisé sur la base, par exemple, des frais applicables pouvant être facturés sur un compte.
La demande d'établissement d'appel 256 peut contenir, par exemple, une demande pour établir une connexion avec un numéro de téléphone de terminaison spécifié (par exemple, 319-123-4567). D'autres informations, telles qu'un mode de paiement préféré (par exemple, carte de crédit, carte d'appel, retrait, etc.), peuvent également être incluses dans la demande ou sous-entendues par le mode d'accès. Afin de fournir le service d'achèvement d'appel demandé, la station de desserte 140, 142 dans le système de fournisseur de services 30 envoie une demande d'établissement d'appel 256 à la passerelle de discussion intelligente 52. La demande d'installation d'appel 256 peut inclure le type de client de discussion (AIM, Yahoo!® Messenger , MSN® Messenger, etc.), l'adresse réseau (par exemple, IP) du client de discussion 14, le numéro de téléphone de fin et éventuellement d'autres capacités du client de discussion 14.
En réponse à la réception de la demande d'établissement d'appel 256, la passerelle de conversation intelligente 52 ordonne à la passerelle VoIP 54 d'établir une communication avec le client de conversation 14 sur le réseau 20, puis d'établir une communication avec le téléphone 62 sur le RTPC 60. Par exemple, pour initier la communication entre la passerelle VoIP 54 et client de discussion 14, la passerelle de discussion intelligente 52 transmet à la passerelle VoIP 54 une demande d'établissement d'appel 258 comprenant au moins l'adresse réseau du client de discussion 14, et éventuellement d'autres informations telles qu'une indication d'un protocole de signalisation de réseau de données pour l'appel (par exemple, Session Initiation Protocol (SIP), H.323, CCS7, etc.), un identifiant ou une méthode de facturation, etc. Dans certains modes de réalisation, la demande d'établissement d'appel 258 peut fournir toutes les informations nécessaires à la passerelle VoIP 54 pour établir une communication VoIP avec le client de discussion. 14. Dans d'autres modes de réalisation, la passerelle VoIP 54 peut obtenir des informations supplémentaires concernant le client de chat 14 directement à partir du serveur de messagerie instantanée 22 fournissant un service de messagerie instantanée au chat cl. ient 14, comme le montre la Fig. 1 au numéro de référence 55.
La passerelle VoIP 54 répond à la demande d'établissement d'appel 258 en transmettant un message d'établissement d'appel 260 au client de conversation 14 sur le réseau 20 en utilisant un protocole de signalisation sélectionné (par exemple, SIP, H.323 ou CCS7). Le client de conversation 14 répond au message d'établissement d'appel 260 en transmettant un message d'accusé de réception 262 indiquant sa disponibilité pour l'appel. La passerelle VoIP 54 informe ensuite la passerelle de conversation intelligente 52 de la réussite de l'établissement de l'appel avec le client de conversation 14 en envoyant le message Appeler la conversation terminée 270. En réponse à une configuration d'appel réussie avec le client de conversation 14, la passerelle de conversation intelligente 52 dirige ensuite la passerelle VoIP 54 par un message téléphonique de fin d'appel 272 pour effectuer la configuration d'appel pour le téléphone 62 sur PSTN 60.
En réponse à la réception du message de téléphone de terminaison d'appel 272, la passerelle VoIP 54 envoie la demande d'établissement d'appel 274 au téléphone 62 sur le PSTN 60, par exemple. En utilisant le réseau numérique à intégration de services (RNIS), SS7, le groupe de fonctions D (FGD) ou un autre protocole de signalisation téléphonique le long d'une connexion de signalisation 58, une connexion support 59 est établie impliquant le RTPC 60 et se connectant finalement au téléphone 62. La passerelle VoIP 54 notifie le chat intelligent passerelle 52 de la demande d'établissement d'appel 274 avec le message Call Terncing Phone Done 280. La demande d'établissement d'appel 274 fait sonner le téléphone 62. Lorsque le téléphone 62 reçoit une réponse, par exemple, par un opérateur humain ou automatique qui décroche le téléphone 62, la passerelle VoIP 54 détecte le décrochage du téléphone 62, comme indiqué au numéro de référence 282, et connecte le téléphone 62 au client de conversation 14 pour terminer l'appel, comme indiqué au numéro de référence 284. En option, lorsque des frais sont facturés pour l'appel, un message 286 peut être envoyé au système de facturation 40, tel que le long de la connexion 41, pour établir une heure de début pour l'appel facturable et commencer l'accumulation de taxes sur la base de la durée de l'appel. Pendant la durée de l'appel, le téléphone 62 envoie et reçoit une communication vocale 292 vers et depuis la passerelle VoIP 54 sur PSTN 60, et le client de discussion 14 envoie et reçoit un flux vocal IP 290 de protocole en temps réel (RTP) vers et depuis la passerelle VoIP 54 via réseau 20 indépendamment de la passerelle de conversation intelligente 52 et du système de fournisseur de services 30. Alternativement, les communications établies pourraient être des conversations vocales (par exemple des extraits sonores) ou pourraient impliquer une traduction via l'IMT 70. 62, la passerelle VoIP 54 informe le client de discussion 14 que l'appel est terminé avec le message Terminé 294. La passerelle VoIP 54 peut également envoyer un message 296 au système de facturation 40 pour signifier que l'appel est terminé et que l'accumulation de frais peut cesser.
En référence maintenant à la Fig. 8B, un processus est décrit par lequel l'achèvement d'appel demandé par un mandant peut aboutir à une connexion « conversation-téléphone » en impliquant l'IMT 70. Bon nombre des mêmes étapes illustrées à la Fig. 8A, telles que la demande initiale d'informations de contact et la messagerie au système de facturation 40, sont applicables à ce scénario mais sont omis par souci de clarté.
La demande d'appel 455 du client de conversation 14 est comparable à la demande d'appel 255 comme cela a été montré et décrit sur la Fig. 8A. Lors de la réception d'une telle demande, et peut-être de la vérification de l'état de facturation pour la partie la demande, une demande d'établissement d'appel 456 est envoyée à la passerelle de conversation intelligente 52 pour commencer le processus d'établissement de trois connexions, à savoir :
une. une session de chat textuel entre l'IMT 70 et le client de chat 14,
b. une connexion vocale RTP ou comparable entre la passerelle 54 et l'IMT 70,
c. une connexion vocale via le réseau téléphonique 60 entre la passerelle 54 et le téléphone 62.
Pour réaliser ces connexions, la passerelle 52 pourrait alors envoyer un message d'établissement de traducteur 458 à l'IMT 70 ordonnant à ce dernier d'allouer des ressources de traitement (modules 72, 74) à affecter à la nouvelle connexion. Le message de configuration du traducteur 458 peut transmettre des informations, telles que l'adresse réseau ou le nom d'écran pour le client de discussion 14, de sorte que l'IMT 70 puisse ensuite établir une session de discussion avec le client de discussion 14. La messagerie de discussion qui s'ensuit, présentée par les connexions 76, 77 peut en fait être transportée au sein du réseau 20 et peut être partiellement ou totalement conduit par le service IM 22. Pour initier des communications, l'IMT 70 peut envoyer un ou plusieurs messages initiaux 460 au client de conversation 14. Le client de conversation 14 peut répondre avec le(s) message(s) 462, après quoi IMT 70 et la conversation le client 14 est en communication réussie. Facultativement, l'IMT 70 peut accuser réception avec un message de progression d'appel 464 indiquant quelque chose comme « Connecting . . . S'il vous plaît, attendez." Pendant ce temps, l'IMT 70 rapporte à la passerelle de chat intelligente 52, via le message 466, que la connexion client traducteur-à-chat a été établie avec succès.
Ensuite, la passerelle de conversation intelligente 52 peut ordonner à la passerelle VoIP 54 d'initier une connexion vocale par paquets, telle qu'une connexion RTP bidirectionnelle, avec l'IMT 70. Les messages 470, 472 représentent la formation d'une connexion RTP 75, 78. L'IMT 70 peut avoir pour fournir une adresse et/ou un numéro de port, peut-être transmis par les messages 466 et 468, de sorte que la connexion RTP résultante corresponde correctement aux instances des modules 72, 74 qui sont prêts à gérer les traductions impliquant le client de discussion particulier 14. Alternativement, l'IMT 70 et la passerelle 54 peuvent négocier en utilisant une sorte d'ID de session transmis dans les divers messages pour assurer un mappage correct des connexions vocales et de conversation. Une fois que la connexion RTP entre l'IMT 70 et la passerelle 54 est établie avec succès, la passerelle 54 signale l'état de la connexion à la passerelle de conversation intelligente 52 à l'aide du message 474. La passerelle de conversation intelligente 52 peut alors demander à la passerelle VoIP 54, via le message 476, de lancer un téléphone appel. Le message 478, qui accomplit l'appel du téléphone 62, peut représenter une signalisation téléphonique telle que RNIS, SS7, C7, groupe de fonctions D ou d'autres mesures pour lancer un appel téléphonique pour atteindre le téléphone 62, très probablement via un réseau intermédiaire tel que le RTPC.
Le message 480 représente un accusé de réception que l'appel est passé au téléphone 62 comme demandé. Lorsqu'un correspondant répond au téléphone 62, un message 482 est reçu du réseau téléphonique indiquant que le correspondant appelé a « décroché » et est maintenant connectable. Les messages 484 et 486 indiquent que cette occurrence peut être rapportée au système de fournisseur de services 30 pour peut-être fournir un retour, servir à des fins de facturation, ou permettre à un agent de fournisseur de services d'interagir avec l'appelé ou le demandeur d'une certaine manière. L'ICG 52 ou le système de fournisseur de services 30 peut même signaler à l'IMT 70 d'envoyer une invite de discussion au client de discussion 14 et un message audio au téléphone 62 afin que les parties sachent qu'elles sont connectées et que la connexion est une connexion traduite par chat et voix. . Sans une notification de ce type, les parties communicantes peuvent être confuses quant à ce qui se passe et peuvent même abandonner l'appel sans communiquer.
Correspondant aux trois connexions décrites ci-dessus, le trafic de conversation 490, le trafic RTP 492 et le trafic vocal téléphonique 494 sont ensuite acheminés à travers leurs réseaux respectifs pendant que les parties communiquent.
Comme décrit précédemment, les communications entre le client de conversation 14 et le téléphone 62 peuvent se poursuivre jusqu'à ce qu'une ou les deux parties mettent fin à l'appel. Il est également concevable qu'à tout moment, l'une des parties puisse « transférer » l'appel vers une forme de communication plus pratique, telle que le chat vocal.
Alors qu'une séquence particulière de messages a été représentée sur les Fig. 8A et 8B à titre d'exemple, il faut reconnaître qu'il existe de nombreuses façons de coordonner la formation des connexions requises entre un principal utilisant le client de chat 14 et un correspondant utilisant le téléphone 62.
Plus généralement, lors de l'exécution de l'une quelconque des fonctions décrites ici, il existe un certain nombre de variations possibles en termes d'éléments qui initient des connexions ou contrôlent d'autres éléments pour exécuter les fonctions nécessaires. Il est envisagé que, dans un autre mode de réalisation, d'autres entités, telles qu'un système de fournisseur de services, puissent envoyer des commandes à divers éléments, tels que l'IMT 70, pour coordonner la formation de telles connexions. Par exemple, l'IMT 70 peut recevoir des instructions du système de fournisseur de services 30 ou de la passerelle de discussion intelligente 52, puis coordonner de manière autonome la formation de connexions de discussion 76, 77 et de connexions RTP 75,78, puis signaler directement à la passerelle VoIP 54 pour effectuer un appel téléphonique. via PSTN 60. L'IMT 70 peut comprendre un contrôleur 73 pour communiquer avec et recevoir et traiter des instructions de l'un ou des deux du système de fournisseur de services 30 ou de la passerelle de conversation intelligente 52 le long des connexions 80 via le réseau 20.
Le contrôleur 73 peut, par exemple, coordonner l'attribution de ports de communication et de ressources de traitement au sein de l'IMT 70 en réponse à des instructions provenant d'autres éléments.
Il est également possible que l'IMT 70, via le contrôleur 73, puisse contrôler d'autres éléments pour coordonner les connexions. L'IMT 70 peut ordonner à la passerelle de conversation intelligente 52 d'amener la passerelle VoIP 54 à former une connexion RTP adressée à un port particulier sur l'IMT 70. Les connexions 80 peuvent également représenter simplement le passage d'informations, plutôt que des commandes réelles, utiles pour coordonner les communications, telles que le passage d'informations d'adresse réseau ou de noms d'écran.
Dans divers scénarios d'appel, la coordination d'appel pourrait théoriquement commencer avec presque n'importe quel élément et être effectuée dans presque n'importe quel ordre. Le séquençage de la formation de la connexion et du séquençage, le format et le contenu des messages peuvent varier et pourtant atteindre le même résultat final. Il existe également de nombreuses façons de transmettre des adresses et d'autres identifiants entre les éléments pour garantir des connexions précises. La présente invention n'est pas destinée à être limitée uniquement aux flux d'appels particuliers qui sont présentés ici à titre d'exemple.
Ces possibilités donnent naissance à des éléments nouveaux et utiles tels qu'un IMT ayant une interface de conversation et ayant des capacités de signalisation d'établissement d'appel. Un autre élément nouveau selon un mode de réalisation de la présente invention est un système comprenant une passerelle VoIP qui peut générer des connexions à la fois dans les domaines du réseau téléphonique et du réseau par paquets.
Il convient de noter que même des téléphones de style plus récent et des systèmes téléphoniques conçus pour s'interfacer directement avec un réseau par paquets, comme les "téléphones IP" représentés par le téléphone IP 92 sur la Fig. 1. Le téléphone IP 92 représente un type de client de téléphonie à protocole Internet et pourrait également être implémenté en tant qu'application s'exécutant sur un ordinateur. Bien que le client de conversation 14 et le téléphone IP 92 soient tous deux des dispositifs de données numériques couplés via un réseau de données, les utilisateurs de ces dispositifs peuvent toujours bénéficier des caractéristiques de la présente invention. Une personne utilisant le téléphone IP 92 peut parfois trouver avantageux de s'engager dans des communications voix-à-chat traduites ou un chat vocal avec un client de chat 14. Alors que la passerelle VoIP 54 est évitée dans ce scénario, de nombreux éléments interagissent dans de nombreux cas. de la même manière pour établir une connexion RTP avec le téléphone IP 92, comme cela sera reconnu par l'homme du métier.
Facturation
Comme décrit ci-dessus en référence à la Fig. 1, le système de fournisseur de services 30, la passerelle 50, le service IM (IMS) 22 sont représentés couplés à un ou plusieurs systèmes de facturation 40 (illustrés collectivement sur la figure 1 pour plus de simplicité) afin de facturer les clients de chat 14 pour l'accès à au moins certains services basés sur le chat. Les connexions représentées 41, 42, 43, la passerelle de couplage 50, le SPS 30 et l'IMS 22 respectivement, représentent une approche consistant à fournir une interface de système de facturation à travers laquelle des indications d'activité facturable peuvent être envoyées au système de facturation et l'autorisation d'exécuter les services demandés peut être obtenu du système de facturation. Dans certaines mises en œuvre, l'IMS 22 peut représenter un système de messagerie privé ou semi-privé exploité pour fournir une source de revenus ou de recouvrement des coûts. N'importe lequel des éléments de la Fig. 1 peut être directement couplé au système de facturation 40 pour engager une fonction liée à la facturation ou peut être indirectement couplé par l'intermédiaire d'autres éléments. L'homme du métier appréciera que les fonctions de facturation peuvent également être intégrées dans, ou réparties entre, les éléments du système 10 à des degrés divers.
Dans la description précédente d'au moins les Fig. 1 et 8A, il a été montré que le système de facturation 40 participait à la collecte d'informations indiquant l'activité d'utilisation dans le système de communication 10 et à l'autorisation d'une activité sur la base du fait qu'une telle activité pouvait être payée d'une certaine manière. Comme l'illustre la Fig. 8 au numéro de référence 286, le système de fournisseur de services 30 peut fournir une indication des services d'achèvement d'appel au système de facturation 40 en réponse à l'achèvement d'un appel réussi (comme illustré) ou en réponse au lancement d'établissement d'appel en envoyant une demande d'établissement d'appel 256. Alternativement ou en plus, comme montré au numéro de référence 296, la passerelle VoIP 54 peut indiquer au système de facturation 40, au nom du système de fournisseur de services 30, que les services d'achèvement d'appel ont été invoqués. La passerelle VoIP 54 peut également notifier le système de facturation 40 de son propre rôle dans l'acheminement de l'appel, peut-être en signalant la durée de l'appel à la fin de l'appel. Comme le système 10 peut interagir avec et fournir des services en conjonction avec un réseau téléphonique, tel que le RTPC 60, il faut comprendre que le système de facturation 40 peut également interagir avec l'équipement de réseau téléphonique dans le but d'exécuter des fonctions de facturation. Par exemple, un équipement de réseau téléphonique, tel que des commutateurs ou des points de contrôle de service (SCP) peut fournir des indications d'utilisation sur lesquelles le système de facturation 40 peut baser le calcul des frais d'utilisation.
Il est à noter que divers éléments de la fig.1 peut rapporter une variété d'indications au système de facturation 40 indiquant l'utilisation du système qui peut être facturable. Le système de facturation peut noter ces occurrences et déterminer les frais associés à l'utilisation. En outre, comme représenté sur la Fig. 8A et ailleurs, le système de facturation 40 peut également participer à l'autorisation ou à la mesure de l'activité dans le système sur la base de l'existence ou non d'un compte valide auquel des frais peuvent être appliqués.
Divers éléments qui fournissent des indications d'utilisation n'ont pas tous besoin d'être couplés directement au système de facturation 40. Certains éléments peuvent transmettre des informations d'utilisation pour d'autres éléments. Certains éléments peuvent ajouter des informations d'utilisation à d'autres communications inter-éléments telles que les messages représentés sur les Fig. 8A-8B. Par exemple, sur la Fig. 1 L'utilisation des installations de traduction dans l'IMT 70 peut être signalée au système de facturation 40 au moyen de communications entre l'IMT 70 et l'ICG 52. L'ICG 52 peut recevoir des indications d'utilisation de l'IMT 70 et ajouter des informations supplémentaires concernant l'utilisation de la passerelle 50 avant d'envoyer les informations le long au système de facturation 40. Ainsi, des éléments peuvent combiner certains types d'informations pour, par exemple, fournir au système de facturation 40 une vue complète d'une session donnée. Comme l'appréciera l'homme du métier, les mêmes types d'indications d'utilisation rapportées au système de facturation 40 peuvent également être utiles pour collecter des statistiques afin de faciliter l'ingénierie du trafic et la détection de fraude.
Certains types d'activité ou d'événements dans le système qui sont signalés au système de facturation 40 peuvent se rapporter à l'invocation de certaines actions ou caractéristiques pour lesquelles des frais peuvent être applicables. Par exemple, une partie utilisant le client de discussion 14 peut être facturée pour chaque fois qu'elle contacte le système de fournisseur de services 30 ou pour chaque fois qu'elle utilise le système pour récupérer des informations, effectuer une action ou établir des communications avec une partie appelée. Un appelant peut également payer des frais pour que le système mappe un premier identifiant, tel qu'un nom ou un pseudonyme, à un deuxième identifiant, tel qu'un numéro de téléphone. Les frais d'utilisation qui en résultent peuvent être appliqués à l'expéditeur, à l'appelé ou même à un tiers. Une partie d'origine utilisant un client de chat 14 peut avoir des frais facturés sur son propre compte lié à la téléphonie même si, via les services accessibles par chat proposés, elle peut s'engager dans une activité non téléphonique. La combinaison du service IM et du nom d'écran utilisé par une partie d'origine peut être automatiquement mappée sur un compte de téléphonie facturable par le SPS 30, peut-être en utilisant la base de données d'abonnés 330 (décrite ci-dessous) ou similaire.
Une partie communicante peut être facturée différemment pour l'invocation de la messagerie textuelle par rapport aux communications vocales. Une partie peut se voir facturer des frais chaque fois qu'un traducteur est engagé pour permettre l'achèvement d'un appel de téléphonie à communications instantanées. Un appelant peut même être facturé pour avoir demandé des informations sur le solde d'un compte.
D'autres types d'activité dans le système peuvent concerner la quantification de l'utilisation des ressources du système. Par exemple, des frais peuvent être appliqués sur la base d'une durée d'une session de communication, d'un volume de données ou de trafic géré par le système, ou d'une quantité de traduction effectuée. Il est possible que des éléments tels que la passerelle VoIP 54 ou l'IMT 70 puissent compter un nombre de paquets traités, un nombre de symboles convertis, ou surveiller le temps écoulé pour une session donnée, puis rapporter cette information au système de facturation 40.
Une troisième possibilité d'activité facturable dans le système concerne les options, les fonctionnalités et les services souscrits. Les options ou caractéristiques peuvent se rapporter, par exemple, à la classe de service fournie par le système ou à la personnalisation. En particulier, les parties utilisant le système peuvent payer un supplément pour contrôler la fonction de traduction, par exemple en sélectionnant les langues à utiliser pendant la traduction, en prenant en charge les « émoticônes » ou en sélectionnant des caractéristiques vocales pour représenter correctement le sexe ou d'autres caractéristiques de la partie qui est en utilisant la messagerie textuelle. Une autre option qui pourrait être facturable est la notification automatique du solde ou des frais lorsqu'une partie utilise le système. Dans cette troisième catégorie, il est probable que le système de facturation sert principalement à autoriser une activité en fonction des options sélectionnées par l'utilisateur et/ou du statut d'un compte qui doit payer les options.
Une nouvelle situation est créée dans le contexte de certains modes de réalisation de la présente invention dans lesquels le trafic provenant de plusieurs services IM différents converge dans une seule plate-forme. Au moins sur la fig. 3, il est évident que les parties peuvent contacter le système de fournisseur de services 30 à partir d'une variété de services de messagerie instantanée 130 et chaque partie est identifiée au système, au moins initialement, par un nom d'écran de messagerie instantanée. Pour la facturation et peut-être à d'autres fins, il peut être souhaitable d'établir un compte identifié au moins partiellement en fonction du nom d'utilisateur de l'utilisateur.
Un problème survient en ce que, bien que les noms d'écran soient uniques au sein de chaque service de messagerie instantanée, il est probable que de nombreux noms d'écran attribués aux utilisateurs dans un premier service de messagerie instantanée soient identiques aux noms d'écran attribués à des utilisateurs différents dans un second service de messagerie instantanée. Il n'y a aucune garantie d'unicité du nom d'écran dans tous les services de messagerie instantanée.
Afin de permettre des comptes associés à un nom d'écran, certains modes de réalisation de la présente invention proposent un nouveau type de compte facturable qui est résolu par une combinaison d'identifiant de service IM et de nom d'écran. L'identification d'un service de messagerie instantanée et d'un utilisateur particulier, par exemple par nom d'écran, au sein de ce service fournit une unicité suffisante pour spécifier correctement une partie parmi toutes les parties qui peuvent accéder au système. La combinaison de ces identifiants peut également être utile pour maintenir et accéder aux informations de profil et à d'autres données associées à un compte d'utilisateur.
En se référant maintenant à la Fig. 9, il est illustré un diagramme échelonné de haut niveau d'un exemple de mode de réalisation du système de facturation 40 selon la présente invention. Dans le mode de réalisation représenté, le système de facturation 40 comprend une base de données de facturation 320 et une interface de facturation 310 qui crée des enregistrements de facturation dans la base de données de facturation 320 en réponse aux demandes de facturation reçues du système de fournisseur de services 30 ou du système de passerelle 50. Le système de facturation 40 peut être mis en œuvre, pour par exemple, comme un ou plusieurs systèmes informatiques serveurs exécutant l'interface de facturation 310 dans un logiciel.
La base de données de facturation 320 comprend un certain nombre de bases de données individuelles qui représentent chacune un procédé particulier de facturation. Chaque base de données individuelle peut être mise en œuvre par une base de données réelle contenant des enregistrements de comptes ou peut comprendre une interface avec un système externe, tel qu'un système de validation exploité par une société de carte de crédit. Des exemples de bases de données pouvant exister dans la base de données de facturation 320 sont résumés ci-dessous dans le tableau I.

Base de données prépayée 322
L'utilisateur achète des services avant l'utilisation et la facturation