Italian B4A vs Shelly

MARCO C.

Active Member
Licensed User
Longtime User
Buon sabato a tutti,

dovrei inviare il seguente comando verso un dispositivo shelly

http://192.168.xxx.xxx/relay/0?turn=toggle

Come posso inviarlo tramite B4A ?

pensavo di utilizzare

B4X: Copy
Dim wjob As HttpJob
    wjob.Initialize("",Me)
      
    wjob.PostString( "http://192.168.xxx.xxx/relay/0?turn=toggle", ????? )
    
    Wait For (wjob) JobDone(wjob As HttpJob)
    If wjob.Success Then

ma non saprei come utilizzarlo !!
Grazie in anticipo
 
Devi prima scoprire se si tratta di una richiesta GET o POST.
????? = stringa di dati o parametri di post

POST:
B4X: Copy
wjob.PostString( "http://192.168.xxx.xxx/relay/0", "turn=toggle" )


Una richiesta GET è davvero semplice:
B4X: Copy
wjob.Download("http://192.168.xxx.xxx/relay/0?turn=toggle")

Quindi inviare la richiesta e ottenere risposta:
B4X: Copy
dim response as string = wjob.GetString
 
Grazie per la celere risposta,
Get o Post ?? bella domanda

Mi dice il tecnico che lui lancia il comando da un semplice pagina web di un browser su rete locale ... e sinceramente non so se Shelly invia poi una risposta.
Come mi consegna il primo Shelly faccio delle prove.
Grazie mille
 
Grazie per la celere risposta,
Get o Post ?? bella domanda

Mi dice il tecnico che lui lancia il comando da un semplice pagina web di un browser su rete locale ... e sinceramente non so se Shelly invia poi una risposta.
Come mi consegna il primo Shelly faccio delle prove.
Grazie mille

Se lo avvii semplicemente dal browser web, sarà un comando GET.

prego
 
Cosa succede se tu digiti l'indirizzo nel tuo browser? Ti restituisce una pagina di conferma o di stato?

Ancora non mi ha consegnato Shelly ... quindi non saprei . Stavo impostando le basi per fare il test.

Scusa, ma a questo punto ,se devo attendermi una risposta la tecnica è sempre la stessa ??

B4X: Copy
Dim wjob As HttpJob
    wjob.Initialize("",Me)
       
    wjob.Download("http://192.168.xxx.xxx/relay/0?turn=toggle")
   
    Wait For (wjob) JobDone(wjob As HttpJob)
    If wjob.Success Then
        Dim res As String = wjob.GetString
               
        Dim json As JSONParser
        Try
            json.Initialize( res )
           
        Catch
            ToastMessageShow("Text: Could not initialize json...", False)
            ProgressDialogHide
            Return
        End Try
        .
        .
        etc etc.
 
Back
Top