Retour sur : David CARELLA’s Web Site
Rapport de Stage
Projet de Fin d’Études

Consultation d’annuaire d’entreprises par messages SMS à partir d’un GSM
Développement de l’Extranet « Partenaires et Prescripteurs » de Cegetel
Développement du Portail Intranet Mobile en WAP


CEGETEL Entreprises
INTERLIANT Europe
Activité Internet - Service Ingénierie

Réalisé par David CARELLA
Encadré par Christophe CACHAT

Février–juin 2000



Table des matières

Résumé/Abstract
Mots-clé/Keywords
Remerciements
Préambule
1  L’Activité Internet et Vivendi
    1.1  Quelques précisions
    1.2  L’incubateur technologique @Viso
    1.3  Organigramme Vivendi/@Viso/Cegetel/Interliant
2  Présentation de CEGETEL
    2.1  À propos de CEGETEL Entreprises
    2.2  La fiche d’identité
        2.2.1  L’historique
        2.2.2  Quelques chiffres
    2.3  L’organisation
        2.3.1  L’organisation et les missions
        2.3.2  L’actionnariat et les participations
    2.4  Les offres et les produits
        2.4.1  La Branche Entreprise
        2.4.2  La Branche Professionnels et Grand Public
3  Présentation de INTERLIANT
    3.1  À propos de INTERLIANT Inc.
    3.2  À propos de INTERLIANT Europe
4  Le langage ColdFusion
    4.1  Présentation du logiciel
        4.1.1  Qu’est-ce que c’est ?
        4.1.2  Caractéristiques principales
        4.1.3  Architectures de développement et de déploiement
        4.1.4  Principales étapes pour créer une application ColdFusion
    4.2  Avantages et inconvénients du langage ColdFusion
        4.2.1  Avantages
        4.2.2  Inconvénients
5  Le logiciel Dreamweaver
    5.1  Présentation du logiciel
    5.2  Les avantages du logiciel
    5.3  Un apperçu de l’interface d’édition de Dreamweaver
6  Le langage PHP
    6.1  Présentation du langage
7  Le langage SQL
    7.1  Présentation du langage
8  Le projet Annuaire d’Entreprises par SMS
    8.1  Présentation du projet
        8.1.1  Description du service
        8.1.2  Composants intervenants dans le service
            8.1.2.1  Processus de traitement des demandes de consultation
            8.1.2.2  Annuaire mutualisé et annuaires dédiés
            8.1.2.3  Administration de l’annuaire hébergé
            8.1.2.4  Programmes de batch
    8.2  Conception générale de l’application
        8.2.1  Généralités
        8.2.2  Le proxy SMS-C
        8.2.3  Le serveur d’annuaire
    8.3  L’Extranet d’administration de l’annuaire
    8.4  Conclusion
9  Le projet Partenaires et Prescripteurs
    9.1  Présentation du projet
        9.1.1  Introduction
        9.1.2  La version 1.0
        9.1.3  Interfaces d’administration
    9.2  Les technologies utilisées pour ce projet
    9.3  La version 2.0 de cet Extranet
        9.3.1  Les évolutions par rapport à la version 1.0
            9.3.1.1  Personalisation des accès
            9.3.1.2  Module de mise à jour de fiche Partenaires
            9.3.1.3  Gestion d’un ensemble de groupes
            9.3.1.4  Mise en ligne de pages d’annonces
    9.4  Conclusion
10  Le projet Portail Intranet Mobile
    10.1  Présentation du projet
        10.1.1  Introduction
        10.1.2  Description plus détaillée de cette application
        10.1.3  Précisions sur le cadre de cette application
        10.1.4  Position de cette application dans les réseaux WAP et Internet
    10.2  Les développements
        10.2.1  Choix des technologies
        10.2.2  Le Portail Intranet en WML
            10.2.2.1  Description
            10.2.2.2  Le simulateur WML du Kiosque Mobile
            10.2.2.3  L’accès aux services avec le mobile WAP
            10.2.2.4  La base de données Oracle
        10.2.3  La console d’administration du PIM
            10.2.3.1  Description
            10.2.3.2  Le schéma de principe de la console
            10.2.3.3  Développements sous le logiciel Dreamweaver 3
            10.2.3.4  Les librairies en JavaScript et en PHP
    10.3  Conclusion
A  Captures d’écran
    A.1  Projet Annuaire d’Entreprises par SMS
    A.2  Projet Partenaires et Prescripteurs
    A.3  Projet Portail Intranet Mobile
B  Graphiques synoptiques
    B.1  Projet Annuaire d’Entreprises par SMS
    B.2  Projet Portail Intranet Mobile
C  Exemples de codes source
    C.1  Le langage CFML - ColdFusion Markup Language
    C.2  Le langage WML - Wireless Application Protocol
    C.3  Le langage PHP - Personal Home Page
Glossaire
Liste des figures
Liste des tableaux
Bibliographie

 

Résumé/Abstract

Version française :

 

Sujets :

 

Description :

 

Consultation d’annuaire d’entreprises par messages SMS à partir d’un GSM

 

Lors d’un déplacement, un collaborateur d’entreprise (un commercial par exemple) peut avoir besoin de se procurer les coordonnées d’un autre collaborateur. Afin d’éviter de stocker les coordonnées de tous les collaborateurs de l’entreprise dans son téléphone mobile et afin de centraliser toutes ces informations, il a été décidé de créer une base de données dont les requettes se feront à partir d’un téléphone GSM à l’aide du système de messages SMS.

 

Développement de l’Extranet Partenaires et Prescripteurs de Cegetel

 

Cet Extranet permet de mettre en ligne et à disponibilité de tous les partenaires et prescripteurs de Cegetel des documents et des informations tels que des offres, des agendas, etc. Les clients de Cegetel peuvent mettrent en ligne leurs propres documents via une interface d’administration dynamique. Cette deuxième version de ce site Web est réalisé en ColdFusion qui est un langage pour faire des pages dynamiques et interactives.

 

Développement du Portail Intranet Mobile en WAP

 

Cette offre va permettre aux collaborateurs des entreprises qui auront souscrit à ce service, de se connecter à divers services WAP à l’aide de leur mobile. Chaque entreprise pourra créer des groupes de services WAP afin d’autoriser l’accès à des services à certains collaborateurs et pas à d’autres. Ces groupes de services seront gérés par l’administrateur WAP de l’entreprise.

 

English version :

 

Subjects :

 

Description :

 

Consultation of directory of companies by messages SMS starting from a GSM

 

During a ship, a collaborator of company (e.g. a business man) can need to get the address of another collaborator. In order to avoid storing the addresses of all the collaborators of the company in his mobile phone and in order to centralize all this information, it was decided to create a data base whose requettes will be made starting from a GSM mobile using the system of messages SMS.

 

Development of Extranet Partners and Prescribers of Cegetel

 

This Extranet makes it possible to put on-line and available for all the partners and prescribers of Cegetel, some documents and information such as offers, diaries, etc. The customers of Cegetel can upload on-line their own documents via a dynamic interface of administration. This second version of this Web site is carried out in ColdFusion which is a language to make dynamic and interactive pages.

 

Development of the Mobile Intranet Portal in WAP technology

 

This offer will allow collaborators of enterprises who will have subscribed to this service, to connect to various WAP services with the help of their mobile. Each enterprise will be able to create groups of WAP services so as to authorize the access to services for certain collaborators. These groups of services will be managed by the administrator WAP of the enterprise.

 

Mots-clé/Keywords

Version française :

 

Consultation d’annuaire d’entreprises par messages SMS à partir d’un GSM

 

GSM, SMS, C, Client/Serveur, LDAP, Base de données, Oracle, Serveur SQL, Extranet, MCIS, ASP, Annuaire d’entreprises

 

Développement de l’Extranet Partenaires et Prescripteurs de Cegetel

 

ColdFusion, HTML, CFML, JavaScript, Extranet, Web Dynamique

 

Développement du Portail Intranet Mobile en WAP

 

WAP, Wireless Application Protocol, WML, Wireless Markup Language, SSL, PHP, CSS, Mobile WAP, Intranet, Oracle, SQL

 

English version :

 

Consultation of directory of companies by messages SMS starting from a GSM

 

GSM, SMS, C, Client/Server, LDAP, Data Bases, Oracle, SQL Server, Extranet, MCIS, ASP, Compagny directory

 

Development of Extranet Partners and Prescribers of Cegetel

 

ColdFusion, HTML, CFML, JavaScript, Extranet, Dynamic Web

 

Development of the Mobile Intranet Portal in WAP technology

 

WAP, Wireless Application Protocol, WML, Wireless Markup Language, SSL, PHP, CSS, Mobile WAP, Intranet, Oracle, SQL

 

Remerciements

Je remercie :

 

 

Je remercie également :

 

 

Préambule

Dans le cadre de ma scolarité à l’ENSEA1, je me suis impliqué dans trois projets de développement Internet/Intranet/Extranet lors de mon Projet de Fin d’Études à CEGETEL Entreprises et à INTERLIANT Europe2. Durant tout ce stage, je fût encadré par Monsieur Christophe CACHAT, mon responsable de stage et responsable du service ingénierie de l’Activité Internet, et Monsieur Olivier JAILLET le chef du projet WAP.

 

Voici une répartition approximative des trois projets dans lesquels je me suis impliqués depuis le mois de février 2000.

 

 

