Accéder à un dossier partagé sur le réseau avec Windows 7

Dans l’article précédent je vous avais expliqué comment partager un dossier sur un réseau avec Windows 7 en quelques clics. A présent, je vais vous montrer comment accéder à ce partage depuis un autre ordinateur sur le réseau.

Je vous recommande également la lecture des articles comment connaître le nom de son ordinateur sur le réseau et Connaître l’adresse IP de son ordinateur.

Accéder à un dossier partagé sur le réseau avec Windows 7

Avant de vous lancer, vous devez impérativement avoir le nom réseau de l’ordinateur qui partage le dossier ou bien son adresse IP.

Cliquez sur votre menu démarrer, puis, dans la partie située à gauche du bouton Arrêter dans une case marquée Rechercher les programmes et fichiers représenté avec une petite loupe, taper les informations suivantes:

\\adresse_ip\nom_du_partage
ou
\\nom_ordinateur\nom_du_partage
monter partage win 01

Bien entendu vous devrez remplacer ces informations par les vraies valeurs que vous aurez préalablement récupéré.

Le symbole \ peut être obtenu avec la combinaison de touches alt Gr (à droite de la barre d’espace) et 8 (située en haut du clavier, pas celle du pavé numérique)

Si vous voyez un dossier apparaître et qu’une fenêtre avec des icones s’ouvre lorsque vous appuyez sur entrée, c’est gagné! Vous avez accès au partage et à ce qu’il contient.

monter partage win 02

Si cela ne fonctionne pas : Assurez vous de bien avoir noté l’adresse IP ou le nom de l’ordinateur correctement. Privilégiez l’adresse IP au nom d’ordinateur. Un pare feu (firewall) peut bloquer ce type d’accès. Une configuration réseau mauvaise ou absente peut empêcher ce type d’accès. En cas de doute, faîtes appel à un technicien.

Partager un dossier sur le réseau avec Windows 7

Pour celles et ceux qui souhaitent partager des données contenues dans un dossier avec un voisin de bureau, pas besoin de coller tout ça en pièce jointe dans un mail. Je vais vous montrer comment, en quelques clics, il est possible de partager un dossier sur un réseau.

Les conditions sont tout d’abord d’être sur un réseau et d’être administrateur de sa machine. Si quelqu’un s’occupe de l’informatique dans votre société, il est peu probable que vous soyez administrateur de votre poste.

Créer un partage de dossier sur Windows 7

Ouvrez votre explorateur et rendez-vous dans le lecteur ou dossier qui contient le dossier que vous souhaitez partager.

1 : Une fois ce dossier repéré, faîtes un clic droit sur le dossier puis clic gauche sur Propriétés.

partagerdossierwindows 01

2 : Dans la fenêtre de propriétés qui vient de s’ouvrir, faîtes un cliquez sur le bouton intitulé Partager

partagerdossierwindows 02

3 : Dans la nouvelle fenêtre nommée Partage de fichiers on vous propose de choisir les utilisateurs qui pourront accéder à votre dossier partagé. Vous avez plusieurs solutions. Soit vous trouvez le compte utilisateur des personnes avec qui vous souhaitez partager ces données, soit vous choisissez Tout le monde comme ça, il n’y aura pas de jaloux. Attention, choisir Tout le monde est très permissif. Cela autorise l’accès à votre partage pour tout le monde (même les gens que vous ne souhaitez pas) donc prudence. Je vous recommande d’activer un partage seulement le temps d’échanger les données souhaitée puis le désactiver ensuite. Cela évite les oublis et les ennuis…

partagerdossierwindows 03

Attention au niveau d’autorisation que vous donnez. Inutile de donner des droits de lecture/écriture si vous ne souhaitez pas que les gens puissent écrire, modifier ou supprimer vos fichiers. L’autorisation Lire suffira amplement dans bien des cas. Une fois les utilisateurs choisis et les autorisation attribuées, vous n’avez plus qu’à cliquer sur le bouton Partager et le tour est joué.

Connaître son adresse IP sur Linux

Cet article est le premier d’une série d’articles très cours qui expliquent comment réaliser des actions sur un système Linux en ligne de commande. Vous découvrirez ainsi qu’il est possible de faire énormément de choses, bien plus qu’on ne pourrait le croire. Je reste ouvert aux suggestions d’articles et aux questions.

Dans cet article, je vais vous montrer comment obtenir l’adresse IP (ou les adresses) de votre machine Linux en ligne de commande.

Ouvrez votre terminal et tapez la commande ifconfig -a. Vous devriez obtenir un affichage comme suit:

eth0      Link encap:Ethernet  HWaddr 08:00:27:0c:2a:2a
          inet adr:192.168.20.25  Bcast:192.168.20.255  Masque:255.255.255.0
          adr inet6: fe80::a00:27ff:fe0c:2a2a/64 Scope:Lien
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:173 errors:0 dropped:0 overruns:0 frame:0
          TX packets:46 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 lg file transmission:1000
          RX bytes:18314 (17.8 KiB)  TX bytes:7177 (7.0 KiB)

lo        Link encap:Boucle locale
          inet adr:127.0.0.1  Masque:255.0.0.0
          adr inet6: ::1/128 Scope:Hôte
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:8 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 lg file transmission:0
          RX bytes:560 (560.0 B)  TX bytes:560 (560.0 B)

Si vous ne savez pas quelle valeur prendre, sachez qu’en générale l’interface réseau par défaut se nomme eth0 sur un Linux et l’adresse IP est la valeur de inet adr: soit dans le cas présent 192.168.20.25.

Connaître l’adresse IP de son ordinateur avec Windows 7

Un technicien vous demande quelle est l’adresse IP de votre ordinateur? Aouch! Vous l’aviez bien noté sur un post-it, mais il semble qu’il ait pris son envol lors de la dernière ouverture de fenêtre puisque vous ne le trouvez plus.

