[email protected], [email protected] - laboratoire d'informatique en...
TRANSCRIPT
[email protected], [email protected] - http://liris.cnrs.fr/equipes?id=55
Laboratoire d'InfoRmatique en Image et Systèmes d'informationLIRIS UMR 5205 CNRS/INSA de Lyon/Université Claude Bernard Lyon 1/Université Lumière Lyon 2/Ecole Centrale de
LyonINSA – Bâtiment Blaise Pascal (501) –
20 avenue Albert Einstein — F-69621 Villeurbanne cedexhttp://liris.cnrs.fr
UMR 5205
Inter GDR, Clermont-Ferrand - 17/12/2006
Inter GDR, Clermont-Ferrand - 17/12/2006
Plate-forme pervasive de services,
application au milieu hospitalier André Flory, Vasile-Marian Scuturici, Françoise Conil
Inter GDR, Clermont-Ferrand - 17/12/2006 2
Présentation
Pervasive Services Environment est une architecture de système pervasif (réparti) à base de services (données ?), orientée utilisateurs
des équipements hétérogènes peuvent rejoindre l’environnement pervasif
les équipements peuvent proposer leurs services aux autres équipements de l’environnement
permet aux utilisateurs d’exprimer leurs intentions (PsaQL, HandRecon)
modéliser le contexte des équipements et des utilisateurs
proposer aux utilisateurs des actions à réaliser en fonction de l’historique et du contexte
Inter GDR, Clermont-Ferrand - 17/12/2006 3
Présentation
Chaque équipement exécute un méta-service appelé « Base » qui lui permet de partager ses services et son contexte
La Base PerSE découvre et communique avec les autres bases afin d’exécuter des services répartis de manière transparente et adaptée
Chaque base PerSE est autonome et aucun élément central n’est nécessaire
Le méta-service fonctionne sur Windows, Windows CE et Linux
Inter GDR, Clermont-Ferrand - 17/12/2006 4
Découverte de Bases
Inter GDR, Clermont-Ferrand - 17/12/2006 5
Découverte de services
Inter GDR, Clermont-Ferrand - 17/12/2006 6
Définition des services locaux
Dans la version actuelle, les services sont lancés en mode ligne de commandeLes services d’une base sont décrits dans un fichier (Services.ini) avec une section donnant pour chaque service :
nom du service identifiant du service ligne de commande utilisable description XML du service
Ces informations sont transmises lors de la décourverte de services, pour la résolution d’action et pour l’exécution de services
Inter GDR, Clermont-Ferrand - 17/12/2006 7
Exemple de description d’un serviceExemple avec le service TextToSpeech :
[TextToSpeech]AppName=TextToSpeechPath=C:\PerSE\PerSESpeech.exeGUID={http://perse.insa-lyon.fr/texttospeech}CmdLine=%path% %texte% %audio% %lang% %gender%Description=Speech synthesis, text file or simple string to audio.Specification=
<service> <name>TextToSpeech</name> <role type='filter/texttoaudio'></role> <effect>USE %p1_value AS %p1_name ON BASE %2, %p2_value as %p2_name ON BASE %3,
%p3_value AS %p3_name, %p4_value AS %p4_name FOR SERVICE %srv_name ON BASE %4</effect>
<inputs> <input name='texte' type='string' format='file' format_type='text/plain'
format_ext='txt' p_values='*' mandatory='1' probability='1.0'></input> <input name='lang' type='string' format='value' p_values='fr;en;de' default='fr'
mandatory='1' probability='0.5'></input> <input name='gender' type='string' format='value' p_values='M;F' default='M'
mandatory='1' probability='0.2'></input> </inputs> <outputs> <output name='audio' type='string' format='file' format_type='audio/wav'
format_ext='wav' default='' mandatory='1' probability='0.5'></output> </outputs></service>
Inter GDR, Clermont-Ferrand - 17/12/2006 8
Résolution d’action
Language PsaQL, Pervasive Service Action Query LanguageUne action est considérée comme étant une composition de services. Chaque service est décrit sous forme de triplet (base, service, paramètres)
RESOLVE [WITH [[LIKE] [@|?]<parameter_value> [AS [LIKE] <parameter_name>]] [ON BASE [LIKE] <base_name>] [, ...] [FOR SERVICE [LIKE] <service_name> [ON BASE [LIKE] <base_name>]] ] [IN CONTEXT [NEIGHBORHOOD | LOCALHOST] [FOR USER [LIKE] <user_name>] ]
Inter GDR, Clermont-Ferrand - 17/12/2006 9
Résolution d’action, exemple PsaQL
use http://liris.cnrs.fr/vasile-marian.scuturici/ for service WebViewer
use "c:\501_317.wmv" for service "MediaPlayer" on base "Desktop_B"
use "\PresentationPerSE.ppt" as file on base " Base_PDA " for service "PptViewer" on base " Desktop_B "
Inter GDR, Clermont-Ferrand - 17/12/2006 10
Gestion du contexte
Le méta-service PerSE gère des données de contexte, statiques ou dynamiquesC’est une gestion de données sous la forme de paires (nom, valeur). Il y a également une notion de classe permettant de grouper des données de contexte homogènes.La localisation wifi dans un bâtiment est une donnée de contexte que le méta-service peut acquérir à l’aide de plugins adéquats.Les modules du méta-service peuvent recevoir des notifications lorsque certaines valeurs de contexte changent
Inter GDR, Clermont-Ferrand - 17/12/2006 11
Gestion de l’historique
Le méta-service PerSE intègre une véritable Base de données qui lui permet de conserver l’historique des actions qui ont été exécutées sur une base ainsi que l’état du contexte à ce moment.
On dispose de la puissance du language SQL pour interroger les données de l’historique
Ces données permettent déjà de résoudre des demandes incomplètes d’utilisateur en exploitant l’historique
use "c:\501_317.wmv“
Déclenchera le lancement du service MediaPlayer avec ce fichier
Inter GDR, Clermont-Ferrand - 17/12/2006 12
Architecture PerSE
Le méta-service PerSE se compose de modules répartis en 3 niveaux : Communication, Environnement et Action
Inter GDR, Clermont-Ferrand - 17/12/2006 13
Evolutions possibles
Ajouter l’authentification et gérer la notion d’utilisateur Améliorer la description des services Mettre en place un mécanisme de composition de services dans l’ActionResolver Réaliser la supervision de servicesMettre en place des mécanismes de sécurisation Développer des plugins pour exécuter les services autrement que par la ligne de commande Développer des plugins de découverte de services utilisant d’autres mécanismes que les mécanismes PerSE (UPnp, …)
Inter GDR, Clermont-Ferrand - 17/12/2006 14
Evolutions possibles
Enrichir et exploiter la notion de contexte
Faire évoluer PerSE vers un environnement de Data Space dans lequel diverses sources de données peuvent être intégrées et utilisées (vidéo, capteurs)
Inter GDR, Clermont-Ferrand - 17/12/2006 15
Contributions
Direction et coordination des travaux : V-M Scuturici
Expression et interprétation de l’intention de l’utilisateur dans un environnement pervasif : PsaQL, P. Bilher
Conception et implémentation de l'architecture PerSE : Y. Gripay, avec la collaboration de F. Conil
Reconnaissance des postures de la main pour exprimer certaines intentions de l’utilisateur dans l’environnement PerSE : HandRecon, D. Piguet-Lacroix
Contrôler l’accès des utilisateurs aux ressources (données et services) de leur équipement à l'aide de profils de sécurité adaptés au contexte de l'environnement : CE. Pigeot