Files
2024-12-23 15:16:48 +01:00

64 lines
1.9 KiB
VB.net

Imports IobManComm
Public Class Form1
Protected rwd As RedisWatchDog
Protected count As Integer
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
' preparo update sul canale di comunicazione
Dim adesso As Date = Date.Now
Dim currStatus As New IobWinStatus
currStatus = rwd.iobStatus
' aggiorno valori, ad esempio IN da macchina, OUT verso macchina? last update = ultima comunicazione?
currStatus.lastDataIn = adesso.AddSeconds(-3)
currStatus.lastDataOut = adesso.AddSeconds(-2)
currStatus.lastUpdate = adesso
currStatus.online = chkOnline.Checked
' note libere x indicare ultimo task?
currStatus.freeNotes = $"Conteggio: {count}"
' salvo e invio
rwd.iobStatus = currStatus
count = count + 1
End Sub
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' avvio i componenti...
' tipicamente è il primo arg con cui sia vvia il sw
Dim codIob As String = "demo_conf"
txtConf.Text = codIob + ".ini"
' valori da recuperare da ini... che dovranno corrispondere nel programma che fa partire il sw
Dim tipoIob As String = "SERIAL"
Dim appName As String = "CVSER"
' 14 è normalmente libero... valori ammessi 0..15)
Dim redisDb As Integer = 14
' periodo minimo x considerare il dato variato da parte del server
Dim minSecDelta As Integer = 1
Dim adesso As Date = Date.Now
'' preparo oggetto x gestione WathDog
rwd = New RedisWatchDog(codIob, tipoIob, appName, redisDb, minSecDelta)
Dim currStatus As New IobWinStatus
currStatus = rwd.iobStatus
currStatus.freeNotes = "starting"
currStatus.online = False
' salvo e invio
rwd.iobStatus = currStatus
' avvio il timer
Timer1.Start()
End Sub
End Class