Allez! Point d’inquiétude, je vais vous sortir de là en quelques clics.

Cliquez sur votre menu démarrer, puis, dans la partie située à gauche du bouton Arrêter dans une case marquée Rechercher les programmes et fichiers représentée avec une petite loupe, tapez: cmd puis sur entrer.

win7 adresseip

Si tout se passe bien, un terminal de commande noir devrait apparaître à l’écran. (voir l’image ci-dessous)

Dans ce terminal, tapez la commande suivante: ipconfig et relevez la valeur de la ligne Adresse IPv4. Et voilà le tour est joué, vous pouvez à présent fermer cet hideuse fenêtre et reprendre une activité normale.

win7 adresseip 02

Connaître le nom réseau de son ordinateur avec Windows 7

Quel est le nom de votre ordinateur? Aïe! La question piège du technicien amer quand on lui dit qu’on a un problème. Ne vous inquiétez pas, dans cet article, je vais vous montrer comment on peut obtenir cette informations en quelques clics seulement.

Allez! On s’arme de courage et si tout se passe bien en trois clics nous sommes sortis d’affaire.

1er clic : Cliquez sur votre menu démarrer. (ouf!)

2eme clic : Faîte un clic droit sur Ordinateur. (houl ça se corse)

3eme clic : Cliquez ensuite sur Ordinateur et dans la fenêtre qui apparaît (voir image ci-dessous) la ligne qui nous intéresse s’intitule Nom de l’ordinateur.

win7 nom pc

Et voilà, le calvaire est terminé, vous pourrez répondre à la question de votre technicien.

Utiliser Linux sans réinstaller votre ordinateur

Linux c’est quoi ?

Linux est un système d’exploitation libre de droit. Libre de droit, ça veut dire qu’il n’appartient à personne. Il fait partie du domaine public.

D’ailleurs ce système est déposé sous la licence publique générale GNU (GPL).

Attention toutefois, même si c’est souvent le cas, cela ne rime pas automatiquement avec gratuité. Certaines distributions comme Red Hat sont payantes.

Vous devez certainement connaître des logiciels libres comme OpenOffice ou Libre Office, Firefox, Gimp, Inkscape ou encore VLC. Et ce ne sont là que quelques exemples parmi des bibliothèques entières de logiciels libres. Un système d’exploitation, c’est un ensemble de fonctionnalités qui permettent aux utilisateurs d’exploiter les capacités de leur machine. Cela peut être des utilitaires graphiques qui fonctionneront bien souvent avec des fenêtres et l’interaction de la souris, ou bien des commandes exécutées dans un terminal. Un terminal ??? Oui vous savez, ces écran noirs dans lesquels on voit les pirates taper des choses incompréhensibles à la télévision… Même si cela a été le cas pendant de nombreuses années, Linux n’est plus aujourd’hui un système exclusivement réservé à un public d’experts et de professionnels. Certains d’entre vous ont sans doute déjà utilisé des logiciels libres provenant du monde Linux sans le savoir. Sachez que vous retrouverez ces mêmes logiciels sur un système d’exploitation Linux et ils fonctionneront exactement de la même manière. En somme vous ne prenez aucun risque à essayer ce système.

De plus, je suis sûr que vous utilisez déjà Linux à votre insu. Quoi ? Oui vous monsieur ! Parfaitement madame ! Vous l’utilisez déjà et sans même le savoir. Vous possédez certainement un smartphone Androïd comme environ 44 % de la population française ? (Article sur Zdnet) Androïd est un système d’exploitation Linux remanié par les équipes de Google. (Hé oui !) Donc vous utilisez déjà Linux.

Voici quelques arguments qui devraient vous encourager à utiliser Linux:

  • Stabilité : Le serveur qui héberge ce blog n’a pas été redémarré depuis 498 jours. Il héberge de nombreux services de bases de données, d’accès distant et il exécute quotidiennement des dizaines de tâches planifiées comme des mises à jour ou encore des sauvegardes!
    • Linux doit sa stabilité à la simplicité de son architecture, mais également au savoir faire d’une armée de développeur travaillant pour la communauté.
  • Insensibilité aux virus : En effet, la plupart des virus sont développés pour Windows et même si quelques virus et autres logiciels malveillants existent aujourd’hui sur Linux, il est rare d’en attraper en navigant sur internet.
  • Gratuité : Cela va dépendre de la distribution que vous aurez choisi, mais sachez que même si vous optez pour une version payante du système, celle-ci vous coûtera toujours moins cher pour équiper votre parc que d’autres systèmes et d’autre part, vous bénéficierez sans aucun doute d’une excellent support technique qui vous assistera en cas de difficulté.
  • Documentation et support : Linux et chacun de ses élément est très bien documenté par une gigantesque communauté à l’échelle mondiale et dans toutes les langues. D’autre part, il existe des tonnes de sites techniques et de forums qui sont là pour vous porter assistance en cas de pépin ou d’incertitude.

Je ne vous ai pas convaincu ? Comme je vous comprends… Ce n’est jamais simple de remettre en cause ses habitudes, de quitter notre confort pour se lancer dans l’inconnu. Hé bien, j’ai justement pensé à vous et je vais vous proposer dans cet article des solutions pour vous permettre d’utiliser Linux sans prendre de risque, sans réinstaller tout votre ordinateur, sans rien casser. Impossible ? Non !

Utiliser Linux dans Windows avec Cygwin

Il s’agit en fait d’une bibliothèque de commandes, d’utilitaires et services propres à Linux et qui ont été portés sur Windows. Ils ont été réécris et recompilés pour fonctionner comme des exécutable Windows. En somme, Cygwin étend les capacités de votre Windows et vous permettra d’utiliser un panel important de commandes et services qui sont normalement réservés aux possesseurs de système Linux.

Le tout s’installe comme un logiciel que vous pourrez désinstaller à tout moment et ceci sans nuire au bon fonctionnement de votre PC. Vous pourrez lancer Cygwin chaque fois que vous en aurez besoin et l’éteindre à votre guise sans gêner le fonctionnement habituel de votre système Windows.

