GUI Client in HomeSIP Project

Dimension: px
Commencer à balayer dès la page:

Download "GUI Client in HomeSIP Project"

Transcription

1 Documentation de GUI Client in HomeSIP Project Système Embarqué Guillaume GARDET Benjamin PUSSACQ Hervé SPITZ Damien LOZACH

2 Avant propos...3 Chapitre 1 Environnement de développement Avant-propos Processus de compilation d une application Installation de l environnement Scratchbox Installation d un SDK Compilation d une application...11 Chapitre 2 Mise en place d une pile SIP Avant propos Installation d osip2 et d exosip Compilation d une application utilisant «osip2»...13 Chapitre 3 Mise en place de la bibliothèque QT Avant-propos Installation de QT Compilation d une application QT...15 Chapitre 4 Objets de base Avant propos Objets de communication Objets de gestion des capteurs...18 Chapitre 5 Les outils XML La sauvegarde et le chargement d'informations La communication SIP Explication / Documentation de l'implémentation : Utilisation de DOM, dans notre cas Création d'un document XML : Lecture d'un document XML : Explication particulière :...30 Chapitre 6 Conception de l interface graphique Principe de Qt Conception Présentation de l interface graphique...32 Chapitre 7 Comprendre et/ou communiquer...35 Guillaume GARDET Benjamin PUSSACQ Hervé SPITZ Damien LOZACH 2

3 Avant propos Ceci n'est pas un rapport de projet, mais une documentation de projet, elle met en avant les idées et les structures qui ont fait aboutir à une implémentation finale. Cette implémentation n'est pas décrite car trop complexe et harassante d'un point de vue code. A ce document est joint un support de présentation orale, dans la langue de Shakespeare, ainsi qu'un package contenant les fichiers sources et les explications pour les utiliser, comprendre et compiler. Certaines des explications sont dans la langue de Molière, l'autre, dans la langue de Shakespeare. Ce document ne présentera donc pas de cahier des charges ni de comparatif entre la solution finale et un possible cahier des charges. Mais il met l'accent sur les choix d'implémentation pour une optimisation et surtout une évolutivité et ré-utilisabilité. Car ce projet s'inscrit dans le cadre d'un projet bien plus grand et à plus long terme : le projet HomeSIP. Le projet HomeSIP et la communication SIP (Session Initiation Protocol) sont présentés dans d'autres documents, ainsi la lecture de cette documentation subodore une connaissance préalable de ces deux points. De même, la connaissance de la programmationobjet et plus particulièrement l'utilisation du langage C++ est un plus pour comprendre certains chapitres. Rapide rappel du "sujet" : Création d'une interface graphique (GUI - Graphical User Interface) sur tablette internet Nokia ( Ici le 770 et le 800 ), cette interface rassemblant les données de capteurs présents dans un réseau à distance. La communication entre ce réseau et la tablette se fait en respectant le protocole SIP. L'interface est créée en utilisant les bibliothèques Qt. Guillaume GARDET Benjamin PUSSACQ Hervé SPITZ Damien LOZACH 3

4 Chapitre 1 Environnement de développement 1.1. Avant-propos Malgré le fait que les Nokia utilisent un système GNU/Linux, plusieurs différences existent entre un ordinateur classique de bureau et ces dernières. La plus grande d entre-elles est le fait qu ils ne sont pas basés sur la même architecture. En effet, un ordinateur classique est généralement constitué d un processeur compatible x86 alors qu un Nokia est basé sur un processeur ARM. Il est donc facile de comprendre que l on ne peut pas utiliser un compilateur (GCC au hasard) classique pour créer une application pour les tablettes de chez Nokia. Pour parer à ce problème, il faut utiliser un environnement de cross-compilation. Le système d exploitation des tablettes étant un GNU/Linux, Nokia fournit un SDK (Software Development Kit) contenant tous les éléments qui ont permis la réalisation de leur système. Ce Kit est gratuit et peut-être téléchargé sur le net. Afin de le mettre en œuvre, il est nécessaire d utiliser un environnement de cross-compilation. En effet, le compilateur fournit dans le SDK permet de compiler des applications pour les tablettes, mais nécessite lui-même d être sur cette architecture pour pouvoir fonctionner. Ainsi, pour pouvoir simuler cette architecture, l utilisation de l environnement Scratchbox est obligatoire. Cet environnement ne permet pas seulement de simuler les tablettes de Nokia, mais également tout autre système basé sur GNU/Linux et dont l émulation sur l ordinateur est possible. En effet, le principe de Scratchbox est de faire tourner les applications de la tablette grâce à un émulateur nommé Qemu. Il est donc possible de créer un système pour toutes les architectures supportées par cet émulateur Processus de compilation d une application Maintenant que le contexte est bien défini, le processus de développement devient très simple. Il suffit de respecter les étapes suivantes afin d obtenir un résultat satisfaisant : - Installation de la Scratchbox - Installation du SDK - Création d une application - Transfert sur la tablette cible 1.3. Installation de l environnement Scratchbox Pour appliquer ce processus de création, il faut posséder un ordinateur standard muni d un système GNU/Linux (quoi de mieux que Linux pour créer un Linux). Toutes les distributions sont possibles bien évidemment. Malheureusement, à cause de certains problèmes de compatibilité, actuellement non résolus, il est préférable d en privilégier certaines par rapport Guillaume GARDET Benjamin PUSSACQ Hervé SPITZ Damien LOZACH 4

5 à d autres. L utilisation de Fedora 8 par exemple ne permet pas d utiliser la Scratchbox sans avoir des modifications à faire sur le système. Il est préférable d utiliser une distribution basée sur OpenSUSE ou bien Debian. De plus, Scratchbox étant basée sur cette dernière, des packages au format «.deb» sont disponibles sur le site. L environnement est composé de plusieurs parties. En effet, il n est pas forcément nécessaire d installer la compatibilité avec un processeur si celui-ci ne sera pas utilisé à l avenir. Ces compatibilités sont disponibles dans les packages «toolchain». Dans le cas des tablettes de Nokia, les packages nécessaires sont les suivants : - scratchbox-core : Cœur de l environnement - scratchbox-libs : Bibliothèque pour utiliser la Scratchbox - scratchbox-devkit-cputrans : Emulateur Qemu - scratchbox-devkit-debian : Scripts de démarrage pour Debian - scratchbox-toolchain-cs2005q3.2-glibc-arm : Compilateur pour ARM - scratchbox-toolchain-cs2005q3.2-glibc-i386 : Compilateur pour i386 Pour compiler une application pour la tablette, seule la première toolchain est nécessaire. La seconde permet principalement de pouvoir compiler pour une architecture i386 (pratique lorsqu on désire tester une application sans avoir à la transférer sur le Nokia). D autres packages sont également disponible, mais pas obligatoirement nécessaires. A noter qu il faut par contre installer le package scratchboxdevkit-maemo3 pour pouvoir développer une application pour une tablette utilisant la version 2007 ou 2008 du système Linux de Nokia. Une fois ces packages téléchargés, il faut les installer. Pour cela, il suffit d appliquer la commande en super-utilisateur : $ dpkg i *.deb Attention : Il est important de noter que l installation met en place un script permettant d utiliser l environnement dans le répertoire «/etc/init.d». Ce script se nomme Guillaume GARDET Benjamin PUSSACQ Hervé SPITZ Damien LOZACH 5

6 «scratchbox-core» et est chargé par défaut au démarrage du système. Ainsi, si vous souhaitez désinstaller «à la main» en supprimant l environnement de développement, il est obligatoire d arrêter ce script via $ /etc/init.d/scratchbox-core stop Sinon, il y a une très grande possibilité pour détruire le répertoire «/dev» de votre système. Outre ce script, l environnement est installé dans une arborescence particulière sous le répertoire «/scratchbox». C est dedans que tous les SDK devront êtres installés par la suite. Il faut maintenant configurer l environnement. Pour cela, c est très simple, il suffit juste d ajouter un nouvel utilisateur dans l environnement. Le script «sbin_adduser» doit être lancé en super-utilisateur pour effectuer cette tache. Le nouvel utilisateur doit correspondre avec un utilisateur existant sur le système installé sur l ordinateur. $ /scratchbox/sbin/sbin_adduser maemo Si vous êtes logué avec le même nom utilisateur que celui qui vient d être utilisé, vous devez redémarrer le serveur X afin de prendre en compte le nouveau groupe «sbox» que vous venez d ajouter à l utilisateur. Voilà, l environnement est configuré, il n y a plus qu à l utiliser. Pour se connecter à cet environnement, vous devez être logué avec l utilisateur ajouté et lancer la commande : $ /scratchbox/login Guillaume GARDET Benjamin PUSSACQ Hervé SPITZ Damien LOZACH 6

