Jump to content
Guest HAVOC

[Stage] Developpement application pour Linux

Recommended Posts

Guest HAVOC

Salutations,

 

Dans le cadre d'un stage effectué auprès d'une société algérienne, je dois concevoir une application chargée de vérifier la détection du matériel en post-installation.

 

Cette application devra répertorier les composants matériels de la machine et transférer ces données sur un serveur sur lequel il y aura interrogation d'une base de données dans le but de trouver une solution à l'installation des composants qui n'ont pas été pris en charge.

 

J'ai déjà étudié un peu le sujet, j'ai quelques idées pour la conception de l'application mais j'aimerais bien avoir les votre aussi.

 

Vous envisagez qu'elle méthode ? langage ? ...etc.

 

Je posterai un peu plus tard "le plus d'attaque" auquel j'ai réfléchi.

Share this post


Link to post
Share on other sites

1- l'application est diviser en deux partie client partie serveur.

donc on a compris qu'il faut étudier deux parties différente, chaque partie aura une étude spécial.

 

2- il faut savoir que les distro gnu/linux par defaut n'intègre pas la machine virtuel java.

donc oublies java, peut être python voir le C

 

3- il faut penser comment détecter ou savoir si un composant n'est pas pris en charge

 

4- il faut aussi penser au fichier a envoyer après le récolte des données, genre qu'elle structure qu'elle format...ect

 

5- bon courage.

Share this post


Link to post
Share on other sites
Guest HAVOC

Salut,

 

En gros voici à quoi j'ai réfléchi (j'ai pas trop passé de temps sur ça pour le moment ) :

 

1/ Stockage de l'information au format XML (avec possibilité de l'archiver).

2/ Détection du matériel en exploitant l'utilitaire lshw qui a l'avantage d'être performant et de sortir les résultats directement sous forme d'XML.

3/ Langage de programmation, j'ai pensé au python car c'est un langage objet permettant d'avoir un code court et lisible ce qui facilite la maintenance de l'application, de plus il est tout à fait adapter à la programmation sous Linux et l'échange de données avec un serveur.

J'ai aussi pensé au C mais il me semble que ce n'est pas assez pratique et mon application ne demande pas vraiment une optimisation du temps d'exécution et des ressources utilisés (elle fonctionnera ponctuellement et sa charge est faible).

 

4/ Coté serveur, j'ai pensé à une application en PHP, un langage simple et adapté à l'exploitation des bases de données.

 

5/ Pour le transfert des informations il se fera via internet directement ou l'application archivera le XML pour que l'utilisateur puisse l'envoyer via un formulaire web depuis un autre PC.

 

Il y aura un system de token pour la gestion des clients...etc.

Share this post


Link to post
Share on other sites

si je ne me trompe pas la grande partie de travail serra le point 2

ben moi je m'arrête la et je reste qu'un observateur, et peut être qui va donner quelque critiques et qui serra un Alpha testeur :D

 

sinon bon courage (الله يوفقك ويسر لك عملك)

Share this post


Link to post
Share on other sites

Salem,

 

Je verrai bien un serveur de web méthodes asynchrones en SOAP, l'échange des données se fera via XML. Un WebService développé en PHP par exemple et exploité dans une application client.

 

La communication avec l'application client sera aisée, que ce soit en C++/Java/C# ou autres, je pense que tous ces langages permettent le référencement de web service.

 

Bien sûr, le webservice coté serveur s'occupera de stocker les infos collectées sur BD, que ce soit après les avoir converti en Objet ou bien directement en XML :)

Share this post


Link to post
Share on other sites
Guest HAVOC

Je ne pense pas exploiter le protocole SOAP car il va simplement me rallonger la travail alors que je peux très bien me contenter de transmettre le fichier via HTTP et puis en extraire les informations qui m'intéresse, le PHP dispose d'un ensemble de fonctions pour traiter du XML.

 

