Mini-projet systèmes & réseau serveur de «tchatche»

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

Download "Mini-projet systèmes & réseau serveur de «tchatche»"

Transcription

1 Mini-projet systèmes & réseau serveur de «tchatche» On souhaite programmer un outil de «tchatche» (chat) sur le Web, qui permet à des internautes de dialoguer sur le réseau avec d autres utilisateurs. Il s agit d un programme fonctionnant en client/serveur (1 seul serveur et de multiples clients). Chaque utilisateur est identifié par un pseudo. Spécifications externes Le serveur doit fournir les fonctionnalités suivantes : Attente des connexions des utilisateurs ; Maintien de la liste des utilisateurs connectés ; Gestion des envois de messages d un utilisateur vers une liste d utilisateurs (éventuellement tous les utilisateurs connectés) Architecture logicielle Le serveur est tenu de fonctionner de manière asynchrone. Il sera décomposé en trois types de tâche : Une tâche d attente des connexions (tâche classique d un serveur) ; Une tâche de connexion validant le pseudo du nouvel utilisateur et créant la tâche client associée (sauf si erreur) ; Une tâche client de gestion des communications pour chaque utilisateur connecté. Attente Clients (table des utilisateurs connectés) Moniteur Connexion Client 2 Client 1 Réseau Mini-projet systèmes & réseau serveur de «tchatche» 1/3

2 La tâche Attente attend les connexions des utilisateurs et dès qu un utilisateur se connecte : Créé une tâche Connexion ; Se remet en attente. La tâche Connexion vérifie que le pseudo fourni est valide (qu il n existe pas déjà) puis créé une tâche Client chargée d attendre les messages de cet utilisateur ; met à jour les tables des utilisateurs ; informe les utilisateurs déjà connectés de l arrivée du nouvel utilisateur. Les tâches Client lisent les messages sur le réseau et appelle les méthodes de Clients afin de distribuer les messages à tous les destinataires. La table des utilisateurs connectés est partagée entre les différentes tâches, il est donc important de s assurer du bon déroulement des accès concurrents. Elle sera donc programmée comme un moniteur. Le protocole Bien qu on puisse très facilement échanger des objets en Java, il est souvent pratique de définir un protocole basé sur des échanges de texte, car cela permet de tester les programmes en utilisant un outil standard comme telnet. Les requêtes des clients et les réponses du serveur se feront ainsi de la façon suivante : Chaque requête sera constituée d un mot-clé en majuscules, suivi éventuellement d un ou de plusieurs paramètres. La fin de la chaîne de caractères est matérialisée par la séquence \r\n. Les paramètres éventuels seront séparés par un seul espace. Les réponses du serveur seront des chaînes de caractères dont la fin est matérialisée par la séquence \r\n. La réponse à une connexion du client sur le port n est : OK Jchat (version num_version) sur nom_machine démarré\r\n Les points suivants devront être respectés dans l implémentation de l application : Le serveur doit avertir par un message les autres clients de l arrivée d un nouvel utilisateur. Le serveur doit avertir par un message les autres clients du départ (déconnexion) d un utilisateur. Connexion À la connexion, le client envoie son nom d'utilisateur (pseudonyme) : USER nom_utilisateur\r\n Le serveur répond à l'utilisateur par un message de bienvenue : OK nom_utilisateur\r\n ou par un message d erreur : ERREUR nom_utilisateur déjà utilisé\r\n En cas de succès, il informe les autres utilisateurs connectés de son arrivée : CONNECT nom_utilisateur\r\n Mini-projet systèmes & réseau serveur de «tchatche» 2/3