7 Comme le montre l image, l environnement se lance très facilement. On remarque tout de suite la dernière ligne «sb-conf : No current target». En effet, nous n avons pas encore installé de SDK, il est donc normal que l environnement ne le trouve pas Installation d un SDK Les SDK sont fournis par Nokia en partenariat avec Maemo. Ils sont disponibles sur le site internet de ce dernier. Plusieurs versions existent et il faut donc choisir celle qui est la mieux adaptée au système cible. En effet, sur les tablettes Nokia, plusieurs versions de l OS existent : - ITOS2006 : Utilisation du SDK Maemo Gregale (v2) - ITOS2007 : Utilisation du SDK Maemo Bora (v3) - ITOS2008 : Utilisation du SDK Maemo Chinook (v4) Même si les OS sont très similaires, il existe quelques différences entre les différentes versions qui peuvent aboutir à des erreurs lors de l exécution sur le Nokia dans le cas où le mauvais SDK aurait été utilisé. De plus, chaque SDK se décline en 2 versions. Le premier, pour processeur ARM, a pour but de compiler les applications pour la tablette, alors que le second a pour but de compiler chaque application pour architecture i386 afin de tester sans avoir à transférer les données. Une fois téléchargé, il est conseillé (pour la suite) de placer l archive dans le dossier «/scratchbox/packages». Puis l étape d installation du SDK peut commencer via la commande «sb-menu» dans l environnement de crosscompilation. Les images ci-dessous décrivent les différentes étapes à suivre. $ sb-menu Guillaume GARDET Benjamin PUSSACQ Hervé SPITZ Damien LOZACH 7

8 Installation d une cible Création de la nouvelle cible Nom de la cible Sélection du compilateur ARM Guillaume GARDET Benjamin PUSSACQ Hervé SPITZ Damien LOZACH 8

9 Sélection de tous les packages Lancement des applications compilées avec l émulateur Qemu Extraction d un SDK SDK téléchargé sur le site de «Maemo» au préalable Guillaume GARDET Benjamin PUSSACQ Hervé SPITZ Damien LOZACH 9

10 Choix du SDK Confirmation de l installation Installation de tous les composants du SDK Redémarrage de l environnement avec la nouvelle cible Guillaume GARDET Benjamin PUSSACQ Hervé SPITZ Damien LOZACH 10

11 Cible configurée Le SDK est installé et la Scratchbox s est relancée en utilisant les nouveaux paramètres. L environnement est complet Compilation d une application L environnement fournit tous les outils nécessaires pour la compilation d une application. On retrouve donc des éditeurs de textes, les outils de compilations, les debuggers et autres. Afin de tester ces outils de façon simpliste, il suffit de faire le premier «Hello World» en langage C par exemple. Une fois ce petit programme créé, nous le compilons et le lançons. Et voilà. L exemple donne bien le résultat espéré. En réalité, cet environnement est fait de telle manière que la création d une application soit complètement transparente. Il ne reste plus qu à g33ker comme des petits fous Guillaume GARDET Benjamin PUSSACQ Hervé SPITZ Damien LOZACH 11

12 Chapitre 2 Mise en place d une pile SIP 2.1. Avant propos Plusieurs piles SIP existent dans le monde merveilleux du libre. Nous avons choisi d utiliser la pile SIP implémentée par la bibliothèque «osip2». En effet, cette pile est assez complète et son empreinte mémoire est suffisamment réduite afin de permettre son utilisation dans le domaine de l embarqué. De plus, une seconde bibliothèque nommée «exosip2» fournit des fonctionnalités de plus haut niveau en se basant sur osip2. Il suffit de passer par ces fonctions simplifiées pour mettre rapidement en place la pile. Ces deux bibliothèques sont librement téléchargeables à l adresse : et 2.2. Installation d osip2 et d exosip2 L installation d osip2 se fait de façon transparente en utilisant le trio : $./configure $ make $ make install Il suffit donc d exécuter ces commandes afin de compiler la pile pour l architecture ARM. Par contre, dans le cas d exosip2, une petite manipulation supplémentaire est à prendre en considération. En effet, malgré le fait que le script «configure» ne donne aucune erreur, un problème de compilation apparaît. Guillaume GARDET Benjamin PUSSACQ Hervé SPITZ Damien LOZACH 12

13 En réalité, la bibliothèque SSL installée par défaut est épurée sur le Nokia. Ainsi, plusieurs primitives et fonctions sont manquantes. Afin de contourner le problème, nous allons désactiver le support de SSL dans exosip2. Pour cela, il suffit d éditer le fichier «config.h» et commenter la ligne. #define HAVE_OPENSSL_SSL_H 1 Une fois cette modification effectuée, nous relançons la compilation. $ make clean $ make $ make install 2.3. Compilation d une application utilisant «osip2» Tout d abord, vous devez créer une application utilisant la pile SIP fournie par osip2 dans votre éditeur préféré. L étape de compilation se fait de façon classique. La ligne de commande standard pour cette étape est la suivante. gcc o test test.c losip2 losipparser2 lexosip2 Guillaume GARDET Benjamin PUSSACQ Hervé SPITZ Damien LOZACH 13

14 Chapitre 3 Mise en place de la bibliothèque QT 3.1. Avant-propos QT est une bibliothèque fournissant toute une panoplie de fonctionnalités permettant de concevoir des interfaces graphiques. Elle est entièrement conçue en C++ par la société Trolltech. Lors de la mise en place de QT pour les tablettes, plusieurs problèmes se sont posés à nous. Tout d'abord, il est important de faire la différence entre QT et Qtopia. QT donne la possibilité de créer une interface graphique dans le cas où un serveur graphique est déjà existant sur la plate-forme, tel que le serveur graphique de MacOS ou bien serveur X11. Qtopia, quant à lui, fournit un serveur graphique embarqué en plus de la bibliothèque graphique pour les plates-formes non équipées. Dans notre cas, nous devons utiliser QT car les tablettes possèdent déjà un serveur X11 natif. D autre part, la version utilisée ici est estampillée Les versions supérieures posent plusieurs problèmes de compilation qui n ont pas été résolus. Cette version est directement téléchargeable à l adresse : Installation de QT La version de QT choisie pose quelques problèmes lors de la compilation. Mais ceux-ci sont facilement corrigeables. Il faut tout d abord décompresser l archive, puis exécuter le script de configuration. Celui-ci est appelé de la façon suivante../configure prefix /opt/qt415 L option «-prefix» permet de définir un répertoire d installation autre que celui par défaut. Ce script demande d abord de valider la licence de QT afin de pouvoir lancer la configuration. Il est donc nécessaire d entrer «yes» et de valider. À partir de cet instant, la configuration s effectue. Cette étape peut s avérer longue et par conséquent, une pause-café s impose. Une fois la création des «Makefile» terminée, le script rend la main. Il faut maintenant procéder à quelques modifications afin de pouvoir compiler QT sans erreur. Lors de la compilation pour architecture ARM, des outils comme «linguist» et «designer» posent quelques problèmes. Il faut donc les désactiver. Pour cela, nous remplaçons les «Makefile» originaux par ceci dans les répertoires correspondants. Guillaume GARDET Benjamin PUSSACQ Hervé SPITZ Damien LOZACH 14

15 install : all : echo Etape finie Deux autres erreurs doivent également être corrigées. Il s agit cette fois-ci d erreurs dans le code. La première est due à un code manquant. Il est nécessaire de rajouter dans le fichier «src/gui/qmath_p.h» les lignes suivantes : #inline double qmin(double a, double b) { return (a > b)? b : a ; } #inline double qmax(double a, double b) { return (a > b)? a : b ; } Enfin, la dernière erreur est due à des cast manquants dans le fichier «src/gui/kernel/qapplication_x11.cpp». Ainsi, la ligne 1512 du fichier initialement getxdefault("xft", FC_SCALE, &X11->fc_scale); doit être remplacée par la ligne suivante : getxdefault((char *)"Xft", (char *)FC_SCALE, (int *)&X11- >fc_scale); Une fois ces trois modifications terminées, le plus long reste à faire pour l ordinateur. Il suffit de compiler et installer QT. Pour cela, la suite de commandes cidessous est nécessaire. $ make $ make install 3.3. Compilation d une application QT Une fois que l application a été créée via «designer» ou tout autre moyen, QT fournit plusieurs outils afin de créer les «Makefile» nécessaires à la compilation de l application. Il faut d abord créer un nouveau projet puis les «Makefile» avant de compiler. $ qmake -project $ qmake $ make Le problème est que le projet est créé par défaut en utilisant les bibliothèques de «debug» de QT qui sont nettement plus grosses que celles sans les informations de déboguage. Or, dans le monde de l embarqué, l empreinte mémoire est un élément Guillaume GARDET Benjamin PUSSACQ Hervé SPITZ Damien LOZACH 15