Pour le langage j'hésite toujours, je pourrais exploiter du JAVA comme la JVM est installée mais je préfère le Python car c'est l'occasion rêvée d'apprendre ce langage (en plus d'avoir de nombreux avantages).

Share this post


Link to post
Share on other sites

Salut,

 

Pour être clair, il y a trois modules à développer:

 

1- Noyau ( python ) : qui détecte le matériel installé, en exploitant la commande lshw, puis l'exportation du résultat sous format XML -archivé-.

 

2- Une application client ( php ?? ) : pour l'envoi de données.

 

3- Une application serveur ( php ) : traitement des données reçues et l'interrogation avec la base.

 

Pour optimiser ton appli, je pense que ça sera mieux d'intégrer le deuxiéme module dans le premier.

Quand tu lances l'outil de détection, tu fais ton archive XML et tu l'envoie directement au serveur.

 

Voilà.

 

Bon courage.

Share this post


Link to post
Share on other sites
Guest HAVOC
Salut,

 

Pour être clair, il y a trois modules à développer:

 

1- Noyau ( python ) : qui détecte le matériel installé, en exploitant la commande lshw, puis l'exportation du résultat sous format XML -archivé-.

 

2- Une application client ( php ?? ) : pour l'envoi de données.

 

3- Une application serveur ( php ) : traitement des données reçues et l'interrogation avec la base.

 

Pour optimiser ton appli, je pense que ça sera mieux d'intégrer le deuxiéme module dans le premier.

Quand tu lances l'outil de détection, tu fais ton archive XML et tu l'envoie directement au serveur.

 

Voilà.

 

Bon courage.

 

La partie client sera entièrement en python, elle se chargera d'appeler l'application lshw, de générer un ticket client et d'envoyer l'xml vers le serveur. Le GUI sera en Python+GTK ou Python+QT... je ne suis pas encore décidé (faut que je sache si ça sera Gnome/XFCE ou KDE l'environnement principal de la distribution).

 

Coté serveur il y aura une application codée en PHP qui lira le contenu du fichier xml, comparera la liste du matériel client avec une base de données pour finalement envoyer un mail au client contenant un script d'auto-installation du matériel non détecté sur sa machine.

Share this post


Link to post
Share on other sites

Salem,

 

La partie client sera entièrement en python, elle se chargera d'appeler l'application lshw, de générer un ticket client et d'envoyer l'xml vers le serveur. Le GUI sera en Python+GTK ou Python+QT... je ne suis pas encore décidé (faut que je sache si ça sera Gnome/XFCE ou KDE l'environnement principal de la distribution).

 

Coté serveur il y aura une application codée en PHP qui lira le contenu du fichier xml, comparera la liste du matériel client avec une base de données pour finalement envoyer un mail au client contenant un script d'auto-installation du matériel non détecté sur sa machine.

 

Top l'idée d'envoyer le script par mail :)

 

Allez bonne courage pour la suite.

Edited by mouradski

Share this post


Link to post
Share on other sites
Guest HAVOC
Salem,

 

 

 

Top l'idée d'envoyer le script par mail :)

 

Allez bonne courage pour la suite.

 

C'est la suggestion du responsable de la boite chez qui je fais le stage, personnellement, je vais essayer d'améliorer cette fonction... par exemple en faisait transférer le script d'installation du matériel entre le serveur et le client de manière transparente quand y'a le net sur la machine bien entendu.

Share this post


Link to post
Share on other sites
je vais essayer d'améliorer cette fonction... par exemple en faisait transférer le script d'installation du matériel entre le serveur et le client de manière transparente quand y'a le net sur la machine bien entendu.

 

N'oublie pas d'assurer l'intégrité de l'échange alors :)

C'est très intéressant, bon courage

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.




  • Posts

    • produit Vendu .  
    • L'antivirus ,Le pare feu ou le fichier Hosts  peuvent aussi te bloquer l'accès au modem. -Débranche le câble qui relie le modem au filtre adsl ensuite désactive temporairement l'antivirus et/ou tout pare feu  et tente la connexion à 192.168.1.1 -Si la connexion au modem ne s'établit pas il faut en tant qu"administrateur ouvrir le fichier hosts (sans extension) qui se trouve dans C:\Windows\System32\drivers\etc Ce fichier s'ouvre comme un fichier.txt Il doit y avoir la ligne suivante : 127.0.0.1  localhost s'il y'a d'autres lignes en dessous qui commencent par 127.0.0.1 et que tu n'as pas ajouté il faut les supprimer Redémarre le pc  et vérifie si tu peux te connecter au modem
    • Salut Il semble que sur ce modem il n'est pas possible de configurer le Qos en choisissant le débit maximal pour chaque appareil connecté. J'ai trouvé dans un forum anglais comment affecter un débit unique et égal  pour tous les appareils connectés. je cite (traduction google): "ÉTAPE 1: Connectez-vous à la page du modem en donnant votre nom d'utilisateur et votre mot de passe. Par défaut, le nom d'utilisateur et le mot de passe sont tous les 2:   admin ÉTAPE 2: Une fois connecté, cliquez sur l'onglet "ADVANCED"  et cliquez sur "ADVANCED SETTINGS". ÉTAPE 3: Dans ADVANCED SETTINGS, vous trouverez les paramètres Advanced Wireless Settings. Par défaut, la vitesse de transmission est Auto. ÉTAPE 4: Cliquez sur le taux de transmission, cela fera tomber une liste de valeurs de 1 à +ou-300 selon l'abonnement. Ici, les valeurs sont Mbps. Choisissez la vitesse souhaitée à laquelle vous souhaitez envoyer les données vers tous les appareils. ÉTAPE 5: Par exemple, si votre vitesse de données (débit) est de 8 Mbps et que vous souhaitez limiter votre vitesse de données pour tous les appareils à 4 Mbps , changez la valeur à 4 et cliquer sur SUBMIT en fin de page. Vous pouvez maintenant tester la vitesse de votre connexion de données . Vous obtiendrez le débit de données inférieur à votre vrai."Fin de citation Donc à toi de trouver l'équilibre selon le nombre d'appareils connectés à ton modem sachant que 4 Mbps au minimum sont nécessaire pour l'iptv.
    • Et est-ce que je peux flasher le mien avec ces firmwares ? C'est aussi un routeur 
    • je ne pense pas qu'elle doit obligatoirement commencer par un 02. elle doit juste contenir 6 paires de lettres et chiffres
×
×
  • Create New...