Attention! Cygwin est réservé à un public d’utilisateurs expérimentés. Ne vous attendez pas à vous retrouver avec un bel installeur pour vous guider et faire le travail pour vous ni à obtenir un bureau aussi classe que sur Ubuntu. Je l’ai particulièrement utilisé en milieu professionnel pour exécuter des batchs (scripts de commandes) UNIX sur des systèmes Windows mais également pour faire fonctionner des services de console à distance comme SSH ou de synchronisation comme RSYNC et plus occasionnellement pour compiler du code en C sur des systèmes Windows. Il s’est toujours avéré très utile et stable.

Cygwin est développé par l’équipe responsable de la distribution Red Hat Linux (http://www.redhat.com/). Une des plus anciennes distributions que je connaisse avec Debian.

Cygwin est disponible à l’adresse suivante : https://cygwin.com/

Cygwin s'installe comme un logiciel classique
Cygwin une fois lancé. Une invite de commande dans un terminal sur fond noir. La classe!

Utiliser un live-CD ou USB Ubuntu, Knoppix

Autrefois un live CD ou DVD permettait de démarrer un système d’exploitation au lancement de votre ordinateur. Aujourd’hui cette technologie existe toujours, mais il est plus intéressant d’utiliser une solution live USB qui fonctionne comme son nom l’indique à partir d’une clé ou d’un disque dur USB. La différence se fera sentir au niveau de la rapidité et de la capacité à écrire des données et une configuration utilisateur sur un support USB.

Aujourd’hui les deux distributions les plus complètes et les plus réputées au niveau des live CD sont Ubuntu et Knoppix (ces deux systèmes sont basés sur la distribution debian), mais il en existe pleins d’autres. Je vous invite à chercher Linux Live CD sur google, vous allez en avoir pour votre argent 🙂

Ces distributions sous forme de Live CD ou USB vous permettront d’exploiter Linux, ses bureaux et outils graphiques ou lignes de commandes comme si vous l’aviez installé sur votre ordinateur. Vous pouvez l’utiliser ainsi autant de fois que vous le souhaitez, c’est l’occasion de découvrir ce système petit à petit sans prendre de risque jusqu’au jour où vous franchirez le pas et l’installerez sur votre PC. Sauf si vous n’aimez pas et que vous ne souhaitez plus l’utiliser du tout.

Le live CD Ubuntu est orienté utilisateur et propose un bureau très agréable avec de nombreux logiciels de bureautique, retouche d’image et une bonne palette de commande.

Démarrage sur un live CD de Ubuntu. Choix de la langue.
Démarrage sur un live CD de Ubuntu. On vous propose de l'essayer sans l'installer.

 

Le live CD de Knoppix est orienté technique et maintenance. Il est équipé de logiciels pour partitionner, sauvegarder ou récupérer des données et comporte de nombreux logiciels et une bibliothèque de commandes impressionnantes.

écran de démarrage de Knoppix
knoppix3

 

Utiliser Linux au travers d’une émulation de PC : VirtualBox

Virtualbox est un logiciel libre sous licence GPL qui propose d’émuler (simuler) logiciellement le fonctionnement d’un ordinateur. L’intérêt de ce type de logiciel réside dans sa capacité à faire fonctionner des systèmes d’exploitation (Windows, Mac OS, Android, Linux et autres) dans une sorte de cocon qui peut être complètement fermé pour l’isoler de votre système et réseau existant ou au contraire le relier à votre réseau et système existant pour tester son comportement.

Il existe d’autres solutions libres moins facile à utiliser comme Qemu et des solutions commerciales comme VMWare.

Les solutions de virtualisation comme VirtualBox évitent d’acheter et d’utiliser une machine physique dédiée pour vos tests, mais vous propose également de bénéficier d’une architecture virtuelle incluant des réseaux et si vous avez beaucoup de mémoire, disque et CPU plusieurs machines virtuelles. Vous pouvez ainsi monter des maquettes avec des systèmes virtuels ou enregistrer des actions sur un système d’exploitation pour faire de la documentation ou des tutoriels. Les exploitations sont nombreuses. Je m’en suis également déjà servi pour transférer des logiciels vieillissants et fonctionnant avec MS-DOS sur des ordinateurs modernes permettant ainsi d’augmenter la longévité de certaines applications au delà de celle des machines qui supportaient ces logiciels (ex: 386 ou 486).

Ainsi en utilisant VirtualBox vous pouvez vous entraîner à installer n’importe quelle distribution Linux, mais également n’importe quel autre système d’exploitation qu’il soit Windows ou Mac OS sans prendre aucun risque, sans détériorer ou modifier le fonctionnement de votre ordinateur.

Dans le cas de figure qui nous intéresse, vous allez pouvoir utiliser Linux dans votre système Windows, sans changer brusquement vos habitudes et sans risquer d’endommager votre PC. Le top quoi ! Cette solution réclame toutefois d’avoir un ordinateur assez puissant avec assez de mémoire et d’espace disque, car si on parle bien de machine virtuelle, les données ne le sont pas et il faut des supports physiques pour les stocker et les traiter.

Fenêtre de gestion des machines virtuelles sur VirtualBox
Un bureau Ubuntu dans une machine virtuelle
Un bureau Ubuntu dans une machine virtuelle
Bureau Ubuntu

Liens et références

Voici une petite liste de liens en rapport avec l’article traité. Vous trouverez matière à vous renseigner sur les distributions Linux soulevées dans cet article, mais aussi certains logiciels.

Crédits

Image logo tux (pingouin) : http://fr.wikipedia.org/wiki/Tux

Une ligne téléphonique pour 1.20 € TTC par mois

Même si ce titre racoleur vous semble trop beau pour être honnête, je vous invite à la lecture de ces quelques lignes ci-dessous qui pourraient bien vous donner matière à réfléchir et à faire des économies dans un avenir proche.

Petit rappel

Dans un article précédent (Visite guidée de la téléphonie) nous avions traité de la téléphonie dans son ensemble et vu les différent mode de téléphonie qui se présentent aujourd’hui à l’homme moderne, économe et pressé que nous sommes.

Depuis 2013, j’utilise une ligne téléphonique VoIP qui me coûte 1.20 € par mois et j’en suis satisfait. Je vais vous expliquer pourquoi et vous montrer toutes les possibilité offertes par cette technologie.

Pour ce prix à quoi ai-je le droit ?

Un numéro géographique (01 02 03 04 05) ou un numéro débutant par 09

Étant de la région lyonnaise, j’ai choisi d’avoir un numéro de téléphone commençant par 04, mais j’aurai tout aussi bien pu choisir un numéro débutant par 01 ou 09. Avoir un numéro géographique dans la région où on travaille rassure les gens. Avoir un numéro en 01 donne l’impression qu’on se trouve à l’autre bout du pays et la proximité de ses prestataires rassure. Un numéro en 09 donne l’impression qu’on appelle avec sa box personnelle et ne donne pas d’information sur la position géographique de son propriétaire.

Un numéro surtaxé en 08 pour quelques euros de plus

Vous apportez de la valeur ajouté à travers les appels que vous recevez, faîtes payer les appelants.

Des appels illimités vers les fixes de France et de 40 pays

Alors oui, mais l’illimité, le vrai, n’existe pas et voici les conditions écrites en petites ligne en bas de l’offre chez OVH.

Inclus vers 99 numéros différents par ligne et par mois, au-delà les appels sont facturés à la seconde

Dans la limite de 60 minutes de communication par appel, au-delà le temps de communication supplémentaire est facturé à la seconde

Ça veut dire que je peux téléphoner de manière illimité à condition que je ne dépasse pas 60 minutes de communication par appel. Je propose donc à mes contacts de raccrocher et de les rappeler au delà de 50 minutes d’appel lorsque c’est moi qui téléphone. Cela remet le compteur à zéro et ainsi, mon appel n’est pas facturé. EASY !

D’autre part, je suis encore loin d’appeler 99 numéros différents par mois. Je ne suis pas un centre d’appel. Bon, l’offre de base ne prend pas en compte les appels vers les téléphones mobiles, mais pour quelques euros de plus, il est possible de passer à l’offre supérieur et d’inclure les mobiles en illimité à raison de 80 numéros par mois.

La portabilité de mon numéro

Vous possédez déjà un numéro de téléphone que vous utilisez et vous ne souhaitez pas en changer ? La portabilité est là pour vous. Vous pouvez faire la demande auprès de l’opérateur SIP pour que votre numéro bien aimé soit désormais utilisable chez lui. Prévoyez tout de même un délai de 7 à 10 jours pour que la bascule soit effective.

Pas d’engagement

Si le service ne correspond plus à vos attentes ou que vous n’avez plus d’utilité pour cette ligne téléphonique, rien n’est plus simple. Vous pouvez demander en ligne la résiliation de votre ligne auprès de l’opérateur. Prévoyez tout de même que votre ligne ne sera pas résiliée avant la date de votre prochaine facturation (environ 1 mois).

Une messagerie vocale en or!

J’adore ce type de messagerie vocal !

Il est possible de la personnaliser et d’enregistrer ses propres messages de répondeur et de les envoyer via un fichier MP3 ce qui permet au préalable de faire un vrai montage avec une ambiance musical en arrière plan. Bref un truc de pros réservé normalement aux grandes sociétés.

Vous pouvez également mettre un message de pré-annonce dans le cas par exemple d’un incident connu que vous êtes déjà en train de traiter. Ça permet d’informer vos contacts d’une situation et de leur montrer que vous êtes sur le coup.

Les messages laissés peuvent vous être envoyé au format mp3 par mail sur la ou les boites que vous aurez spécifié. C’est vraiment la cerise sur le gâteau, parce que ça vous permet d’une part de conserver les messages que les gens vous laisser pour les archiver ou les traiter plus tard. Mais en prime, vous pouvez en cas d’absence mettre en copie des personnes qui pourront traiter ce message à votre place ou prévenir votre contact que sa demande est prise en compte.

Le renvoi d’appel conditionnel (plusieurs options)

Simple mais efficace, le renvoi d’appel est là pour vous aider. Renvoi sur indisponibilité vers Répondeur

Si vous ne pouvez pas répondre, votre correspondant est automatiquement envoyé sur votre répondeur, un classique, mais qui permet toutefois à votre contact de laisser ses coordonnées.

Renvoi sur indisponibilité vers un autre numéro

Si vous ne pouvez pas répondre, l’appel est automatiquement envoyé vers un autre numéro (comme un standard par exemple) qui pourra répondre à votre correspondant.

Renvoi après x secondes vers Répondeur

Vous êtes occupés et vous n’avez pas décroché votre téléphone au delà de x secondes, l’appel sera automatiquement renvoyé vers votre répondeur.Renvoi après x secondes vers un autre numéro

Vous êtes occupés et vous n’avez pas décroché votre téléphone au delà de x secondes, l’appel sera automatiquement redirigé vers un autre numéro comme celui d’un standard téléphonique ou celui d’un de vos collaborateur pour qu’il traite l’appel à votre place.

Renvoi si la ligne est occupée vers Répondeur

Vous êtes déjà en ligne et vous ne pouvez pas traiter l’appel. Votre correspondant sera redirigé vers votre répondeur et vous pourrez le recontacter ultérieurement.Renvoi si la ligne est occupée vers un autre numéro

Vous êtes déjà en ligne et vous ne pouvez pas traiter l’appel. Votre correspondant sera automatiquement redirigé vers un autre numéro comme celui d’un standard téléphonique ou celui d’un de vos collaborateur pour qu’il traite l’appel à votre place.

Renvoi systématique de tous les appel vers Répondeur

Vous êtes en congés, la société est fermée, faîtes le savoir à vos correspondants et laissez leur des informations utiles sur votre répondeur (horaires d’ouverture, absent jusqu’à…)

Renvoi systématique de tous les appel vers un autre numéro

Ce numéro sert de relai vers un helpdesk, un standard ou autre et tous les correspondants seront envoyés systématiquement vers le numéro spécifié qui traitera les appels.

La présentation du numéro

La présentation du numéro est un standard de la téléphonie moderne. Cela vous permet de voir qui vous appelle en affichant son numéro. Votre téléphone enregistrera dans son historique la date, l’heure et le numéro ayant appelé, ce qui vous permettra de recontacter la personne même si elle n’a pas laissé de message.

Appeler en numéro masqué

Vous ne souhaitez pas être reconnu ou que votre correspondant puisse vous rappeler, téléphonez en masquant votre numéro de manière systématique ou pour un appel seulement.

Utilisations

Conditions

Avoir un accès à internet que ce soit en filaire ou en wifi, il est indispensable d’avoir une connexion de bonne qualité à internet pour pouvoir téléphoner ou recevoir des appels.

Toutefois, certains opérateurs permettent l’utilisation de votre ligne SIP depuis un téléphone fixe ou mobile en téléphonant sur un numéro spécifique.

Matériel

Rassurez vous, si vous aimez pouvoir toucher votre téléphone, sachez que vous pouvez utiliser votre ligne SIP peut être utilisée depuis des téléphones physique (téléphone IP) qui ressembleront comme deux gouttes d’eau aux téléphone que vous avez toujours utilisé.

Personnellement j’utilise un IP phone de chez Cisco pour mon bureau et j’en suis content. Il a plein de fonctionnalités sympathiques et la qualité des appels est irréprochable.

Voici quelques exemples de ce vous pouvez trouver sur le site Amazon.fr, mais il y a également d’autres vendeurs…

Téléphones IP physiques

Depuis les smartphones (Iphone ou à base d’Android)

Aujourd’hui les téléphones mobiles modernes permettent d’utiliser nativement ou avec un logiciel additionnel votre ligne téléphone SIP.

Depuis votre tablette (Iphone ou à base d’Android)

Votre tablette étant presque un téléphone, il est possible également de l’utiliser pour téléphoner et recevoir des appels avec votre ligne SIP.

Depuis votre ordinateur portable ou fixe (avec un micro casque) avec un logiciel spécifique

Votre ordinateur portable est votre meilleur ami ? Vous ne faîte presque rien sans lui, voici l’occasion de lui donner une utilité supplémentaire. En plus d’être votre bureau pendant les heures de travail, votre plate forme de jeux ou multimédia lorsqu’il s’agit de vous détendre, il peut désormais devenir votre téléphone avec l’aide de logiciels spécifiques appelés soft phone.

Logiciels de VoIP utilisables

Voici quelques logiciels qui vous permettront d’utiliser votre ligne téléphonique SIP. Personnellement, j’utilise la version gratuite de Zoiper et j’en suis très content. La qualité est au rendez-vous.

Deux opérateurs réputés en France

A présent, voici deux opérateurs qui sont vraiment au top sur les lignes téléphoniques SIP en France. J’étais initialement client chez IPPI, mais ayant énormément de services en location chez OVH, j’ai préféré tout centraliser chez eux et je suis donc à présent client de leur offre SIP et sans aucun regret. D’ailleurs, je n’ai plus de téléphone fixe autre que ma ligne SIP depuis plus de 6 mois et tout va très bien. Le bon côté, c’est que mon téléphone fixe me suis de partout dans le monde. Dès que j’ai internet, je peux téléphoner et recevoir des appels.

  • (environ 6 € TTC par mois) – IPPI : IPPI
  • (environ 1.20 € TTC par mois) OVH : OVH

Les structures de contrôle – partie 3

Dans cette troisième partie consacrée aux structures de contrôle nous allons étudier certains types de boucles particulièrement adaptées aux tableaux (for, foreach), la structure de contrôle switch qui permet d’écrire des ensembles de conditions plus simplement qu’avec la structure if.

Les boucles for

La boucle for permet de faire plusieurs choses. Premièrement, elle permet d’attribuer une valeur de départ à une variable. Ensuite elle applique une condition, par exemple tant que la variable initialisée est inférieur à une valeur maximale fixée. Et enfin elle permet de réaliser une action, par exemple l’incrémentation (valeur+1) ou la décrémentation (valeur-1) de la variable.

Voici à quoi cela ressemble d’un point de vue logique

POUR (POSITION=VALEUR ; TANT QUE POSITION INFÉRIEUR A VALEUR MAX ; ACTION SUR POSITION) {
	// Instructions à exécuter
	// A chaque passage dans la boucle, POSITION aura une valeur différente selon que l'on choisisse
	// de l'incrémenter ou décrémenter
	// Pour sortir prématurément d'une boucle
	break ;
}

Dans nos exemples ci-dessous, nous utiliserons la variable position que nous allons initialiser à 0 pour traiter les 8 valeurs contenues dans nos tableaux. Ainsi la valeur maximale de la variable position sera 7 (de 0 à 7, nous avons bien 8 valeurs).

Les tableaux de données utilisés seront les suivants :

0Marie
1Marc
2Antoine
3Jean
4Eric
5Simone
6Pierre
7Martine
0Lyon
1Grenoble
2Paris
3Beauvais
4Bordeaux
5Valence
6Nantes
7Auxerre

Création d’une boucle for en C

#define <stdio.h>
#define <stdlib.h>
 
int main(void) {
        /* Définition des variables */
        int position;
        int max=8;
        /* Définition du tableau personnes */
        char personnes[8][16]={
                "Marie", "Marc", "Antoine", "Jean", "Eric", "Simone",
                "Pierre", "Martine"
        };
        /* Définition du tableau villes */
        char villes[8][16]={
                "Lyon", "Grenoble", "Paris", "Beauvais", "Bordeaux",
                "Valence", "Nantes", "Auxerre"
        };
 
        /* Traitement des tableaux avec une boucle for */
        for (position=0; position < max; position++) {
                printf("%s travaille à %s\n", personnes[position], villes[position]);
        }
        return EXIT_SUCCESS;
}

Une fois compilé et exécuté, le code ci-dessus affichera ceci :Marie travaille à Lyon
Marc travaille à Grenoble
Antoine travaille à Paris
Jean travaille à Beauvais
Eric travaille à Bordeaux
Simone travaille à Valence
Pierre travaille à Nantes
Martine travaille à Auxerre

Nous constatons que à la valeur 0 du tableau personnes on trouve « Marie », dans le tableau villes à la même position nous trouvons « Lyon », le résultat avec position à 0 affiche donc « Marie travaille à Lyon ». Et on recommence ce même cycle jusqu’à 7 qui correspond à la dernière valeur des deux tableaux.

En Javascript à présent

var personnes=[ 'Marie', 'Marc', 'Antoine', 'Jean', 'Eric', 'Simone', 'Pierre', 'Martine' ] ;
var villes=[ 'Lyon', 'Grenoble', 'Paris', 'Beauvais', 'Bordeaux', 'Valence', 'Nantes', 'Auxerre' ] ;
var pos ;
// Nombres d'éléments dans le tableau personnes
max=personnes.length ;
// Parcours du tableau avec la boucle for
for (pos=0 ; pos < max ; pos++) {
  console.log(personnes[pos] + ' travaille à ' + villes[pos]) ;
}

Le code ci-dessus affichera :Marie travaille à Lyon
Marc travaille à Grenoble
Antoine travaille à Paris
Jean travaille à Beauvais
Eric travaille à Bordeaux
Simone travaille à Valence
Pierre travaille à Nantes
Martine travaille à Auxerre

En PHP

<?php
$personnes=array('Marie', 'Marc', 'Antoine', 'Jean', 'Eric', 'Simone', 'Pierre', 'Martine') ;
$villes=array('Lyon', 'Grenoble', 'Paris', 'Beauvais', 'Bordeaux', 'Valence', 'Nantes', 'Auxerre') ;
// Nombre d'éléments dans le tableau personnes
$max=count($personnes) ;
// Parcours du tableau avec la boucle for
for ($pos=0 ; $pos < $max ; $pos++) {
  echo $personnes[$pos]." travaille à ".$villes[$pos]."<br/>" ;
}
 
// Méthode alternative pour parcourir un tableau en PHP
$pos=0 ;
// A chaque passage, $prenom contiendra le nom de l'élément du tableau puis passera au suivant à la fin de la boucle
foreach ($personnes AS $prenom) {
  echo $prenom." travaille à ".$villes[$pos]
  $pos++ ;
}

De la même manière le code ci-dessus affichera :Marie travaille à Lyon
Marc travaille à Grenoble
Antoine travaille à Paris
Jean travaille à Beauvais
Eric travaille à Bordeaux
Simone travaille à Valence
Pierre travaille à Nantes
Martine travaille à Auxerre

En Perl

#!/usr/bin/perl
 
use strict;
 
# Définition des tableaux
my @personnes=('Marie', 'Marc', 'Antoine', 'Jean', 'Eric', 'Simone', 'Pierre', 'Martine');
my @villes=('Lyon', 'Grenoble', 'Paris', 'Beauvais', 'Bordeaux', 'Valence', 'Nantes', 'Auxerre');
 
my $pos;
 
# Parcours des tableaux
for ($pos=0; $pos < scalar(@personnes); $pos++) {
        print $personnes[$pos]." travaille à ".$villes[$pos]."\n";
}
 
# Méthode alternative pour un tableau en Perl
$pos=0;
foreach (@personnes) {
        print $_." travaille à ".$villes[$pos]."\n";
        $pos++;
}

Le code ci-dessus affichera :Marie travaille à Lyon
Marc travaille à Grenoble
Antoine travaille à Paris
Jean travaille à Beauvais
Eric travaille à Bordeaux
Simone travaille à Valence
Pierre travaille à Nantes
Martine travaille à Auxerre

En anglais, switch signifie commutateur et c’est exactement le rôle de cette structure de contrôle. Elle permet d’exécuter des instructions dans des cas bien spécifiques que ce soit pour un ou plusieurs cas de figures différents, mais elle offre également la possibilité de définir des instructions à exécuter pour tous les cas de figure non traités.

Voici la représentation logique de cette structure

SWITCH ($valeur) {
	CAS '1' :
		// Instructions à exécuter lorsque $valeur est égal à 1
		// Sortie de la structure
		BREAK
	CAS '2' :
	CAS '3' :
	CAS '5' :
		// Instructions à exécuter lorsque $valeur est égal à 2, 3 ou 5
		// Sortie de la structure
		BREAK
	CAS '6' :
		// Instructions à exécuter si $valeur est égal à 6
		// On ne sort pas de la structure, donc on traite aussi le cas de figure suivant
	CASE '9' :
		// Instructions à exécuter si $valeur est égal à 6 ou 9
		// Sortie de la structure
		BREAK
	DEFAULT :
		// Instructions à exécuter pour tous les cas de figure qui n'ont pas été traités précédemment
}

Ce type de structure complexe peut être réalisée entièrement avec des structures de contrôle if else if et else, mais elle sera alors moins évidente à écrire et à lire. La structure switch est une facilité visuelle pour les développeurs dans le sens où elle permet de traiter de multiples cas de figures dans une seule structure et de manière assez évidente.

Voici un exemple en C

#define <stdio.h>
#define <stdlib.h>
 
#define PERSIL 0 
#define SALADE 1
#define TOMATE 2
#define CAROTTE 3
#define POIVRON 4
 
/* Définition de la fonction de traitement */
void couleur(int legume) {
  switch (legume) {
      case PERSIL :
      case SALADE :
        printf("Couleur : verte\n") ;
        break ;
      case TOMATE :
      case POIVRON :
        printf("Couleur : rouge\n") ;
        break ;
      default :
        printf("Cas de figure non traité\n") ;
    }
  }
}
 