Année 2000 février mars avril mai juin
Projets SMS, PetP SMS, PetP PetP, PIM PIM PIM

 

SMS Consultation d’annuaire d’entreprises par messages SMS à partir d’un GSM
PetP Développement de l’Extranet Partenaires et Prescripteurs de Cegetel
PIM Développement du Portail Intranet Mobile en WAP

 

Table 0.1: Planning des projets (depuis le mois de février 2000)

 

 

Pour me contacter :

 

Pour plus d’informations sur les entreprises et sur l’école :

 


Partie 1
Présentation du groupe


 

Chapitre 1
L’Activité Internet et Vivendi

 

1.1  Quelques précisions

 

Mon stage se déroule au département « Activité Internet » - service ingénierie. Le 10 février 2000, date de début de mon stage, l’Activité Internet faisait partie de Cegetel Entreprises. Le 26 mai 2000, Marc LAPORTE, chef de l’Activité Internet (Cegetel), et Brett RAYNES, président d’Interliant Europe, signent un accord qui tranfère tous les actifs de l’Activité Internet de Cegetel vers Interliant France qui fait partie d’Interliant Europe. Le 1er juin 2000, tous les employés de l’Activité Internet deviennent effectivement collaborateurs Interliant.

 

Cette alliance signée entre Cegetel et Interliant illustre la stratégie et les synergies entre les différentes entités du groupe Vivendi. Ainsi elle a été rendue possible grâce à @Viso, incubateur technologique européen issu d’une alliance stratégique entre Vivendi et Softbank.

 

1.2  L’incubateur technologique @Viso

 

@Viso est une joint-venture associant Vivendi et Softbank, destinée à aider les sociétés non européennes à réussir leur installation et à accélérer leur développement sur les marchés d’Europe continentale. @Viso participe au financement des lancements européens sous la forme de joint-venture 50/50. @Viso offre également via Vivendi et Softbank, l’accès à des partenariats stratégiques de premier plan. Dans le cadre de Vivendi, les sociétés incubées par @Viso seront les partenaires privilégiés de Vizzavi, le portail européen Multi-Accès de Vivendi et Vodafone AirTouch. Vivendi et Softbank ont récemment porté la dotation d’@Viso à hauteur de 500 millions d’euros afin de soutenir son développement.

 

1.3  Organigramme Vivendi/@Viso/Cegetel/Interliant

 

Softbank et Vivendi financent à 50/50 @Viso, l’incubateur de Start-Up. Et, Interliant US et @Viso financent à 51/49 Interliant Europe dont Interliant France fait partie. Ainsi, le 1er juin 2000, tous les actifs de l’Activité Internet de Cegetel sont passés dans le groupe Interliant France.

 

 

Figure 1.1: Organigramme des financements et des actifs de @Viso

 

 

SAS : Société par Actions Simplifiée

 

Chapitre 2
Présentation de CEGETEL

 

2.1  À propos de CEGETEL Entreprises

 

Avec un chiffre d’affaires de 4,1 milliards d’Euros en 1999 et 8 000 collaborateurs dans toute la France, Cegetel est le deuxième opérateur de télécommunications en France. Opérateur global, il couvre l’ensemble des activités de télécommunication tant pour les particuliers que pour les entreprises. Dans la téléphonie mobile, SFR, compte plus de 8 millions de clients et propose une offre commerciale diversifiée et adaptée aux attentes de tous ses clients. Dans la téléphonie fixe, le « 7 » compte plus de 1,9 million de lignes clientes. Les services aux entreprises (téléphonie, données, Internet, numéros 800, etc.) comptent plus de 25 000 clients.

 

Le réseau Internet de Cegetel est constitué de 112 points de présence en France, d’un c ur de réseau en ATM avec des liaisons à 34 Mbits/s et d’une infrastructure internationale via les réseaux de ses différents partenaires (Level 3, Ebone, Concert...). Enfin, Cegetel est l’un des acteurs majeurs de l’Internet sous les marques AOL et Compuserve qui comptent 600 000 abonnés ainsi qu’au travers du Réseau de Santé Social (RSS) avec ses 20 000 clients professionnels de la santé.

 

2.2  La fiche d’identité

 

2.2.1  L’historique

 

Février 1988 Création de SFR
Mars 1989 Lancement commercial du réseau analogique de SFR
Avril 1993 Lancement commercial du réseau GSM SFR
4 septembre 1996 Création de Cegetel
11 février 1997 SFR a 1 million de clients
Avril 1997 Signature de l’accord avec la SNCF. Télécom Développement devient une filiale commune de Cegetel et de la SNCF
Septembre 1997 Cegetel obtient le préfixe 7 pour commercialiser son service de téléphonie longue distance
Décembre 1997 SFR a 2 millions d’abonnés
31 décembre 1997 Cegetel obtient la concession du Réseau Santé Social
1er février 1998 Cegetel commercialise son offre de téléphonie fixe vers le grand Public et les professionnel : le 7
1er juin 1998 Les services du 7 sont disponibles dans toute la France métropolitaine
Juillet 1998 SFR passe le cap des 3 millions d’abonnés
24 novembre 1998 Intégration de la téléphonie fixe et mobile dans les entreprises : Cegetel lance Convergence
26 mars 1999 SFR lance e.medi@, l’accès depuis un portable à un bouquet de services interactifs.
3 mai 1999 Signature de l’accord cadre sur les 35 heures.
15 juin 1999 SFR passe le cap des 5 millions de clients.
30 novembre 1999 SFR est numéro 1 pour la qualité du réseau selon l’enquête ART.
30 décembre 1999 SFR passe le cap des 7 millions de clients et le « 7 » la barre de 1 million de clients.
15 janvier 2000 Entrée en vigueur de la présélection qui permet d’accéder à l’opérateur téléphonique de son choix sans avoir à composer obligatoirement un préfixe autre que le « 0 ».
31 janvier 2000 Accord Vivendi/Vodafone pour développer un portail multi-accès européen de l’Internet.
13 avril 2000 SFR passe le cap des 8 millions d’abonnés
26 avril 2000 Cegetel lance, en partenariat avec les Banques Populaires, puissance net : une offre de commerce électronique destinée aux PME-PMI.
26 mai 2000 Signature d’un accord entre Cegetel et Interliant.
1er juin 2000 Transfère des actifs  Activité Internet  de Cegetel vers Interliant.

 

2.2.2  Quelques chiffres

 

 

Nombre d’abonnés SFR 8 000 000 au 13 avril 2000
Couverture du réseau SFR 98% de la population (GSM 2 watts)
Le 7 de Cegetel Plus de 1,8 million de lignes
Nombre d’appels 31 000 appels quotidiens
Chiffre d’Affaires 4,078 milliards d’euros en 1999
Table 2.1: Les chiffres clés

 

 

 

C.A. 1993 1994 1995 1996 1997 1998
Cegetel 1.7 2.5 2.9 5.8 10.6 18.9
Dont SFR 1.4 1.5 2.5 5.1 9.1 17.5
Table 2.2: Chiffre d’Affaires (en milliards de francs)

 

 

 

I.T. 1993 1994 1995 1996 1997 1998
Cegetel 1.0 2.3 4.1 4.2 7.0 10.9
Dont SFR 0.9 1.9 3.3 2.7 3.8 9.1
Table 2.3: Investissement Technologique (en milliards de francs)

 

 

2.3  L’organisation

 

2.3.1  L’organisation et les missions

 

Cegetel a mis en place des structures couvrant l’ensemble de ses marques mais réparties en fonction des deux principaux marchés. La nouvelle organisation s’appuie ainsi sur une branche Grand Public et Professionnels et une branche Entreprises. Leur mission est de développer, commercialiser et exploiter le portefeuille de produits et services de Cegetel sur leurs marchés respectifs.

 

Les deux branches marchés sont aidées dans leur développement par trois directions techniques :

 

2.3.2  L’actionnariat et les participations

 

L’actionnariat :

 

Cegetel s’appuie sur un actionnariat puissant, cohérent et pérenne associant Vivendi, actionnaire de référence et des grands opérateurs internationaux, BT, Mannesmann et SBC.

 

Vivendi
est l’actionnaire de référence de Cegetel avec 44% de son capital. Leader mondial des services de proximité avec 205 milliards de francs de chiffre d’affaires en 1997 (y compris Havas) et 220 000 collaborateurs, Vivendi s’inscrit très fortement dans le secteur de la communication autour de trois métiers : les télécommunications, l’édition-multimédia et l’audiovisuel.

 

BT
, le 7 opérateur mondial de télécommunications, détient 26% du capital de Cegetel. Confronté depuis sa privatisation en 1983-1984 à la concurrence sur le marché des télécoms en Grande-Bretagne, BT a su conserver sa position.

 

Mannesmann
détient 15% du capital de Cegetel. Exploitant du 1 réseau GSM en Allemagne, Mannesmann est partenaire de Deutsche Bahn (les chemins de fer allemands) pour les services de téléphonie fixe.

 

SBC
, qui détient 15% du capital de Cegetel, est le 1 opérateur télécom local aux Etats-Unis (Texas, Californie...) et l’un des principaux opérateurs américains de téléphonie mobile.

 

Vodafone
, le principal opérateur de téléphonie mobile en Grande-Bretagne, détient 20% dans le capital de SFR.

 

Ce pool d’actionnaires permet également la mise en commun de ressources (réseaux, canaux de distribution et services clients), l’intégration des offres produit pour répondre aux attentes des clients (fixe/mobile, téléphone/Internet).

 