3 Session Une fois la connexion réussie, l'utilisateur se trouve dans l'état session : il peut effectuer les requêtes suivantes, jusqu'à la commande QUIT qui met fin à la session. Envoyer le message message à une liste d utilisateurs donnée ou à tous les utilisateurs connectés (ALL) MSGTO [util1 util2 utiln] message\r\n MSGTO [ALL] message\r\n Pendant la session, le client doit également accepter des messages du serveur. Information de la connexion d un utilisateur (comme indiqué plus haut) : CONNECT nom_utilisateur\r\n Réception des messages d un autre utilisateur : MSGFROM [dequi] message\r\n Déconnexion La commande QUIT permet de se déconnecter du serveur de messagerie en direct. QUIT\r\n Le serveur informe par un message les autres utilisateurs de la déconnexion de l'utilisateur : DISCONNECT nom_utilisateur\r\n Travail à réaliser Écrire le serveur de tchatche. Vous testerez la bonne implémentation du protocole et le fonctionnement de votre serveur en utilisant le client graphique chatclient.jar qui vous est fourni dans N:\IHS\Reseaux. Vous utiliserez dans un premier temps la classe Clients (moniteur de gestion des utilisateurs connectés) qui vous sera fournie. Dans un second temps et si le calendrier le permet, vous écrirez votre propre version du moniteur Clients. Mini-projet systèmes & réseau serveur de «tchatche» 3/3

Mise en place d un intranet de travail collaboratif. Guide utilisateur

Mise en place d un intranet de travail collaboratif. Guide utilisateur Mise en place d un intranet de travail collaboratif Guide utilisateur 03/05/2010 Sommaire 1. Introduction... 4 2. Premier contact avec Le portail... 4 2.1 Se connecter au portail.... 4 2.1.1 Inscription

Plus en détail

Réservation de matériel

Réservation de matériel Manuel Utilisateur Réservation de matériel Auteur : Logica Version : 3.1 Droit d auteur Ce texte est disponible sous contrat Creative Commons Paternité - Pas d'utilisation Commerciale - Partage des Conditions

Plus en détail

Outil de gestion et de suivi des projets

Outil de gestion et de suivi des projets Outil de gestion et de suivi des projets Proposition technique et commerciale Amselem Jonathan - Corniglion Benoit - Sorine Olivier Troche Mariela - Zekri Sarah 08 Sommaire I. Les atouts de la proposition

Plus en détail

Chapitre 10 Lier les Données de Calc

Chapitre 10 Lier les Données de Calc Guide Calc Chapitre 10 Lier les Données de Calc Partager les données depuis et vers Calc Copyright Ce document est Copyright 2010 2012 par ses contributeurs tels que listés ci-dessous. Vous pouvez le distribuer

Plus en détail

CREER SA RADIO Premiers pas

CREER SA RADIO Premiers pas Page 1 CREER SA RADIO Premiers pas Vous trouverez dans ce document les premières étapes à suivre afin d entrer dans le monde de Radionomy. 1. Pré-requis Pour pouvoir utiliser le service Radionomy, vous

Plus en détail

Manuel Utilisateur. Boticely

Manuel Utilisateur. Boticely Manuel Utilisateur Boticely Auteur : Logica Version : 1.4 Droit d auteur Ce texte est disponible sous contrat Creative Commons Paternité - Pas d'utilisation Commerciale - Partage des Conditions Initiales

Plus en détail

PROCEDURE D ACCUEIL. 1 Introduction

PROCEDURE D ACCUEIL. 1 Introduction PROCEDURE D ACCUEIL 1 Introduction Le processus d accueil d un nouvel arrivant est un processus clé du département des ressources humaines et qui malheureusement est souvent sous-estimé par ce dernier.

Plus en détail

MANUEL DE PRISE EN MAIN WEB P29-1523-14

MANUEL DE PRISE EN MAIN WEB P29-1523-14 MANUEL DE PRISE EN MAIN WEB P29-1523-14 ii P29-1523-14 2008, Chemdata S.A. (Cincom Systems Inc.) Tous droits réservés Vous venez d acquérir le Manuel de prise en main CinDoc Web, numéro de publication

Plus en détail

Guide d aide à la mise en place d une Gestion électronique des documents (GED) dans les MDPH

Guide d aide à la mise en place d une Gestion électronique des documents (GED) dans les MDPH Guide d aide à la mise en place d une Gestion électronique des documents (GED) dans les MDPH Décembre 2013 2 Guide d aide à la mise en ligne d une GED dans les MDPH - décembre 2013 4 Guide d aide à la

Plus en détail

Publipostage avec Calc