int main(void) {
  couleur(PERSIL) ; /* Affichera : Couleur : verte */
  couleur(POIVRON) ; /* Affichera : Couleur : rouge */
  couleur(CAROTTE) ; /* Affichera : Cas de figure non traité */
 
}

La même structure en Javascript

// Définition de la fonction
function couleur(legume) {
  var ret ;
 
  switch (legume) {
    case 'persil' :
    case 'salade' :
      ret='vert' ;
      break ;
    case 'tomate' :
    case 'poivron' :
      ret='rouge' ;
      break ;
    default :
      ret='Cas de figure non traité' ;
  }
  // Retourne le résultat à la fonction appelante
  return ret ;
}
 
// Utilisation de la fonction
console.log(couleur('persil')) ;  // Affichera : vert
console.log(couleur('poivron')) ;  // Affichera : rouge
console.log(couleur('banane')) ;  // Affichera : Cas de figure non traité

En PHP

<?php
// Définition de la fonction
function couleur($legume) {
  $ret='' ;
  switch ($legume) {
    case 'salade' :
    case 'persil' :
      $ret='vert' ;
      break ;
    case 'tomate' :
    case 'poivron' :
      $ret='rouge' ;
      break ;
    default :
      $ret='Cas de figure non traité' ;
  }
}
 