2.4  Les offres et les produits

 

 

Figure 2.1: Les deux pôles de Cegetel : le Grand Public et les Entreprises

 

 

2.4.1  La Branche Entreprise

 

Les offres de téléphonie fixe

 

L’offre Pléiade de Cegetel a été conçue sur mesure pour les entreprises. Elle permet aux entreprises de garder leurs numéros de téléphone, leurs postes téléphoniques et leur PABX actuel. Leurs collaborateurs téléphonent comme avant sans préfixe, sans codes, sans carte ...

 

La téléphonie mobile

 

SFR a donc créé une offre spécifique pour les entreprises avec pour enjeux d’améliorer la productivité, une totale souplesse de gestion et une maîtrise budgétaire.

 

Les services de données de Cegetel entreprises

 

Dès aujourd’hui, Cegetel propose des réponses personnalisées et évolutives à tous les besoins d’interconnexion, de la création d’un réseau privé d’entreprise jusqu’à une vitrine commerciale sur Internet, et ce, en France comme dans le monde entier.

 

2.4.2  La Branche Professionnels et Grand Public

 

SFR : La référence du monde sans fil

 

Plus de 8 millions d’abonnés.
Un réseau GSM qui couvre plus de 98% de la population française avec un très haut niveau de qualité attesté par les pouvoirs publics (n°1 pour le taux de communications réussies dans les grandes agglomérations).

 

Le 7 : le premier challenger sur la téléphonie fixe

 

Les service d’accès Internet de Cegetel

 

 

Chapitre 3
Présentation de INTERLIANT

 

3.1  À propos de INTERLIANT Inc.

 

Interliant est un pionnier devenu leader sur le marché des applications hébergées (ASP3). Interliant emploie aujourd’hui plus de 800 personnes à travers le monde et a implémenté des solutions pour plus de 90 000 clients.

 

Interliant exploite des data centers à Atlanta (Géorgie), Houston (Texas), Colombus (Ohio) et Vienna (près de Washington DC). Le siège social d’Interliant est basé à New York. Interliant offre des solutions d’hébergement de sites web, gestion de messagerie et de bases de connaissances (KM), sécurité, commerce électronique, gestion de la relation client (CRM), gestion de l’entreprise (ERP), e-formation, et des services de location d’applications par l’intermédiaire d’AppsOnline.com. Interliant a conclu des accords stratégiques avec des entreprises leaders du monde du logiciel, des réseaux et du hardware parmi lesquels Dell Computer, IBM, Lotus Development Corp., Microsoft, BMC software, Network Solutions.

 

3.2  À propos de INTERLIANT Europe

 

Interliant Europe est une joint-venture annoncée en octobre 1999 entre @Viso et Interliant Inc. Interliant Europe est déjà présent à Londres et vient d’ouvrir un bureau à Paris dont la vocation est d’être le headquarter européen. Interliant projette de développer ses ventes d’hébergement et de services professionnels en Europe continentale, en pratiquant la qualité de service et les niveaux de disponibilité élevés qui ont fait sa réputation au Royaume Uni depuis cinq ans et aux Etats-Unis depuis sa création.

 


Partie 2
Les technologies utilisées


 

Chapitre 4
Le langage ColdFusion

 

Le développement d’application web avec le langage et le logiciel ColdFusion4 4.0.

 

4.1  Présentation du logiciel

 

4.1.1  Qu’est-ce que c’est ?

 

ColdFusion est un système de développement d’aplications web pour les développeurs professionels qui veulent créer des applications web dynamiques et des sites web interactifs. C’est un moyen rapide pour intégrer les technologies du navigateur, du serveur et d’une base de données dans des applications web puissantes.

 

Les applications sont construites en combinant le langage standard HTML5 et le langage de ColdFusion : le ColdFusion Markup Language (CFML).

 

4.1.2  Caractéristiques principales

 

Voici les quatre principales caractéristiques de ColdFusion :

 

Développement rapide
grâce à des langages de script (HTML, XML, CFML), grâce à un environement intégré de développement et grâce aux possibiltés de développement en équipe.

 

Déploiement ergonomique
permet de gérer des sites de très gros volume grâce aux hautes performances de l’application et à une administration flexible du serveur.

 

Grande compatibilité
car ColdFusion intégre le mail, les différents protocoles de serveurs web, la gestion des bases de données, la reconnaissance de différents langages de script (VBscript, JavaScript, CFML, ...) et le XML6.

 

Sécurité totale
sur une grande plage de flexibilité et de contrôl pour le développement et le déploiement.

 

4.1.3  Architectures de développement et de déploiement

 

Toutes ces explications ont été trouvées dans [5]Getting Started with ColdFusion (page 29).

 

 

Figure 4.1: Schéma de principe du fonctionnement d’une application ColdFusion

 

 

  1. Quand un utilisateur clique sur le bouton « Envoyer » d’un formulaire ou sur un lien hypertexte d’une page web, le navigateur web de l’utilisateur envoie une requête HTTP7 au serveur web via Internet ou un intranet.
  2. Le serveur web passe les données transmises par le client et la page appropriée au serveur ColdFusion à travers un serveur API.
  3. ColdFusion lit les données du client et traite le code CFML8 de la page. Basé sur les instructions CFML, le serveur interagit avec des serveurs de base de données, le système de fichiers, les serveurs SMTP9 et avec d’éventuelles autres applications à travers l’API10 de ColdFusion ou à travers COM/DCOM.
  4. ColdFusion génère dynamiquement une page web qu’il renvoie au serveur web.
  5. Le serveur web renvoie la page HTML au navigateur de l’utilisateur.

 

4.1.4  Principales étapes pour créer une application ColdFusion

 

  1. Faire le plan de l’application ColdFusion
  2. Construire les pages de l’application
  3. Fournir un accès à une base de donnée
  4. Implanter la sécurité
  5. Tester et déboguer l’application

 

4.2  Avantages et inconvénients du langage ColdFusion

 

4.2.1  Avantages

 

 

4.2.2  Inconvénients

 

 

Chapitre 5
Le logiciel Dreamweaver

 

Le développement d’application web avec le logiciel Dreamweaver11 3.

 

5.1  Présentation du logiciel

 

Dreamweaver12 est un logiciel très complet et très convivial. De plus, il intègre de nombreuses fonctionnalités comme l’édition simultannée de la page en WYSIWYG13 et de son code source HTML, la génération de code JavaScript compatible Netscape et Internet Explorer, l’édition de feuille de style, l’édition du comportement à des événements, la gestion de librairies et de modèles, etc.

 

Ce logiciel est très ouvert : c’est-à-dire qu’il est très facile d’implémenter ses propres fonctions, ces propres boutons et ces propres menus.

 

Il permet, aussi, de tester la compatibilité du code HTML pour diverses versions des différents navigateurs Internet, de tester les liens cassés et les fichiers orphelins. Et tout cela sans être contraignant : c’est-à-dire que ce logiciel ne vous imposera aucun formatage de votre code source si vous ne le lui demander pas ; vous maîtrisez entièrement le code HTML que vous générez.

 

5.2  Les avantages du logiciel

 

Un des outils très puissant de Dreamweaver est l’édition et la gestion de librairies et de modèles. Ces derniers ont été utilisés pour le projet  Portail Intranet Mobile . Ces modèles sont uniquement gérés au moment de l’édition d’une page web avec ce logiciel. Une fois en ligne, sur le serveur de production, la page resemble à toutes autres pages. Seules quelques lignes de commentaire HTML sont écritent dans le fichier afin d’indiquer au logiciel Dreamweaver que certaines parties de cette page font parties d’un modèle en particulier. Les modèles ont deux types de parties différentes : les parties du modèle et les parties éditables propres à chaques pages. Supposont un site dont une centaine de pages HTML sont basées sur un seul et même modèle. Si l’on veut modifier toutes les parties de ce modèle qui se trouvent dans cette centaine de pages, il suffit de modifier le modèle et toutes ces parties communes seront modifiées dans la centaine de fichiers HTML, sans modifier les parties éditables propres à chaques pages web de ce site.

 

Un des autres outils très convivial de ce logiciel est l’édition de feuilles de styles. Il suffit de cocher quelques checkboxes et de sélectionner quelques paramètres. Et Dreamweaver génère automatiquement le fichier CSS parfaitement conforme à la Recommandation14 du W3C.

 

5.3  Un apperçu de l’interface d’édition de Dreamweaver

 

Voici une capture d’un écran d’édition du projet  Portail Intranet Mobile  dans l’environement de travail multifenêtré du logiciel.

 

 

Figure 5.1: Dreamweaver 3 - Développement du projet WAP

 

 

Chapitre 6
Le langage PHP

 

6.1  Présentation du langage

 

PHP est un langage de script qui s’intègre directement dans les pages web.

 

La syntax de ce langage ressemble beaucoup au langage C. A l’origine ce langage a été développé pour rendre les pages web personnelles plus interactive, d’où son nom PHP - Personal Home Page.

 

De plus, PHP propose un grand nombre de bibliothèques de fonctions dont des librairies multimédia, des librairies utilitaires pour les SGBD (comme Oracle et Sybase) et des librairies pour le protocole IP. Ces fonctions, sont très largement utilisées pour le projet Portail Intranet Mobile (C.F. chapitre 10 page pageref).

 

