Partage de fichiers entre Raspberry Pi et machine Windows

Partage de fichiers entre Raspberry Pi et machine Windows

Un Raspberry Pi sous Raspbian n’existe pas sur un reseau pour un ordinateur Windows, sauf en tant qu’adresse IP.

Par exemple un appareil « PI-ArtNum-01 » sous Raspbian connecté au réseau local avec l’adresse IP 192.168.1.114 sera visible en tapant ping 192.168.1.114 dans l’invite de commande Windows mais pas ping PI-ArtNum-01. Du moins pas tant qu’on aura pas installé samba sur le Pi et défini le workgroup comme indiqué dans cet article « Mise en service d’un Raspberry Pi« .

Et même lorsque Windows trouvera le pi par son « hostname », il n’y aura pas moyen d’échanger des fichiers tant qu’on n’aura pas défini un espace partagé avec Samba. C’est ce que nous allons faire dans cet article.

Qu’est-ce que Samba ?

Samba permet le partage de fichiers sur un réseau local. Il facilite le réglage des droits d’accès selon cet article de linuxConfig.org, en anglais qui sera intéressant pour aller plus loin.

l’état initial

Mon Raspberry Pi (un Pi 3 B+) est connecté à mon réseau local. Il porte le nom (hostname défini avec Raspi-config) « ArtNum-01 ». Samba a été installé en même temps que d’autres éléments de notre Pi puisque j’ai suivi mon tutoriel « Mise en service d’un Raspberry« . A ce stade, si je tape \\PI-ArtNum-01 dans l’explorateur Windows, le Pi apparaît dans les éléments réseau. Par contre il est « vide » pour Windows

Pas possible d’accéder au contenu du Pi à partir de l’explorateur Windows

Définir un répertoire partagé avec Samba

Pour définir un espace partagé avec Samba sur le Pi, on va éditer /etc/samba/smb.conf et y copier et coller (shift + inser avec l’éditeur MC) tout en bas le contenu qui suit :

[PiShare]
comment=Pi Share
path=/home/al
browseable=yes
writeable=yes
only guest=no
create mask=0740
directory mask=0750
public=no

Raspbian va redémarrer automatiquement Samba lorsqu’on sauvegarde le fichier de configuration.

Ensuite dans l’invite de commande du Raspberry Pi, on va créer un utilisateur et un mot de passe pour ce répertoire partagé.

smbpasswd -a al

On tape deux fois le mot de passe choisi. On le note soigneusement !

Sur une machine Windows du même réseau local, je vois maintenant le répertoire PiShare de PI-ArtNum-01. Si je double-clique dessus, Windows me demande le nom d’utilisateur et le mot de passe. Si vous les renseignez, vous avez maintenant accès (deux fois bizarrement) aux fichiers du Raspberry Pi :

Accès au répertoire partagé ( le même sous ses deux noms…)

Si je le souhaite, je peux également « connecter un lecteur réseau », ce qui revient à disposer du répertoire partagé sur une machine Windows comme s’il était sur un disque Windows

Je clique à droite sur Réseau dans la liste des répertoires de l’explorateur Windows et je choisis « connecter un lecteur réseau » (en anglais c’est « Map network drive » qui est probablement plus juste)

Dans la fenêtre qui s’ouvre je choisis d’affecter la lettre M au répertoire partagé de ce Pi (\\PI-ArtNum-01\PiShare).

connecter un répertoire partagé d’un Raspberry Pi comme un lecteur réseau

Et voilà ce PiShare apparaît comme un répertoire local.

Par contre comme je me suis déjà connectée en donnant le mot de passe, Windows ne me demande pas de fournir mon nom d’utilisateur et mon mot de passe. Lorsque je redémarre windows et que je recommence cette connexion :

saisie du nom d’utilisateur et du mot de passe d’un répertoire partagé par Samba

Et maintenant ?

Je vais pouvoir facilement placer des scripts p5.js pour des projets d’art numérique sur ce Pi.

D’autres choisiront de fabriquer un NAS en suivant les instructions de cet article de Raspberry-Pi.fr.

Et vous ?

Un Raspberry Pi avec node.js

Un Raspberry Pi avec node.js

Je veux installer node.js sur un Raspberry Pi car je voudrais disposer d’un serveur capable de diffuser des travaux d’art numérique (qui utilisent du javascript et la bibliothèque p5.js). C’est aussi une installation qui me servira à tester différents capteurs connectés à un Raspberry Pi pour des projets de domotique. J’en parlerai dans les prochains articles de cette série, .

Dans cet article je vais me concentrer sur l’installation de node.js. Je parlerai plus tard d’expériences que je réaliserai ensuite en art numérique ou domotique.

Préparer un Raspberry Pi avec Raspbian

Je dispose d’un Raspberry Pi 3 B+ qui fonctionnait sous Raspbian Stretch lite. J’y ai installé Raspbian Buster « with desktop and recommanded software ». C’est possible sous réserve d’avoir une carte SD de 8 Go au moins (avec 4Go, la carte est occupée à 85% dès l’installation de Raspbian).

L’installation a été réalisée sur la base de mon article « Mise en service d’un Raspberry Pi« . Le Pi est connecté en ethernet mais dispose aussi d’une connexion wifi. Son nom est Pi-ArtNum-01.

Qu’est-ce que node.js (et npm)

Je ne suis pas une experte, ce que je dis doit être pris avec des pincettes ! Ma source principale a été cette page de OpenClassRoom et aussi cet article, beaucoup plus concret mais en anglais. Node.js est un moyen de faire du JavaScript en dehors du navigateur, par exemple pour générer des pages web. Node.js est open source et compatible avec la plupart des plateforme.