// Utilisation de la fonction
echo "Le persil c'est : ".couleur('persil') ;  // Affichera : Le persil c'est : vert
echo "La tomate c'est : ".couleur('tomate') ;  // Affichera : La tomate c'est : rouge
echo "La banane c'est : ".couleur('banane') ;  // Affichera : La banane c'est : Cas de figure non traité

En perl

En Perl les choses changent un peu. En effet, la structure de contrôle switch n’existe pas nativement en Perl et si on souhaite malgré tout pouvoir traiter des conditions de la même manière, il faut faire appel à un module spécifique qui devra être chargé au démarrage du script. Ce module se nomme ‘Switch.pm’.

#!/usr/bin/perl
 
use strict;
# Chargement du module Switch.pm
use Switch;
 
# Définition de la fonction
sub couleur {
        my ($legume)=@_;
        my $ret;
 
        # Utilisation de la structure émulée
        switch ($legume) {
                # Syntaxe pour exécuter les mêmes instructions
                # pour 2 cas de figures différents
                case ['salade', 'persil'] {
                        $ret='vert';
                }
                # Syntaxe pour exécuter les mêmes instructions
                # pour 2 cas de figures différents
                case ['tomate', 'poivron'] {
                        $ret='rouge';
                }
                # Équivalent du mot clé default pour traiter tous les cas de figure qui n'ont pas été 
                # traité par les instructions au dessus
                else {
                        $ret='Cas de figure non traité';
                }
        }
        return $ret;
}
 