Un exemple du code PHP du projet Portail Intranet Mobile est à l’annexe C.3 page pageref.

 

Pour les références techniques sur PHP, le livre utilisé est [6]Programmation en PHP.

 

Chapitre 7
Le langage SQL

 

7.1  Présentation du langage

 

SQL est un langage de script qui permet de faire des requêtes dans une base de données. Durant mes différents projets les bases utilisées étaient Oracle 8i et FoxPro.

 

Pour les références techniques sur Oracle et SQL les deux livres suivants sont très bien :

 


Partie 3
Les projets réalisés


 

Chapitre 8
Le projet Annuaire d’Entreprises par SMS

 

8.1  Présentation du projet

 

Cette partie présente le projet et en définit ses caractéristiques générales.

 

8.1.1  Description du service

 

Le service annuaire par SMS permet à un salarié d’une entreprise ayant souscrit à l’offre convergence15 de consulter l’annuaire de son entreprise via un GSM SFR d’entreprise en envoyant un message SMS et d’obtenir en retour un message SMS réponse contenant les coordonnées téléphoniques de la personne recherchée, à savoir, nom, prénom et en fonction des données disponibles et du nombre d’individus dans la réponse : le numéro de GSM long et/ou le numéro de GSM court et/ou le numéro de téléphone fixe long et/ou le numéro de téléphone fixe court, le numéro de fax et/ou l’adresse e-mail.

 

Pour pouvoir accéder au service l’individu doit appartenir à une entreprise ayant souscrit à l’offre convergence et ayant fourni son annuaire à Cegetel ; et disposer d’un GSM SFR d’entreprise référencé dans le PNP16 du client dans le SI VPN17 de SFR.

 

8.1.2  Composants intervenants dans le service

 

Afin de mieux comprendre les paragraphes qui suivent, il peut être intéressant de se référer à la figure B.1 page pageref.

 

8.1.2.1  Processus de traitement des demandes de consultation

 

L’utilisateur du service souhaitant consulter l’annuaire de son entreprise le fait en envoyant, à l’aide de son mobile un message SMS contenant les premières lettres du nom de la personne recherchée. Pour référencer le service, il utilise le numéro du service.
Puis, le message question est envoyé via le réseau GSM au SMS-Center.

 

L’application proxy SMS-C LDAP est considérée, du point de vue du SMS-C, comme un grand compte. Ainsi, les messages SMS question sont remis à l’application par le protocole EMI18.

 

Pour pouvoir répondre à la question reçue, le proxy SMS-C LDAP, doit consulter la base de donnée Oracle présente sur la même machine. Cette base contient un sous-ensemble des données du SI VPN. Elle est utile pour, d’une part authentifier le mobile émetteur du message SMS, connaître le VPN ID de l’entreprise possédant ce mobile, et d’autre part, récupérer les numéros courts correspondant aux numéros longs pour chaque individus dans l’annuaire, correspondant à la recherche.

 

Un annuaire LDAP référence, pour chaque VPN, l’ensemble des personnes pouvant être consultées via le service. Pour chaque personne, un ensemble d’informations (Nom, prénom, numéro fixe, numéro long, etc.) est renseigné. Le serveur d’annuaire utilisé est MCIS. Le proxy SMS-C LDAP questionne cet annuaire pour connaître tous les individus correspondant à la question posée.

 

Lorsque la réponse à la question reçue a été obtenue, elle est formatée pour tenir dans un message SMS et envoyée via le SMS-C au mobile émetteur.

 

8.1.2.2  Annuaire mutualisé et annuaires dédiés

 

Il a été prévu de donner la possibilité aux entreprises clientes d’utiliser leur propre annuaire LDAP. Tous les autres annuaires sont mutualisés au sein d’un annuaire LDAP MCIS hébergé par Cegetel. on parle alors de l’annuaire mutualisé. Dans cet annuaire, les différents clients sont référencées par leur VPN ID19. Ainsi, lorsque le proxy SMS-C LDAP envoie une requête au serveur MCIS, il ne récupère en retour que des individus du même VPN que l’émetteur de la question.

 

8.1.2.3  Administration de l’annuaire hébergé

 

Afin de mettre à jour les informations contenues dans l’annuaire MCIS, chaque entreprise cliente a accès à une console d’administration web.

 

8.1.2.4  Programmes de batch

 

L’application proxy SMS-C LDAP ne peut fonctionner correctement de manière durable si un certain nombre d’actions ne sont pas réalisées périodiquement.

 

Il est nécessaire que de manière régulière, les données du SI VPN soit importées et viennent mettre à jour la base Oracle. Les fichiers de traces doivent être régulièrement effacés afin de ne pas saturer la mémoire disque. De même les statistiques doivent être quotidiennement traitées et archivées. Ces actions sont mises en uvre par le démon cron.

 

8.2  Conception générale de l’application

 

8.2.1  Généralités

 

L’application proxy SMS-C LDAP a été programmée en langage C ANSI, compilée avec le compilateur gcc. Elle a été écrite pour une machine SUN avec le système d’exploitation Solaris 2.6. Les deux processus la constituant sont multithreads et utilisent les threads posix. Les IPC20 du système V sont également utilisés. La réécriture du programme pour un autre système Unix implémentant les IPC système V est donc envisageable.

 

La nature multithread des processus a nécessité de n’utiliser que des appels systèmes compatibles.

 

L’ensemble du code permet de générer deux processus : le proxy SMS-C et le serveur d’annuaire.

 

Les binaires sont constitués d’exécutables (un pour chacun des deux processus) et de librairies dynamiques (une pour chaque module fonctionnel).

 

8.2.2  Le proxy SMS-C

 

Le proxy SMS-C constitue avec le serveur d’annuaire l’application proxy SMS-C LDAP. Il s’agit d’un processus communicant avec un SMS-Center (SMS-C) distant et le serveur d’annuaire présent sur la même machine (la machine du grand compte).
Le SMS-C sert d’intermédiaire entre le grand compte et les terminaux GSM. Il permet au grand compte l’envoi et la réception de messages SMS vers et depuis les terminaux mobiles.

 

Le traitement d’une requête au service d’annuaire par SMS est du point de vue du proxy SMS-C la suivante :

 

 

8.2.3  Le serveur d’annuaire

 

Le serveur d’annuaire permet la résolution des questions fournies par le proxy SMS-C et le formatage des réponses. Il est lié à la base oracle, image du SI VPN et à l’annuaire LDAP contenant les coordonnées téléphoniques des individus.

 

8.3  L’Extranet d’administration de l’annuaire

 

Dans le cadre de l’offre convergence, consultation d’annuaire par SMS, Cegetel Entreprises propose au client un service d’administration déportée. Il s’agit d’un site web hébergé sur la plate-forme MCIS et qui permet au client, après un mécanisme d’authentification, de pouvoir administrer son annuaire.

 

L’administration de l’annuaire consiste à gérer :
  1. l’annuaire des utilisateurs et le groupe d’administration ;
  2. les opérations d’importation et d’exportation des données de l’annuaire.

 

8.4  Conclusion

 

Les messages SMS sont beaucoup utilisés par et pour les particuliers, notamment pour signaler au particulier qu’il a un ou plusieurs messages vocaux dans sa boîte aux lettres personnelle, le SMS-C lui envoie un SMS pour le prévenir. Après les particuliers, les entreprises se servent beaucoup de messages SMS afin d’utiliser le service de consultation d’annuaire décrit dans ce chapitre.

 

Cette application m’a permit de voir et de comprendre le fonctionnement des messages SMS depuis la réception d’un message SMS jusqu’à l’envoi d’un message SMS par le SMS Center.

 

Chapitre 9
Le projet Partenaires et Prescripteurs

 

9.1  Présentation du projet

 

Cette partie présente le projet et en définit ses caractéristiques générales.

 

9.1.1  Introduction

 

Le site Extranet Partenaires et Prescripteurs a été développé par Orange Art pour la partie graphique et par Cegetel Entreprises pour la partie technique (gestion des mots de passe, mise en base de données de contenus, sécurité des pages) et le suivi de projet.

 

9.1.2  La version 1.0

 

La version 1.0 du site a été ouverte au public courant Octobre 1999 et comporte les fonctionnalités suivantes :

 

Une zone publique d’explication sur :

 

Une zone privée protégée par mot de passe qui comprend trois rubriques :
  1. Point infos :

     

  2. Au programme :

     

  3. Vendre ensemble :

     

9.1.3  Interfaces d’administration

 

Une Interface d’administration protégée par Login/Password permet à un ou plusieurs administrateurs de mettre à jour les contenus de la base de données.

 

Chaque élément peut être créé/effacé/modifié. Le mode validation permet d’avoir une prévisualisation de l’élément avant de le publier (on-line) ou pas (off-line).

 

9.2  Les technologies utilisées pour ce projet

 

Cet Extranet a été développé avec la technologie ColdFusion. Ce langage permet de réaliser des sites web dynamiques. Une description détaillée de ce langage se trouve au chapitre 4 page pageref. De plus cet Extranet utilise une base de données FoxPro. Les requêtes sur cette base de données se font en langage SQL sous le langage ColdFusion qui est très simple d’utilisation pour cela.

 

9.3  La version 2.0 de cet Extranet

 

9.3.1  Les évolutions par rapport à la version 1.0

 

Voici les évolutions qui ont été apportées :
  1. Création des correspondances Login-Password/Profil afin de personnaliser les accès ;
  2. Module permettant aux Partenaires de mettre à jour leur fiche descriptive ;
  3. Ensemble de pages permettant une approche par groupe ;
  4. Zône permettant de mettre en ligne des pages d’annonces à l’attention des prescripteurs et/ou partenaires.

 

9.3.1.1  Personalisation des accès

 

Il est alors possible de créer environ 200 individus, appartenant à un et un seul des huit profils établis.

 

9.3.1.2  Module de mise à jour de fiche Partenaires

 

Chaque fiche est protégée par login/password. Pour cela il a fallut créer une seconde table dans la base de données des administrateurs de fiches. Chaque administrateur dispose d’un login/password pour mettre la fiche de son entreprise à jour.

 

Une fois l’administrateur de fiche identifié, il peut grâce à un formulaire mettre sa fiche à jour. Dès que les modifications sont enregistrées, elles sont immédiatement visibles sur le site. De plus, l’administrateur a la possibilité de changer son login/password en ligne.

 

9.3.1.3  Gestion d’un ensemble de groupes

 

En fonction du groupe auquel il appartient, chaque Partenaire arrive sur l’Extranet en passant par une page personnalisée (partenariat Cegetel/société l). Si il le souhaite l’utilisateur peut visualiser une page d’information propre à son groupe.

 

La cinématique peut être la suivante :
Login/Password ® Page personnalisée ® Informations du groupe ® Extranet

 

Pour gérer la notion de page portail Cegetel/société l, cela a imposé de rajouter à la notion de profil existante (permettant de gérer les droits sur les documents des offres) une notion de groupe et de niveau.

 

Quatres cas peuvent se présenter :
  1. Si un utilisateur appartient à la société l et est administrateur, alors il a les droits suffisants pour mettre à jour la page de sa société.
  2. Si un utilisateur appartient à la société l et n’est pas administrateur, alors il n’a aucun droit pour mettre à jour des pages de société.
  3. Si l’utilisateur appartient à la société PetP21 et est administrateur, alors il a les droits suffisants pour mettre à jour toutes les pages des sociétés.
  4. Si un utilisateur appartient à la société PetP et n’est pas administrateur, alors il n’a aucun droit pour mettre à jour des pages de société.

 

De plus, cela implique que chaque entreprise partenaire a un utilisateur administrateur.

 

Pour gérer les groupes (Nord, Est, Rhône-Alpes, Méditerranée, Sud-Ouest, Nord-Ouest, National, RSS, etc.), un champ groupe a été rajouté. Sur la page portail de chaque utilisateur un lien lui permet d’accéder à une page spécifique à son groupe.

 

Trois cas peuvent se présenter :
  1. Si un utilisateur appartient à la société l, alors il n’a aucun droit pour mettre à jour des pages de groupe ;
  2. Si l’utilisateur appartient à la société PetP et est administrateur de groupe, alors il a les droits suffisants pour mettre à jour toutes les pages des groupes ;
  3. Si un utilisateur appartient à la société PetP et n’est pas administrateur de groupe, alors il n’a aucun droit pour mettre à jour les pages des groupes.

 

9.3.1.4  Mise en ligne de pages d’annonces

 

Il a fallut créer une nouvelle table dans la base de données pour les adresses e-mail, ainsi qu’un formulaire de création de message à envoyer.

 

Ce formulaire permet :

 

Les pages d’annonces sont créées en fonction de l’événement. Elles sont créées :

 

9.4  Conclusion

 

Le développement de cette application web m’a permit d’apprendre à réaliser des sites dynamiques avec le langage ColdFusion. J’ai également découvert et utilisé la base de données FoxPro.

 

De plus, cela m’a beaucoup apporté - d’un point de vue relationnnel - de travailler avec des collaborateurs de la direction commerciale de Cegetel.

 

Chapitre 10
Le projet Portail Intranet Mobile

 

10.1  Présentation du projet

 

Cette section présente le projet et en définit ses caractéristiques générales.

 

10.1.1  Introduction

 

Le projet PIM22 est l’offre WAP de SFR pour les Entreprises, en complément du bouquet de services VIZZAVI qui est l’offre WAP de Vivendi pour les Professionnels et le Grand Public. Cette application propose un accès WAP à tous les collaborateurs d’une entreprise. A l’aide de leur mobile WAP, les collaborateurs inscrits pourront accéder à un ou plusieurs services WAP que l’administrateur de leur entreprise aura choisi.

 

10.1.2  Description plus détaillée de cette application

 

Tout d’abord, supposons une entreprise ayant souscrite à cette application de Portail Intranet Mobile. Cette entreprise désigne un unique administrateur principal WAP. Cet administrateur principal aura tous les droits pour cette application vis à vis de tous les utilisateurs appartenant à son entreprise. Il sera également le seul interlocuteur de l’entreprise pour cette application entre les utilisateurs et Cegetel.

 

Le terme utilisateur a été mis entre guillemets, car il désigne deux types de personnes : les administrateurs délégués et les abonnés.

 

Les administrateurs délégués désignés par l’administrateur principal, peuvent - selon leurs droits donnés par l’administrateur principal - créer des groupes, des services et des abonnés. Et dans ces groupes, ces administrateurs délégués pourront affecter des services WAP et des abonnés.

 

Finalement, chaque abonné pourra avec son téléphone mobile WAP, accéder aux services WAP du groupe dans lequel il a été affecté. Sur l’écran de son mobile WAP, il verra une liste de tous ces services WAP. Et il n’aurra qu’a en sélectionner un pour y accéder.

 

10.1.3  Précisions sur le cadre de cette application

 

Ce projet permet une gestion de tous ces services WAP. Il permet l’accès à ces services à l’aide d’une page WML23 qui générera une liste de liens sur ces services.

 

Par contre, les services seront développés au bon gré de l’entreprise. Ces services ne font pas partie de ce projet. L’administrateur principal et ses administrateurs délégués sont entièrement responsables des services qu’ils donnent en accès à leurs abonnés.

 

Cette application est découpée en deux parties. Le Portail Intranet Mobile en WML. Et, la console d’administration des administrateurs délégués, des groupes, des services et des abonnés. Cette console d’administration est un Extranet sur Internet.

 

10.1.4  Position de cette application dans les réseaux WAP et Internet

 

 

Figure 10.1: Le Kiosque Mobile, le Portail Intranet Mobile, et les utilisateurs

 

 

Le téléphone mobile WAP est identifié auprès du Kiosque Mobile24 par son numéro SUBSCRIBER_ID, et auprès du Système d’Information de SFR par son numéro MISDN qui est le numéro du mobile.

 

10.2  Les développements

 

10.2.1  Choix des technologies

 

Cette section décrit chacun des choix des langages utilisés pour la réalisation de ce projet, ainsi que la ou les raisons de ces choix.

 

Toutes les données seront stockées dans une base de données Oracle, car c’est la Solution Hébergé de Cegetel.

 

Toute l’application, autant la partie Mobile que la partie console d’administration, s’articulera autour du langage PHP. Car ce langage est très puissant, et inclus des fonctions de requêtes SQL pour accéder à la base de données, très robustes.

 

La partie Mobile sera réalisée en WML qui sera généré dynamiquement par du code PHP. Car le langage WML est le langage développé par Phone.com25 : la plate-forme que notre application utilisera pour accéder aux Mobiles.

 

La console d’administration sera réalisée en langages HTML et JavaScript qui seront générés dynamiquement par du code PHP. Toutes ces pages web dynamiques seront mises en page à l’aide du langage CSS d’édition de feuilles de style. Tout cela sera édité avec le logiciel Dreamweaver et un simple éditeur de texte.

 

Voici les raisons et les avantages de tous ces choix. Le langage HTML est le langage le plus utilisé sur Internet. Le langage PHP permet de générer dynamiquement les pages web du coté serveur, alors que le langage JavaScript permet de gérer et valider les pages web et les formulaires du coté client. Les feuilles de style CSS permettent de mettre en page tout le site web de façon global.

 

La console d’administration a été réalisée à l’aide de modèles gérés par le logiciel Dreamweaver. L’avantage est que pour modifier une partie identique du code, comme les entêtes et les pieds de page, de toutes les pages qui suivent un même modèle, il suffit de mettre à jour ce modèle, et toutes les pages sont mise à jour automatiquement par le logiciel Dreamweaver.

 

Les autres petits détails de ce logiciel, Dreamweaver, qui simplifient beaucoup la vie du programmeur, et donc lui font gagner du temps, sont décrit dans le chapitre 5 à la page pageref.

 

La communication entre l’application et le Kiosque Mobile26 est entièrement sécurisée par le système de certification SSL27. Les deux cotés sont autentifiés : l’application WML est autentifiée devant la plate-forme UP, et réciproquement, la plate-forme UP est autentifiée devant l’application WML. De plus, il y a une autentification entre la plate-forme UP et le mobile WAP, mais cette autentification ne fait pas partie de ce projet.

 

Le serveur web est un serveur Apache couplé avec la librairie OpenSSL. Cette solution est la plus simple et la plus stable pour mettre en place un accès sécurisé et performant par SSL à un serveur web.

 

10.2.2  Le Portail Intranet en WML

 

10.2.2.1  Description

 

Comme cela a été dit dans la section 10.2, le portail Intranet est programmé en langage WML. Ces pages WML peuvent être testées à l’aide de l’émulateur de mobiles WAP.

 