16 important. Afin de parer à ce problème, il faut alors modifier le fichier «.pro» qui a été créé lors de l exécution de la commande «qmake». Il suffit de supprimer toutes les itérations «_debug» dans le fichier «Makefile». Au final, la suite de commandes se résume à la suivante. $ qmake project $ qmake $ sed «s/_debug//» Makefile > TMP $ mv Makefile Makefile-old $ mv TMP Makefile $ make L application est alors créée en utilisant les bonnes bibliothèques. Il ne reste plus qu à transférer l application sur le Nokia et tester l ensemble. Guillaume GARDET Benjamin PUSSACQ Hervé SPITZ Damien LOZACH 16

17 Chapitre 4 Objets de base 4.1. Avant propos Les objets de base (non graphiques et XML) sont écrits en C++ pour une meilleure réutilisabilitée. De plus, Qt est basé sur du C++. Ces objets seront utilisés par la partie interface graphique et le partie XML. La partie SIP sera gérée par deux objets : SIP et Communication. L'objet SIP est une implémentation assez directe en C++ des bibliothèques SIP, écrites en C (libexosip et osip), qu'il utilise. L'objet Communication apporte plus de souplesse dans l'utilisation de SIP et utilise l'objet SIP précédent. Il apporte aussi des méthodes utiles lors de la communication (obtention automatique de l'ip, sauvegarde de l'identifiant SIP, etc...). Ensuite la partie concernant la gestion des objets est constituée des objets Capteur, Group et Alarm. Capteur contient toutes les informations qui concernent le capteur par lui-même (id, type, nom, etc...), Group contient les informations de gestion d'un groupe de capteurs et Alarm (non utilisé) contient toutes les informations nécessaires à l'utilisation d'alarmes (température inférieure à 0 C par exemple) dans Capteur Objets de communication L'objet SIP est un objet de base qui ne sera pas appelé directement depuis notre programme ou les autres objets, excepté Communication. Il est constitué de : le constructeur SIP() qui initialise la pile SIP. le destructeur ~SIP() qui quitte proprement la pile SIP Les méthodes : bool SIP::Creation() qui ouvre un socket sur le port 5060 en UDP. Retourne false si un problème est rencontré, true sinon. bool SIP::Send(std::string de, std::string a, std::string msg, std::string type, int timeout) qui se charge d'envoyer le message SIP "msg" provenant de "de" destiné à "a" de type "type" et on spécifie un timeout par "timeout". Cette méthode retourne false si un problème est rencontré, true sinon. void* SIP::Listen(void* a) qui sera lancée dans un thread (d'où les void*) et qui lance un serveur d'écoute qui se charge d'appeler les bonnes méthodes en fonction des requêtes SIP. Lorsque qu'une réponse à notre message est reçue (EXOSIP_MESSAGE_ANSWERED) la méthode read_xml_string(std::string(buf->body)); à laquelle on passe le corps de la réponse en paramètre, est appelée pour traiter la réponse. L'objet Communication utilise l'objet SIP. Il est constitué de : Le constructeur Communication() qui crée un objet SIP et effectue toutes les Guillaume GARDET Benjamin PUSSACQ Hervé SPITZ Damien LOZACH 17

18 initialisations (SIP->Creation(), obtention automatique de l'ip, création de l'id SIP et lancement du serveur d'écoute SIP::Listen(void*) dans un thread), uniquement lors du premier appel. Rien lors des autres appels. Le destructeur ~Communication() qui se charge de quitter le thread et de détruire l'objet SIP créé par le constructeur. Les méthodes : std::string setid(std::string _login, std::string _adresse) qui se charge de construire un ID SIP à partir du login et de l'adresse passés en paramètres. Retourne un string de la forme <sip:login@adresse> std::string setmyid(std::string _login, std::string _adresse) qui appelle la méthode précédente (setid) pour formater l'id puis le sauvegarde dans la variable my_sip_id interne à l'objet. int settimeout(int _timeout) qui règle le timeout pour les messages SIP. std::string settype(std::string _type) qui règle le type de message SIP. (type "message" utilisé dans notre application). bool Send(std::string login, std::string adresse, std::string message) se charge d'envoyer le message "message" à "<sip:login@adresse>" en utilisant l'objet SIP. Retourne false si un problème a été rencontré lors de l'envoi true sinon. bool Send(std::string dst, std::string message) envoie le message "message" au destinataire "dst" (dst est de la forme login@adresse). int get_ip(std::string* ip) permet de récupérer l'adresse IP courante de la machine. Utilise l'utilitaire ifconfig. std::string get_sipid() retourne my_sip_id qui est notre ID SIP. void* Listen(void*) qui n'est en fait pas utilisée et qui, au départ, devait appeler la méthode void* SIP::Listen(void*) Objets de gestion des capteurs L'objet Alarm n'est finalement pas utilisé à cause de problèmes d'implémentation du côté serveur. Il est constitué de : Les constructeurs : Alarm() initialise les valeurs d'alarmes haute et basse à 0 et la latence à 10. Alarm(int _H, int _L) initialise les valeurs d'alarme haute à _H et basse à _L et la latence à 10. Le destructeur ~Alarm() ne fait rien. Les méthodes : int get_h() renvoie la valeur haute de l'alarme int set_h(int) spécifie la valeur haute de l'alarme. int get_l() renvoie la valeur basse de l'alarme int set_l(int) spécifie la valeur basse de l'alarme. int get_latency() renvoie la latence actuelle. Guillaume GARDET Benjamin PUSSACQ Hervé SPITZ Damien LOZACH 18

19 int set_latency(int) spécifie la latence. Renvoie -1 en cas d'erreur et 0 en cas de succès. La valeur minimale est 1 (une seconde). L'objet Capteur contient toutes les données relatives à un capteur. Il est constitué de : Les constructeurs : Capteur(std::string _id, std::string _type) qui construit un objet à partir de l'identifiant unique id et le type de capteur type. Il instancie aussi un objet Communication qui sera créé s'il n'en existe pas encore ou utilisera celui créé. Capteur(std::string _id, std::string _type, std::string _name) qui construit un objet à partir de l'identifiant unique, du type et du nom donné au capteur (non unique). Il instancie aussi un objet Communication qui sera créé s'il n'en existe pas encore ou utilisera celui créé. Le destructeur ~Capteur() qui supprime toutes les références à lui-même dans les groupes auxquels il appartient. Les méthodes : Alarm get_alarms() retourne l'objet Alarm associé (non utilisé). int save() non utilisé car modification de la partie XML. std::string get_value() retourne la valeur du capteur. void set_value(std::string _value) attribue la valeur au capteur. bool update_value(std::string dst) se charge d'envoyer un message SIP pour demander l'actualisation du capteur. Renvoie false si un problème est rencontré true sinon. int set_alarms(alarm) attribue un objet Alarm au capteur (non utilisé) int set_group(std::vector<group*>) attribue un vecteur de Group au capteur. int set_name(std::string) attribue un nom au capteur. std::string get_name() récupère le nom du capteur. int add_group(group*) ajoute un groupe MAIS PAS LE CAPTEUR AU GROUP! std::vector<std::string> get_groupstring() récupère la liste des groupes sous forme de vecteur de string. std::vector<group*> get_group() récupère le vecteur de groupe. int rm_group(group*) supprime le groupe du vecteur de Group du capteur. std::string get_id() renvoie l'id du capteur std::string get_type() renvoie le type du capteur void enable_alarm() active l'alarme (non utilisé) void disable_alarm() désactive l'alarme (non utilisé) unsigned int get_date() renvoie la date d'acquisition (entier non signé qui correspond au temps unix, nombre de seconde écoulées depuis le 1 er janvier 1970). void set_date(unsigned int) règle la date de la dernière acquisition. Guillaume GARDET Benjamin PUSSACQ Hervé SPITZ Damien LOZACH 19

20 bool get_updated() retourne true si la valeur du capteur a été mise à jour depuis la dernière lecture, false sinon. L'objet Group contient toutes les données relatives à un groupe. Il est constitué de : Le constructeur Group(std::string nom) construit un groupe nommé "nom" qui ne contient aucun capteur. Le destructeur ~Group() qui se dé-référence dans tous les capteurs qui appartiennent à ce groupe. Les méthodes : std::string get_name() retourne le nom du groupe void set_name(std::string _name) attribue le nom au groupe. int add_capt(capteur* capteur) ajoute un capteur au groupe MAIS PAS LE GROUPE AU CAPTEUR! int rm_capt(capteur* capteur) retire un capteur du groupe. Retourne -1 si le capteur n'a pas été trouvé dans la liste, 0 sinon. unsigned int get_nb_capteurs() retourne le nombre de capteur du groupe. std::vector<capteur*> *get_list() renvoie l'adresse du vecteur contenant les références vers les capteurs du groupe. Guillaume GARDET Benjamin PUSSACQ Hervé SPITZ Damien LOZACH 20

21 Chapitre 5 Les outils XML Les outils XML sont implémentés dans les fichiers xml_tools.{c,h}pp. Ce fichier est divisé en trois parties : - Fonctions utiles dans les deux autres parties : o Utily - La communication SIP : o Answer from Capteur's Network o Resqued to Capteur's Network - La sauvegarde et le chargement d'informations. o Load from file o Save to file 5.1. La sauvegarde et le chargement d'informations Dans une partie précédente, il a été présenté les objets Capteurs avec leurs attributs. Il est nécessaire de sauvegarder les données propres aux capteurs dans un fichier. Cette sauvegarde se fait manuellement, à la demande de l'utilisateur. (cf Chapitre 6) Les capteurs sont différenciés par leur "id" qui est unique. Les attributs de chaque capteur contiennent des informations propres aux capteurs, ou propres à l'utilisateur. Ainsi deux fichiers de sauvegarde sont nécessaires. Un fichier commun à tous les utilisateurs "Capteur.xml" et un fichier de préférence "pref.xml" propre à un utilisateur. Choix du format de fichier : Un format libre, efficace, très répandu existe : le format XML (Extensible Markup Language). De plus, des outils très performants existent dans la bibliothèque Qt. Qt offre deux manières d'interagir avec des contenus au format XML : DOM et SAX. SAX est théoriquement le plus simple des deux, il permet de lire et parser au fur et à mesure. Avec DOM, le fichier est lu entièrement et mis dans un arbre, en mémoire. Cet arbre peut ensuite être lu et manipulé avant d'être à nouveau sauvegardé. Choix de la bibliothèque : SAX est plus "difficile" à utiliser pour modifier les données. D'un autre coté, il ne requiert que peu de mémoire car la lecture se fait au fur et à mesure. DOM requiert, lui, beaucoup de mémoire mais propose beaucoup plus d'outils. Au vu de l'application et des supports d'utilisation ainsi que de l'ordre de grandeur des données traitées, l'utilisation de DOM n'est pas un problème. Son utilisation est, par contre, un très gros gain de temps de compréhension et d'implémentation pour le développement de l'application. Guillaume GARDET Benjamin PUSSACQ Hervé SPITZ Damien LOZACH 21

22 La sauvegarde se fait donc dans deux fichiers. Le premier "Capteur.xml" : qui regroupe tous les capteurs, au format suivant : <save_capteur> <capteur> <id>id d'un premier capteur</id> <type>type associé à ce capteur</type> </capteur> <capteur> <id> ID d'un deuxième capteur </id> <type>type associé à ce capteur</type> </capteur> [ ] </save_capteur> Guillaume GARDET Benjamin PUSSACQ Hervé SPITZ Damien LOZACH 22

23 Le deuxième "pref.xml" : qui regroupe les préférences de l'utilisateur, au format suivant : <pref> <list_capteur> <capteur> <id>id d'un premier capteur</id> <name>nom associé à ce capteur</name> <value>valeur associée à ce capteur</value> <acquisition_date>heure associée à cette valeur </acquisition_date> <groups> <group>nom d'un groupe le contenant</group> <group>nom d'un autre groupe le contenant</group> [ ] </groups> </capteur> <capteur><id>id d'un deuxième capteur</id> <name>nom associé à ce capteur</name> <value>valeur associée à ce capteur</value> <acquisition_date>heure associée à cette valeur </acquisition_date> <groups> <group>nom d'un groupe le contenant</group> <group>nom d'un autre groupe le contenant</group> [ ] </groups> </capteur> </list_capteur> <server> <ip-login>utilisateur@ </ip-login> </server> </pref> Guillaume GARDET Benjamin PUSSACQ Hervé SPITZ Damien LOZACH 23

Tutoriel: Création d'un Web service en C++ avec WebContentC++Framework

Tutoriel: Création d'un Web service en C++ avec WebContentC++Framework Tutoriel: Création d'un Web service en C++ avec WebContentC++Framework Gaël de Chalendar CEA LIST / LIC2M Journée de Présentation des Technologies WebContent INSTN 14/12/2009 Présentation de gsoap Plan

Plus en détail

Installation et prise en main

Installation et prise en main TP1 Installation et prise en main Android est le système d'exploitation pour smartphones, tablettes et autres appareils développé par Google. Pour permettre aux utilisateurs d'installer des applications

Plus en détail

Préparation à l installation d Active Directory

Préparation à l installation d Active Directory Laboratoire 03 Étape 1 : Installation d Active Directory et du service DNS Noter que vous ne pourrez pas réaliser ce laboratoire sans avoir fait le précédent laboratoire. Avant de commencer, le professeur

Plus en détail

LOGICIEL KIPICAM : Manuel d installation et d utilisation

LOGICIEL KIPICAM : Manuel d installation et d utilisation 2015 LOGICIEL KIPICAM : Manuel d installation et d utilisation Kipisoft http://w.sanchez.free.fr/product_home_overview.php 16/05/2015 SOMMAIRE 1. Présentation de l'application... 3 2. Installation de l'application...

Plus en détail

Tutoriel Création d une source Cydia et compilation des packages sous Linux

Tutoriel Création d une source Cydia et compilation des packages sous Linux Tutoriel Création d une source Cydia et compilation des packages sous Linux 1. Pré-requis 1. Quelques connaissances sous Linux 2. Avoir à disposition un Serveur FTP pour héberger votre source 3. Un thème

Plus en détail

Les messages d erreur d'applidis Client

Les messages d erreur d'applidis Client Fiche technique AppliDis Les messages d erreur d'applidis Client Fiche IS00313 Version document : 1.00 Diffusion limitée : Systancia, membres du programme Partenaires AppliDis et clients ou prospects de

Plus en détail

PG208, Projet n 3 : Serveur HTTP évolué

PG208, Projet n 3 : Serveur HTTP évolué PG208, Projet n 3 : Serveur HTTP évolué Bertrand LE GAL, Serge BOUTER et Clément VUCHENER Filière électronique 2 eme année - Année universitaire 2011-2012 1 Introduction 1.1 Objectif du projet L objectif

Plus en détail

Sommaire Introduction... 3 Le but du projet... 3 Les moyens utilisés... 3 Informations sur le client FTP... 4 Pourquoi une version Linux et

Sommaire Introduction... 3 Le but du projet... 3 Les moyens utilisés... 3 Informations sur le client FTP... 4 Pourquoi une version Linux et Licence 3 CDA 2010/2011 Client FTP Java Maxence Jaouan Sommaire Introduction... 3 Le but du projet... 3 Les moyens utilisés... 3 Informations sur le client FTP... 4 Pourquoi une version Linux et Windows?...

Plus en détail

Utilisation du client de messagerie Thunderbird

Utilisation du client de messagerie Thunderbird Outlook express n existant plus sur les systèmes d exploitation sortis après Windows XP, nous préconisons désormais l utilisation du client de messagerie libre distribué gratuitement par la Fondation Mozilla.

Plus en détail

Maintenir Debian GNU/Linux à jour

Maintenir Debian GNU/Linux à jour Maintenir Debian GNU/Linux à jour Ce troisième document présente dans un premier temps comment maintenir son système à jour de façon automatisée. Il est en effet indispensable d'installer de manière parfaitement

Plus en détail

FORMATION PcVue. Mise en œuvre de WEBVUE. Journées de formation au logiciel de supervision PcVue 8.1. Lieu : Lycée Pablo Neruda Saint Martin d hères

FORMATION PcVue. Mise en œuvre de WEBVUE. Journées de formation au logiciel de supervision PcVue 8.1. Lieu : Lycée Pablo Neruda Saint Martin d hères FORMATION PcVue Mise en œuvre de WEBVUE Journées de formation au logiciel de supervision PcVue 8.1 Lieu : Lycée Pablo Neruda Saint Martin d hères Centre ressource Génie Electrique Intervenant : Enseignant

Plus en détail

KWISATZ MODULE PRESTASHOP

KWISATZ MODULE PRESTASHOP Table des matières -1) KWISATZ - :...2-1.1) Introduction :...2-1.2) Description :...3-1.2.1) Schéma :...3-1.3) Mise en place :...4-1.3.1) PRESTASHOP :...4-1.3.1.1) Les Web Services :...4-1.3.2) KWISATZ

Plus en détail

Installation des outils OCS et GLPI

Installation des outils OCS et GLPI Installation des outils OCS et GLPI MAYERAU David 06/02/2012 PRESENTATION. --------------------------------------------------------------------------------------------- 3 INSTALLATION DE GLPI. ------------------------------------------------------------------------------------

Plus en détail

MANUEL. de l application «CdC Online» pour Windows. Table des matières

MANUEL. de l application «CdC Online» pour Windows. Table des matières MANUEL de l application «CdC Online» pour Windows Version 2.0 juin 2015 Table des matières 1 Introduction... 2 2 Compatibilité... 2 3 Téléchargement et installation... 2 4 Configuration... 6 5 Fonctionnement

Plus en détail

DOCUMENTATION VISUALISATION UNIT

DOCUMENTATION VISUALISATION UNIT DOCUMENTATION VISUALISATION UNIT Table des matières 1)Documentation Utilisateur CamTrace VU...2 1)Premiers pas:...3 a)le mode Client CamTrace...4 b)le mode VU Standalone...6 2)F.A.Q...9 1)Vérifier la connectivité

Plus en détail

Edutab. gestion centralisée de tablettes Android

Edutab. gestion centralisée de tablettes Android Edutab gestion centralisée de tablettes Android Résumé Ce document présente le logiciel Edutab : utilisation en mode enseignant (applications, documents) utilisation en mode administrateur (configuration,

Plus en détail

Capture Pro Software. Démarrage. A-61640_fr

Capture Pro Software. Démarrage. A-61640_fr Capture Pro Software Démarrage A-61640_fr Prise en main de Kodak Capture Pro Software et de Capture Pro Limited Edition Installation du logiciel : Kodak Capture Pro Software et Network Edition... 1 Installation

Plus en détail

Formation. Module WEB 4.1. Support de cours

Formation. Module WEB 4.1. Support de cours Formation Module WEB 4.1 Support de cours Rédacteur Date de rédaction F.CHEA 08/02/2012 Les informations contenues dans ce document pourront faire l'objet de modifications sans préavis Sauf mention contraire,

Plus en détail

Vous y trouverez notamment les dernières versions Windows, MAC OS X et Linux de Thunderbird.

Vous y trouverez notamment les dernières versions Windows, MAC OS X et Linux de Thunderbird. MAIL > configuration de mozilla thunderbird > SOMMAIRE Qu'est ce que Thunderbird? Téléchargement du logiciel Thunderbird Configuration Installation d'un compte POP Installation d'un compte IMAP En cas

Plus en détail

SQL Data Export for PS/PSS

SQL Data Export for PS/PSS Version 2.3.5 MANUEL D INSTRUCTIONS (M98232701-02-13B) CIRCUTOR, SA SOMMAIRE 1.- INSTALLATION DU LOGICIEL SQL DATA EXPORT... 3 1.1.- ACTIVER CONNEXIONS A DISTANCE DU SERVEUR SQL SERVER... 14 1.2.- DESINSTALLER

Plus en détail

Bind, le serveur de noms sous Linux

Bind, le serveur de noms sous Linux Bind, le serveur de noms sous Linux 1. Principes de fonctionnement d'un serveur de noms La résolution des noms d'hôtes sur les réseaux tcp/ip est fondée sur le principe d'une répartition de la base des

Plus en détail

HP Data Protector Express Software - Tutoriel 4. Utilisation de Quick Access Control (Windows uniquement)

HP Data Protector Express Software - Tutoriel 4. Utilisation de Quick Access Control (Windows uniquement) HP Data Protector Express Software - Tutoriel 4 Utilisation de Quick Access Control (Windows uniquement) Que contient ce tutoriel? Quick Access Control est une application qui s'exécute indépendamment

Plus en détail

Manuel d'utilisation d'apimail V3

Manuel d'utilisation d'apimail V3 Manuel d'utilisation d'apimail V3 I Préambule Page 3 II Présentation Page 4 III Mise en route Configuration Page 5 Messagerie Serveur smtp Serveur pop Compte pop Mot de passe Adresse mail Laisser les messages

Plus en détail

KWISATZ_TUTO_module_magento novembre 2012 KWISATZ MODULE MAGENTO

KWISATZ_TUTO_module_magento novembre 2012 KWISATZ MODULE MAGENTO _TUTO_module_magento Table des matières -1) - :...2-1.1) Introduction :...2-1.2) Description :...3-1.2.1) Schéma :...3-1.3) Mise en place :...4-1.3.1) MAGENTO :...4-1.3.1.1) Les Web Services :...4-1.3.1.2)