et node.js est inséparable de npm le système de gestion de paquets de node.js. Ce que je comprends c’est que c’est le système qui gère les « extensions » de node.js.

et NodeRed ???

Pour savoir à quoi sert nodered, voir cet article de projetdiy.fr. nodeRED est une application reposant sur Node.js qui permet de programmer graphiquement des composants dans un environnement Web (source cet article de blog.ippon.fr). Pour l’instant nous ne nous y intéresserons pas, même s’il est déjà installé sur notre Raspberry Pi (essayez de taper node-red -v dans l’invite de commande).

Installation d’une version récente de node.js

Je vais avoir besoin des dernières versions de node.js et npm. Commençons par déterminer si j’ai ces programmes et dans quelle version avec les commandes node -v et npm -v.

le Pi a node.js en version 10.15 et npm en 5.8

C’est une version assez ancienne. Je vais donc aller chercher la version 13 et mettre npm à jour si nécessaire. Mes deux sources pour accomplir cela étaient Beginner’s Guide to Installing Node.js on a Raspberry Pi et Upgrade Node.js/npm in Raspbian on Raspberry Pi.

Il faut « ajouter la source de node version 13 à nos dépôts de paquets Debian ». Je crois que ça signifie donner l’adresse de cette version à Linux !

curl -sL https://deb.nodesource.com/setup_13.x | sudo -E bash -

Maintenant je peux installer node

apt-get install -y nodejs

et maintenant node -v renvoie v13.12.0.

Il faut aussi mettre à jour npm. S’il n’était pas installé au préalable, on tapera d’abord la commande apt-get install -y npm.

npm install -g npm@latest

On vérifie ensuite avec npm -v, qui nous renvoie le numéro de version actuel, pour moi 6.14.4.

Installation d’un serveur HTTP

npm install -g http-server

Et ça y est nous avons un serveur !

tester le système avec un script p5.js

avec editor de p5.js téléchargement d’un script https://editor.p5js.org/p5/sketches/Hello_P5:_drawing

Le dézipper puis le placer dans le répertoire home/al/ Hello_P5_drawing_2020_04_12_07_55_16 avec filezilla. Et maintenant regardons quel est son chemin exact sur le Pi :

cd /home/al
cd p5jsFiles
cd Hello_P5_drawing_2020_04_12_07_55_16
ls

Nota si j’étais entrée comme al, cd ~ ou seulement cd m’enverrait directmeent sur /home/al

Maintenant lancer le serveur http avec http-server, en étant dans le répertoire du script précédent

Dans un navigateur internet je peux en principe accéder au serveur avec l’une des trois adresses HTTP proposées. Dans mon cas je suis en accès distant (SSH) et la première adresse ne fonctionne pas. Par contre les deux autres adresses sont celles du Pi (en connexion ethernet et en connexion wifi). Si je tape http://192.168.1.100:8080, j’ai un message d’erreur d’abord et lorsque je recommence, mon canevas apparaît à l’écran du navigateur tandis que divers message apparaissent dans la console pi !

Le canevas d’un script p5.js apparaît dans mon navigateur. La console vers le Pi affiche plein de messages !

Et si je bouge ma souris dans le canevas, le script Hello P5 drawing fonctionne !

Je bouge la souris sur mon écran d’ordinateur et le Raspberry Pi donne l’ordre de tracer des traits en fonction de mes mouvements !

Donc ca y est j’ai réussi à servir des fichiers p5.js sur mon pi.

Autres utilisations possibles de node.js sur mon raspberry pi

Si je veux disposer de plusieurs serveurs (plusieurs nodes ou processus), il va falloir trouver un système qui permet de lancer simultanément des serveurs http sur plusieurs ports distincts. C’est ce que font les auteurs des articles suivants :

Sur les Capteurs ou arduino

Pour créer un serveur web visible depuis l’extérieur :

Et enfin sur l’utilisation de nodeRed

Et maintenant

Je ne sais pas encore ce que je veux faire. Mon souhait est de pouvoir brancher un Pi à une télévision et le laisser tout seul pour exposer des travaux numériques. Et ensuite, je pourrai y connecter des capteurs divers pour que les scripts interagissent avec les visiteurs ou le contexte. A suivre donc dans la série !

Une piste, c’est de suivre le tutoriel de W3 School , en anglais, sur les entrées / Sorties du Raspberry Pi.

Mise en service d’un Raspberry Pi

Mise en service d’un Raspberry Pi

Article mis à jour le 31/08/2022.

Pour démarrer un Raspberry Pi neuf, il y a plusieurs opérations à réaliser. On trouve énormément de documents sur internet et je ne veux pas en ajouter un énième. Cet article vise simplement à établir une check-list pour me simplifier la vie.

Mettre l’OS sur la carte SD

Mise à jour du 31/08/2022 :

L’OS du Raspberry Pi est à télécharger sur le site de la fondation Raspberry Pi. J’ai choisi une version 64 bit compatible avec mon Pi 3B. J’ai pris la version lite, sans desktop. J’ai une carte sd 8 Go. J’ai utilisé Raspberry Pi Imager (téléchargeable sur le site de la fondation Raspberry Pi également).

Avec Raspberry Pi Imager j’ai effectué les réglages suivants avant de flasher la carte SD :

  • définir hostname de ce pi
  • définir l’utilisateur de base et le mot de passe correspondant (pi/raspberry n’est plus défini par défaut ! 😜)
  • cocher que le ssh doit être activé et indiquer le user name et le password. Je prévois en effet de connecter le Pi de manière « headless » (sans écran, clavier et souris)
  • configurer le wifi (j’ai mis un dongle wifi)
  • Et dire que clavier français et surtout timezone française.