Publipostage avec Calc Auto-formation sur OpenOffice.org 2.0 par Cyril Beaussier Version 1.0.2 - Avril 2006 Publipostage avec Calc Sommaire Introduction... 2 Présentation... 3 Notions... 4 Les données... 5 Lettre type... 7 Création

Plus en détail

ASECNA REMPLACEMENT CAT ET CRT (COMMUTATEURS DE MESSAGES ET DONNEES NA ET MTO)

ASECNA REMPLACEMENT CAT ET CRT (COMMUTATEURS DE MESSAGES ET DONNEES NA ET MTO) MESSIR-COMM MANUEL UTILISATEUR ASECNA REMPLACEMENT CAT ET CRT (COMMUTATEURS DE MESSAGES ET DONNEES NA ET MTO) SITES : DOUALA, LIBREVILLE, ABIDJAN, BANGUI, MALABO, DAKAR, NIAMEY, BRAZZAVILLE Mai 2007 HOTLINE

Plus en détail

Manuel d utilisation : Synkron Contrôle Qualité : C. Bachmann, H. Bischoff, S. Pfeifer, C. Schomburg Traduction : C.I.N.C.

Manuel d utilisation : Synkron Contrôle Qualité : C. Bachmann, H. Bischoff, S. Pfeifer, C. Schomburg Traduction : C.I.N.C. Prise en Main Manuel d utilisation : Synkron Contrôle Qualité : C. Bachmann, H. Bischoff, S. Pfeifer, C. Schomburg Traduction : C.I.N.C. Les informations contenues dans ce document sont sujettes à modification

Plus en détail

Modification d une feuille de style

Modification d une feuille de style Modification d une feuille de style Septembre 2005 Modification d un feuille de style Contenu Aperçu Page 3 Comment démarrer Page 4 Modifier une feuille de style Page 6 Partage d un style Page 10 Page

Plus en détail

Mesurer et analyser le trafic d un site internet Comment analyser l audience de son site et connaître les centres d intérêts des visiteurs?

Mesurer et analyser le trafic d un site internet Comment analyser l audience de son site et connaître les centres d intérêts des visiteurs? 8 Mesurer et analyser le trafic d un site internet Comment analyser l audience de son site et connaître les centres d intérêts des visiteurs? Les outils pour analyser le trafic d un site internet Les indicateurs

Plus en détail

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview. ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview. Sciences et Technologies de l Industrie et du Développement Durable Formation des enseignants parcours : ET24 Modèle de

Plus en détail

Présentation du langage et premières fonctions

Présentation du langage et premières fonctions 1 Présentation de l interface logicielle Si les langages de haut niveau sont nombreux, nous allons travaillé cette année avec le langage Python, un langage de programmation très en vue sur internet en

Plus en détail

Utilisation d ADOBE PREMIERE ELEMENTS 10

Utilisation d ADOBE PREMIERE ELEMENTS 10 Utilisation d ADOBE PREMIERE ELEMENTS 10 Mentions légales Mentions légales Pour consulter les informations juridiques, reportez-vous à la section http://help.adobe.com/fr_fr/legalnotices/index.html. iii

Plus en détail

Effectuer une sauvegarde avec Nero BackItUp

Effectuer une sauvegarde avec Nero BackItUp Effectuer une sauvegarde avec Nero BackItUp Nero BackItUp représente bien plus qu un simple programme de gravure supplémentaire dans la suite de Nero. En fait, vous disposez ici d un véritable outil de

Plus en détail

Guide utilisateur pour le déblocage de cartes et/ou la modification d un code PIN

Guide utilisateur pour le déblocage de cartes et/ou la modification d un code PIN Guide utilisateur pour le déblocage de cartes et/ou la modification d un code PIN SOMMAIRE A. PRÉREQUIS TECHNIQUES... 3 B. INTRODUCTION... 3 C. DÉBLOCAGE D UNE CARTE... 4 ETAPE 1 : CONNEXION À L INTERFACE

Plus en détail

Comment relier deux ordinateurs en réseau