Plus en détail

Seance 2: En respectant la méthode de programmation par contrat, implémentez les autres fonctions de jeu.

Seance 2: En respectant la méthode de programmation par contrat, implémentez les autres fonctions de jeu. Seance 2: Complétion du code de jeu. (durée max: 2h) Mot clé const et pointeurs: En respectant la méthode de programmation par contrat, implémentez les autres fonctions de jeu. Implémentez jeu_recupere_piece

Plus en détail

Ateliers Python+Qt : Premiers pas : Comment développez ses propres interfaces graphiques sur le RaspberryPi?

Ateliers Python+Qt : Premiers pas : Comment développez ses propres interfaces graphiques sur le RaspberryPi? Ateliers Python+Qt : Premiers pas : Comment développez ses propres interfaces graphiques sur le RaspberryPi? par X. HINAULT www.mon-club-elec.fr Tous droits réservés 2013. Document gratuit. Ce support

Plus en détail

1. Comment accéder à mon panneau de configuration VPS?

1. Comment accéder à mon panneau de configuration VPS? FAQ VPS Business Section 1: Installation...2 1. Comment accéder à mon panneau de configuration VPS?...2 2. Comment accéder à mon VPS Windows?...6 3. Comment accéder à mon VPS Linux?...8 Section 2: utilisation...9

Plus en détail

Itium XP. Guide Utilisateur

Itium XP. Guide Utilisateur Itium XP 06/2007 - Rev. 3 1 Sommaire 1 Sommaire... 2 2 Généralités... 3 3 ItiumSysLock... 4 3.1 Enregistrer l état actuel du système... 4 3.2 Désactiver ItiumSysLock... 5 3.3 Activer ItiumSysLock... 5

Plus en détail

Cyberclasse L'interface web pas à pas

Cyberclasse L'interface web pas à pas Cyberclasse L'interface web pas à pas Version 1.4.18 Janvier 2008 Remarque préliminaire : les fonctionnalités décrites dans ce guide sont celles testées dans les écoles pilotes du projet Cyberclasse; il

Plus en détail

Comment configurer Kubuntu

Comment configurer Kubuntu Comment configurer Kubuntu Configuration du réseau... 1 Configurer votre système Linux sur le réseau...1 Vérifier manuellement l adresse IP...5 Connecter un lecteur réseau distant Windows/Mac grâce au

Plus en détail

TP2 : Client d une BDD SqlServer

TP2 : Client d une BDD SqlServer TP2 : Client d une BDD SqlServer Objectifs : utiliser la barre de menu, utiliser les préférences d application (settings) ou (options), gérer la persistance des données, utiliser la bibliothèque jtds:jdbc

Plus en détail

TP n 2 : Installation et administration du serveur ProFTP. Partie 1 : Fonctionnement du protocole FTP (pas plus de 15min)

TP n 2 : Installation et administration du serveur ProFTP. Partie 1 : Fonctionnement du protocole FTP (pas plus de 15min) TP n 2 : Installation et administration du serveur ProFTP Objectifs du TP Comprendre le fonctionnement du protocole FTP Installation et compilation d un paquet source Configuration, lancement et administration