10.2.2.2  Le simulateur WML du Kiosque Mobile

 

Un émulateur des mobiles WAP supportés par le Kiosque Mobile est fournit dans le SDK28 du Kiosque Mobile. Ce SDK est distribué sur le site web de Phone.com.

 

 

 
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
          "http://www.wapforum.org/DTD/wml_1.1.xml">
<!--  PIM index  -->

<wml>
    <card>
    <p align="center">
        Liste des Services
    </p>
    <p>
        <a href="">Annuaire des Clients</a>
        <a href="">Transactions en Ligne</a>
        <a href="">Infos Commerciales</a>
        <a href="">Ventes effectu&#233;es</a>
        <a href="">Contacts E-Mail</a>
    </p>
    </card>
</wml>

Figure 10.2: Emulateur de mobiles WAP du Kiosque Mobile et le code source WML

 

 

Ce simulateur de WML permet d’émuler le comportement de plusieurs modèles de mobiles existants sur le marché de la téléphonie mobile. Le modèle sur la figure ci-dessus est un modèle généric fictif de mobile WAP.

 

10.2.2.3  L’accès aux services avec le mobile WAP

 

Pour un abonné donné, trois cas se présentent :
  1. il n’a aucun service affecté : alors l’application PIM lui retourne une page d’erreur ;
  2. il a un seul service affecté : alors l’application PIM fait immédiatement une redirection sur ce service ;
  3. il a plus d’un service affecté : alors l’application PIM lui retourne une page WML contenant une liste de tous les services WAP auxquels il a accès.

 

Toutes ces actions et ces pages sont générées dynamiquement par du code PHP. L’application génère donc des pages WML à partir d’un ensemble de modèles qui dépendent de deux paramètres : le type de mobile et l’aspect graphique/ergonomique souhaité. Par la suite, un administrateur WAP de Cegetel pourra choisir un modèle de pages WAP parmi plusieurs modèles disponibles. Tout cela sera fait en ligne sur Internet dans la console d’administration du PIM.

 

Un organigramme de l’accès à l’application PIM avec un mobile WAP est en annexe : figure B.2 page pageref.

 

10.2.2.4  La base de données Oracle

 

De nombreuses tables figurent dans cette base de données Oracle :

 

Les tables des administrateurs, des services, des groupes et des abonnés sont toutes reliées avec la table des entreprises, afin d’identifier l’appartenance de chaque entités (administrateur, service, groupe et abonné).

 

Une représentation du Modèle Physique de Données se trouve en annexe : figure B.2 page pageref.

 

10.2.3  La console d’administration du PIM

 

10.2.3.1  Description

 

Le console d’administration du Portail Intranet Mobile va permettre aux administrateurs de chaque entreprises et de Cegetel de gérer l’ensemble de l’application.

 

Cette console a été réalisée selon les chartes graphique et ergonomique de l’Extranet Client de Cegetel, et selon un schéma de principe très précis.

 

10.2.3.2  Le schéma de principe de la console

 

A chacune des tables Oracle décrites à la section 10.2.2.4 correspond une rubrique dans la console d’administration.

 

Toutes ces rubriques sont construites selon le même canevas : une page principale dans laquelle figure un tableau contenant une liste de toutes les entités du type choisi (e.g. type service, type abonné), ainsi que des informations sur chaque entité. Tous ces affichages se font selon les droits que l’administrateur qui consulte ces données, a sur chacune de ces données.

 

Alors qu’un administrateur Cegetel a tous les droits sur toutes les rubriques de toutes les entreprises - mais néanmoins selon différents profiles de droits -, un administrateur d’entreprise n’a des droits que sur les rubriques suivantes qui concernent son entreprise, également selon différents profiles de droits :

 

Le schéma de principe de la console d’administration se trouve en annexe : figure B.2 page pageref

 

10.2.3.3  Développements sous le logiciel Dreamweaver 3

 

Le logicile Dreamweaver offre de très nombreux outils pour le développement d’applications web. C’est pour cela qu’il s’est révélé être indispensable pour le développement de l’application du Portail Intranet Mobile.

 

Il a été très utile pour la gestion de modèles et de librairies en HTML. Un modèle étant un canevas fixe pour la totalité d’une page web, avec des zônes éditables. Alors qu’une librairie est un bloc de code HTML qui est dupliqué à l’identique dans un grand nombre de pages web.

 

Une description plus complète de ce logiciel est faite au chapitre 5 page pageref.

 

Une capture d’écran du logiciel Dreamweaver, en plein développement du projet PIM, se trouve à la figure 5.3 page pageref.

 

10.2.3.4  Les librairies en JavaScript et en PHP

 

De nombreuses librairies ont été faites en JavaScript et en PHP.

 

La librairie en JavaScript à deux rôles :

 

Les librairies en PHP ont plusieurs rôles :

 

10.3  Conclusion

 

Je pense, qu’il ne faut pas voir la technologie WAP comme Internet sur les mobiles, car ce n’est pas avec un écran de trois à quatres lignes en noir et blanc que l’on pourra faire des portails de promotion commerciale d’une entreprise par exemple. Il faut plutôt voir la technologie WAP comme un ensemble de services accessibles de n’importe où depuis son mobile, comme la bourse, la météo, l’annuaire téléphonique, etc.

 

Bien que le langage WML soit très restreint devant tous les autres langages pour Internet, il reste quand même assez performant. Par exemple, grâce à la possibilité d’envoyer de l’information depuis son téléphone mobile sur un serveur distant à l’aide d’un formulaire dans lequel il est possible de saisir du texte et des valeurs numériques comme dans un formulaire sur Internet. Bien sûr, étant donné que le clavier de la plus part des téléphones mobiles actuels est constitué d’un pavé numérique et de quelques touches de fonction, il est préférable de limiter toutes ces possibilités à une interface uniquement numérique.

 

Ce projet est donc très intéressant pour ma formation d’ingénieur. D’une part, car il fait appel aux dernières évolutions en matière de technologie de téléphonie mobile. Et d’autre part, car il m’a permit de découvrir de nouvelles technologies de développement telles que le langage PHP et le langage WML spécifique aux téléphones mobiles WAP.

 

Bilan du PFE

Ce stage de fin d’études à été très bénéfique sur plusieurs points : personel, professionel et relationel. D’un point de vue personnel, je me suis parfaitement épanoui dans ce travail de développement Internet/Intranet : j’ai trouvé ma vocation. D’un point de vue professionel, j’ai beaucoup appris grâce au savoir faire de Cegetel/Interliant en m’appuyant beaucoup sur les bases que j’ai acquises à l’ENSEA. Et d’un point de vue relationnel, je me suis parfaitement intégré à l’équipe et au service ingénierie de l’Activité Internet de Interliant France.

 


Partie 4
Les Annexes


 

Annexe A
Captures d’écran

 

A.1  Projet Annuaire d’Entreprises par SMS

 

La console d’administration de l’annuaire d’entreprises a été entièrement réalisée avec la technologie MCIS, et tourne sous une plate-forme Windows NT. Voici, quelques captures d’écran de la partie visible sur Internet.

 

 


Figure A.1: Console d’administration de l’annuaire d’entreprises par SMS

 

 

Cette console d’administration est accessible par Login/Password.

 

A.2  Projet Partenaires et Prescripteurs

 

Ces pages web sont actuellement en ligne sur le portail Internet de Cegetel Entreprises :
http://www.cegetel-entreprises.fr

 

 


Figure A.2: Console d’administration (en haut à gauche) et Portail des Partenaires et Prescripteurs

 

 

La partie Partenaires et Prescripteurs est un Extranet. Elle est donc accessible par Login/Password.

 

A.3  Projet Portail Intranet Mobile

 

Le projet étant en cours de réalisation lors de la capture de ces écrans de la console d’administration du Portail Intranet Mobile, ces représentations d’écrans seront amenées à être modifiées jusqu’à la mise en production du site. De plus, les contenus de ces pages web sont utilisés à des fins de débogage.

 

 


Figure A.3: Console d’administration du Portail Intranet Mobile

 

 

Comme on peut le constater visuellement, toutes ces pages web ont une certaine homogénéïté entre elles. Elles suivent toutes les chartes graphique et ergonomique des sites web de Cegetel.

 

Annexe B
Graphiques synoptiques

 

B.1  Projet Annuaire d’Entreprises par SMS

 

Voici le schéma de principe de l’application de consultation d’annuaire d’entreprises par messages SMS. D’une part, le SMS Center envoie les messages SMS destinées à l’application de consultation d’annuaire. Cette dernière (processus Proxy SMS C) traite le message. Puis, elle génère un nouveau message SMS contenant les coordonnées de la personne recherchée, et l’envoie à son destinataire. D’autre part, l’annuaire LDAP peut être mise à jour, sur Internet, par la console d’administration de cette application.

 

 

Figure B.1: Composants intervenants dans le service de consultation d’annuaire par SMS

 

 

B.2  Projet Portail Intranet Mobile

 

Afin de mieux comprendre l’organigramme ci-dessous, il peut être utile de se référer à la figure 10.1.4 page pageref.

 

 

Figure B.2: Organigramme des accès WAP

 

 

Lorsque le mobile est parfaitement identifié par ses numéros MSISDN et SUBSCRIBER_ID, l’application renvoie au mobile soit une page WML d’erreur si l’abonné n’a pas de service, soit un lien direct sur le service si celui-ci est unique, soit une page WML qui contient une liste de tous les services accessibles par l’abonné.

 

 