print "Une salade c'est: ".couleur('salade')."\n";  # Affichera : Une salade c'est : vert
print "Un poivron c'est: ".couleur('poivron')."\n";  # Affichera : Un poivron c'est : rouge
print "Une banane c'est: ".couleur('banane')."\n";  # Affichera : Une banane c'est : Cas de figure non traité

Voilà, c’est la fin de cette série d’articles consacrés au bases de la programmation. Après avoir lu et appréhendé ces différents articles (qui je le répète ne sont pas exhaustifs), vous ne serez certainement pas des développeurs de pointe, mais vous aurez suffisamment d’éléments pour commencer à apprendre ou renoncer si cela ne vous parle pas du tout.

Si vous souhaitez des compléments d’informations ou voir un sujet particulier être traité à la suite de ces articles, vous pouvez en faire la demande par mail ou via les commentaires.

Les structures de contrôle – Opérateur conditionnel ternaire

En complément des articles sur les bases de la programmation, voici une structure de contrôle particulière qui mérite qu’on s’y attarde et qui permet en quelque sorte d’attribuer un contenu conditionnel aux variable. Il s’agit de l’opérateur conditionnel ternaire. (Ternary operator in english)

Voici ce que cela donne d’un point de vue logique

ma_variable=(condition) ? Valeur si condition vrai:Valeur si condition fausse ;

