diff --git a/Documentation/Compte rendus/CR-17-03-2023.md b/Documentation/Compte rendus/CR-17-03-2023.md new file mode 100644 index 0000000..d418964 --- /dev/null +++ b/Documentation/Compte rendus/CR-17-03-2023.md @@ -0,0 +1,9 @@ +## Rendez-vous du 17 Mars + +- Il nous reste 14h (sans compter la séance du 17/03) + +- Une fois la BDD qui marche, comment à tester : + - Utiliser des scripts de client pymodbus; + - ou avec des envois de paquets en dur directement dans le decodeur. + +#### Prochain rendez-vous le Mardi 21 Mars à 10h15 (Démo du code) \ No newline at end of file diff --git a/src/decoderPropre.py b/src/decoderPropre.py index 82e5313..1be7efa 100644 --- a/src/decoderPropre.py +++ b/src/decoderPropre.py @@ -10,12 +10,17 @@ import scapy.contrib.modbus as mb def decode(pkt): if "ModbusADU" in pkt: miniL=[] - cc = pkt["ModbusADU"] - print(cc.payload.name) - for i in cc.payload.fields: - miniL.append(cc.payload.getfieldval(i)) - print(i,cc.payload.getfieldval(i)) + modpkt = pkt["ModbusADU"] + print(modpkt.payload.name) + for i in modpkt.payload.fields: + miniL.append(modpkt.payload.getfieldval(i)) + print(i,modpkt.payload.getfieldval(i)) + if(i=="coilStatus"): + bi=str(bin(modpkt.payload.getfieldval(i)[0])) + bi=bi[2:] + bi=bi.rjust(8,'0') + print([*bi]) bigL.append(miniL) - print("fin de decode") + print(bigL) bigL = [] scapy.sniff(iface="lo", prn=decode)