Si nécessaire

Dans le cas où on n’utilise pas le paramétrage si dessus, on peut quand même autoriser la liaison ssh et régler le wifi autrement :

Autoriser la liaison SSH (headless)

On doit placer un fichier vide nommé ssh (sans extension) dans le répertoire boot de la carte SD. Pour plus d’explications voir cet article sur le site officiel du Raspberry Pi. On réalise cette opération par l’intermédiaire du lecteur de carte SD. Ensuite, lorsque le Pi démarre, il recherche ce fichier. S’il le trouve, il active le SSH puis détruit le fichier

Régler le wifi

Si on veut que le Pi se connecte en wifi, il faut lui donner les paramètres wifi. Sur cette page on voit comment faire.  En l’occurence j’ai placé le fichier wpa_supplicant.conf  dans le répertoire boot de la carte sd. Ce fichier contient les informations suivantes :

# wpa_supplicant.conf

# see https://github.com/binnes/tobyjnr/wiki/Raspberry-Pi-Initial-setup

# place this file named wpa_supplicant.conf in the /boot directory

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev

update_config=1

country=FR

network={

ssid="mon-reseau1"

psk="password1"

id_str="home 1"

priority=1

}

network={

ssid="mon-reseau2"

psk="password2"

id_str="home 1"

priority=2

}

Encrypter le mot de passe wifi

En principe on ne devrait pas mettre les mots de passe en clair. Une bonne pratique est d’encrypter cette information par un « hash ». J’ai découvert comment faire dans cet article en anglais.

