Pagina 1 di 1

Il protocollo EgoClient e Visual Basic

Inviato: 12/12/2011, 17:50
da MrSEO
Salve a tutti,
sono tornato a guastarvi le feste...ma dopotutto a cosa serve un forum se non a condividere scoperte e problemi? :lol:
Mi sono messo in testa di realizzare un'applicazione Visual Basic 6 per controllare alcuni stati del mio impianto e che da buon cultore dell'opensource avrei postato qui nel forum; lo so, lo so, VB6 è un pò vecchiotto ma permettetemi di giocare con gli strumenti che conosco...sono un dev vecchio e un pò arrugginito!

Ho realizzato una banale form che attraverso il controllo OCX Winsock dovrebbe ascoltare la centrale sulla porta 215:

Codice: Seleziona tutto

Private Sub cmdConnect_Click()
    sockMain.RemoteHost = txtHost.Text 'qui inserisco l'ip della centrale
    sockMain.RemotePort = txtPort.Text ' qui la porta 215
    sockMain.Connect
End Sub

Private Sub sockMain_DataArrival(ByVal bytesTotal As Long)
    Dim strData As String
   
    sockMain.GetData strData, vbString
    txtStatus.Text = txtStatus.Text & _
       strData & vbCrLf
End Sub
Ma purtroppo nulla accade. :(
L'evento "DataArrival" si dovrebbe scatenare non appena arriva qualche messaggio ma...niente.
Qualcuno saprebbe darmi un aiutino?
Grazie 1000
MrSeo

Re: Il protocollo EgoClient e Visual Basic

Inviato: 13/12/2011, 16:20
da alby_egodom3
Buongiorno,

la sola connessione non implica l'invio di un qualsiasi dato da parte della centrale.
Infatti una volta connessi bisogna inviare alla centrale il messaggio SX_NEWSOCK la
quale risponde con un msg RX_CODPIN con valore 1.
Da quel momento in poi la centrale invia i dati ( temperature , stati rele , etc ).

2 considerazioni
- i msg iniziali cambiano se è stato inpostato il codice PIN.
- dopo la certifica della connessione da parte della centrale
per conoscere tutti gli oggetti presenti nell'impianto è
necessario chiederli con i msg appositi , ad esempio:
SX_SQL_PIANI
SX_SQL_SCENARI
SX_SQL_DISPOSITIVI

Nella documentazione del protocollo ci sono i msg e i modi di utilizzo.
Se non è chiaro qualcosa mi faccia sapere.

Re: Il protocollo EgoClient e Visual Basic

Inviato: 15/12/2011, 17:52
da MrSEO
Ciao Alby (ti prego dammi del "tu") ;)
perdonami ma non riesco a trovare da nessuna parte il significato (o la composizione) del messaggio:"SX_NEWSOCK".
Ho cercato sia nella documentazione del protocollo (1.0.3) sia nel codice open source del Keydome 3.
Sapresi aiutarmi?
Grazie e buone feste!

Re: Il protocollo EgoClient e Visual Basic

Inviato: 19/12/2011, 15:39
da Mat_Egodom3
Buongiorno mrSeo,
il comando SX_NEWSOCK corrisponde a quello che nella documentazione si chiama C_Richiesta_Codice.
Deve essere assolutamente il primo comando da inviare per poter ricevere i dati.
La centrale risponderà con il messaggio C_Invio_Codice che corrisponde a RX_CODPIN.

Saluti