Plus en détail

Le langage C. Séance n 4

Le langage C. Séance n 4 Université Paris-Sud 11 Institut de Formation des Ingénieurs Remise à niveau INFORMATIQUE Année 2007-2008 Travaux pratiques d informatique Le langage C Séance n 4 But : Vous devez maîtriser à la fin de

Plus en détail

L accès à distance du serveur

L accès à distance du serveur Chapitre 11 L accès à distance du serveur Accéder à votre serveur et aux ordinateurs de votre réseau depuis Internet, permettre à vos amis ou à votre famille de regarder vos dernières photos, écouter vos

Plus en détail

SQL Server Installation Center et SQL Server Management Studio

SQL Server Installation Center et SQL Server Management Studio SQL Server Installation Center et SQL Server Management Studio Version 1.0 Grégory CASANOVA 2 SQL Server Installation Center et SQL Server Management Studio [03/07/09] Sommaire 1 Installation de SQL Server

Plus en détail

Protocoles DHCP et DNS

Protocoles DHCP et DNS Protocoles DHCP et DNS DHCP (Dynamic Host Configuration Protocol) est un protocole qui permet à un serveur DHCP (Unix, Windows, AS400...) d'affecter des adresses IP temporaires (et d'autres paramètres)

Plus en détail

TAGREROUT Seyf Allah TMRIM

TAGREROUT Seyf Allah TMRIM TAGREROUT Seyf Allah TMRIM Projet Isa server 2006 Installation et configuration d Isa d server 2006 : Installation d Isa Isa server 2006 Activation des Pings Ping NAT Redirection DNS Proxy (cache, visualisation

Plus en détail

Guide de démarrage rapide Centre de copies et d'impression Bureau en Gros en ligne

Guide de démarrage rapide Centre de copies et d'impression Bureau en Gros en ligne Guide de démarrage rapide Centre de copies et d'impression Bureau en Gros en ligne Aperçu du Centre de copies et d'impression Bureau en Gros en ligne Pour accéder à «copies et impression Bureau en Gros

Plus en détail

Assistance à distance sous Windows

Assistance à distance sous Windows Bureau à distance Assistance à distance sous Windows Le bureau à distance est la meilleure solution pour prendre le contrôle à distance de son PC à la maison depuis son PC au bureau, ou inversement. Mais

Plus en détail

Le service FTP. M.BOUABID, 04-2015 Page 1 sur 5

Le service FTP. M.BOUABID, 04-2015 Page 1 sur 5 Le service FTP 1) Présentation du protocole FTP Le File Transfer Protocol (protocole de transfert de fichiers), ou FTP, est un protocole de communication destiné à l échange informatique de fichiers sur

Plus en détail

TP PLACO. Journées Mathrice d'amiens Mars 2010

TP PLACO. Journées Mathrice d'amiens Mars 2010 TP PLACO Journées Mathrice d'amiens Mars 2010 Nicolas Vuilmet, Jacquelin Charbonnel, Jacques Foury, Damien Ferney, Benoit Métrot Introduction PLACO est un générateur de plates-formes collaboratives. Il

Plus en détail

Le meilleur de l'open source dans votre cyber cafe

Le meilleur de l'open source dans votre cyber cafe Le meilleur de l'open source dans votre cyber cafe Sommaire PRESENTATION...1 Fonctionnalités...2 Les comptes...3 Le système d'extensions...4 Les apparences...5 UTILISATION...6 Maelys Admin...6 Le panneau

Plus en détail

domovea Portier tebis

domovea Portier tebis domovea Portier tebis SOMMAIRE SOMMAIRE Page 1. INTRODUCTION... 2 1.1 OBJET DU DOCUMENT... 2 2. VIDEO UNIQUEMENT (SANS SON), BASE SUR CAMERA IP... 3 2.1 ARCHITECTURE... 3 2.2 CONFIGURATION... 4 2.2.1 Creation

Plus en détail

Serveur Acronis Backup & Recovery 10 pour Linux. Update 5. Guide d'installation

Serveur Acronis Backup & Recovery 10 pour Linux. Update 5. Guide d'installation Serveur Acronis Backup & Recovery 10 pour Linux Update 5 Guide d'installation Table des matières 1 Avant l'installation...3 1.1 Composants d'acronis Backup & Recovery 10... 3 1.1.1 Agent pour Linux...

Plus en détail

HelpAndManual_unregistered_evaluation_copy GESTIONNAIRE D'ALARMES CENTRALISE OPTIM'ALARM. Manuel d'utilisation

HelpAndManual_unregistered_evaluation_copy GESTIONNAIRE D'ALARMES CENTRALISE OPTIM'ALARM. Manuel d'utilisation HelpAndManual_unregistered_evaluation_copy GESTIONNAIRE D'ALARMES CENTRALISE OPTIM'ALARM Manuel d'utilisation OPTIMALOG 2008 Table des matières I Table des matières Part I Gestionnaire d'alarmes Optim'Alarm

Plus en détail

Guide d'utilisation du Serveur USB

Guide d'utilisation du Serveur USB Guide d'utilisation du Serveur USB Copyright 20-1 - Informations de copyright Copyright 2010. Tous droits réservés. Avis de non responsabilité Incorporated ne peut être tenu responsable des erreurs techniques

Plus en détail

Configuration d'un annuaire LDAP

Configuration d'un annuaire LDAP Le serveur Icewarp Configuration d'un annuaire LDAP Version 10.3 Juillet 2011 Icewarp France / DARNIS Informatique i Sommaire Configuration d'un annuaire LDAP 1 Introduction... 1 Qu'est-ce que LDAP?...

Plus en détail

SOLUTION D ENVOI DE SMS POUR PROFESSIONNELS

SOLUTION D ENVOI DE SMS POUR PROFESSIONNELS 1 Création et gestion de compte 2 Envoi par e-mail 3 Envoi par commande http 4 Publipostage SMS personnalisés 5 Autres fonctionnalités et options SMSvialeweb.com est une solution complète d envoi de SMS

Plus en détail

Manuel d utilisation email NETexcom

Manuel d utilisation email NETexcom Manuel d utilisation email NETexcom Table des matières Vos emails avec NETexcom... 3 Présentation... 3 GroupWare... 3 WebMail emails sur internet... 4 Se connecter au Webmail... 4 Menu principal... 5 La

Plus en détail

Préconisations Techniques & Installation de Gestimum ERP

Préconisations Techniques & Installation de Gestimum ERP 2015 Préconisations Techniques & Installation de Gestimum ERP 19/06/2015 1 / 30 Table des Matières Préambule... 4 Prérequis matériel (Recommandé)... 4 Configuration minimum requise du serveur (pour Gestimum

Plus en détail

Manuel d utilisation de Gestion 6

Manuel d utilisation de Gestion 6 Manuel d utilisation de Gestion 6 Première utilisation Voici les fichiers présents dans le répertoire après l installation de setup.exe I) Création des paramètres Menu Outils > Paramètres > Généraux MATICE

Plus en détail

AUVRAY Clément (168187) HOMBERGER Alexandre (186897) GLADE. Langages, outils et méthodes pour la programmation avancée Page 1 sur 12

AUVRAY Clément (168187) HOMBERGER Alexandre (186897) GLADE. Langages, outils et méthodes pour la programmation avancée Page 1 sur 12 GTK+ GLADE Page 1 sur 12 SOMMAIRE INTRO 3 Présentation de GTK+ 3 Présentation de GLADE 3 GTK+ 4 Installation 4 Les Widgets 4 Le système de hiérarchie 5 Les signaux 6 GLADE 7 Installation 7 L interface

Plus en détail

GOUTEYRON ALEXIS. SIO2 N candidat: 0110692972. UEpreuve E4. USituation professionnelle 2. serveurs de fichiers. Uen haute disponibilité

GOUTEYRON ALEXIS. SIO2 N candidat: 0110692972. UEpreuve E4. USituation professionnelle 2. serveurs de fichiers. Uen haute disponibilité GOUTEYRON ALEXIS SIO2 N candidat: 0110692972 UEpreuve E4 USituation professionnelle 2 serveurs de fichiers Uen haute disponibilité Session 2014 2015 I- Présentation a) Utilité Aujourd hui, dans le monde

Plus en détail

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2 Anne Tasso Java Le livre de premier langage 10 e édition Avec 109 exercices corrigés Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2 Table des matières Avant-propos Organisation de l ouvrage..............................