Sur un Pi (on peut le faire plus tard si on n’a pas de deuxième pi), en ligne de commande, on tape wpa_passphrase mon-reseau2 password2 et en retour on obtient l’information cryptée : network={ ssid="mon-reseau2" #psk="password2" psk=261066f1ec70322a9b305031fd2164401fbae41235107dc66eaad93ed991abcf }

Je n’ai plus qu’à placer ce mot de passe cryptée à la place de celui que j’avais initialement mis en clair.

Brancher le Pi

Equipement nécessaire :

  • un chargeur 5V et au moins 1A avec un cable micro-USB ;
  • un cable ethernet.

Et c’est tout ! Il n’y a pas besoin de connecter le Pi à un clavier et un écran car il autorise la connexion SSH si on a placé un fichier ssh comme indiqué ci-dessus.

Premier démarrage

Dans l’écran du routeur, on voit apparaître un nouvel appareil, nommé RASPBERRYPI. Pour moi il a l’adresse IP 192.168.1.14.

Dans l’invite de commande Windows, ping RASPBERRYPI ne fonctionne pas mais ping 192.168.1.14 donne une réponse.

Accès SSH avec Cygwin

J’utilise Cygwin pour l’accès ssh. C’est très bien mais d’autres préfèrent PuTTY, que je n’ai jamais essayé. Pour l’installer, voir cet article : Installer et utiliser Cygwin pour le ssh avec un Pi.

Démarrer la session avec  ssh pi@192.168.1.14 (l’adresse est donnée en allant regarder quelle est l’adresse du dispositif « RASPBERRYPI », dans le tableau de bord du routeur ou de la box.

Nota : si on s’est déjà connecté en SSH à la même adresse, on peut avoir une erreur « @    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! ». Dans ce cas, ssh-keygen -R 192.168.1.14  va générer une nouvelle clé SSH et la commande ssh pi@192.168.1.14  va fonctionner correctement.

Le mot de passe pour l’utilisateur pi est raspberry.

Et voilà !

Premiers paramétrages

sudo raspi-config  nous amène à la configuration du Pi.

Au démarrage on est en anglais, on peut le changer si on préfère. Je ne le change pas.

On navigue avec les flèches de direction, on sélectionne avec la tabulation puis <ENTREE>.

Voici les changements à faire :

expand FileSystem (advanced options)Oui, pour utiliser toute la carte SD
Time zone (internationalisation)Europe / Paris
 Wait for network at boot Par défaut sur « non » dans Jessie ou stretch mais sur « oui » dans Jessie Lite ou stretch. Régler sur « NON »
Hostname (Network options)Mettre un nom unique (AlRadio)
Password:Modifier, ça ne doit plus être ‘raspberry’ pour l’utilisateur pi

Noter qu’en principe on ne modifie pas ces éléments :

configure keyboardInutile si pas de clavier
ssh (dans interfacing options)activer est déjà réalisé
Boot OptionB1 console (on n’accède pas en mode graphique) – on pourra toujours accéder à l’interface graphique avec la commande startx

Ensuite on tape init 6  pour redémarrer le Pi.

On peut vérifier l’espace libre sur la carte SD en tapant

sudo df -h
Si on a utilisé une carte SD de 8 Go, on devrait voir que /dev/root fait environ 7 Go, avec environ 50% used, 50% available (disponible) si Raspbian Buster"normal", 12% si Buster "lite". 

Autres réglages préliminaires

créer un utilisateur

Pour créer un utilisateur ‘al’ :

sudo useradd -m -G adm,dialout,cdrom,audio,plugdev,users al

puis créer son mot de passe

sudo passwd al

Changer le mot de passe root

sudo passwd root

nous demande le nouveau mot de passe. On peut ensuite devenir root en tapant su –  puis le mot de passe correspondant.

Changer le mot de passe pi

Cet article, déjà cité, insiste sur l’importance du changement du mot de passe par défaut de l’utilisateur pi afin contrer les pirates qui utilisent l’internet des objets pour faire tomber des sites.

sudo passwd pi

nous demande le nouveau mot de passe, qui ne doit pas être ‘raspberry’ !

On peut aussi supprimer l’utilisateur pi, comme proposé dans « SECURING YOUR RASPBERRY PI« .

installer l’éditeur mc

Pour installer l’éditeur MidnightCommander, en tant que root (avec su –  , sinon sudo devant la commande) :

sudo apt-get install mc

Ca prend plusieurs minutes.

Ensuite, pour le démarrer

sudo mc

Dans mc, on peut utiliser la souris, cliquer sur options / Configuration  puis entre [ ]  devant « Use Internal Editor ». Comme ça on n’aura jamais besoin d’utiliser l’affreux éditeur nano fourni par défaut.

Si pour une raison ou une autre la souris ne fonctionne pas, on accède au menu avec F9 puis les flèches de direction.

Sortir de mc avec F10.

autoriser la connexion en tant que root (ssh ou ftp)

Editer, avec mc (sudo avant), le fichier /etc/ssh/sshd_config

Trouver la ligne sous # Authentication:  contenant PermitRootLogin without-password .

La changer en PermitRootLogin yes.

permettre à windows de trouver le hostname

On a vu précédemment que ping ne fonctionnait pas avec le nom du Pi et c’est toujours le cas. On est obligé d’utiliser l’adresse IP du Pi, ce qui n’est pas pratique.

Pour y parvenir, il faut installer Samba sur le Pi et régler le « workgroup » au même groupe que celui de l’ordinateur windows utilisé.

Installer Samba avec cette commande (qui met longtemps à s’exécuter…) :

sudo apt-get install samba samba-common-bin

Editer, avec mc (sudo avant), le fichier /etc/samba/smb.conf et changer la ligne workgroup = WORKGROUP  pour que WORKGROUP corresponde au bon nom.

Pour trouver le nom du workgroup utilisé par windows 10, aller dans paramètres puis système puis information système. Le nom du workgroup est indiqué en face de « organisation ».

Redémarrer avec init 6  ou reboot .

Samba permet également de partager des répertoires entre un ordinateur windows et un Pi. A ce sujet voir cet article, en anglais, de raspberrypi.com.

Changer le fichier .bashrc

C’est le fichier qui contient la configuration du « shell » de l’utilisateur. Il définit en particulier les couleurs employées pour différents éléments.

Le plus simple est de prendre un fichier .bashrc d’un autre Pi, par exemple en FTP (cf plus bas). Ensuite, dans le nouveau Pi, renommer le fichier .bashrc en .bashrcOLD et copier le nouveau fichier .bashrc.

A faire pour tous les utilisateurs définis dans le Pi (/home/pi/.bashrc) et pour root aussi (/root/.bashrc).

J’ai en particulier défini la ligne PS1 comme suit :

PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\] \[\033[01;34m\]\w \$\[\033[00m\] '

Redémarrer

init 6  ou reboot .

Notre Raspberry Pi est prêt.

Vérifier le paramétrage

est-ce que le pi est repérable par son nom ?

Depuis mon ordinateur Windows, je « ping » le pi dans l’invite de commande.

un ping du Pi par son « hostname » devrait renvoyer quelque chose

Si le ping ne renvoie rien, c’est probablement que le paramétrage de Samba n’a pas été fait correctement.

Vérifier le nom ‘hostname’ du pi et autres infos

La commande hostnamectl nous indique différentes informations comme le nom de l’appareil, sa version de Raspbian, etc

Faire une copie de la carte sd

A ce stade, si l’on veut éviter de devoir tout refaire pour un autre Pi, on peut faire une copie de la carte SD à l’aide de cet article. Attention si on fait ainsi la copie, on ne pourra restaurer la sauvegarde que sur une carte sd au moins égale à celle d’origine. Si besoin voir cet article en anglais, sur la manière de réduire (shrink) la taille d’une image disque.

On peut voir aussi ces deux articles :

Accéder au Pi en ftp

J’utilise Filezilla.

Hôte : hostname du pi

protocole « sftp-ssh file transfer protocol »

Type d’authentification : demander le mot de passe

identifiant utilisateur ou root

mot de passe : selon l’utilisateur désigné

Commandes utiles

Quelques commandes utiles

apt updategénère une liste de ce qui doit être mis à jour
apt full-upgrade fait la mise à jour des paquets. Voir la différence avec apt upgrade dans cet article.
rpi-updateUpdate the Pi firmware. Si la réponse est « rpi-update: command not found », lancer apt-get install rpi-update  avant. Voir cet article.
apt-get cleanefface les paquets téléchargés pour la mise à jour

Pour redémarrer : reboot  ou init 6

Pour éteindre le Pi : init 0 ou halt -p . Il est préférable d’éviter de le débrancher sans l’avoir éteint avant.

Si nécessaire (affichage de The following packages were automatically installed and are no longer required), on peut exécuter apt autoremove  pour enlever tous les paquets qui ne sont plus utiles.

Pour mettre à jour le Pi avec des correctifs de sécurité :

sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install -y pprompt

Et maintenant ?

On peut avoir d’autres éléments à installer ou régler :

Et maintenant, notre Pi est prêt pour une belle aventure !

Utiliser sa boîte gmail avec des mails d’un hébergement OVH

Utiliser sa boîte gmail avec des mails d’un hébergement OVH

Dans ce premier article de la série , nous allons voir comment utiliser une boîte gmail pour lire et envoyer des mails créés dans un hébergement OVH.

Cet article date de 2016 et a été mis à jour en avril 2020 puis en décembre 2024.

Le contexte

Nous avons un compte gmail classique (pas d’utilisation de gmail pour entreprises), par exemple à l’adresse exemple@gmail.com . Dans d’autres articles de cette série, nous verrons des cas d’utilisation de gmail pour entreprises.

Sur OVH, dans l’espace client, nous avons créé une adresse mail se terminant par notre nom de domaine, par exemple exe@parcours-performance.com , avec le mot de passe mot1de1PASSE.

Maintenant, nous voulons pouvoir utiliser notre compte gmail exemple@gmail.com pour lire les mails reçus par exe@parcours-performance.com et en envoyer à ce nom. On peut ainsi gérer autant de boîtes mail que l’on veut à partir d’un seul compte gmail.
Got Mail????

Les conseils d’OVH pour régler gmail

OVH a réalisé un guide « Configuration d’un e-mail sur l’interface de Gmail » mais ce guide indique qu’il faut utiliser la fonction « “Ajouter un compte de messagerie POP3 que vous possédez”. Le gros inconvénient de cette solution est que gmail va alors chercher de temps les mails. L’intervalle de temps est 20 minutes. On est donc toujours en décalage avec la messagerie. Je préfère nettement la méthode suivante, qui synchronise les comptes en temps réel.

Réglage de la messagerie sur OVH

Il faut dire au gestionnaire de messagerie qu’on souhaite qu’il transfère les mails à une autre adresse. On va donc procéder à une redirection. Dans le compte ovh, on crée les adresses mails puis on appuie sur le bouton « gestion des redirections » à droite du tableau des adresses mails.

on redirige ensuite, par exemple exe@parcours-performance.com vers exemple@gmail.com . On choisit si on veut qu’OVH garde aussi une copie des mails (elle ne sera pas synchronisée) ou non. Moi je préfère qu’OVH ne conserve pas de copie.

A partir de maintenant, tout mail adressé à exe@parcours-performance.com me parviendra dans ma boîte gmail. Si je veux pouvoir répondre en tant que exe@parcours-performance.com à partir de ma boîte gmail, il faut que je paramètre gmail comme suit.

Paramétrage de gmail

Dans gmail, cliquer sur « paramètres » (la roue dentée en haut à droite). Aller dans l’onglet  » comptes » puis en face de « Envoyer des e-mails en tant que », cliquer sur le lien « ajouter une autre adresse email ». Une fenêtre du navigateur s’ouvre :

Ajouter une adresse mail dans gmail - 1

Dans Nom, on met ce que je veux. C’est ce qui apparaîtra comme nom d’expéditeur dans les mails envoyés. L’usage est d’écrire « Prénom NOM » dans cette case. Ici j’ai mis « monNom ».

L’adresse mail est exe@parcours-performance.com.

MAJ du 22/10/2016 :

Il faut cocher la case « traiter comme un alias » si l’on souhaite pouvoir envoyer un mail à l’adresse exe@parcours-performance.com à partir d’elle même ou d’une autre gérée par notre boîte gmail.

En effet, comme indiqué dans ce document Google, lorsque la case est cochée, « Les messages que vous envoyez à une adresse Envoyer des e-mails en tant que apparaissent comme non lus dans votre boîte de réception. ». C’est utile pour s’envoyer des mémos à soi même et aussi pour vérifier que les réglages faits fonctionnent correctement. 

On clique sur le bouton « étape suivante » et on accède  une nouvelle fenêtre :

Serveur smtp adresse OVH dans Gmail

ici, il faut mettre comme serveur SMTP celui qui est indiqué par OVH  : ssl0.ovh.net.

En 2024 c‘est la connexion TLS qui est recommandée, avec port 597.

Le mot de passe est celui que l’on a défini lorsqu’on a créé l’adresse mail dans OVH. Pour moi ici, « mot1de1PASSE ».

Le nom d’utilisateur est l’ensemble de l’adresse mail (ici exe@parcours-performance.com).

On clique sur « ajouter un compte » et une autre fenêtre, la dernière, s’ouvre :

gmail valider l'adresse mail ajoutée

Pour récupérer le code, on ouvre le webmail d’OVH (https://mail.ovh.net/roundcube/). On indique l’adresse mail et le mot de passe (dans cet exemple exe@parcours-performance.com et mot1de1PASSE.

Dans la boîte de réception du webmail, on voit un mail de exemple@gmail.com , avec un titre contenant « …Confirmation – Envoyer des e-mails en tant que… ». A l’intérieur, il y a un code de confirmation, par exemple 893052657. On le copie puis on le colle dans la fenêtre gmail ci-dessus. On clique sur le bouton « Valider » et ça y est !

Dans notre boîte Gmail exemple@gmail.com, on peut envoyer des mails en tant que exe@parcours-performance.com.

On notera que certains clients web comme outlook montreront en clair l’adresse mail du compte gmail d’expédition, en plus de l’adresse mail de l’expéditeur.

Pour l’utilisateur, les mails sont maintenant gérés par gmail, avec son excellent gestionnaire de spam. C’est un énorme avantage.

Et maintenant ?

Si on utilise gmail dans le cadre de gmail for Work, on pourra aller voir les réglages dans un autre article de cette série .

Lien de téléchargement vers fichier google drive

Lien de téléchargement vers fichier google drive

Lorsqu’on met des fichiers sur Google Drive, on peut les partager. Mais tous les liens de partage emmènent vers l’interface Google Drive.

C’est très bien si on veut collaborer en ligne : commentaires ou modifications en ligne.

Ça n’est pas pratique du tout si on veut juste permettre le téléchargement du fichier. Mais heureusement il y a une solution, que je vous présente rapidement ici.

Gdoc advanced sharing

J’ai trouvé la solution ici, dans un forum d’aide Google. Le lien doit être sous la forme https://drive.google.com/uc?export=download&id=YourFile'sID

Ainsi supposons que j’ai un fichier google Drive dont le lien de partage (modifié) est https://drive.google.com/file/d/1IpBHoiuDLOtDgBkrcJ5uWTIa-4waoLd7/view?usp=sharing. Le lien de téléchargement sera https://drive.google.com/uc?export=download&id=1IpBHoiuDLOtDgBkrcJ5uutRz-4waoLd7.

Il existe même une solution en ligne, en anglais, pour générer le nouveau lien : formulaire gdoc2direct.

Attention sur le formulaire ci-dessus, il y a un message indiquant que le système ne fonctionne pas avec un fichier qui n’a pas été chargé sur Google Drive. Ainsi un fichier créé sur Drive doît être téléchargé sur mon ordinateur puis chargé sur google Drive…

Des modèles de mail dans gmail

Des modèles de mail dans gmail

J’ai découvert hier que des personnes ont pu paramétrer leur messagerie GMAIL pour définir des textes standards et les insérer facilement dans des mails types. Je trouve que c’est génial, alors je fais un article très rapide sur ce sujet, juste pour en conserver la trace et nous mettre sur le chemin si le sujet nous intéresse.

Créer un modèle de courriel

Comment créer un modèle de courriel : Gmail nouvelle version nous explique de manière synthétique et juste comment faire.

Le centre de formation GSuite de Google donne des informations complémentaires sur la création de modèles d’e-mail et propose aussi de créer des filtres avec ces réponses automatiques.

Exemple

Je viens d’activer les modèles dans les paramètres avancés de Gmail.

Des modèles pour conserver des textes types dans Gmail

Et je lui donne le nom test AL

Et maintenant je peux utiliser ce texte manuellement pour insérer le texte du modèle à la main. Je peux aussi utiliser ce modèle dans un filtre (voir l’aide GMAIL, Créer des règles pour filtrer vos emails. Par exemple ici je crée un filtre qui va utiliser le modèle test AL à chaque fois qu’un mail contient les mots test !

Filtrer les messages Gmail et utiliser un modèle de mail en retour.

Et maintenant ?

Qu’allez-vous faire de cette idée ? Est-ce que vous voyez un intérêt à utiliser des modèles dans votre messagerie GMail ?

wpDiscuz pour améliorer les commentaires

wpDiscuz pour améliorer les commentaires

wpDiscuz est un système de gestion des commentaires WordPress qui facilite la vie des internautes et permet d’informer les auteurs d’un commentaire qu’ils ont reçu une réponse.  Cécile, du site Zéro Déchet, l’a installé et en a décrit le fonctionnement et le réglage.

L’objectif en installant wpDiscuz était de combler une lacune de WordPress par défaut : les auteurs d’un commentaire ne sont pas notifiés de l’approbation de leur commentaire ou du dépôt d’une réponse par un autre internaute. Le résultat est excellent, wpDiscuz répond parfaitement à cette demande et va même au delà en rendant les commentaires plus simples à utiliser.

Nous allons voir d’abord ce qu’apporte wpDiscuz puis définir comment l’installer et le régler.

Fonctionnement général

Voici un aperçu global ce qu’on obtient après paramétrages :

Le formulaire de commentaire lorsque wpDiscuz est installé

Grâce à l’extension, un visiteur peut :

  • ne pas laisser de commentaire et s’abonner aux commentaires de l’article ;
  • laisser un commentaire de manière anonyme (sans laisser d’adresse e-mail) ;
  • laisser un commentaire et s’abonner aux réponses reçues à celui-ci. Le commentateur recevra alors une notification par mail des réponses uniquement au commentaire qu’il aura laissé .
  • Selon les paramétrages, il pourra également recevoir une notification d’approbation de son commentaire (éventuellement avec double opt-in de confirmation par mail).

Dès qu’une adresse mail est inscrite dans la fenêtre correspondante un icône apparaît sur la droite du formulaire avec une cloche barrée apparaît. Il s’agit de l’option de notification des réponses au commentaire que peut souscrire explicitement le commentateur en cliquant dessus.

Dès qu’une adresse mail est inscrite dans la fenêtre correspondante un icône apparaît sur la droite du formulaire avec une cloche barrée apparaît. Il s’agit de l’option de notification des réponses au commentaire que peut souscrire explicitement le commentateur en cliquant dessus.

Options de notification pour l’auteur d’un commentaire

Le visiteur peut aussi s’abonner aux commentaires (ce qui comprend aussi les réponses aux commentaires, dont éventuellement le sien s’il en laisse un).
Dans ce cas, le consentement est explicitement demandé pour être notifié de tous les commentaires à l’article (avec option de double opt-in de confirmation par mail) :

wpDiscuz est compatible avec les exigences du GRPD

installation de wpDiscuz

Télécharger et activer l’extension wpDiscuz.

Paramétrage de wpDiscuz

le menu « réglages »

Dans l’onglet a. « formulaire de commentaire », Cécile a volontairement masqué 2 sections qui lui semblaient à faible valeur ajoutée pour le commentateur :

Réglages des composants du formulaire de commentaires

Dans l’onglet « liste de commentaire », Cécile a activé l’affichage uniquement des commentaires « parents » (gain en vitesse de chargement) :

Réglage de l’affichage des commentaires « parents » et leurs réponses

Il est possible de paramétrer les affichages, ce que j’ai fait avec les votes
(pour se rapprocher des usages de Youtube)

on peut même voter pour des commentaires !

Dans l’onglet « abonnement », Pour des questions de prudence liée au RGPD, Cécile a désactivé la désactivation par défaut de confirmations d’abonnement (lignes 2 et 3) :

Désactivation des confirmations d’abonnement par défaut

Idem sur l’abonnement (ci-dessous) / suivi utilisateur (pas d’écran) :

Pas de suivi sans confirmation par l’utilisateur !

Attention surtout ne pas activer l’option de cocher par défaut (obligation
RGPD)

Les cases ne sont pas cochées par défaut !

Cécile a coché une seule possibilité d’abonnement pour plus de simplification pour le visiteur

Simplifier l’expérience du commentateur

Avec les réglages ci-dessus, un utilisateur peut se retrouver dans les situations suivantes :

  • Il s’abonne « A tous les commentaires de cet article » : la personne est notifiée de tous les commentaires publiés sous l’article ;correspondant, réponses comprises à ses commentaires (ce qui est redondant avec l’option de notification possible pour un commentateur) ;
  • Il s’abonne « A toutes les réponses à mes commentaires » : la personne n’a plus besoin de s’abonner pour ses prochains commentaires ? (demanderait confirmation) . Cécile pense que c’est plus simple pour le commentateur mais comme c’est assurément RGPD de demander qu’un commentateur s’abonne à chacun de ses abonnements, elle a choisi la « sécurité » ;
  • A noter : un commentateur qui ne s’abonnerait pas aux réponses de son commentaire mais en revanche à « tous les commentaires » aura de toute façon une notification pour les réponses à son commentaire.
  • En revanche, un commentateur qui ne s’abonne qu’aux réponses à son commentaire ne recevra pas de notification pour les autres commentaires.

Enfin (pour les réglages de l’onglet « abonnement » !) , j’ai souhaité que le commentateur soit notifié de l’approbation de son commentaire.

Le commentateur peut être informé de l’approbation de son commentaire

Dans l’onglet « Connexion sociale et partage », Cécile a tout désactivé (elle ne vois pas l’intérêt de partager un commentaire sur les réseaux sociaux, je suis bien d’accord !).

ATTENTION : ne pas oublier d’enregistrer les modifications (en page d’écran) une fois les réglages effectués !

Le menu « formulaires / formulaire par défaut »

Cocher « oui » pour le consentement obligatoire (RGPD)

consentement obligatoire

Le texte est personnalisable. Cécile a mis « J’autorise l’utilisation de mon adresse e-mail pour me notifier les nouveaux commentaires et les réponses à cet article (je suis informé(e) de la possibilité de me désabonner à tout moment).

demander l’autorisation d’utiliser l’adresse email

Les champs de texte de commentaire sont personnalisables.

Personnaliser les champs de texte du formulaire de commentaire

Pour info, voici les textes de description que j’ai indiqués :

  • pour « ton prénom ou ton pseudo » : ton identité de commentateur s’affiche avec ton commentaire
  • pour « ton adresse mail » : obligatoire si tu veux être notifié(e) des réponses mais elle reste confidentielle (n’oublie pas de cliquer sur la cloche qui apparait sur la droite)
  • ATTENTION j’ai décoché la case par défaut « Ce champ est obligatoire » (RGPD oblige) !
  • pour « ton site ou ton blog (www.adresse.com) » = ton identité de
  • commentateur redirige vers ton site. Attention j’ai activé ce champ

Ne pas oublier de « Mettre à jour » une fois les réglages effectués !

ATTENTION : ne pas oublier d’enregistrer (ici en mettant à jour le formulaire)

Valider les réglages de wpDiscuz !

Copier les réglages d’un site à l’autre

Vous avez un peu mal à la tête arrivé(e) là ? Moi oui !

Et je me dis que je vais mettre un temps fou à régler wpDiscuz pour plusieurs sites. Mais heureusement on n’a pas besoin de refaire tout plusieurs fois puisqu’il est possible d’exporter les réglages d’un site puis de les restaurer dans un autre !

Ca se passe dans le menu Outils de wpDiscuz. Lorsque je télécharge j’obtiens un fichier texte. Voici le fichier avec les réglages décrits ci-dessus :

Je l’ai importé dans ce site. J’ai ensuite purgé le cache. Et tous les réglages se sont faits par miracle !

Supprimer le cache

Si on utilise une extension de cache, il faut impérativement supprimer le cache après avoir mis à jour les réglages de wpDiscuz.

Et maintenant ?

Si vous avez encore des questions, vous trouverez des réponses, en anglais, dans la documentation. Il y a également un espace dédié à wpDiscuz et le RGPD, en anglais également.

Style du widget de recherche WordPress

Style du widget de recherche WordPress

Le widget de recherche par défaut de WordPress est simple à placer dans la barre latérale mais il n’est pas très pratique lorsqu’on utilise un mot assez long pour dire « rechercher ». Les anglophones ont besoin de 6 caractères (search) tandis qu’en français nous avons besoin de 10 caractères.

Le résultat c’est qu’en français, le mot déborde du bouton, comme ci-dessous. C’est pourquoi je préfère mettre une icone à la place du texte, comme le premier champ de recherche ci-dessous.

Une icone à la place du texte du widget de recherche WordPress

Nous allons voir comment créer le widget du haut.

Etape 1 : créer un widget classique

Dans la barre latérale, placer le widget de recherche par défaut de WordPress.

Ouvrir une page contenant la barre latérale, puis avec « inspecter », copier le HTML qui génère ce bouton

<div id="search-2" class="et_pb_widget widget_search">
	<form role="search" method="get" id="searchform" class="searchform" action="https://cohesiondurable.com/" wtx-context="20CD0B4C-899C-4C10-8393-63D7EBB5F397">
		<div>
			<label class="screen-reader-text" for="s">Rechercher&nbsp;:</label>
			<input type="text" value="" name="s" id="s" wtx-context="77690F5F-6BB9-426B-8CB4-67A622CA1AFC">
			<input type="submit" id="searchsubmit" value="Rechercher" wtx-context="0F11C5AB-76D1-4764-95CD-5FCFDCCA1A41">
		</div>
	</form>
</div>

On veut utiliser exactement le même texte sauf qu’on va remplacer la ligne « <input.....> » par « <button>...</button>« . Le code exact de remplacement sera :

&lt;button type="submit" id="searchsubmit" wtx-context="0F11C5AB-76D1-4764-95CD-5FCFDCCA1A41">
	&lt;span class="dashicons dashicons-search">&lt;/span>
&lt;/button>

Je n’ai aucune idée du sens de wtx-context, je l’ai copié bêtement… Par contre, en indiquant class= »dashicons dashicons-search », je dis que le contenu doit être une icone de type dashicons, les icones par défaut de WordPress.

Etape 2 : créer un widget Html personnalisé

Dans la barre latérale, ajouter un widget « Html personnalisé ». Y placer le code suivant (c’est le code du widget d’origine avec simplement l’input modifié par le button

<div id="search-2" class="et_pb_widget widget_search">
	<form role="search" method="get" id="searchform" class="searchform" action="https://cohesiondurable.com/" wtx-context="20CD0B4C-899C-4C10-8393-63D7EBB5F397">
		<div>
			<label class="screen-reader-text" for="s">Rechercher&nbsp;:</label>
			<input type="text" value="" name="s" id="s" wtx-context="77690F5F-6BB9-426B-8CB4-67A622CA1AFC" placeholder="Rechercher">
			<button type="submit" id="searchsubmit" wtx-context="0F11C5AB-76D1-4764-95CD-5FCFDCCA1A41">
				<span class="dashicons dashicons-search"></span>
			</button>
		</div>
	</form>
</div>

On a maintenant un widget de recherche qui fonctionne, mais qui n’est pas très joli.

On va donc devoir ajouter un peu de CSS :

/*******************************
* recherche de barre latérale
*******************************/
span.dashicons.dashicons-search {
	height: 100%;
	padding-top: .35em;
	padding-bottom: .35em;
}

Je le met dans le CSS additionnel de la personnalisation de mon thème (Divi). Et voilà, j’obtiens la première ligne de la copie d’écran ci-dessous

Et maintenant, il ne me reste plus qu’à supprimer le widget de recherche par défaut de WordPress.

WinMerge pour voir les changements entre deux fichiers

WinMerge pour voir les changements entre deux fichiers

WinMerge est un logiciel, en anglais, open source, pour comparer des répertoires ou des fichiers sous windows.

Actuellement si j’ai deux fichiers différents, je dois les lire attentivement pour trouver les différences. Avec WinMerge, ça se fera beaucoup plus simplement.

Installation de WinMerge 2.16.4

Installation normale sans aucune modification

Ensuite, il ne reste plus qu’à ouvrir WinMerge, aller dans le menu Edition>>Préférences, onglet « intégration à l’explorateur » et cocher la case « activer le menu avancé », comme ici

Et maintenant si j’ouvre l’explorateur de fichier, je sélectionne deux fichiers et je clique à droite, j’ai l’option « comparer » !

Et maintenant si j’ouvre l’explorateur de fichier, je sélectionne deux fichiers et je clique à droite, j’ai l’option « comparer » !

Et voilà !

créer une icone linked in dans divi

créer une icone linked in dans divi

Le thème Divi permet d’insérer des liens vers les réseaux sociaux dans le pied de page et une barre tout en haut. Par défaut les réseaux paramétrables sont facebook, Twitter, Google + et RSS. Pour le site d’un consultant je souhaitais ajouter un lien, avec icone, vers une page LinkedIn. Et bien c’est possible !

Pour réaliser cette action, il faudra que vous ayez un accès FTP aux fichiers de votre site WordPress et avoir un éditeur pour modifier légèrement le code PHP d’un fichier du thème.

J’ai suivi les instructions d’un article plus complet, en anglais, rédigé par les créateurs du thème Divi : How to add more social media icons to divi

On peut utiliser le module réseaux sociaux » du divi builder pour les contenus construits à l’intérieur d’une page ou d’un article. Mais pour générer automatiquement le lien en haut du site ou dans le pied de page, il faut modifier un fichier du thème Divi selon le processus ci-dessous :

  1. Faire une copie du fichier social_icons.php (répertoire du thème : /wp-content/themes/Divi/includes).
  2. Editer le fichier d’origine en y ajoutant des lignes à la fin, comme indiqué ci-dessous.
<li class="et-social-icon et-social-linkedin">
<a href="https://www.linkedin.com/in/anne-laure-delpech/" class="icon">
<span><?php esc_html_e( 'LinkedIn', 'Divi' ); ?></span>
</a>
</li>

Ces lignes sont inclues tout en bas du fichier, juste avant le </ul> final.

Code PHP pour créer une nouvelle icone de réseaux sociaux dans Divi

Sauvegarder le fichier, ça y est, l’icone LinkedIn s’affiche en haut du site et tout en bas !

Ajout d'un lien LinkedIn dans le haut de page d'un site utilisant le thème Divi

Et voilà ! Si vous voulez créer l’icone d’autres réseaux sociaux, je vous propose de vous référer à l’article en anglais qui m’a inspirée.