Title: Plate-forme pervasive de services, application au milieu hospitalier
1Plate-forme pervasive de services, application
au milieu hospitalier
- André Flory, Vasile-Marian Scuturici, Françoise
Conil
2Pré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
lenvironnement pervasif - les équipements peuvent proposer leurs services
aux autres équipements de lenvironnement - permet aux utilisateurs dexprimer leurs
intentions (PsaQL, HandRecon) - modéliser le contexte des équipements et des
utilisateurs - proposer aux utilisateurs des actions à réaliser
en fonction de lhistorique et du contexte
3Pré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 dexécuter des services
répartis de manière transparente et adaptée - Chaque base PerSE est autonome et aucun élément
central nest nécessaire - Le méta-service fonctionne sur Windows, Windows
CE et Linux
4Découverte de Bases
5Découverte de services
6Définition des services locaux
- Dans la version actuelle, les services sont
lancés en mode ligne de commande - Les services dune 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
daction et pour lexécution de services
7Exemple de description dun service
- Exemple avec le service TextToSpeech
- TextToSpeechAppNameTextToSpeechPathC\PerSE\
PerSESpeech.exeGUIDhttp//perse.insa-lyon.fr/te
xttospeechCmdLinepath texte audio lang
genderDescriptionSpeech synthesis, text file
or simple string to audio.Specification - ltservicegt
- ltnamegtTextToSpeechlt/namegt
- ltrole type'filter/texttoaudio'gtlt/rolegt
- lteffectgtUSE 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 4lt/effectgt - ltinputsgt
- ltinput name'texte' type'string'
format'file' format_type'text/plain'
format_ext'txt' p_values'' mandatory'1'
probability'1.0'gtlt/inputgt - ltinput name'lang' type'string'
format'value' p_values'frende' default'fr'
mandatory'1' probability'0.5'gtlt/inputgt - ltinput name'gender' type'string'
format'value' p_values'MF' default'M'
mandatory'1' probability'0.2'gtlt/inputgt - lt/inputsgt
- ltoutputsgt
- ltoutput name'audio' type'string'
format'file' format_type'audio/wav'
format_ext'wav' default'' mandatory'1'
probability'0.5'gtlt/outputgt - lt/outputsgt
- lt/servicegt
8Résolution daction
- 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 _at_?ltparameter_valu
egt AS LIKE ltparameter_namegt ON BASE LIKE
ltbase_namegt , ... FOR SERVICE LIKE
ltservice_namegt ON BASE LIKE ltbase_namegt
IN CONTEXT NEIGHBORHOOD LOCALHOST
FOR USER LIKE ltuser_namegt
9Résolution daction, 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 "
10Gestion du contexte
- Le méta-service PerSE gère des données de
contexte, statiques ou dynamiques - Cest 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 à laide de plugins adéquats. - Les modules du méta-service peuvent recevoir des
notifications lorsque certaines valeurs de
contexte changent
11Gestion de lhistorique
- Le méta-service PerSE intègre une véritable Base
de données qui lui permet de conserver
lhistorique 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 lhistorique - Ces données permettent déjà de résoudre des
demandes incomplètes dutilisateur en exploitant
lhistorique
use "c\501_317.wmv Déclenchera le lancement du
service MediaPlayer avec ce fichier
12Architecture PerSE
- Le méta-service PerSE se compose de modules
répartis en 3 niveaux Communication,
Environnement et Action
13Evolutions possibles
- Ajouter lauthentification et gérer la notion
dutilisateur - Améliorer la description des services
- Mettre en place un mécanisme de composition de
services dans lActionResolver - Réaliser la supervision de services
- Mettre 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 dautres mécanismes que les mécanismes
PerSE (UPnp, )
14Evolutions 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)
15Contributions
- Direction et coordination des travaux V-M
Scuturici - Expression et interprétation de lintention de
lutilisateur 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 lutilisateur
dans lenvironnement PerSE HandRecon, D.
Piguet-Lacroix - Contrôler laccè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