postheadericon Build your own dynamic DNS with GANDI API

Recently as I wanted to move from Adsl to optical fiber, I had to change my ISP.
Unfortunately, my new ISP does not provide a static IP as the old one did.

So I had to figure out how to keep a few things working with an dynamic ip address:
- I host a few web sites
- I use OpenDNS as parental filter
- On a distant site, I use the source IP address on the firewall for NAT translation

In this article, I will speak about detecting the change of the IP address and how to update it in the domain name registrar: Gandi.

Lire la suite...

postheadericon Arduino 2.4G Wireless RC Command with NRF24L01

I am building a RC sailboat from scratch. As I am a little crazy, I want to build the RC parts myself as well.

The idea is to drive a servo motor with an Arduino wirelessly.

The best chip to do wireless things easily is the nRF24L01 2.4GHz transceiver from Nordic Semiconductor. It is cheap and works seamlessly with Arduino platform.

Lire la suite...

postheadericon Symfony2 FOSUserBundle select locale on login and set it in session

As you may known since Symfony2.1 the locale is stored in the request.
Therfore in order to set/change the local, the most convenient way is to do it with the url.
See : Symfony documentation

I wanted somthing more hidden for the user.
I wanted the locale stored inside the user profile and set-up at the login time.
I am also using FOSUserBundle to handle the user management.

Here is how I did.

Lire la suite...

postheadericon Ubuntu - Faire de la place dans la partition /boot

Mon outil de monitoring m'a remonté récemment une alerte de disque plein sur l'un de me serveurs.

Il s'agissait en fait de la partition /boot qui ne faisant que 180 Mo était pleine à craquer.

En cherchant un peu, il s'est avéré que suite à plusieurs mises à jour successives du noyau le répertoire /boot de mon serveur était plein à 98%.

En effet les fichiers d'amorçage des différents noyaux successifs se sont accumulés dans la partition.

Lire la suite...

postheadericon Tracer le temps de connexion des utilisateurs via Google Analytics

Il m'a été demandé récemment, dans le cadre du développement d'une interface d'administration, d'envoyer quotidiennement un email de reporting.

Cet email devait contenir, entre autres, pour chacun des utilisateurs connectés, le temps effectivement passé sur le site.

Il m'a semblé alors intéressant d'utiliser Google Analytics car il est capable de calculer cette information de manière relativement précise.

Trois étapes sont nécessaires :
- mettre en place une variable personnalisée (Google Analytics) pour extraire les données spécifique à un utilisateur donné
- Se connecter à Google Analytics en Php
- Récupérer le temps de connexion lié à la variable personnalisée précédemment mise en place.

Lire la suite...