Comment relier deux ordinateurs en réseau Comment relier deux ordinateurs en réseau La société icom informatique de Saint-Jovite vous présente une méthode simple de relier deux ordinateurs sous Windows avec le protocole TCP/IP afin de pouvoir

Plus en détail

Téléphones IP Cisco Unified 7960G et 7940G pour Cisco Unified CallManager 5.0 (SCCP)

Téléphones IP Cisco Unified 7960G et 7940G pour Cisco Unified CallManager 5.0 (SCCP) Manuel de téléphone Téléphones IP Cisco Unified 7960G et 7940G pour Cisco Unified CallManager 5.0 (SCCP) INCLUANT LA LICENCE ET LA GARANTIE Siège social Cisco Systems, Inc. 170 West Tasman Drive San Jose,

Plus en détail

VOLUME 1 CRÉATION D UN SITE WEB

VOLUME 1 CRÉATION D UN SITE WEB VOLUME 1 CRÉATION D UN SITE WEB Comprendre les principales étapes TABLE DES MATIÈRES PARTIE 1 - RENCONTRE DE DÉMARRAGE 03 PARTIE 2 - ANALYSE FONCTIONNELLE 03 PARTIE 3 - ARBORESCENCE 04 PARTIE 4 - MAQUETTES

Plus en détail

TROUVER UN EMPLOI AVEC INTERNET

TROUVER UN EMPLOI AVEC INTERNET GUIDE PRATIQUE 1 TROUVER UN EMPLOI AVEC INTERNET POLE-EMPLOI.FR 2 INTERNET : VOTRE PREMIER OUTIL DE RECHERCHE D EMPLOI Internet a transformé les rapports avec le monde du travail. Avec les e-candidatures,

Plus en détail

Chapitre 1 Qu est-ce qu une expression régulière?

Chapitre 1 Qu est-ce qu une expression régulière? Chapitre 1 Qu est-ce qu une expression régulière? Les ordinateurs n ont pas du tout la même conception des textes que nous : pour nous, un texte est un ensemble d idées couchées sur papier. Nous nous en

Plus en détail

Ordonnancement temps réel

Ordonnancement temps réel Ordonnancement temps réel Ordonnancement centralisé par Francis COTTET Professeur d université (ENSMA, Poitiers Futuroscope) Ingénieur de l Institut national polytechnique de Grenoble Docteur ès sciences

Plus en détail

Chapitre 14 Le document peut-il être vecteur de coopération?

Chapitre 14 Le document peut-il être vecteur de coopération? RESSOURCES HUMAINES ET COMMUNICATION Thème 4 COOPERATION / COORDINATION Ch 14 Le document peut-il être vecteur de coopération? I. Quels outils permettent la mutualisation des documents? Les technologies

Plus en détail

Kaspersky Endpoint Security 10 for Windows Manuel de l'administrateur

Kaspersky Endpoint Security 10 for Windows Manuel de l'administrateur Kaspersky Endpoint Security 10 for Windows Manuel de l'administrateur V E R S I O N D E L ' A P P L I C A T I O N : 1 0. 0 M A I N T E N A N C E R E L E A S E 1 Cher utilisateur, Merci d'avoir choisi notre

Plus en détail

SYSTEMES MODULAIRES INDUSTRIELS DE TELETRANSMISSION TELEGESTION

SYSTEMES MODULAIRES INDUSTRIELS DE TELETRANSMISSION TELEGESTION SYSTEMES MODULAIRES INDUSTRIELS DE TELETRANSMISSION TELEGESTION SYSTEMES BREVETES MARQUES DÉPOSÉES P E R A X S A 48, rue de Fenouillet - BP 56 31140 SAINT ALBAN Tél : 05 62 75 95 75 Fax : 05 61 70 35 93

Plus en détail

iweb Premiers contacts Découvrez iweb et apprenez à créer votre site web.

iweb Premiers contacts Découvrez iweb et apprenez à créer votre site web. iweb Premiers contacts Découvrez iweb et apprenez à créer votre site web. 1 Table des matières Chapitre 1 3 Bienvenue dans iweb 3 À propos d iweb 3 Contenu 4 Avant de commencer 4 Éléments nécessaires 4

Plus en détail