Brevet FR2903261A1 — publié le 20080104

Arrière-plan de l'invention L'invention se situe dans le domaine des services interactifs dans un réseau de télécommunications. De façon privilégiée mais non limitative, l'invention se situe plus particulièrement dans le domaine de services multimodaux interactifs. D'une façon générale, nous définirons la "multimodalité" comme l'utilisation de plusieurs modalités de manière alternée ou parallèle, de façon combinée ou redondante. Du point de vue système, une modalité, qu'elle soit d'entrée ou de sortie, se définit par : - un système représentationnel ; - un dispositif physique d'interaction ; ou par -l'association d'un système représentationnel et d'un dispositif physique d'interaction. A titre d'exemple non limitatif, l'invention s'applique à des services interactifs accessibles par au moins une de ces modalités : -téléphonie fixe ; - téléphonie mobile ; - téléphonie IP (Internet Protocol) ; - accès Internet ; - vidéo. Il est connu qu'un utilisateur (personne physique ou dispositif) accède à un service au cours d'une session, liée à cet utilisateur, pendant laquelle sont établis un ou plusieurs canaux. De façon connue, une session établie entre deux entités est contrôlée (établie, maintenue, rompue, ...) par des moyens de contrôle répartis dans ces entités. Dans ce document, les données gérées par au moins un de ces moyens de contrôle de session sont dites rattachées à la session. Un canal de communication entre deux entités est défini par un flux de données utiles (voix, vidéo, .), les moyens de contrôle de ce flux répartis dans les deux entités. Les données gérées par au moins un de ces moyens de contrôle de canal sont dites rattachées au canal. 2903261 2 On dira également qu'une donnée rattachée à une première session ou à un premier canal est visible d'une deuxième session ou d'un deuxième canal si les moyens de contrôle de cette deuxième session ou de ce deuxième canal ont connaissance de l'existence de cette donnée. 5 Elle est dite invisible dans le cas contraire. Enfin lorsqu'une donnée est visible, elle peut l'être : - en lecture : Si sa valeur peut être seulement obtenue ; ou - en lecture/écriture Si sa valeur peut être modifiée. Par ailleurs, notamment dans le cadre des services 10 multimodaux, il peut se produire qu'un ou plusieurs utilisateurs accèdent à un même service avec plusieurs sessions, chacune de ces sessions comportant un ou plusieurs canaux. Par exemple, un utilisateur peut accéder à un serveur via un canal vocal appartenant à une première session établie entre ce serveur et 15 un téléphone mobile de cet utilisateur et, simultanément, via un canal vidéo appartenant à une deuxième session avec un ordinateur de ce même utilisateur. A ce jour, le déploiement des services multimodaux reste limité, du fait qu'il n'est pas possible, dans l'état actuel de la technique, de 20 partager des informations entre ces différents canaux, cette étanchéité relative empêchant d'assurer une cohérence globale du service. Objet et résumé de l'invention Selon un premier aspect, l'invention concerne une unité de 25 gestion d'au moins un canal appartenant à une session d'accès à un service dans un réseau de télécommunications, cette unité de gestion comportant : - des moyens pour enregistrer un attribut de visibilité associé audit au moins un canal ; 30 - des moyens pour recevoir une requête pour obtenir des informations sur un canal; et - des moyens pour envoyer une réponse à cette requête, en prenant en compte l'attribut de visibilité associé à ce canal. L'unité de gestion selon l'invention permet donc de définir et 35 d'enregistrer un attribut de visibilité associé à chacun des canaux utilisés pour accéder à un service. 2903261 3 Dans un mode particulier de réalisation de l'invention, les différents attributs de visibilité qui peuvent être associés à un canal sont les suivants : - "public", un canal public étant visible par tous les autres 5 canaux ; - " protégé", un canal protégé étant visible par tous les autres canaux de la session de ce canal; et -"privé", un canal privé n'étant visible par aucun autre canal. Conformément à l'invention, lorsque l'unité de gestion reçoit une 10 requête pour obtenir des informations sur un canal, elle prépare une réponse en prenant en compte l'attribut de visibilité associé au canal. Par exemple, lorsque l'unité de gestion reçoit une requête pour obtenir la liste des canaux visibles, elle retourne, en réponse à cette requête, la liste des références des canaux publics. 15 Et si aucun canal n'est public, l'unité de gestion selon l'invention retourne une information (NULL) représentative de cet état de fait. Dans un mode de réalisation de l'invention, si la requête pour obtenir des informations sur un premier canal provient d'un deuxième canal, la réponse prend en compte les sessions auxquelles appartiennent 20 ces premier et deuxième canaux. Par exemple, l'unité de gestion selon l'invention retourne des informations sur un canal protégé uniquement en réponse aux requêtes provenant d'un canal appartenant à la même session que ce canal. L'invention s'applique également lorsqu'au moins deux sessions 25 permettent d'accéder au même service. Dans un mode particulier de réalisation de l'invention, l'unité de gestion comporte : - des moyens pour enregistrer un attribut de visibilité associé à une session ; 30 - des moyens pour recevoir une requête pour obtenir des informations sur une session ; et - des moyens pour envoyer une réponse à cette requête, en prenant en compte l'attribut de visibilité associé à la session. Dans un mode particulier de réalisation, on offre en outre une 35 visibilité sur les sessions. 2903261 4 Dans un mode particulier de réalisation, l'attribut de visibilité d'une session peut être de deux types : - "public", une session publique étant visible par toutes les sessions ; et 5 - "privé", une session privée n'étant visible que par les canaux de cette session. Dans un mode particulier de réalisation de l'invention, l'unité de gestion prend en compte, pour répondre à une requête d'obtention 10 d'information sur un canal l'attribut de visibilité de la session à laquelle appartient ce canal et un ensemble de règles. Cet ensemble de règles définit en quelque sorte la prévalence entre l'attribut de visibilité associé à une session et l'attribut de visibilité associé à un canal de cette session. 15 Cet ensemble de règles permet notamment de lever les conflits de visibilité quand un canal protégé ou public appartient à une session privée. Dans un mode particulier de réalisation de l'invention, l'unité de gestion comporte : 20 - des moyens pour enregistrer un attribut de visibilité associé à au moins une donnée ; - des moyens pour recevoir une requête pour obtenir des informations sur une donnée ; et - des moyens pour envoyer une réponse à cette requête, en prenant en 25 compte l'attribut de visibilité associé à la donnée. Ce mode particulier de réalisation permet d'attribuer un attribut de visibilité aux données utilisées dans le cadre d'un service. Dans un mode particulier de réalisation de l'invention, les différents attributs de visibilité qui peuvent être associés à une donnée 30 sont les suivants : - "public", une donnée publique étant est visible par toutes les sessions ; - "protégé", une donnée protégée n'étant visible que par les canaux de la même session ; et - "privée", une donnée privée n'étant visible ni par les autres sessions, ni 35 par les autres canaux de cette session. 2903261 5 Dans un mode particulier de réalisation de l'invention, l'unité de gestion comporte en outre : - des moyens pour enregistrer un droit de lecture et/ou écriture associé à 5 au moins une donnée ; - des moyens pour recevoir une requête pour lire ou modifier une donnée; et - des moyens pour envoyer une réponse à cette requête, en prenant en compte le droit et l'attribut de visibilité associés à cette donnée. 10 Comme mentionné précédemment, une donnée peut être rattachée à un canal ou directement rattachée à une session. Dans un mode particulier de réalisation, lorsqu'un tiers émet une requête pour accéder à une donnée rattachée à un canal, l'unité de gestion selon l'invention prend en compte, pour répondre à cette requête, 15 l'attribut de visibilité de ce canal et un ensemble de règles. Cet ensemble de règles permet notamment de lever les conflits de visibilité lorsqu'une donnée publique est rattachée à un canal protégé ou privé. Dans un mode particulier de réalisation de l'invention, 20 lorsqu'une donnée est rattachée à une session, l'unité de gestion prend en compte l'attribut de visibilité de cette session et un ensemble de règles. Cet ensemble de règles permet notamment de lever les conflits de visibilité lorsqu'une donnée publique ou protégée appartient à une session privée. 25 Dans un mode de réalisation particulier, l'unité de gestion selon l'invention prend en compte, pour répondre à une requête pour obtenir des informations sur une donnée, la session à laquelle est rattachée cette donnée et la session d'où provient cette requête. Ce mode de réalisation permet ainsi de limiter la fourniture 30 d'informations sur une donnée protégée en réponse aux seules requêtes provenant d'un canal appartenant à la même session. L'invention concerne également un procédé de gestion d'au moins un canal appartenant à une session d'accès à un service dans un réseau de télécommunications 35 Ce procédé de gestion comporte : - une étape d'enregistrement d'un attribut de visibilité associé à ce canal ; 2903261 6 - une étape de réception d'une requête pour obtenir des informations sur un canal ; et - une étape d'envoi d'une réponse à la requête, en prenant en compte l'attribut de visibilité associé au canal. 5 Les avantages et modes particuliers de réalisation du procédé de gestion selon l'invention sont identiques à ceux mentionnés précédemment en référence au dispositif de gestion selon l'invention. Ils ne seront pas rappelés ici. Dans un mode particulier de réalisation, les différentes étapes 10 du procédé de gestion sont déterminées par des instructions de programmes d'ordinateurs. En conséquence, l'invention vise aussi un programme d'ordinateur sur un support d'informations, ce programme étant susceptible d'être mis en oeuvre dans une unité de gestion ou plus 15 généralement dans un ordinateur, ce programme comportant des instructions adaptées à la mise en oeuvre des étapes d'un procédé de gestion tel que décrit ci-dessus. Ce programme peut utiliser n'importe quel langage de programmation, et être sous la forme de code source, code objet, ou de 20 code intermédiaire entre code source et code objet, tel que dans une forme partiellement compilée, ou dans n'importe quelle autre forme souhaitable. L'invention vise aussi un support d'informations lisible par un ordinateur, et comportant des instructions d'un programme d'ordinateur 25 tel que mentionné ci-dessus. Le support d'informations peut être n'importe quelle entité ou dispositif capable de stocker le programme. Par exemple, le support peut comporter un moyen de stockage, tel qu'une ROM, par exemple un CD ROM ou une ROM de circuit microélectronique, ou encore un moyen 30 d'enregistrement magnétique, par exemple une disquette (floppy disc) ou un disque dur. D'autre part, le support d'informations peut être un support transmissible tel qu'un signal électrique ou optique, qui peut être acheminé via un câble électrique ou optique, par radio ou par d'autres 35 moyens. Le programme selon l'invention peut être en particulier téléchargé sur un réseau de type Internet. 2903261 7 Alternativement, le support d'informations peut être un circuit intégré dans lequel le programme est incorporé, le circuit étant adapté pour exécuter ou pour être utilisé dans l'exécution du procédé en question. 5 Brève description des dessins D'autres caractéristiques et avantages de la présente invention ressortiront de la description faite ci-dessous, en référence aux dessins annexés qui en illustrent un exemple de réalisation dépourvu de tout 10 caractère limitatif. Sur les figures : - la figure 1 représente, dans son environnement, une unité de gestion conforme à l'invention dans un mode particulier de réalisation ; - la figure 2 représente, sous forme d'organigramme, les principales étapes d'un procédé de gestion conforme à l'invention dans un 15 mode particulier de réalisation ; - la figure 3 représente des tables qui définissent des règles pour résoudre des conflits de visibilité dans un mode particulier de réalisation de l'invention ; et - la figure 4 représente de façon schématique un exemple 20 d'utilisation de l'invention. La figure 1 représente une unité de gestion 20 conforme à l'invention. Dans l'exemple décrit ici, cette unité de gestion est incorporée dans un serveur portant la même référence. 25 Cette unité de gestion a l'architecture matérielle d'un ordinateur conventionnel. Elle comporte un processeur 11, une mémoire vive de type RAM 12, une mémoire morte de type ROM 13 et des moyens de communication 14 pour communiquer avec un autre équipement via un réseau 1. 30 La mémoire morte 13 comporte un programme d'ordinateur dont les instructions permettent de mettre en oeuvre les étapes du procédé de gestion conforme à l'invention dont l'organigramme est donné à la figure 2. L'unité 20 de gestion selon l'invention comporte une unité de 35 stockage 15 qui comporte trois tables de règles T1, T2 et T3 représentées à la figure 3. 2903261 8 L'unité de gestion 20 selon l'invention comporte également une mémoire non volatile réinscriptible 16 qui mémorise : - des attributs de visibilité V(S;) sur des sessions Si ; - des attributs de visibilité V(Ci) sur des canaux C; ; 5 - des attributs de visibilité V(Dk) sur des données Dk ; et - des droits R(Dk) sur les données Dk. Dans l'exemple décrit ici, l'attribut V(Sj) d'une session Si peut être de deux types : - "public" (PUB), auquel cas la session Si est visible par les 10 autres sessions qui peuvent consulter les données qui s'y rattachent ; et - "privé" (PRIV), auquel cas la session Sj et les données rattachées à cette session ne sont pas visibles par les autres sessions. Dans l'exemple décrit ici, les attributs de visibilité V(Ci) d'un canal C; peuvent être de trois types, à savoir : 15 - "public" (PUB), auquel cas le canal C; est visible par toutes les autres sessions ; - "protégé" (PROT), auquel cas le canal C; est visible par les canaux de la même session que ce canal ; et - "privé" (PRIV), auquel cas le canal n'est visible ni par les 20 autres sessions, ni par les autres canaux de la même session. Dans l'exemple décrit ici, les attributs de visibilité V(Dk) des données Dk peuvent être de trois types, à savoir : - "public" (PUB), auquel cas la donnée est visible par toutes les autres sessions ; 25 - "protégé" (PROT), auquel cas la donnée n'est visible que par les canaux de la même session; et - "privé" (PRIV), auquel cas la donnée n'est visible ni par les autres sessions, ni par les autres canaux de la même session. Les trois tables T1, T2 et T3 mémorisées dans l'unité de 30 stockage 15 définissent des règles qui permettent de lever les conflits entre : - l'attribut de visibilité V(S;) d'une session Si ; - l'attribut de visibilité V(Ci) d'un canal C; de cette session Si ; et 35 - l'attribut de visibilité V(Dk) d'une donnée Dk rattachée au canal C; ou à la session Si. 2903261 9 Dans l'exemple particulier décrit ici, on considère qu'il est nécessaire : - qu'une session Si soit visible pour que les canaux C; de cette session soient eux-mêmes visibles ; et 5 - qu'un canal Ci soit lui-même visible pour que les données Dk rattachées à ce canal soient visibles. On suppose qu'un utilisateur accède à un même service du serveur 20 par deux terminaux, à savoir un ordinateur personnel 11 et un téléphone mobile 12, via le réseau de télécommunications 1. Plus 10 précisément, on considère dans cet exemple : - qu'une première session SI est établie entre l'ordinateur 11 et le serveur 20, cette première session SI comportant un canal vocal CI et un canal visuel C2 ; - et qu'une deuxième session S2 est établie entre le téléphone 15 mobile 12 et le serveur 20, cette deuxième session comportant uniquement un canal vocal référencé C3. La table T1 comporte des règles utilisées par l'unité de gestion 20 pour résoudre un conflit de visibilité qui se présente quand : - on accède à une donnée rattachée à une session S. depuis 20 cette même session Si ; ou quand - on accède à une donnée rattachée à un canal C; depuis ce même canal C;. La table T2 comporte des règles utilisées par l'unité de gestion 20 pour résoudre un conflit de visibilité qui se présente lorsque l'on 25 souhaite accéder à une donnée rattachée à un premier canal par un deuxième canal de la même session. La table T3 comporte des règles utilisées par l'unité de gestion 20 pour résoudre un conflit de visibilité lorsque l'on souhaite accéder à une donnée, quelle soit rattachée à une session ou à un canal, depuis une 30 autre session. Dans chacune de ces tables, on note : - "VIS" si la donnée Dk peut être rendue visible en fonction des attributs de visibilité V(S;), V(Ci) et V(Dk) ; et - "INVIS" si cette donnée doit rester invisible. 35 La lecture de la table T1 nous indique que dans ce mode de réalisation, une donnée rattachée à une session est toujours visible de 2903261 10 cette session, et qu'une donnée rattachée à un canal est toujours visible de ce canal. La lecture de la table T2 nous indique qu'une donnée privée rattachée à un canal est invisible pour tous les autres canaux de la même 5 session et qu'une donnée rattachée à un canal privé est invisible depuis les autres canaux de la même session, même si cette donnée est publique. La table T3 nous indique que, pour qu'une donnée soit visible depuis une autre session, il est nécessaire que le canal et la session à 10 laquelle appartient cette donnée soient publics. Nous allons maintenant décrire, en référence à la figure 2, les principales étapes du procédé de gestion mis en oeuvre par l'unité de gestion 20. Dans la suite de la description, le terme "objet" désigne 15 indifféremment une session, un canal ou une donnée. D'un point de vue général, le procédé de gestion selon l'invention est constitué par une boucle E10 à E60 de traitement de requêtes. L'étape E10 correspond à la réception de ces requêtes. 20 Ces requêtes peuvent être de différents types : - des requêtes pour enregistrer un objet, ces requêtes d'enregistrement comportant un attribut de visibilité associé à cet objet. Sur réception d'une requête d'enregistrement d'un objet non enregistré, l'unité de gestion 20 mémorise l'attribut de visibilité dans la mémoire non 25 volatile 16 ; - des requêtes de déréférencement, pour supprimer un objet de la mémoire non volatile 16 ; - des requêtes pour obtenir la liste des références d'objets publics ; 30 - des requêtes pour modifier l'attribut de visibilité d'un objet, ces requêtes n'étant prises en compte par l'unité de gestion 20 que si elles proviennent de la session à laquelle appartient cet objet ; - des requêtes pour modifier les informations associées à un objet public ; 35 - des requêtes pour obtenir des informations sur un objet public. 2903261 11 Lorsque la requête reçue à l'étape E10 est une requête d'enregistrement ou de déréférencement, l'étape E10 est suivie par une étape E20 au cours de laquelle l'unité de gestion 20 enregistre ou supprime la référence d'un objet ainsi que les attributs de visibilité de cet 5 objet dans la mémoire non volatile 16. Cette étape d'enregistrement E20 ou de déréférencement est suivie par une étape E30 au cours de laquelle l'unité de gestion 20 envoie une réponse à la requête reçue à l'étape [10, cette réponse comportant soit la référence de l'objet, soit une valeur NULL si une erreur s'est 10 produite. Une erreur peut notamment se produire lorsqu'une requête d'enregistrement ou de déréférencement d'un canal est reçue d'une session autre que celle à laquelle appartient ce canal. Cette étape E30 d'envoi d'une réponse est suivie par l'étape E10 15 de réception de la prochaine requête. Lorsque l'unité de gestion 20 selon l'invention reçoit une requête pour obtenir ou modifier des informations sur un objet, l'étape E10 de réception de requête est suivie par une étape E40 d'obtention d'au moins un critère de visibilité. 20 Si la requête vise une session Si, on obtient, au cours de cette étape, l'attribut de visibilité V(Si) de cette session depuis la mémoire non volatile 16. Si cette requête vise un canal C;, on obtient, depuis la mémoire non volatile 16, l'attribut de visibilité V(Ci) de ce canal et l'attribut de 25 visibilité V(Si) de la session à laquelle appartient de canal. Si la requête vise une donnée Dk, on obtient de la mémoire non volatile 16, l'attribut de visibilité V(Dk) de cette donnée, le cas échéant l'attribut de visibilité V(Ci) du canal auquel est rattachée cette donnée, et le cas échéant, l'attribut de visibilité V(Si) de la session à laquelle est 30 rattachée cette donnée. L'étape E40 d'obtention des critères de visibilité est suivie par une étape E50 de gestion des conflits de visibilité. Dans l'exemple décrit ici, lorsque cette requête vise une donnée, cette étape de gestion des conflits consiste à obtenir, à partir des tables 35 T1 à T3, la valeur "VIS" ou "INVIS". 2903261 12 Si l'unité de gestion 20 obtient la valeur "INVIS", la constante NULL est renvoyée en réponse à la requête pour représenter le fait que la donnée est invisible et que les informations demandées ne sont pas accessibles. 5 En revanche, si la valeur "VIS" est obtenue, c'est-à-dire si la donnée recherchée Dk est visible, la réponse à la requête dépend des droits R(Dk) associés à cette donnée. Plus précisément, si ces droits sont des droits de lecture, la donnée Dk peut simplement être lue. 10 Et si ces droits sont des droits d'écriture, la donnée Dk peut également être modifiée. En référence à la figure 4, nous allons maintenant décrire un scénario conforme à l'invention pour gérer les canaux CI, C21 C3 établis par l'ordinateur 11 et le téléphone mobile 12 pour accéder au serveur 20 de la 15 figure 1. Au cours d'une étape el, la modalité vocale de l'ordinateur 11 demande le référencement de la session SI par l'envoi d'une requête de référencement. Cette requête de référencement est reçue au cours de l'étape 20 [10. Comme la session SI n'est pas connue de l'unité de gestion 20, une référence RefSi est créée (étape [20) et retournée (étape E30) à l'ordinateur personnel 11 dans le canal CI. Au cours d'une étape e2, la modalité visuelle de l'ordinateur 11 demande le référencement de la session Si. Comme cette session est 25 enregistrée dans la mémoire volatile 16, la référence RefSi de cette session est retournée à l'ordinateur 11 via le canal C2. Au cours d'une étape e3, la modalité vocale de l'ordinateur 11 demande le référencement du canal CI dans l'unité de gestion 20. La référence RefCi est créée (étape [20) et retournée à 30 l'ordinateur personnel 11 via le canal CI. Au cours d'une étape e4, la modalité vocale de l'ordinateur 11 demande le référencement du canal visuel C2. La référence RefC2 est créée et retournée à l'ordinateur 11 via le canal C2. Au cours d'une étape e5, la modalité vocale de l'ordinateur 11 35 enregistre la donnée A (donnée de niveau session rattachée à la session Si). 2903261 13 Au cours d'une étape e6, la modalité visuelle de l'ordinateur 11 enregistre la donnée B, donnée rattachée au canal visuel C2. Au cours d'une étape e7, la modalité vocale de l'ordinateur 11 obtient la liste des canaux visibles de la session SI auprès de l'unité de 5 gestion 20. Au cours d'une étape e8, la modalité vocale de l'ordinateur 11 accède à la donnée B rattachée au canal C2, en supposant que la modalité vocale de l'ordinateur 11 a les droits de lecture sur cette donnée. Au cours d'une étape e9, la modalité vocale du téléphone 10 mobile 12 demande le référencement de la session S2. Comme S2 n'est pas référencé dans l'unité de gestion 20, une référence RefS2 est créée et retournée au téléphone mobile 12 via le canal C3. Au cours d'une étape e10, la modalité vocale de l'ordinateur 11 demande le référencement du canal C3. La référence RefC3 est créée et 15 retournée à la modalité vocale du téléphone mobile 12 via le canal C3. Au cours d'une étape el l, la modalité vocale du terminal mobile 12 obtient la liste des sessions visibles auprès de l'unité de gestion 20. Au cours d'une étape e12, la modalité vocale du terminal mobile 12 accède à la donnée A de la session SI en supposant que cette modalité 20 vocale a les droits de lecture sur cette donnée. Au cours d'une étape e13, la modalité vocale du terminal mobile 12 récupère la liste des canaux visibles de la session SI auprès de l'unité de gestion 20. Au cours d'une étape e14, la modalité vocale du terminal mobile 25 12 accède à la donnée B rattachée au canal C2 en supposant que cette modalité vocale a les droits de lecture sur cette donnée. Au cours d'une étape e15, la modalité vocale du terminal mobile 12 demande le déréférencement du canal C3. La référence RefC3 est supprimée de la mémoire non volatile 16. 30 Au cours d'une étape e16, la modalité vocale du terminal mobile 12 demande le déférencement de la session S2. La référence RefS2 est supprimée de la mémoire non volatile 16. Au cours d'une étape e17, la modalité visuelle de l'ordinateur 11 demande le déférencement du canal C2. 35 La référence RefC2 est supprimée. 2903261 14 Au cours d'une étape e18, la modalité visuelle de l'ordinateur 11 demande le déférencement de la session Si. Comme la référence RefSi est également utilisée par la modalité vocale de l'ordinateur 11, elle n'est pas supprimée de la mémoire non 5 volatile 16. Au cours d'une étape e19, la modalité vocale de l'ordinateur 11 demande le déférencement du canal vocal CI. La référence RefCi est supprimée. Au cours d'une étape e20, la modalité vocale de l'ordinateur 11 10 demande le déférencement de la session Si. Comme la référence RefSi n'est plus utilisée par aucune modalité, elle est supprimée du registre de sessions. Dans l'exemple de réalisation décrit ici, le procédé de gestion de 15 l'organigramme donné à la figure 2 s'appuie sur un ensemble de fonctions spécifiées ci-après. Les instructions de chacune de ces fonctions sont mémorisées dans la mémoire non volatile 13 de type ROM de l'unité 20 conforme à l'invention. 2903261 15 A) Fonctionnalités de niveau session. 1) Enregistrement d'une session : 5 La fonction registerSession permet d'enregistrer une session. Elle comporte les paramètres suivants : Paramètre Type Commentaire idUser Paramètre Identifiant de la session obligatoire Visibilité Paramètre Visibilité donnée sur la session obligatoire Valeurs possibles : PUB : la session est visible par toutes les autres sessions ; PRIV : la session n'est visible que par les canaux d'une même session. Valeur de Si la session est nouvelle, la valeur de retour retour est la référence sur cette nouvelle session enregistrée. Si la session existe déjà (c'est-à-dire que l'idUser passé en paramètre est le même), la valeur de retour est la référence sur cette session existante. Si une erreur est rencontrée, la valeur de retour est "NULL". 10 2) Obtention de la liste des sessions visibles La fonction getListSession permet de récupérer la liste des références des sessions enregistrées avec une visibilité de type publique . Paramètre Type Commentaire Valeur Liste de références sur les sessions ayant une de visibilité de type "PUB". retour Si uneerreur est rencontrée, la valeur de retour est "NULL". 15 2903261 16 3) Mise à jour de la visibilité d'une session La fonction setSessionScope permet de mettre à jour la visibilité d'une 5 session. Seule une session peut en modifier sa visibilité. Paramètre Type Commentaire refSession Paramètre Référence de la session obligatoire Visibilité Paramètre Visibilité donnée sur la session obligatoire Valeurs possibles : PUB : la session est visible par toutes les autres sessions. PRIV : la session n'est visible que par les canaux d'une même session. Valeur de Référence sur la session retour Ou "NULL" si une erreur est rencontrée (par exemple, émise par une autre session). 4) Modifications d'informations sur une session 10 La fonction setSessionInfo permet de modifier les informations sur une session de visibilité de type PUB . Paramètre Type Commentaire refSession Paramètre Référence de la session obligatoire refInfo Paramètre Référence sur les informations de la session obligatoire Valeur de Référence sur les informations de la session retour Si une erreur est rencontrée, la valeur de retour est "NULL" 2903261 17 5) Obtention d'informations sur une session La fonction getSessionlnfo permet d'obtenir des informations sur une 5 session de visibilité de type PUB . Paramètre Type Commentaire refSession Paramètre Référence de la session obligatoire Valeur de Référence sur les informations de la session retour (contenant sa visibilité, le nombre de canaux visibles, ...). Si une erreur est rencontrée, la valeur de retour est null 6) Déréférencement d'une session 10 La fonction unregisterSession permet de déréférencer une session. Paramètre Type Commentaire refSession Paramètre Référence de la session obligatoire Valeur de Si la session n'a plus de canaux rattachés, la retour valeur de retour est la référence de la session qui vient d'être supprimée. Sinon, la valeur de retour est "NULL" 5 2903261 18 B) Fonctionnalités de niveau canal . 1) Enregistrement d'un canal: La fonction registerChannel permet d'enregistrer un canal référencé. Paramètre Type Commentaire refSession Paramètre Référence de la session à laquelle appartient obligatoire le canal Visibilité Paramètre Visibilité donnée sur le canal. obligatoire Valeurs possibles : PUB : le canal est visible par tous les autres canaux, quelle que soit la session. PROT : le canal est visible par tous les autres canaux de la session. PRIV : le canal n'est visible par aucun autre canal. Si un canal appartient à une session privée, il ne sera pas visible des autres sessions quels que soient les droits attachés au canal. En d'autres termes, les droits de niveau session priment sur les droits de niveau canal. idChannel Paramètre Identifiant du canal. Le format de cette obligatoire information est libre. Il peut par exemple prendre les valeurs 1,2,3, ... ou Web,Vocal,TV,... Valeur de Référence sur le nouveau canal enregistré retour ou "NULL" si une erreur est rencontrée (problème de droits ou de création) 2903261 19 2) Obtention de la liste des canaux visibles La fonction getListChannel permet d'obtenir la liste des références des 5 canaux enregistrés avec une visibilité de type PUB . Paramètre Type Commentaire refChannel Paramètre Référence de la session obligatoire Valeur de Liste des références des canaux ayant une retour visibilité de type PUB ou "NULL" en cas d'erreur. 3) Modification de la visibilité d'un canal 10 La fonction setChannelScope permet de mettre à jour la visibilité d'un canal. Paramètre Type Commentaire refChannel Paramètre Référence du canal obligatoire Visibilité Paramètre Visibilité donnée sur le canal. obligatoire Valeurs possibles : PUB : le canal est visible par tous les autres canaux, quelle que soit la session PROT: le canal est visible par tous les autres canaux de la session. private : le canal n'est pas visible par les autres canaux de la même session. Valeur de Référence sur le canal retour ou "NULL" si une erreur est rencontrée (problème de droits ou de visibilité) 2903261 20 4) Modification d'informations sur une session La fonction setChannelInfo permet de modifier les informations 5 associées à un canal de visibilité de type PUB . Paramètre Type Commentaire refChannel Paramètre Référence du canal obligatoire reflnfo Paramètre Référence sur les informations du canal obligatoire Valeur de Référence sur les informations du canal ou retour "NULL" en cas d'erreur 5) Obtention d'informations sur un canal 10 La fonction getChannelInfo permet d'obtenir des informations sur un canal d'une session. Paramètre Type Commentaire refChannel Paramètre Référence du canal obligatoire Valeur de Référence sur les informations du canal retour (contenant le scope, le type de canal, ...) ou "NULL" en cas d'erreur 6) Déréférencement d'un canal La fonction unregisterChannel permet de déréférencer un canal d'une session. Paramètre Type Commentaire refChannel Paramètre Référence du canal obligatoire Valeur de Référence du canal qui vient d'être supprimé retour ou "NULL" en cas d'erreur 15 2903261 21 C) Fonctionnalités de niveau données . 1) Enregistrement d'une donnée a) Enregistrement d'une donnée de niveau session: 5 La fonction registerSessionData permet d'enregistrer une donnée de niveau session. Paramètre Type Commentaire refSession Paramètre Référence de la session obligatoire Visibilité Paramètre Visibilité sur la donnée : obligatoire PUB : la donnée est visible par tous. PROT : la donnée n'est visible que par les canaux de la même session. PRIV : la donnée n'est pas visible par les autres sessions, ni par les autres canaux de la même session. Si une donnée de niveau session appartient à une session privée ou protégée, elle ne sera pas visible des autres sessions quels que soient les droits attachés à la donnée. En d'autres termes, la visibilité de niveau session prime sur la visibilité de niveau donnée. Droits Paramètre Droits de manipulation sur la donnée obligatoire Valeurs possibles : RW : la donnée est accessible en lecture et en écriture. R : la donnée n'est accessible qu'en lecture. W : la donnée n'est accessible qu'en écriture. idData Paramètre Identifiant de la donnée. Le format de cette obligatoire information est libre (chaîne de caractères). Valeur de Référence sur la donnée enregistrée retour ou "NULL" si une erreur est rencontrée (problème de compatibilité de visibilité ou de droits ou lors de création). b) Enregistrement d'une donnée de niveau canal: 2903261 22 La fonction registerChannelData permet d'enregistrer une donnée de niveau canal (pour une session donnée). Paramètre Type Commentaire refChannel Paramètre Référence du canal obligatoire Visibilité Paramètre Visibilité sur la donnée : obligatoire PUB : la donnée est visible par tous. PROT : la donnée n'est visible que par les canaux de la même session. PRIV : la donnée n'est pas visible par les autres sessions, ni par les autres canaux de la même session. Si une donnée de niveau canal appartient à une session privée ou protégée, elle ne sera pas visible des autres sessions quels que soient les droits attachés à la donnée. En d'autres termes, la visibilité de niveau session prime sur la visibilité de niveau donnée. Droits Paramètre Droits de manipulation sur la donnée obligatoire Valeurs possibles : RW : la donnée est accessible en lecture et en écriture. R : la donnée n'est accessible qu'en lecture. W : la donnée n'est accessible qu'en écriture. idData Paramètre Identifiant de la donnée. Le format de cette obligatoire information est libre (chaîne de caractères). Valeur de Référence sur la donnée enregistrée retour ou "NULL" si une erreur est rencontrée (problème de compatibilité de visibilité ou de droits ou lors de création) 2903261 23 2) Modification de la visibilité d'une donnée La fonction setDataScope permet de modifier la visibilité d'une 5 donnée. Paramètre Type Commentaire refData Paramètre Référence de la donnée obligatoire Visibilité Paramètre Visibilité sur la donnée : obligatoire PUB : la donnée est visible par tous. PROT : la donnée n'est visible que par les canaux de la même session. PRIV : la donnée n'est pas visible par les autres sessions, ni par les autres canaux de la même session. Pour modifier la visibilité d'une donnée, un canal doit disposer des droits en écriture sur la donnée. Valeur de Référence sur la donnée retour ou "NULL" si une erreur est rencontrée (problème de compatibilité de visibilité ou de droits) 2903261 24 3) Modification des droits associés à une donnée La fonction setDataRights permet de modifier les droits associés à une 5 donnée. Paramètre Type Commentaire refData Paramètre Référence de la donnée obligatoire Droits Paramètre Droits de manipulation sur la donnée obligatoire Valeurs possibles : RW : la donnée est accessible en lecture et en écriture. R : la donnée n'est accessible qu'en lecture. W : la donnée n'est accessible qu'en écriture. Valeur de Référence sur la donnée retour ou "NULL" si une erreur est rencontrée (problème de compatibilité de visibilité ou de droits) 4) Modification de la valeur d'une donnée 10 La fonction setData permet de modifier la valeur d'une donnée. Paramètre Type Commentaire refData Paramètre Référence de la donnée. obligatoire data Paramètre Référence sur la valeur de la donnée. obligatoire Valeur de Référence sur la donnée retour ou "NULL" si une erreur est rencontrée (problème de compatibilité de visibilité ou de droits ou lors de création). 2903261 25 5) Obtention d'informations sur une donnée La fonction getDatalnfo permet d'obtenir des informations sur une 5 donnée. Cette donnée doit être associée à une visibilité de type PUB . Paramètre Type Commentaire refData Paramètre Référence de la donnée. obligatoire Valeur de Référence sur les informations de la donnée retour (contenant le propriétaire, la visibilité et les droits d'accès,.. DTD: .) ou "NULL" en cas d'erreur (problème de compatibilité de visibilité ou de droits). 6) Obtention de la valeur d'une donnée 10 La fonction getData permet d'obtenir la valeur d'une donnée Paramètre Type Commentaire refData Paramètre Référence de la donnée. obligatoire Valeur de Référence sur la valeur de la donnée retour ou "NULL" en cas d'erreur (problème de compatibilité de visibilité ou de droits). 5 10 15 2903261 26 7) Obtention de la liste des données visibles a) Obtention de la liste des données visibles de niveau session: La fonction getListSessionData permet d'obtenir la liste des références des données visibles enregistrées pour une session. La visibilité de la session à laquelle appartient cette donnée doit être de type "PUB". Paramètre Type Commentaire refSession Paramètre Référence de la session. obligatoire Valeur de Liste de références sur les données visibles retour ou "NULL" en cas d'erreur (problème de compatibilité de visibilité ou de droits). b) Obtention de la liste des données visibles de niveau canal La fonction getListChannelData permet d'obtenir la liste des références des données visibles enregistrées pour un canal. La visibilité de la session à laquelle appartient cette donnée doit être de type PUB ou PROT . Paramètre Type Commentaire refChannel Paramètre Référence du canal. obligatoire Valeur de Liste de références sur les données visibles retour ou "NULL" en cas d'erreur (problème de compatibilité de visibilité ou de droits). 5 2903261 8) Déréférencement d'une donnée La fonction unregisterData permet de déréférencer une donnée. Paramètre Type Commentaire refData Paramètre Référence de la donnée. obligatoire Valeur de Référence de la donnée qui vient d'être retour supprimé ou "NULL" en cas d'erreur (problème de compatibilité de visibilité ou de droits). 27.. FT: UNITE ET PROCEDE DE GESTION D'AU MOINS UN CANAL DANS UNE SESSION D'ACCES A UN SERVICE DANS UN RESEAU REVENDICATIONS 1. Unité de gestion (20) d'au moins un canal (C;) appartenant à une session (Si) d'accès à un service dans un réseau (1) de télécommunications, ladite unité (20) de gestion comportant : - des moyens (16) pour enregistrer un attribut de visibilité (V(C;)) associé audit au moins un canal (C;) ; - des moyens (14) pour recevoir une requête (getChannellnfo) pour obtenir des informations sur un dit canal (C;) ; et - des moyens (14) pour envoyer une réponse à ladite requête (getChannellnfo), en prenant en compte l'attribut de visibilité (V(C;)) associé audit canal (C;). 2. Unité de gestion (20) selon la revendication 1, dans laquelle ladite requête (getChannellnfo) pour obtenir des informations sur un premier canal (C;) provient d'un deuxième canal (C;), caractérisée en ce que ladite réponse prend en compte la session à laquelle appartient ledit premier canal (C;) et la session (Si) laquelle appartient ledit deuxième canal (C;). 3. Unité de gestion (20) selon la revendication 1 ou 2, dans laquelle au moins deux sessions (Si, Si) permettent d'accéder audit service, caractérisée en ce qu'elle comporte : - des moyens (16) pour enregistrer un attribut de visibilité (V(S;)) associé 25 à une dite session (Si) ; -des moyens (14) pour recevoir une requête (getSessionlnfo) pour obtenir des informations sur une session (Si) ; et - des moyens (14) pour envoyer une réponse à ladite requête, en prenant en compte l'attribut de visibilité (V(S;)) associé à ladite session (Si). 30 4. Unité de gestion (20) selon la revendication 3, caractérisée en ce que la réponse à ladite requête d'obtention d'information sur un canal (C;) (getChannellnfo) prend en compte l'attribut de visibilité (V(Si)) associé à la session (Si) à laquelle appartient ledit canal (C;) et un ensemble de 35 règles (15). 2903261 29 5. Unité de gestion (20) selon l'une quelconque des revendications 1 à 4, caractérisée en ce qu'elle comporte : - des moyens (16) pour enregistrer un attribut de visibilité (V(Dk)) associé à au moins une donnée (Dk) ; 5 -des moyens (14) pour recevoir une requête (getDataInfo) pour obtenir des informations sur une donnée (Dk) ; et - des moyens (14) pour envoyer une réponse à ladite requête, en prenant en compte l'attribut de visibilité (V(Dk)) associé à ladite donnée (Dk). 10 6. Unité de gestion (20) selon la revendication 5, caractérisée en ce qu'elle comporte : - des moyens (16) pour enregistrer un droit (R(Dk)) de lecture et/ou écriture associé à au moins une donnée (Dk) ; - des moyens (14) pour recevoir une requête (setData) pour lire ou 15 modifier ladite donnée (Dk) ; et - des moyens (14) pour envoyer une réponse à ladite requête, en prenant en compte le droit (R(Dk)) et l'attribut de visibilité (V(Dk)) associés à ladite donnée (Dk). 20 7. Unité de gestion (20) selon la revendication 5 ou la revendication 6, dans laquelle ladite donnée (Dk) est rattachée à un canal (C;), caractérisée en ce que la réponse à ladite requête d'obtention d'information sur ladite donnée (Dk) (getDataInfo) prend en compte l'attribut de visibilité (V(C;)) associé audit canal (C;) et un ensemble de règles (15). 8. Unité de gestion (20) selon la revendication 5 ou la revendication 6, dans laquelle ladite donnée (Dk) est rattachée à une session (Si), caractérisée en ce que la réponse à ladite requête d'obtention d'information sur ladite donnée (Dk) (getDataInfo) prend en compte l'attribut de visibilité (V(S;)) associé à ladite session (Si) et un ensemble de règles (15). 9. Unité de gestion (20) selon la revendication 7 ou 8, dans 35 laquelle la réponse à ladite requête d'obtention d'information sur ladite donnée (Dk) (getDataInfo) prend en compte la session (Si) à laquelle est 2903261 30 rattachée ladite donnée (Dk) et la session dont provient cette requête (getDataInfo). 10. Procédé de gestion d'au moins un canal (C;) appartenant à 5 une session (Si) d'accès à un service dans un réseau de télécommunications, ledit procédé de gestion comportant : - une étape ([20) d'enregistrement d'un attribut de visibilité (V(C;)) associé audit au moins un canal (C;) ; - une étape ([10) de réception d'une première requête (getChannelInfo) 10 pour obtenir des informations (I(C1)) sur un dit canal (C;) ; et - une étape ([60) d'envoi d'une réponse à ladite première requête (getChannelInfo), en prenant en compte l'attribut de visibilité (V(C;)) associé audit canal (C;). 15 11. Programme d'ordinateur comportant des instructions pour l'exécution des étapes du procédé de gestion selon la revendication 10 lorsque ledit programme est exécuté par un ordinateur. 12. Support d'enregistrement (13) lisible par un ordinateur (20) 20 sur lequel est enregistré un programme d'ordinateur comprenant des instructions pour l'exécution des étapes du procédé de gestion selon la revendication 10.