Earthquakes- wirtualka

  • 0 Odpowiedzi
  • 4186 Wyświetleń

0 użytkowników i 1 Gość przegląda ten wątek.

*

Offline andre

  • Moderator Globalny
  • ***** 258
  • 3
  • Nazwa i wersja ID: HA(AIS)+HC2 4.570,GRENTON1.0+LK v2.0+BLE+RPi...
Earthquakes- wirtualka
« dnia: Marzec 15, 2020, 09:32:56 pm »
Przedstawiam konspekt wirtualki dotyczącej trzęsień ziemi na świecie o magnitudzie powyżej 5 do nieskończoności i zachęcam do udziału w rozwoju projektu np. o ikonki, zrobienie lepszego pozycjonowania i lepszą wizualizację całości a ponieważ jest to tylko pomysł celowo nie daję vfiba a tylko ogólny, czasami działający szkielet kodu.

-- przed uruchomieniem stworzyć zmienną globalną "earthquake1" i 3 labelki o nazwach Where,Time i Magnitude
-- a poniższe wbić w pętę główną i zapisać po uzupełnieniu linii 24 o numer stworzonego urządzenia wirtualnego.
Debug=true
if Debug
  then
  fibaro:debug("_____________")
  fibaro:debug("Debug aktywny")
  end

HC3 = Net.FHttp("quakes.globalincidentmap.com")
dane=HC3:GET("/")

  temp=string.find(dane,"width:30px; height:30px")
  or string.find(dane,"width:29px; height:29px")
  or string.find(dane,"width:28px; height:28px")
  or string.find(dane,"width:27px; height:27px")
  or string.find(dane,"width:26px; height:26px")
  or string.find(dane,"width:25px; height:25px")
  or string.find(dane,"width:24px; height:24px")
  or string.find(dane,"width:23px; height:23px")
  or string.find(dane,"width:22px; height:22px")
  or string.find(dane,"width:21px; height:21px")
  or string.find(dane,"width:20px; height:20px")
  local thisdevice = xxxx -- w miejsce xxxx wstawić ID utworzonego urządzenia wirtualnego.

  if Debug
  then
  fibaro:debug ("tostring(temp) = "..tostring(temp))
  end

  if ( tonumber(earthquake1) ~=8.0)
  or tonumber(earthquake1)>=5.0
 
  then
 
  tempunit=string.sub(dane,temp -162,temp -124) --dopasować w zależności od długości stringa
  else
  tempunit=string.sub(dane,temp -162,temp -120)
 
  end

  if Debug
  then
  fibaro:debug ("tostring(tempunit) = "..tostring(tempunit))
  end

  fibaro:setGlobal("earthquake1", tempunit) --'earthquake1' stworzyć zmienną globalną

   fibaro:call(thisdevice, "setProperty", "ui.Label1.value", tostring(tempunit))
  fibaro:call(thisdevice, "setProperty", "ui.Label2.value", os.date("%d %b %Y %X"));
  fibaro:sleep (15*60*1000)