RemiRigal / BathyBoatWeb

Projet Hydro/Rob - Guerlédan 2017/2018 - WebApp
MIT License
3 stars 4 forks source link

Question sur les formats de données reçu par le serveur #2

Open simchanu29 opened 6 years ago

simchanu29 commented 6 years ago

Je suis en train de d'ajouter roslib à ton serveur pour communiquer avec rosbridge, du coup j'ai une question :

    switch (data.type) {
        case '$POS':
            globalData.pos.push(data);
            break;
        case '$BATT':
            globalData.batt.push(data);
            break;
        case '$MOT':
            globalData.mot.push(data);
            break;
        case '$DATA':
            globalData.data.push(data);
            break;

Quels sont les formats des données de pos, batt, mot, data. Surtout data j'ai pas encore vu à quoi ça correspond.

RemiRigal commented 6 years ago

Tous les types de données ont le même formalisme qui est le suivant:

{
    type: '$XXX'
    date: DATE,
    content: {}
}

L'objet content varie en fonction du type. Pour ce qui est du type data il ne sert pas encore mais a pour but de transmettre tout ce qui est données hydrographiques à l'interface, comme un fond de carte en 3D qui évoluerai.

simchanu29 commented 6 years ago

T'as moyen de faire un tableau pour chacun des types ? Pour l'instant j'ai extrais du code :

State :

    type: '$STATE',
    date: new Date(),
    content: { state: currentState }

J'imagine que currentState est un int à cause de ces lignes :

global.STATE_IDLE = 0;
global.STATE_RUNNING = 1;
global.STATE_PAUSE = 2;
global.STATE_RTL = 3;
global.STATE_EMERGENCY = 4;
global.currentState = STATE_IDLE;

Pos :

        type: '$POS',
        date: new Date(),
        content: {lat: currentLat, lng: currentLng, yaw: currYaw, speed: currSpeed, signal: currSignal}

signal ça correspond à quoi ?

Bat par contre j'ai reconstruit ça mais j'en suis pas certain.

        type: '$BAT',
        date: new Date(),
        content: {b1: battery1, b2: battery2}

Avec battery1 et battery2 des float

Mot : pareil

        type: '$BAT',
        date: new Date(),
        content: {m1: commandMotor1, m2: commandMotor2}

Avec commandMotor1 et commandMotor2 des float

Tu valides ?