Cela revient à écrire la structure suivante :
Si (condition est vrai) {
	ma_variable= valeur si condition vrai
}
Sinon {
	ma_variable= valeur si condition fausse
}
// La même en version courte
SI (condition) { ma_variable=valeur } SINON { ma_variable=valeur }

L’intérêt est double… Cela permet de gagner en lisibilité car le code de départ tient souvent en une seule ligne alors qu’une structure de contrôle if peut prendre souvent plus de place et demande de réécrire certaines portions de code plusieurs fois. Cela permet également de gagner quelques octets dans les scripts et programmes interprétés. Sur ces milliers de lignes et des millions de boucles, cela peut faire une différence conséquente.

Voici comment cet opérateur s’utilise en C

#define <stdio.h>
#define <stdlib.h>
 
int main(void) {
  int a=5 ;
  /* Si a est supérieur à 4, alors la valeur de b sera 6, sinon ce sera 2 */
  /* Dans le cas présent la valeur de b sera 6 */
  int b=(a > 4) ? 6:2 ;
}

En Javascript

var a=5 ;
var b=(a > 4) ? 'Attention !' :'Tout va bien' ;
console.log(b + ' Valeur = ' + a) ;  // Affichera : Attention ! Valeur = 5
 

En PHP

<?php
$a=4;
b=($a > 4) ? 'Alerte !' :'Ok';
 
echo "$b Valeur = $a";  // Affichera : Ok Valeur = 4

En Perl

#!/usr/bin/perl
 
use strict;
 
my $a=5;
my $b=($a > 4) ? 'Alerte!':'Ok';
 
print $b." Valeur: $a\n";  # Affichera : Alerte! Valeur: 5

Les structures de contrôle – partie 2

Une fonction c’est quoi?

Les fonctions sont des conteneurs logique de code. Il s’agit d’une structure de contrôle dont vous pouvez définir le contenu et les conditions et qui peut retourner (en fonction du langage et de vos souhaits) une valeur, un tableau, des objets, un booléen ou seulement exécuter une action sans rien retourner.

Les fonctions sont faites pour ne pas avoir à réécrire les même portions de code pour traiter les 250 000 cas de figure de votre base client. Un ensemble d’instructions peut ainsi être écrit une seule fois et réutilisé des millions de fois pour traiter par exemple les données d’un tableau ce qui fait gagner un temps précieux pour le développeur et des milliers de ligne de code.

Les fonctions sont très simples à définir et à utiliser, voici un petit schéma logique

// Définition
FONCTION nom_fonction(paramètre_1, paramètre_2, paramètre_x) {
	// Instructions à exécuter et éventuellement valeur à retourner
}

// Utilisation
RESULTAT_1=nom_fonction(val1, val2, valx) ;
RESULTAT_2=nom_fonction(val12, val22, valx2) ;
RESULTAT_Y=nom_fonction(val1y, val2y, valxy) ;

Voici comment définir et utiliser une fonction en C

#define <stdio.h>
#define <stdlib.h>
 
/* En C les paramètres d'une fonction se définissent avec leur type comme les variables */
int voyelles(char *mot) {
  int res=0 ;
  int pos=0 ;
 
  /* Tant que la fin de la chaînes de caractères n'a pas été atteinte */
  while (mot[pos]!='\0') {
    // On parcoure chaque lettre du mot et à chaque voyelle on ajoute 1 à la valeur de res
    if (mot[pos]=='a' || mot[pos]=='e' || mot[pos]=='i' || mot[pos]=='o' || mot[pos]=='u' || mot[pos]=='y') {
      res++ ;
    }
    pos++;
  }
  // Retourne la valeur de res à la fonction appelante
  return res;
}
 
int main(void) {
  printf("azerty contient %d voyelle(s)\n", voyelles("azerty")) ;
   /* Affiche : azerty contient 3 voyelle(s) */
  printf("pierre contient%d voyelle(s)\n", voyelles("pierre")) ;
   /* Affiche : pierre contient 3 voyelle(s) */
  printf("toto contient%d voyelle(s)\n", voyelles("toto")) ;
   /* Affiche : toto contient 2 voyelle(s) */
 
  return EXIT_SUCCESS ;
}
 

en Javascript

// Définition de la fonction
// Retourne le chiffre entré en toutes lettres de 0 à 10 ;-)
function enToutesLettres(nombre) {
  // On teste la valeur du paramètre pour voir si il est dans la plage fixée
  if (nombre > 10 || nombre < 0) { return "Traite seulement les chiffres de 0 à 10 !" ; }
  if (nombre==0) { return "zéro" ; }
  if (nombre==1) { return "un" ; }
  if (nombre==2) { return "deux" ; }
  if (nombre==3) { return "trois" ; }
  if (nombre==4) { return "quatre" ; }
  if (nombre==5) { return "cinq" ; }
  if (nombre==6) { return "six" ; }
  if (nombre==7) { return "sept" ; }
  if (nombre==8) { return "huit" ; }
  if (nombre==9) { return "neuf" ; }
  if (nombre==10) { return "dix" ; }
  // On ne devrait jamais arriver ici
  return   "Il y a un problème !" ;
}
 
// Utilisation de la fonction
console.log(enToutesLettres(3)) ; // Affichera trois
console.log(enToutesLettres(6)) ; // Affichera six
console.log(enToutesLettres(9)) ; // Affichera neuf

En PHP

<?php
// Définition de la fonction
// Crée retourne une histoire avec les noms passés en paramètres
function histoire($nomPrince, $superPouvoir, $nomPrincesse, $nomSorciere) {
  $prepa='Il était une fois il y a bien longtemps, une princesse nommée '.$nomPrincesse.' fut enlevée par '.
  'la sorcière '.$nomSociere.'. Mais heureusement, arriva le prince '.$nomPrince.' qui grâce à '.
  'son super pouvoir, '.$superPouvoir.', terrassa la princesse '.$nomPrincesse.' et épousa la sorcière '.
  $nomSorciere.'. Oups !!!' ;
 
  return $prepa ;
}
 
echo "Voici ce qui arrive quand on veut aller trop vite et qu'on ne fait pas attention:<br/>".
histoire('Kevin', 'la sieste', 'Cent-Vingt Drillons', 'Bien-Aimée')."<br/>";

Le code ci-dessus affichera (et l’histoire changera à chaque fois qu’un paramètre sera modifié) :

Voici ce qui arrive quand on veut aller trop vite et qu’on ne fait pas attention:
Il était une fois il y a bien longtemps, une princesse nommée Cent-Vingt Drillons fut enlevée par la sorcière Bien-Aimée. Mais heureusement arriva le prince Kevin qui grâce à son super pouvoir, la sieste, terrassa la princesse Cent-Vingt Drillons, et épousa la sorcière Bien-Aimée. Oups !!!

Ca n’a aucun sens bien entendu, c’était seulement pour l’exemple…

Et enfin en Perl

#!/usr/bin/perl
 
use strict;
 
sub concatenation {
        my ($motA, $motB, $lien)=@_;
        my $resu;
 
        $resu = $motA.$lien.$motB;
 
        return $resu;
}
# Appel de la fonction
print "Résultat: ".concatenation("Jean", "Pierre", "-")."\n";
 

Le code ci-dessus affichera :

Résultat: Jean-Pierre