Figure B.3: Modèle Physique de Données de la base Oracle

 

 

L’accès à la console d’administration du Portail Intranet Mobile se fait par une page  classique  de login où il faut entrer le code titulaire de l’entreprise, son login d’administrateur et son mot de passe. Puis, on arrive sur une page d’accueil à partir de laquelle on peut accéder à toutes les autres rubriques de gestion : des services, des groupes, des abonnés, et ainsi que sur une page de statistiques.

 

 

Figure B.4: Schéma de principe des différentes pages web du site

 

 

Voici le plan du site tel qu’il apparait sous le logiciel Dreamweaver. On retrouve dans ce plan, toutes les rubriques décrites ci-dessus.

 

 

Figure B.5: Plan du site web : l’administration du Portail Intranet Mobile

 

 

Annexe C
Exemples de codes source

 

C.1  Le langage CFML - ColdFusion Markup Language

<!--- logo path : c.f. dans "/un_chemin_quelque_part_dans_le_cyber_espace/une_page.cfm" --->
<cfset logo_path="/un_autre_chemin_quelque_part_dans_le_cyber_espace/">

<!--- "’" = "#CHR(146)#" --->
<cfset defaut_entete1="ADMINISTRATEURS">
<cfset defaut_entete2="Interlocuteurs">
<cfset defaut_entete3="Outils d#CHR(146)#aide à la vente">
<cfset defaut_entete4="Actions conjointes">
<cfset defaut_entete5="Suivi des projets">
<cfset defaut_entete6="Statut du Partenariat">
<cfset defaut_entete7="Fiche d#CHR(146)#identité Partenaire">

<cfquery name="prod" datasource="entreprises" dbtype="ODBC">
    SELECT * FROM table1
</cfquery>

