Création du BuzzerWatcher et mise à jour des fichiers associés
This commit is contained in:
@ -1,64 +0,0 @@
|
||||
// index.js
|
||||
import Vue from 'vue';
|
||||
import Vuex from 'vuex';
|
||||
import ping from 'ping';
|
||||
|
||||
Vue.use(Vuex);
|
||||
|
||||
const store = new Vuex.Store({
|
||||
state: {
|
||||
buzzerRedState: '',
|
||||
buzzerBlueState: '',
|
||||
buzzerOrangeState: '',
|
||||
buzzerGreenState: ''
|
||||
},
|
||||
mutations: {
|
||||
setBuzzerRedState(state, newState) {
|
||||
state.buzzerRedState = newState;
|
||||
},
|
||||
setBuzzerBlueState(state, newState) {
|
||||
state.buzzerBlueState = newState;
|
||||
},
|
||||
setBuzzerOrangeState(state, newState) {
|
||||
state.buzzerOrangeState = newState;
|
||||
},
|
||||
setBuzzerGreenState(state, newState) {
|
||||
state.buzzerGreenState = newState;
|
||||
}
|
||||
},
|
||||
actions: {
|
||||
updateBuzzerStates({ commit }, { index, newState }) {
|
||||
switch (index) {
|
||||
case 0:
|
||||
commit('setBuzzerRedState', newState);
|
||||
break;
|
||||
case 1:
|
||||
commit('setBuzzerBlueState', newState);
|
||||
break;
|
||||
case 2:
|
||||
commit('setBuzzerOrangeState', newState);
|
||||
break;
|
||||
case 3:
|
||||
commit('setBuzzerGreenState', newState);
|
||||
break;
|
||||
default:
|
||||
console.error('Index de buzzer invalide:', index);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
const hosts = ['192.168.1.1', '192.168.1.2', '192.168.1.3', '192.168.1.4'];
|
||||
|
||||
async function pingHosts() {
|
||||
hosts.forEach(async (host, index) => { try {
|
||||
const res = await ping.promise.probe(host);
|
||||
store.dispatch('updateBuzzerStates', {index, newState: res.alive ? 'ON' : 'OFF' }); }
|
||||
catch (error) {
|
||||
console.error(`Erreur lors du ping de ${host}:`, error.message); }
|
||||
});
|
||||
}
|
||||
|
||||
pingHosts();
|
||||
|
||||
module.exports = store;
|
Reference in New Issue
Block a user