Plus en détail

SoMachine. Solution logicielle pour votre architecture Machine Atelier de découverte. SoMachine

SoMachine. Solution logicielle pour votre architecture Machine Atelier de découverte. SoMachine Solution logicielle pour votre architecture Machine Atelier de découverte SoMachine Objectif de la manipulation Le programme à réaliser va permettre de gérer le remplissage et la vidange d une cuve en

Plus en détail

Documentation utilisateur, manuel utilisateur MagicSafe Linux. Vous pouvez télécharger la dernière version de ce document à l adresse suivante :

Documentation utilisateur, manuel utilisateur MagicSafe Linux. Vous pouvez télécharger la dernière version de ce document à l adresse suivante : Documentation utilisateur, manuel utilisateur MagicSafe Linux. Vous pouvez télécharger la dernière version de ce document à l adresse suivante : http://www.hegerys.com/documentation/magicsafe-windows-doc.pdf

Plus en détail

Module Communication - Messagerie V6. Infostance. Messagerie

Module Communication - Messagerie V6. Infostance. Messagerie 1 Infostance Messagerie 2 Table des matières Les droits... 3 La boîte de réception... 4 Fonctionnalités disponibles via le clic droit sur un message... 6 Ecrire un nouveau message... 7 Présentation...

Plus en détail

Cours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java

Cours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java Langages objets Introduction M2 Pro CCI, Informatique Emmanuel Waller, LRI, Orsay présentation du module logistique 12 blocs de 4h + 1 bloc 2h = 50h 1h15 cours, 45mn exercices table, 2h TD machine page

Plus en détail

Boîte à outils OfficeScan

Boîte à outils OfficeScan Boîte à outils OfficeScan Manuel de l'administrateur Sécurité des points finaux Protection ti en ligne Sécurité Web Trend Micro Incorporated se réserve le droit de modifier sans préavis ce document et

Plus en détail

Titre: Version: Dernière modification: Auteur: Statut: Licence:

Titre: Version: Dernière modification: Auteur: Statut: Licence: Titre: Mise en œuvre de mod_webobjects Version: 2.0 Dernière modification: 2010/09/06 20:00 Auteur: Aurélien Minet Statut: version finale Licence: Creative Commons

Plus en détail

La base de données XML exist. A. Belaïd

La base de données XML exist. A. Belaïd La base de données XML exist Introduction Qu est-ce-que exist? C est une base de donnée native, entièrement écrite en Java XML n est pas une base de données en soi Bien qu il possède quelques caractéristiques

Plus en détail

Documentation pour l envoi de SMS

Documentation pour l envoi de SMS Documentation pour l envoi de SMS Mise à jour : Septembre 2010 Solution d envoi de SMS pour professionnels 1 Création et gestion de compte 2 Envoi par e-mail 3 Envoi par commande http 4 Publipostage SMS

Plus en détail

Guide de configuration de la Voix sur IP

Guide de configuration de la Voix sur IP Le serveur Icewarp Guide de configuration de la Voix sur IP Version 11 Mai 2014 i Sommaire Guide de configuration VoIP 1 Présentation... 1 Configuration... 1 Configuration réseau... 1 Configuration du

Plus en détail

Accès aux ressources informatiques de l ENSEEIHT à distance

Accès aux ressources informatiques de l ENSEEIHT à distance Ecole Nationale Supérieure d Électrotechnique, d Électronique, d Informatique, d Hydraulique et des Télécommunications Accès aux ressources informatiques de l ENSEEIHT à distance Jean-François GINESTE,

Plus en détail

Manuel du Desktop Sharing

Manuel du Desktop Sharing Brad Hards Traduction française : Ludovic Grossard Traduction française : Damien Raude-Morvan Traduction française : Joseph Richard 2 Table des matières 1 Introduction 5 2 Le protocole de mémoire de trame

Plus en détail

User Documentation. Documentation utilisateur. version 0.2b 04-2009

User Documentation. Documentation utilisateur. version 0.2b 04-2009 User Documentation Documentation utilisateur version 0.2b 04-2009 Table des matières 3 French Version....4 English Version.22 Table des matières 4 Table des matières TABLE DES MATIERES 3 A PROPOS DE CE

Plus en détail

Chapitre 2. Classes et objets

Chapitre 2. Classes et objets Chapitre 2: Classes et Objets 1/10 Chapitre 2 Classes et objets Chapitre 2: Classes et Objets 2/10 Approche Orientée Objet Idée de base de A.O.O. repose sur l'observation de la façon dont nous procédons

Plus en détail

< Atelier 1 /> Démarrer une application web

< Atelier 1 /> Démarrer une application web MES ANNOTATIONS SONT EN ROUGE : Axel < Atelier 1 /> Démarrer une application web Microsoft France Tutorial Découverte de ASP.NET 2.0 Sommaire 1 INTRODUCTION... 3 1.1 CONTEXTE FONCTIONNEL... 3 1.2 CONTEXTE

Plus en détail

Business Talk IP Centrex. guide. web utilisateur. pour. les services standards

Business Talk IP Centrex. guide. web utilisateur. pour. les services standards guide web utilisateur pour les services standards 1/22 version 03 décembre 2013 table des matières Accès au web utilisateur... 3 Onglet accueil... 5 Onglet services téléphoniques... 7 services standards...

Plus en détail

II- Préparation du serveur et installation d OpenVpn :

II- Préparation du serveur et installation d OpenVpn : I- Etude du VPN a. Qu est-ce qu un VPN? Un VPN(Virtual Private Network = Réseau Privé Virtuel) permet de créer une connexion sécurisée entre un ordinateur et un serveur VPN. Ce dernier servira de relai

Plus en détail

E-mail : contact@nqicorp.com - Web : http://www.nqicorp.com

E-mail : contact@nqicorp.com - Web : http://www.nqicorp.com - 5, rue Soutrane - 06560 Valbonne Sophia-Antipolis E-mail : contact@nqicorp.com - Web : http://www.nqicorp.com NQI Orchestra 3.3 - Guide d'installation Linux....................................................................

Plus en détail

Stellar Phoenix Outlook PST Repair - Technical 5.0 Guide d'installation

Stellar Phoenix Outlook PST Repair - Technical 5.0 Guide d'installation Stellar Phoenix Outlook PST Repair - Technical 5.0 Guide d'installation 1 Présentation Stellar Phoenix Outlook PST Repair - Technical offre une solution complète pour la récupération de données à partir

Plus en détail

Installation FollowMe Q server

Installation FollowMe Q server Installation FollowMe Q server FollowMe Rev 1.00 30 nov 2007 Pré requis FollowMe v5 est un service de Windows et s'installe sur tout poste fonctionnant sous XP Pro, 2000 server, 2003 server. Il utilise

Plus en détail

Cours 420-KEG-LG, Gestion de réseaux et support technique. Atelier No2 :

Cours 420-KEG-LG, Gestion de réseaux et support technique. Atelier No2 : Atelier No2 : Installation d Active Directory Installation du service DNS Installation du Service WINS Création d'un compte d'ordinateur Jonction d'un ordinateur à un domaine Création d usagers. Étape

Plus en détail

Utiliser Freemind à l'école

Utiliser Freemind à l'école Utiliser Freemind à l'école Cette notice est une rapide introduction au mind maping, que nos amis québecois appelent les «schémas de réseaux conceptuels» ou encore idéacteur. En d'autres termes c'est l'organisation

Plus en détail

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server 3, 3.5

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server 3, 3.5 Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server 3, 3.5 Machine virtuelle Machine virtuelle Machine virtuelle VMware ESX Network Shutdown Module

Plus en détail

ContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A.

ContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A. ContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A. - 1 - PREAMBULE Les conditions générales d utilisation détaillant l ensemble des dispositions applicables

Plus en détail

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère L'héritage et le polymorphisme en Java Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère En java, toutes les classes sont dérivée de la

Plus en détail

TP1 : Initiation à Java et Eclipse

TP1 : Initiation à Java et Eclipse TP1 : Initiation à Java et Eclipse 1 TP1 : Initiation à Java et Eclipse Systèmes d Exploitation Avancés I. Objectifs du TP Ce TP est une introduction au langage Java. Il vous permettra de comprendre les

Plus en détail

Espace de travail collaboratif

Espace de travail collaboratif Espace de travail collaboratif 1/10 Table des matières Présentation...3 Les modules...4 LiveCounter, Messenger et Moteur de recherche...5 Utilisateur, Administrateur et Invité...5 Droits d'accès au contenu...6

Plus en détail

Installation du SLIS 4.1

Installation du SLIS 4.1 Documentation SLIS 4.1 Installation du SLIS 4.1 1.3RC2 CARMI PÉDAGOGIQUE - ÉQUIPE «INTERNET» DE L'ACADÉMIE DE GRENOBLE juillet 2013 Table des matières Objectifs 5 I - Prérequis 7 A. Préconisations matérielles...7

Plus en détail

http://cri.univ-lille1.fr Virtualisation de Windows dans Ubuntu Linux

http://cri.univ-lille1.fr Virtualisation de Windows dans Ubuntu Linux http://cri.univ-lille1.fr Virtualisation de Windows dans Ubuntu Linux Version 1.0 Septembre 2011 SOMMAIRE 1. Introduction 3 2. Installation du logiciel de virtualisation VirtualBox 4 3. Création d'une

Plus en détail

Symantec Backup Exec Remote Media Agent for Linux Servers

Symantec Backup Exec Remote Media Agent for Linux Servers Annexe I Symantec Backup Exec Remote Media Agent for Linux Servers Cette annexe traite des sujets suivants : A propos de Remote Media Agent Comment fonctionne Remote Media Agent Conditions requises pour

Plus en détail

Menu Fédérateur. Procédure de réinstallation du logiciel EIC Menu Fédérateur d un ancien poste vers un nouveau poste

Menu Fédérateur. Procédure de réinstallation du logiciel EIC Menu Fédérateur d un ancien poste vers un nouveau poste Menu Fédérateur Procédure de réinstallation du logiciel EIC Menu Fédérateur d un ancien poste vers un nouveau poste Manipulations à réaliser sur le poste à désinstaller 1. Sauvegarde des données Dans le

Plus en détail

User Manual Version 3.6 Manuel de l Utilisateur Version 2.0.0.0

User Manual Version 3.6 Manuel de l Utilisateur Version 2.0.0.0 User Manual Version 3.6 Manuel de l Utilisateur Version 2.0.0.0 User Manuel Manual de l Utilisateur I EasyLock Manuel de l Utilisateur Table des Matières 1. Introduction... 1 2. Configuration Requise...

Plus en détail

2 Grad Info Soir Langage C++ Juin 2007. Projet BANQUE

2 Grad Info Soir Langage C++ Juin 2007. Projet BANQUE 2 Grad Info Soir Langage C++ Juin 2007 Projet BANQUE 1. Explications L'examen comprend un projet à réaliser à domicile et à documenter : - structure des données, - objets utilisés, - relations de dépendance

Plus en détail

Service Déposant: Procédure d installation. Page 1. Service déposant. Procédure d installation Version 2.3

Service Déposant: Procédure d installation. Page 1. Service déposant. Procédure d installation Version 2.3 Page 1 Service déposant Procédure d installation Version 2.3 Bourse de Luxembourg juillet 2013 1 Page 2 Sommaire 1. Introduction... 3 2. Pré-requis... 4 2.1. Configuration réseau... 4 2.2. Configuration

Plus en détail

Gestion du parc informatique matériel et logiciel de l Ensicaen. Rapport de projet. Spécialité Informatique 2 e année. SAKHI Taoufik SIFAOUI Mohammed

Gestion du parc informatique matériel et logiciel de l Ensicaen. Rapport de projet. Spécialité Informatique 2 e année. SAKHI Taoufik SIFAOUI Mohammed 6, bd maréchal Juin F-14050 Caen cedex 4 Spécialité Informatique 2 e année Rapport de projet Gestion du parc informatique matériel et logiciel de l Ensicaen SAKHI Taoufik SIFAOUI Mohammed Suivi ENSICAEN

Plus en détail

Windows Internet Name Service (WINS)

Windows Internet Name Service (WINS) Windows Internet Name Service (WINS) WINDOWS INTERNET NAME SERVICE (WINS)...2 1.) Introduction au Service de nom Internet Windows (WINS)...2 1.1) Les Noms NetBIOS...2 1.2) Le processus de résolution WINS...2

Plus en détail

Compte-rendu de projet de Système de gestion de base de données

Compte-rendu de projet de Système de gestion de base de données Compte-rendu de projet de Système de gestion de base de données Création et utilisation d'un index de jointure LAMBERT VELLER Sylvain M1 STIC Université de Bourgogne 2010-2011 Reponsable : Mr Thierry Grison

Plus en détail

Module SMS pour Microsoft Outlook MD et Outlook MD Express. Guide d'aide. Guide d'aide du module SMS de Rogers Page 1 sur 40 Tous droits réservés

Module SMS pour Microsoft Outlook MD et Outlook MD Express. Guide d'aide. Guide d'aide du module SMS de Rogers Page 1 sur 40 Tous droits réservés Module SMS pour Microsoft Outlook MD et Outlook MD Express Guide d'aide Guide d'aide du module SMS de Rogers Page 1 sur 40 Table des matières 1. Exigences minimales :...3 2. Installation...4 1. Téléchargement

Plus en détail

Formateurs : Jackie DAÖN Franck DUBOIS Médiapôle de Guyancourt

Formateurs : Jackie DAÖN Franck DUBOIS Médiapôle de Guyancourt Client sur un domaine stage personnes ressources réseau en établissement janvier 2004 Formateurs : Jackie DAÖN Franck DUBOIS Médiapôle de Guyancourt Lycée de Villaroy 2 rue Eugène Viollet Le Duc BP31 78041

Plus en détail

Installation et utilisation du client FirstClass 11

Installation et utilisation du client FirstClass 11 Installation et utilisation du client FirstClass 11 Support par téléphone au 03-80-77-26-46 ou par messagerie sur la conférence «Support Melagri» Sommaire Page I) Installation du client FirstClass 2 II)

Plus en détail

MEDIAplus elearning. version 6.6

MEDIAplus elearning. version 6.6 MEDIAplus elearning version 6.6 L'interface d administration MEDIAplus Sommaire 1. L'interface d administration MEDIAplus... 5 2. Principes de l administration MEDIAplus... 8 2.1. Organisations et administrateurs...

Plus en détail

WinTask x64 Le Planificateur de tâches sous Windows 7 64 bits, Windows 8/8.1 64 bits, Windows 2008 R2 et Windows 2012 64 bits

WinTask x64 Le Planificateur de tâches sous Windows 7 64 bits, Windows 8/8.1 64 bits, Windows 2008 R2 et Windows 2012 64 bits WinTask x64 Le Planificateur de tâches sous Windows 7 64 bits, Windows 8/8.1 64 bits, Windows 2008 R2 et Windows 2012 64 bits Manuel d initiation du Planificateur 2 INTRODUCTION 5 CHAPITRE I : INSTALLATION

Plus en détail

inviu routes Installation et création d'un ENAiKOON ID

inviu routes Installation et création d'un ENAiKOON ID inviu routes Installation et création d'un ENAiKOON ID Table des matières inviu routes...1 1 L installation...1 2 Lancer l application...1 3 L assistant d installation d inviu routes...2 3.1 Se connecter

Plus en détail

Connexion à SQL server

Connexion à SQL server Micromedia International Etude technique Auteur : Pierre Chevrier Nombre de pages : 18 Société : Date : 12/09/2012 Réf. : ETT_20110624_000001.docx Connexion à SQL server Ce document précise les modalités

Plus en détail

Groupe Eyrolles, 2003, ISBN : 2-212-11317-X

Groupe Eyrolles, 2003, ISBN : 2-212-11317-X Groupe Eyrolles, 2003, ISBN : 2-212-11317-X 3 Création de pages dynamiques courantes Dans le chapitre précédent, nous avons installé et configuré tous les éléments indispensables à la mise en œuvre d une

Plus en détail

Utilisation de GalaxShare

Utilisation de GalaxShare Utilisation de GalaxShare Tutoriel accessible en ligne sur http://galaxair.com/tuto/aidegalaxshare.html Le Porte-Document GalaxShare est un logiciel web de partage de documents, avec une gestion fine des

Plus en détail

Asset Management Software Client Module. Manuel d utilisation

Asset Management Software Client Module. Manuel d utilisation Asset Management Software Client Module Manuel d utilisation Kodak Asset Management Software Client Module Etat et paramètres de l'actif... 1 Menu Asset Status (Etat de l'actif)... 2 Menu Asset settings

Plus en détail