<cfif parameterexists(url.modify)>

    <cfif form.requete neq "">
        <cfset  filename="#Listlast(requete,’\’)#">
    <cfelse>
        <cfset  filename="#form.LOGO_PART_2#">
    </cfif>

    <cfif form.LOGO_PART neq "">
        <cffile action="UPLOAD"  filefield="LOGO_PART"
                destination="#logo_path#" nameconflict="OVERWRITE" mode="644">
    </cfif>

    <CFQUERY NAME="" DATASOURCE="entreprises">
        UPDATE    table2
        SET       RS_PART=’#form.rs_PART#’, PART_PART=’#form.PART_PART#’, LOGO_PART=’#filename#’
        WHERE     (ID_PART = #url.modify#)
    </CFQUERY>

    <HTML>
    <HEAD><TITLE>Partenaire - Entry Action</TITLE></HEAD>
    <BODY bgcolor="ffffff">
    <BR><BR><BR>
    <CENTER>
    <FONT SIZE=+1 FACE="Helvetica, Arial" COLOR=555555>
      <B>Modifications enregistrées</B>
    </FONT>
    </CENTER>
    </BODY></HTML>

<cfelseif parameterexists(url.valid_id)>

    <cfif #url.action# eq 1>
        <CFQUERY NAME="desactive" DATASOURCE="entreprises">
            UPDATE      table2
            SET         ETAT_PART=’0’
            WHERE       (ID_PART = #url.valid_id#)
        </CFQUERY>
    <cfelse>
        <CFQUERY NAME="active" DATASOURCE="entreprises">
            UPDATE      table2
            SET         ETAT_PART=’1’
            WHERE       (ID_PART = #url.valid_id#)
        </CFQUERY>
    </cfif>
    <cflocation url="admin_listParten.cfm" addtoken="No">

<cfelseif parameterexists(url.delete_id)>

    <!--- supprimer numero dans la liste PART_PROD --->

    <cfquery name="produits" datasource="entreprises" dbtype="ODBC">
        SELECT * FROM table1
    </cfquery>

    <cfquery name="logins" datasource="entreprises" dbtype="ODBC">
        SELECT * FROM table3
    </cfquery>

    <cfoutput query="produits">
    <cfif find("#url.delete_id#","#PART_PROD#")>
      <cfset part = "">
      <cfloop index="j" from="1" to="#ListLen(’#PART_PROD#’,’,’)#" step="1">
      <cfif #ListGetAt("#PART_PROD#",j,",")# neq "#url.delete_id#">
      <cfset part = "#part#,#ListGetAt("#PART_PROD#",j,",")#">
      </cfif>
      </cfloop>
      <CFQUERY NAME="" DATASOURCE="entreprises">
        UPDATE      table1
        SET         PART_PROD=’#PART#’
        WHERE       (ID_PROD = #ID_PROD#)
      </CFQUERY>
    </cfif>
    </cfoutput>

    <cfoutput query="logins">
    <cfif find("#url.delete_id#","#SOCIETE#")>
      <CFQUERY NAME="" DATASOURCE="entreprises">
        UPDATE      table3
        SET         SOCIETE=’’
        WHERE       (ID_LOG = #ID_LOG#)
      </CFQUERY>
    </cfif>
    </cfoutput>

    <CFQUERY NAME="" DATASOURCE="entreprises">
        DELETE FROM table2
        WHERE       (ID_PART = #url.delete_id#)
    </CFQUERY>

    <HTML>
    <BODY BGCOLOR=FFFFFF>
    <BR><BR><BR>
    <CENTER>
    <FONT SIZE=+1 FACE="Helvetica, Arial" COLOR="FF0000">
      <B>Votre société a été supprimé avec succès.</B>
    </FONT>
    </CENTER>
    </BODY></HTML>

<cfelse>

    <HTML>
    <HEAD><TITLE>Partenaire - Entry Action</TITLE></HEAD>
    <BODY bgcolor="ffffff">

    <cfset  filename=#Listlast(requete,’\’)#>

    <cfif form.requete neq "">
        <cffile action="UPLOAD"
                filefield="LOGO_PART"
                destination="#logo_path#"
                nameconflict="OVERWRITE"
                accept="image/gif, image/jpeg, image/png"
                mode="644">
    </cfif>

    <CFQUERY NAME="" DATASOURCE="entreprises">
        INSERT INTO table2 ( ID_PART, RS_PART, ETAT_PART, PART_PART, LOGO_PART,
                             ENTETE1, ENTETE2, ENTETE3, ENTETE4, ENTETE5, ENTETE6, ENTETE7)
        VALUES (#form.ID_PART#, ’#form.RS_PART#’, ’#form.ETAT_PART#’, ’#form.PART_PART#’,
               ’#filename#’, "#defaut_entete1#", "#defaut_entete2#", "#defaut_entete3#",
               "#defaut_entete4#", "#defaut_entete5#", "#defaut_entete6#", "#defaut_entete7#")
    </CFQUERY>

    <BR><BR><BR>
    <CENTER>
    <FONT SIZE="+1" FACE="Helvetica, Arial" COLOR="#555555">
      <B>Nouvelle société enregistré.</B>
    </FONT>
    </CENTER>
    </BODY></HTML>

</cfif>

 

Voici une partie du code source d’une des pages ColdFusion de l’application web « Partenaires et Prescripteurs ».

 

C.2  Le langage WML - Wireless Application Protocol

<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
          "http://www.wapforum.org/DTD/wml_1.1.xml">
<!--  PIM index  -->

<wml>
    <card>
    <p align="center">
        Liste des Services
    </p>
    <p>
        <a href="">Annuaire des Clients</a>
        <a href="">Transactions en Ligne</a>
        <a href="">Infos Commerciales</a>
        <a href="">Ventes effectu&#233;es</a>
        <a href="">Contacts E-Mail</a>
    </p>
    </card>
</wml>

 

Petite description des langages de balisage.
Le langage HTML29 est un langage de balisage30. Le langage XML31 est la nouvelle norme de langage de balisage. Tous les nouveaux langages de balisage sont et seront basés sur le langage XML. De plus, tous les autres langages sont voués à disparaître à moyen/long terme. Même le langage HTML va disparaître : le W3C32 a redéfinit, le 26 janvier 2000, le langage HTML 4.01 sous le nom de XHTML33 1.0. Ce dernier suit parfaitement toutes les régles de syntax et de construction qui sont spécifiées dans un fichier DTD34 du langage XML sur lequel il est basé. Tous ces nouveaux langages de balisage sont beaucoup plus rigoureux que le langage HTML.

 

Le WML est, donc, un langage de balisage comme le langage HTML. Ce langage, le WML, est basé sur le langage XML. La définition de la syntax et des règles de construction se trouve dans un fichier DTD propre à ce langage. Bien sûr, comme les fichiers WML devront être downloader35 sur un mobile via le protocol WAP qui est limité en bande passante, ces fichiers sont de petites tailles. Pour cela le langage WML est simpliste mais puissant.

 

Exemple du code source de la capture d’écran 28 page pageref.

 

C.3  Le langage PHP - Personal Home Page

<html><!-- #BeginTemplate "/Templates/valider.dwt" -->
<?php
  require("util.php");
  require("session.php");
  init($connexion);
  // Initialisation de la session pour la page
  session_check_page();
?>
<!-- #BeginEditable "php_script_1" -->
<?php
  require("entreprise.php");
?>
<!-- #EndEditable -->

<head>
<!-- #BeginEditable "title" -->
<title>entreprises > valider modifier</title>
<!-- #EndEditable -->
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript" src="../scripts/lib.js"></script>
<!-- #BeginEditable "js_script_2" -->
<script language="JavaScript">
<!--
/* code here */
//-->
</script>
<!-- #EndEditable -->
</head>


<body bgcolor="#FFFFFF">

<!-- #BeginEditable "php_script_2" -->
<?php

	$retour = modifier_client($hidCodeTitulaire,$txtDenominationSociale,
			  $chkCertificatClient!=""?1:0,$chkDnDelete!=""?"DN_BLANK":"");

	$modifierOk = false;
	switch ($retour) {
	case 0 :
		$modifierOk = true;
		break;
	case 1 :
		$msg = "Echec de la modification !";
		break;
	case 2 :
		$msg = "Ce code titulaire n’existe pas !";
		break;
	case 3 : // Parametres incorrects
		$msg = "Echec de la modification !";
		break;
	default :
		$msg = "Echec de la modification !";
	}

	if ($modifierOk) {
		?>
		<script language="JavaScript">
		<!--
//			window.alert("L’entreprise a bien été modifiée.");
		//-->
		</script>
		<?php
		ocirollback($connexion);
	} else {
		?>
		<script language="JavaScript">
		<!--
			window.alert("<?php print($msg); ?>");
		//-->
		</script>
		<?php
		ocirollback($connexion);
	}

?>
<!-- #EndEditable -->
<!-- #BeginEditable "js_script_1" -->
<script language="JavaScript">
<!--
  multilink2(’section_entreprises.php’,’section’,’rubrique_entreprises.php’,’main’);
//-->
</script>
<!-- #EndEditable -->

</body>
<?php
  finit($connexion);
?>
<!-- #EndTemplate --></html>

 

Le code PHP se trouve inclut dans un fichier HTML d’extension PHP. Il commence par la balise <?php et se termine par la balise ?> .

 

Voici le code source d’une des pages PHP de la console d’administration du  Portail Intranet Mobile . Ce source contient du code HTML, du code JavaScript et du code PHP. Pour mieux comprendre ce fichier source, il faut garder à l’esprit que le langage PHP est exécuté du coté serveur, alors que les langages HTML et JavaScript sont exécutés du coté client.

 

Glossaire

ASP Active Server Page
ASP Application Service Provider
CFML ColdFusion Markup Language
CSS Cascading Style Sheet
FTP File Transfer Protocol
GSM Global System for Mobile communication
HTML HyperText Markup Language
HTTP HyperText Transfer Protocol
IP Internet Protocol
IPC Inter Process Communication
ISDN Integrated Service Digital Network
ISO International Standard Organization
KM Kiosque Mobile
LDAP Lightweight Directory Access Protocol
LDIF LDAP Data Interchange Format
MCIS Microsoft Commercial Internet System
MSISDN Mobile Station ISDN
PNP Plan de Numérotation Privé
SDK Software Development Kit
SI Système d’Informations
SMS Short Message Service
SMS-C SMS Center
SQL Standard Query Language
SSL Security Socket Layer
UP Unwired Planet
URL Uniform Resource Locator
VPN Virtual Private Network
VPN ID VPN IDentificateur
W3C World Wide Web Consortium
WAP Wireless Application Protocol
WML Wireless Markup Language
WWW World Wide Web
XHTML eXtensible HyperText Markup Language
XML eXtensible Markup Language

 

Liste des figures

 

    1.1  Organigramme des financements et des actifs de @Viso

 

    2.1  Les deux pôles de Cegetel : le Grand Public  et les Entreprises

 

    4.1  Schéma de principe du fonctionnement d’une application ColdFusion

 

    5.1  Dreamweaver 3 - Développement du projet WAP

 

    10.1  Le Kiosque Mobile, le Portail Intranet Mobile, et les utilisateurs
    10.2  Emulateur de mobiles WAP du Kiosque Mobile et le code source WML

 

    A.1  Console d’administration de l’annuaire d’entreprises par SMS
    A.2  Console d’administration (en haut à gauche) et Portail des Partenaires et Prescripteurs
    A.3  Console d’administration du Portail Intranet Mobile

 

    B.1  Composants intervenants dans le service de consultation d’annuaire par SMS
    B.2  Organigramme des accès WAP
    B.3  Modèle Physique de Données de la base Oracle
    B.4  Schéma de principe des différentes pages web du site
    B.5  Plan du site web : l’administration du Portail Intranet Mobile

 

Liste des tableaux

 

    1  Planning des projets (depuis le mois de février 2000)

 

    2.1  Les chiffres clés
    2.2  Chiffre d’Affaires (en milliards de francs)
    2.3  Investissement Technologique (en milliards de francs)

 

Bibliographie

[1] A.  ABDELLATIF, M.  LIMAME, and A.  ZEROUAL. Oracle 7 - Langages - Architecture - Administration. Eyrolles, 1994.
[2] Allaire Corporation. Administering ColdFusion Server. ColdFusion 4.0.1 for Windows NT, Windows 95/98, and Solaris.
[3] Allaire Corporation. CFML Language Reference. ColdFusion 4.0.1 for Windows NT, Windows 95/98, and Solaris.
[4] Allaire Corporation. Developing Web Applications with ColdFusion. ColdFusion 4.0.1 for Windows NT, Windows 95/98, and Solaris.
[5] Allaire Corporation. Getting Started with ColdFusion. ColdFusion 4.0.1 for Windows NT, Windows 95/98, and Solaris.
[6] Leon ATKINSON. Programmation en PHP. Référence. CampusPress, 1999.
[7] Joe CASAD, Wayne DALTON, Steven TATE, and Keith BRUNO. Préparation au MCSE - Windows NT 4 - Server et Workstation. Simon & Schuster Macmillan (France), 1997.
[8] Didier DELéGLISE. Programmer ORACLE version 6 & 7. Eyrolles, 1994.
[9] Michel DREYFUS. JavaScript et JScript. Mega Livre. Sybex, 1999.
[10] Ben FORTA. Allaire ColdFusion 4.0. Référence. CampusPress, mars 2000. Création d’application web performantes - Solution e-business.
[11] B.  FRANCIS. Active Server Pages 2.0. Solutions développeurs. Eyrolles, 1999.
[12] Scot HILLIER and Daniel MEZICK. Programmer Active Server Pages. Collection Programmation. Microsoft Press, 1998. Adapté de l’anglais par Gilles MOURIER.
[13] Timothy A. HOWES, PH.D., Mark C. SMITH, and Gordon S. GOOD. Understanding and Deploying LDAP Directory Services. Macmillan Network Architecture and Development Series. Macmillan Technical Publishing, 1999.
[14] Michael MONCUR. JavaScript 1.3. Le tout en poche. CampusPress France, Paris, 1999.
[15] Simon NORTH and Paul HERMANS. XML. Le Programmeur. CampusPress, 1999.
[16] Phone.com, Inc., http://www.phone.com. WML Language Reference - Version 1.1, july 1999. Manuel de Référence.
[17] World Wide Web Consortium, http://www.w3.org/TR/REC-CSS2/. Cascading Style Sheets, Level 2 - CSS2 Specification, May 1998. Language Reference.
[18] World Wide Web Consortium, http://www.w3.org/TR/html401/. HyperText Markup Language 4 - HTML 4.01 Specification, December 1999. Language Reference.

Footnotes :

1Ecole Nationale Supérieure de l’Electronique et de ses Applications
2Pourquoi deux entreprises ? Cf. les explications à la section 1.1 page pageref
3ASP : Application Service Provider
4ColdFusion est un logiciel de Allaire Corporation.
5HTML : HyperText Markup Language
6XML : eXtensible Markup Language
7HTTP : HyperText Transfer Protocol (protocole de transfert de pages web)
8CFML : ColdFusion Markup Language (le langage à base de tags de ColdFusion)
9SMTP : Simple Mail Transfer Protocol (protocole standard d’envoi d’E-Mail)
10Application Program Interface : Interface pour communiquer avec une application
11Dreamweaver est un logiciel de Macromedia.
12Dreamweaver signifie en anglais tisserant de rêve en faisant référence à la toile du World Wide Web    ;-)
13WYSIWYG : What You See Is What You Get (vous faites ce que vous voyez)
14Recommandation - Recommendation en anglais - est une norme reconnue par tous les membres du W3C -  World Wide Web Consortium  - http://www.w3.org
15l’offre convergence de Cegetel permet d’associer les numéros (de téléphones) longs avec les numéros courts
16PNP : Plan de Numérotation Privé
17SI VPN : Système d’Informations du Virtual Private Network
18EMI : External Machine Interface
19VPN ID : Virtual Private Network IDentificateur
20IPC : Inter Process Communication
21PetP : Partenaires et Prescripteurs
22PIM : Portail Intranet Mobile
23Wireless Markup Language : langage utilisé pour cette application WAP
24Kiosque Mobile : plate-forme de liaison entre les connexions WAP et les connexions HTTPS
25Phone.com : http://www.phone.com
26Le Kiosque Mobile est la plate-forme qui fait le lien entre Internet et le WAP
27Security Socket Layer
28SDK : Software Development Kit
29HTML : HyperText Markup Language
30Exemple de balise : <b>Hello World !</b>
31XML : eXtensible Markup Language
32W3C : World Wide Web Consortium http://www.w3.org
33XHTML : eXtensible HyperText Markup Language
34DTD : Document Type Definition
35downloader : télécharger sur le client


©1997–2009 David CARELLA, http://david.carella.free.fr/