IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Arduino Discussion :

Récupérer des données à partir de Thingspeak pour les afficher avec ESP32


Sujet :

Arduino

  1. #1
    Membre actif
    Inscrit en
    Juillet 2004
    Messages
    832
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 832
    Points : 237
    Points
    237
    Par défaut Récupérer des données à partir de Thingspeak pour les afficher avec ESP32
    Bonjour à Tous,

    J'ai un projet ( uPesy ESP32C3 Basic Low Power ) à l'extérieur qui me permet de collecter quelques données comme :
    T° eau
    Humidité de l'air
    Température de l'air
    Niveau Batterie

    Ces données sont transférées vers Thingspeak pour enregistrement via le protocole MQTT (extrait de l'envoi des infos) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
     
     if (isWifiStarted)
        {
     
      		while (WiFi.status() != WL_CONNECTED) 
      		{
      		Serial.write('.');
      		delay(500);
          }
     
      	  Serial.println(" => Connecté");
      	  Serial.print("adresse IP:");   Serial.println(WiFi.localIP());
          isWifiReady = true;
     
    	  if (isWifiStarted) 
    	  {	  
    		  pubSubclient.setServer(server, 1883);
    		  D_timestamp();
    		  pubSubclient.connect(MQTT_CLIENT, MQTT_USER, MQTT_PASSWORD);
    		  delay(10);
    		  D_timestamp();
    		  D_println("MQTT connected");
    		  pubSubclient.loop();
    		  D_print("MQTT Publish: ");
    		  D_println(MQTT_TOPIC);
    		  String topicString ="channels/" + String(MQTT_TOPIC) + "/publish";
    		  String dataString = String("field1=" + String(temperature) + "&field2=" + String(humidity) + "&field3=" + String(batteryPercentage) + "&field4=" + String(piscine));
    		  pubSubclient.publish(topicString.c_str(),dataString.c_str());
    		  delay(100);
     
      		 // si la mémoire RTC n'était pas valide, on la met à jour pour le prochain réveil
      		if (!isRtcValid) {
      			rtcData.channel = WiFi.channel();
      			memcpy(rtcData.ap_mac, WiFi.BSSID(), 6); // les 6 octets de l'adresse mac
      			// puis on met à jour le CRC dans la structure
      			rtcData.crc32 = calculateCRC32MPGE2((uint8_t*)&rtcData, sizeof rtcData - sizeof(uint32_t));
      			Serial.println(" Sauv config pour la prochaine fois en mémoire RTC. ");
      			printStructure(rtcData);
        	}
          } 
     
    	    if  (tensionBrute > seuilTensionBruteBasse)
            {	
                D_timestamp();
                D_println("Batterie OK. Dormir....");
                D_printf("Battery Percentage: %i", batteryPercentage);	
    		    Serial.flush();
     		    esp_sleep_enable_timer_wakeup(300000000ull); // on programme un réveil pour dans 5mn (en µs)
    		} else{
    			D_timestamp();
                D_println("Batterie faible. Sommeil profond.");
                D_printf("Battery Percentage: %i", batteryPercentage);
                Serial.flush();
     		    esp_sleep_enable_timer_wakeup(3600000000ull); // on programme un réveil pour dans 1h (en µs)
    		}	
    	}
    Ce que je souhaite faire , ce serait d'avoir la possibilité de recueillir ces mêmes données pour les afficher en local sur (par ex) un ESP32-2432S028R

    Quel serait selon vous l'architecture la plus appropriée de cet ESP32 pour réaliser ce projet


    Merci par avance
    Cordialement
    pascal

  2. #2
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 740
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 740
    Points : 57 540
    Points
    57 540
    Billets dans le blog
    42
    Par défaut
    Bonjour,

    Je ne vois pas ce que tu veux faire exactement... Tu veux récupérer sur l'ESP les données qui ont déjà été envoyées sur thingspeak ? Et si tu as plusieurs années de données qui sont stockées sur thingspeak, tu veux les récupérer toutes sur l'ESP ?

  3. #3
    Membre actif
    Inscrit en
    Juillet 2004
    Messages
    832
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 832
    Points : 237
    Points
    237
    Par défaut
    Salut f-leb

    Je ne vois pas ce que tu veux faire exactement... Tu veux récupérer sur l'ESP les données qui ont déjà été envoyées sur thingspeak ? Et si tu as plusieurs années de données qui sont stockées sur thingspeak, tu veux les récupérer toutes sur l'ESP
    Non , non pas du tout je me suis mal exprimé pardon
    je souhaite juste récupérer les valeurs envoyées ( actuellement toutes les 5 mn) vers Thingspeak via MQTT
    et les afficher en local avec l'ESP32-2432S028R tout simplement
    en gros voir en local ce que j'envoie

  4. #4
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 740
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 740
    Points : 57 540
    Points
    57 540
    Billets dans le blog
    42
    Par défaut
    Citation Envoyé par cobra38 Voir le message
    ...je souhaite juste récupérer les valeurs envoyées ( actuellement toutes les 5 mn) vers Thingspeak via MQTT
    et les afficher en local avec l'ESP32-2432S028R tout simplement
    en gros voir en local ce que j'envoie
    Ok, mais je ne comprends pas pourquoi tu veux "les récupérer" une fois envoyées... Tu as des variables temperature, humidity, etc. qui stockent les dernières valeurs, tu peux t'en servir pour affichage, non ?

  5. #5
    Membre actif
    Inscrit en
    Juillet 2004
    Messages
    832
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 832
    Points : 237
    Points
    237
    Par défaut
    ok, mais je ne comprends pas pourquoi tu veux "les récupérer" une fois envoyées... Tu as des variables temperature, humidity, etc. qui stockent les dernières valeurs, tu peux t'en servir pour affichage, non ?
    Pas tout à fait , ces valeurs sont issues de mesures qui sont faites à l'extérieur dans un boitier étanche déporté
    je passe donc par mon Wifi pour envoyer ces mesures directement vers Thingspeack , je n'ai pas de module intérieur qui collecte les données et c'est çà que je souhaiterai faire
    une sorte de serveur qui puisse regrouper ces mesures plus d'autres environnantes
    j'espère avoir été plus clair dans mon explication

  6. #6
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 740
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 740
    Points : 57 540
    Points
    57 540
    Billets dans le blog
    42
    Par défaut
    Tu as besoin de stocker en local donc, sur un serveur local, une sorte de thingspeak mais chez toi...

    Tu as vu ce tutoriel ?

  7. #7
    Membre actif
    Inscrit en
    Juillet 2004
    Messages
    832
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 832
    Points : 237
    Points
    237
    Par défaut
    Tu as besoin de stocker en local donc, sur un serveur local, une sorte de thingspeak mais chez toi...
    Une sorte de broker local c'est çà ?
    L'utilisation d'un Rapberry est obligatoire ? un ESP32 ne peut pas faire le job ?

  8. #8
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 740
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 740
    Points : 57 540
    Points
    57 540
    Billets dans le blog
    42
    Par défaut
    Oui, c'est ça un broker local.

    Citation Envoyé par cobra38 Voir le message
    ...une sorte de serveur qui puisse regrouper ces mesures plus d'autres environnantes
    Je m'étais dis que tu avais d'autres capteurs qui formeraient un réseau, et qui publieraient leurs données au broker.

    Un ESP32 comme broker MQTT, jamais vu, ça ne doit pas être assez costaud. Il y a le Raspberry Pi Zero aussi si tu cherches quelque chose de moins encombrant.

  9. #9
    Membre actif
    Inscrit en
    Juillet 2004
    Messages
    832
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 832
    Points : 237
    Points
    237
    Par défaut
    Merci f-leb

    Visiblement le problème est plus compliqué que je croyais ....
    Et aller cherche les valeurs directement sur thingspeak pour les afficher
    est-ce possible ?

    faire
    ESP32 =>> Thingspeack =>> ESP32
    plutôt que
    ESP32 =>> Raspberry Pi Zero =>> Thingspeack

  10. #10
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 740
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 740
    Points : 57 540
    Points
    57 540
    Billets dans le blog
    42
    Par défaut
    J'ai beaucoup de mal à te suivre...

    Citation Envoyé par cobra38 Voir le message
    ESP32 =>> Thingspeack =>> ESP32
    Le même ESP32 ? ou deux ESP32 différents ?


    Citation Envoyé par cobra38 Voir le message
    ESP32 =>> Raspberry Pi Zero =>> Thingspeack
    Si le RPi sert de broker local, c'est pour ne plus avoir à utiliser thingspeak.

  11. #11
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 740
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 740
    Points : 57 540
    Points
    57 540
    Billets dans le blog
    42
    Par défaut
    Je n'ai jamais fait, mais tu devrais pouvoir enregistrer ton ESP32 comme périphérique chez Thingspeak, et t'abonner à un canal de données, voir https://fr.mathworks.com/help/things...b-732f4a1274e2

  12. #12
    Membre actif
    Inscrit en
    Juillet 2004
    Messages
    832
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 832
    Points : 237
    Points
    237
    Par défaut
    Citation Envoyé par f-leb Voir le message
    Le même ESP32 ? ou deux ESP32 différents ?
    Si le RPi sert de broker local, c'est pour ne plus avoir à utiliser thingspeak.

    il s'agit bien de 2 x ESP32 différents bien sûr

    Si le RPi sert de "brocker" , je pense que l'on peut utiliser Thingspeack sans MQTT avec un API simple mais l’intérêt est moindre ?

  13. #13
    Membre actif
    Inscrit en
    Juillet 2004
    Messages
    832
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 832
    Points : 237
    Points
    237
    Par défaut
    Citation Envoyé par f-leb Voir le message
    Je n'ai jamais fait, mais tu devrais pouvoir enregistrer ton ESP32 comme périphérique chez Thingspeak, et t'abonner à un canal de données, voir https://fr.mathworks.com/help/things...b-732f4a1274e2
    J'ai regardé mais je n'arrive pas à bien comprendre leurs termes
    je pense qu'il s'agit de çà :
    Lire les données stockées dans le canal ThingSpeak

    https://fr.mathworks.com/help/things...d.html#bvio000

    mais traduire çà en Arduino , çà va être chaud !

  14. #14
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 740
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 740
    Points : 57 540
    Points
    57 540
    Billets dans le blog
    42
    Par défaut
    Citation Envoyé par cobra38 Voir le message
    il s'agit bien de 2 x ESP32 différents bien sûr
    J'ai fini par comprendre... tardivement


    Citation Envoyé par cobra38 Voir le message
    je pense qu'il s'agit de çà :
    Lire les données stockées dans le canal ThingSpeak

    https://fr.mathworks.com/help/things...d.html#bvio000
    ça c'est pour faire des traitements côté serveur avec le langage Matlab.

    Citation Envoyé par cobra38 Voir le message
    mais traduire çà en Arduino , çà va être chaud !
    Pas tant que ça (mais je n'ai pas testé) avec pubsubClient.

    Ton ESP32 qui fait l'affichage doit s'abonner au topic (subscribe) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    client.subscribe(topic);
    Définir une fonction de rappel (callback) personnalisée et qui sera appelée à chaque message publié dans le topic :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    client.setCallback(callback);
    Exemple de fonction trouvée sur Internet pour simplement afficher le message dans le terminal :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    void callback(char *topic, byte *payload, unsigned int length) { 
           Serial.print("Message arrived in topic: "); 
           Serial.println(topic); 
           Serial.print("Message:"); 
           for (int i = 0; i < length; i++) { 
               Serial.print((char) payload[i]); 
           } 
           Serial.println(); 
           Serial.println("-----------------------"); 
       }
    Il faut bien sûr autoriser l'ESP à s'inscrire (voir https://fr.mathworks.com/help/things...b-732f4a1274e2) et trouver le bon topic...

    Voilà, ça devrait marcher... en théorie

  15. #15
    Membre actif
    Inscrit en
    Juillet 2004
    Messages
    832
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 832
    Points : 237
    Points
    237
    Par défaut
    Encore merci f-leb

    je vais regarder tout çà mais j'ai du mal avec les termes utilisés comme le terme "topic"
    Qu'appellent-ils par ce terme
    est-ce par ex le N° de channel utilisé pour collecter les données avec le 1er ESP32 ?
    je me suis créé sur Thingspeack un Channel ID avec mes 4 champs , est-ce cela que je dois utiliser comme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    client.subscribe(topic);
    je suis un peu largué là ...

  16. #16
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 740
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 740
    Points : 57 540
    Points
    57 540
    Billets dans le blog
    42
    Par défaut
    Salut,

    MQTT fonctionne suivant un principe de publication/abonnement (publish/subscribe).
    Imagine le broker comme un endroit où il y a des boîtes aux lettres.

    - Un topic représente une boîte aux lettres en particulier. Si tu veux publier les températures mesurées chez toi, tu crées un topic home/temperature. Quand tu publies un message sur le topic (la valeur de température), le message est déposé dans la boîte correspondante.

    - Un client peut s'abonner à ton topic (avec certaines autorisations), en quelques sortes les clients disposent des clés de la boîte. Mais comme MQTT est un service de luxe, si tu es abonné au topic, tous les messages qui arrivent dans la boîte seront automatiquement déposés sur ta table sans avoir besoin de te lever du canapé

    Je n'ai pas d'ESP32 sous la main, mais j'ai réussi quelques essais sur mon PC en m'abonnant à une chaîne publique avec MQTTx, un client MQTT pour Windows (un petit logiciel gratuit). Tu devrais l'utiliser pour la prise en main et les tests, l'ESP32 pourra prendre la main plus tard comme client.

    - Il faut d'abord créer un device MQTT (voir Créer un appareil ThingSpeak MQTT). On précise les chaînes qu'on veut accéder et on note les ID/username/password.

    - Dans MQTTX, créer une nouvelle Connection, et un nouvel abonnement New subscription. Tu as les explications et des exemples dans Subscribe to a Channel Feed.


    Je me suis abonné à un topic public au hasard pour tester : channels/357142/subscribe. (357142 est l'identifiant de la chaîne)
    Je reçois bien des messages à intervalles réguliers, du style :
    Code json : Sélectionner tout - Visualiser dans une fenêtre à part
    {"channel_id":357142,"created_at":"2024-08-05T17:57:23+02:00","entry_id":290636,"field1":"2.7","field2":"5.5","field3":"32.325","field4":"981.014","field5":"29.605","field6":null,"field7":"42.370","field8":"5.585","latitude":null,"longitude":null,"elevation":null,"status":"17:57:23: new data"}

    L'ESP32 devra faire pareil : se connecter au broker, s'abonner au topic et récupérer les messages. Restera à traiter le message pour récupérer la température.

  17. #17
    Membre actif
    Inscrit en
    Juillet 2004
    Messages
    832
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 832
    Points : 237
    Points
    237
    Par défaut
    - Il faut d'abord créer un device MQTT (voir Créer un appareil ThingSpeak MQTT). On précise les chaînes qu'on veut accéder et on note les ID/username/password.
    je l'avais déjà fait dès la création du channel actuel sur MQTT Thingspeack avec ID/username/password
    est-ce même que je dois utiliser sur MQQTx ou en créer un autre sous Thingspeak MQTT ?
    en l'utilisant celui-ci je n'arrive pas à me connecter

    j'ai du changer URL ( mqtt3.thingspeak.com ) pour me connecter .... c'est bien çà ?


    désolé f-leb , je suis lent à comprendre ...

  18. #18
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 740
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 740
    Points : 57 540
    Points
    57 540
    Billets dans le blog
    42
    Par défaut
    Citation Envoyé par cobra38 Voir le message
    je l'avais déjà fait dès la création du channel actuel sur MQTT Thingspeack avec ID/username/password
    est-ce même que je dois utiliser sur MQQTx ou en créer un autre sous Thingspeak MQTT ?
    en l'utilisant celui-ci je n'arrive pas à me connecter
    Comme tu veux te connecter depuis un PC ou un autre ESP32, c'est un nouveau client qu'il faut créer, avec de nouveaux identifiants.

    Citation Envoyé par cobra38 Voir le message
    j'ai du changer URL ( mqtt3.thingspeak.com ) pour me connecter .... c'est bien çà ?
    oui, port 1883, MQTT version 3.1.1...


    Citation Envoyé par cobra38 Voir le message
    désolé f-leb , je suis lent à comprendre ...
    La procédure n'est pas simple non plus, donc n'hésite pas si tu as encore des soucis

  19. #19
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 740
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 740
    Points : 57 540
    Points
    57 540
    Billets dans le blog
    42
    Par défaut
    Quelques copies d'écran si ça peut aider...

    1) Sur Thingspeak, on crée un nouveau device, ici mon nouveau client sera un PC portable.
    Il faut récupérer les id/username/passwd (id et username identiques par défaut).
    Il faut renseigner les channels que tu veux consulter (pour la démo, un channel public avec l'id=357142) :

    Nom : device-thingspeak.png
Affichages : 40
Taille : 74,2 Ko


    2) Sur l'appli MQTTX, on se connecte au broker de thingspeak avec les identifiants précédents :

    Nom : mqttx-connection.png
Affichages : 40
Taille : 109,6 Ko


    3) Toujours sur MQTTX, on s'abonne au topic (new subscription) (topic sous la forme channels/<id du channel>/subscribe) :

    Nom : mqttx-subscription.png
Affichages : 38
Taille : 63,8 Ko


    4) On se connecte, et on patiente un peu, le channel est actif et il y a de nouvelles données toutes les 12 minutes environ.
    Les données reçues sont au format JSON, field7 est une température :

    Nom : mqttx-received.png
Affichages : 38
Taille : 109,8 Ko

  20. #20
    Membre actif
    Inscrit en
    Juillet 2004
    Messages
    832
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 832
    Points : 237
    Points
    237
    Par défaut
    Bonjour f-leb

    Voici une recopie d’écran du 1er envoi qui semble fonctionner ,
    je ne trouvais pas parce que j'avais laissé

    MQTT version par défaut et non pas 3.1.1

    maintenant il faudra mettre tout çà en musique ...

    Un grand merci en tout cas !
    Images attachées Images attachées  

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Rappatrier des données d'un site pour les afficher sur le mien
    Par nebil dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 14/09/2017, 21h10
  2. Récupérer des données d'un fichier pour les afficher dans des pages html
    Par Millie31 dans le forum Général Conception Web
    Réponses: 2
    Dernier message: 15/10/2015, 14h22
  3. Réponses: 2
    Dernier message: 21/05/2006, 14h02
  4. Réponses: 20
    Dernier message: 19/12/2004, 18h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo