Asystent AI
Wysyłanie danych z ...
 
Powiadomienia
Wyczyść wszystko

Wysyłanie danych z Domoticz do Thingspeak - Rozwiązanie

22 Wpisów
4 Użytkownicy
2 Reactions
5,142 Wyświetleń
(@elpaul)
Wpisów: 17
Praktykant
Autor tematu
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 
[#954]

Dzień dobry.

Potrzebuję wysyłać w interwałach co 3 minuty dane z 6 czujników z Domoticza do thingspeak. Przy wykorzystaniu send to http udaję mi się wysyłać jeden. Czy ktoś jest mi w stanie pomóc znaleźć rozwiązanie? Niestety nie znam języków programowania by napisać samemu skrypt.

EDIT.

Znalazłem na francuskich stronach skrypt LUA.

Gdyby komuś miał się przydać: https://pon.fr/exporter-des-donnees-vers-le-site-thingspeak/


 
Dodane : 11/05/2019 8:39 am
goofas zareagował
(@goofas)
Wpisów: 29
Praktykant
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

witam dzięki za skrypt @elpaul ale nie mogę poradzić sobie z jednym ... mam czujnik temp + wilgotność i za nic nie wiem jak to ustawić aby z jendego urządzenia wysyłał dane do field 1 i 2 wysyła mi tylko temperaturę a wilgotnosci już niestety nie lub np 2 czujniki mam do jednego urządzenia (2 temperatury)


 
Dodane : 05/07/2019 11:12 am
(@elpaul)
Wpisów: 17
Praktykant
Autor tematu
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

Nie chciało mi się tłumaczyć z francuskiego, ale wszystko na tyle logiczne, że w sumie nie trzeba.

Skrypt nie mój, ale z moimi modyfikacjami.

Popatrz na mój czujnik "Klimat w domu". Wysyłam (dla testu) temperaturę, wilgotność i ciśnienie z jednego BME280 na 3 osobne fieldy thingspeak. W "canal=" podajesz który parametr z czujnika ma wysyłać do danego fielda.

Wpisz swój write key 😀


 
Dodane : 05/07/2019 3:06 pm
goofas zareagował
(@goofas)
Wpisów: 29
Praktykant
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

wielkie dzięki działa 


 
Dodane : 05/07/2019 4:40 pm
(@korzeniewski36)
Wpisów: 29
Praktykant
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

Witam, w jakiej formie wpisac swoją nazwę użytkownika i hasło domoticza przed adresem bo nie za bardzo wiem jak....


 
Dodane : 18/09/2019 5:28 pm
(@goofas)
Wpisów: 29
Praktykant
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

@korzeniewski36

ja mam bez loginu i hasła ale w ustawieniach domoticza mam zaznaczone, ze nie wymaga logowania z mojej sieci.


 
Dodane : 19/09/2019 7:06 am
(@elpaul)
Wpisów: 17
Praktykant
Autor tematu
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

@korzeniewski36

nie jest potrzebne dla tego skryptu używanie loginu i hasła. Nie rozumiem twojego pytania.


 
Dodane : 19/09/2019 7:21 am
kniazio
(@kniazio)
Wpisów: 210
Pomocny Donator 2K21
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

A ja nie moge za cholere zmusic skryptu aby zapisywal mi dane pod wskazany przeze mnie field. Usilnie zapisuje pod jeden field

Posiadam czujnik od stacji pogody ktory odczytuje temp+humi .

Skrypt wysyla dane do thingspeak w postaci:

2019-11-03 13:40:17.851 Status: LUA: --- --- ---  http://XXXXXXXXXXX:XXXX/update?key=XXXXXXXXXXXXXXX&field3=16.3;68;3&field4=16.3;68;3 

2019-11-03 13:40:17.851 Status: EventSystem: Fetching URL http://XXXXXXXXXX:XXXX/update?key=XXXXXXXXXXXXXXX&field3=16.3;68;3&field4=16.3;68;3 after 0.2 seconds...

2019-11-03 13:40:17.851 Status: EventSystem: Script event triggered: Thingspeak

2019-11-03 13:40:39.128 Status: LUA: Export_ThingSpeak.lua

2019-11-03 13:40:39.128 Status: LUA: --- --- --- Export vers ThingSpeak : 13:40

2019-11-03 13:40:39.128 Status: LUA: Tunex = 16.3;68;3

2019-11-03 13:40:39.128 Status: LUA: --- --- --- Heure actuelle : 13:40

2019-11-03 13:40:39.128 Status: LUA: --- --- --- &field3=16.3;68;3

2019-11-03 13:40:39.128 Status: LUA: Tunex = 16.3;68;3

2019-11-03 13:40:39.128 Status: LUA: --- --- --- Heure actuelle : 13:40

2019-11-03 13:40:39.128 Status: LUA: --- --- --- &field3=16.3;68;3&field4=16.3;68;3

2019-11-03 13:40:39.128 Status: LUA: --- --- --- http://XXXXXXXXX:XXXX/update?key=XXXXXXXXXXXXXXXX&field3=16.3;68;3&field4=16.3;68;3

 
Dodane : 03/11/2019 2:59 pm
kniazio
(@kniazio)
Wpisów: 210
Pomocny Donator 2K21
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

Czy ktos tu wogole zaglada??


 
Dodane : 09/11/2019 7:21 am
(@elpaul)
Wpisów: 17
Praktykant
Autor tematu
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

Która wersja skryptu? Pierwsza czy druga?


 
Dodane : 09/11/2019 8:04 am
kniazio
(@kniazio)
Wpisów: 210
Pomocny Donator 2K21
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

A sam nie wiem.

--[[script_time_export_ThingSpeak.lua
auteur : papoo
version : 1.10
date : 18/05/2016
Principe :
exporter les données de compteurs, Températures, etc.. sur le site thingspeak.com
limite de "field" par "channel" = 8
Le script est lu toutes les minutes mais n'exporte les données que toutes les 4 minutes (temps modifiable ligne 40)
]]--

-- ============================================================================
-- Variables
local debugging = true -- true ou false

local url = '192.168.1.154:8084' -- user:pass@ip:port de domoticz
local url_thingspeak = 'http://192.168.1.154:3000/'
local API_key = 'YRWL7LACTDJSRBDA' -- API Write KEY ThingSpeak

local les_devices = {}; -- pas plus de 8 devices
-- 1er compteur : name ="nom du device 1", field=field ThingSpeak associé
les_devices[#les_devices+1] = {name="Tunex", field=3}
-- 2eme compteur : name ="nom du device 2", field=field ThingSpeak associé
-- les_devices[#les_devices+1] = {name="Tunex", field=4, nom="2", canal="2"}
-- 3eme compteur : name ="nom du device 3", field=field ThingSpeak associé
-- les_devices[3] = {name="Compteur Gaz", field=3}
-- les_devices[4] = {name="Compteur Prises", field=4}
-- les_devices[5] = {name="Compteur Lumières", field=5}
-- les_devices[6] = {name="Compteur Technique", field=6}
-- les_devices[7] = {name="DJU", field=7}

local fields =""
-- ============================================================================
commandArray = {}
function voir_les_logs (s)
if (debugging) then
print (s);
end
end

now=os.date("*t")
if now.min % 4 == 0 then -- export des données toutes les 4 minutes
print('Export_ThingSpeak.lua')
voir_les_logs("--- --- --- Export vers ThingSpeak : "..now.hour.. ":" ..now.min,debugging);
for i,d in ipairs(les_devices) do
v=otherdevices[d.name] -- v is the value attached to device d
voir_les_logs(d.name.." = "..(v or "nil"),debugging);
voir_les_logs("--- --- --- Heure actuelle : ".. now.hour .. ":" ..now.min,debugging);
if v==nil or v=="" or v=="Open" then -- multi valued ?
v=otherdevices_svalues[d.name] or ""
voir_les_logs("--- --- --- ".. d.name .." = ".. v .." & field".. d.field ,debugging);
end
fields = fields .. '&field'.. d.field .. '=' .. v
voir_les_logs("--- --- --- " .. fields ,debugging);

end
voir_les_logs("--- --- --- ".. url_thingspeak ..'update?key=' .. API_key .. fields ,debugging);
commandArray[1]={['OpenURL']=url_thingspeak ..'update?key=' .. API_key .. fields }

end -- if now
-- ============================================================================
return commandArray


 
Dodane : 09/11/2019 8:33 am
(@elpaul)
Wpisów: 17
Praktykant
Autor tematu
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

No to nie będzie działać, bo ten skrypt czyta tylko jedną wartość z czujnika.

Użyj skryptu z mojego drugiego postu. Tam określasz którą wartość jeżeli czujnik podaje więcej niż jedną ma wysyłać.


 
Dodane : 09/11/2019 8:46 am
kniazio
(@kniazio)
Wpisów: 210
Pomocny Donator 2K21
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

Ten twoj tez probowalem

 


 
Dodane : 09/11/2019 8:53 am
kniazio
(@kniazio)
Wpisów: 210
Pomocny Donator 2K21
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

Twoj wywala cos takiego. Mimo ze ustawiony jest field 3 to laduje do field 1.
2019-11-09 07:57:00.207 Status: LUA: =========== export ThingSpeak (v1.2) ===========

2019-11-09 07:57:00.207 Status: LUA: --- --- --- Export vers ThingSpeak : 7:57

2019-11-09 07:57:00.208 Status: LUA: --- --- --- Tunex = 8.6;88;3

2019-11-09 07:57:00.208 Status: LUA: --- --- --- canal = 1

2019-11-09 07:57:00.208 Status: LUA: --- --- --- valeurs multiples dans Tunex = 8.6;88;3

2019-11-09 07:57:00.208 Status: LUA: --- --- --- Nb de point virgule = 2

2019-11-09 07:57:00.208 Status: LUA: --- --- --- valeur 1 = 8.6

2019-11-09 07:57:00.208 Status: LUA: --- --- --- valeur 2 = 88

2019-11-09 07:57:00.208 Status: LUA: --- --- --- valeur 3 = 3

2019-11-09 07:57:00.208 Status: LUA: --- --- --- valeur 4 = nil

2019-11-09 07:57:00.208 Status: LUA: --- --- --- valeur 5 = nil

2019-11-09 07:57:00.208 Status: LUA: --- --- --- http://192.168.1.154:3000/update?key=YRWL7LACTDJSRBDA&field1=8.6

2019-11-09 07:57:00.208 Status: LUA: ========= Fin export ThingSpeak (v1.2) =========
Jak ustawic zeby ladowal temp do field 3 a humi do field4 albo chociaz samo temp do field 3
2019-11-09 07:57:00.208 Status: EventSystem: Fetching URL http://192.168.1.154:3000/update?key=YRWL7LACTDJSRBDA&field1=8.6 after 0.2 seconds...
local nom_script = "export ThingSpeak"
local version = "1.2"
local debugging = true -- true pour voir les logs dans la console log Dz ou false pour ne pas les voir
local url_thingspeak = 'http://192.168.1.154:3000/'
local API_key = 'YRWL7LACTDJSRBDA' -- creer une variable de type chaine contenant votre code API Write KEY ThingSpeak
-- si vous souhaitez remonter les valeurs d'un device qui en comporte plusieurs (ex: température et hygrometrie extérieure)
-- renseigner le nom de la valeur à remonter (à partir de la deuxieme valeur) ainsi que le numero d'ordre dans canal (voir exemple ci dessous field 7 )
local les_devices = {}; -- pas plus de 8 devices
-- 1er compteur : device ="nom du device 1", field=field ThingSpeak associé, nom=nom du device si canal >1, canal=si valeur multiple n° du canal à utiliser
les_devices[#les_devices+1] = {device="Tunex", field="3", nom="", canal="1"}
-- 2eme compteur : device ="nom du device 2", field=field ThingSpeak associé
-- les_devices[#les_devices+1] = {device="Tunex", field="3", nom="2", canal="2"}

 


 
Dodane : 09/11/2019 9:02 am
(@elpaul)
Wpisów: 17
Praktykant
Autor tematu
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

Patrz na czujniki o tej samej nazwie u mnie:

les_devices[#les_devices+1] = {device="Oregon BTH", field=1, nom="", canal="1"}
les_devices[#les_devices+1] = {device="Oregon BTH", field=2, nom="", canal="2"}
les_devices[#les_devices+1] = {device="Ciśnienie", field=3, nom="", canal=""}
les_devices[#les_devices+1] = {device="Oregon Wiatr", field=4, nom="", canal="3"}
les_devices[#les_devices+1] = {device="Oregon Wiatr", field=5, nom="", canal=""}
les_devices[#les_devices+1] = {device="Open UV - UV", field=6, nom="", canal=""}
les_devices[#les_devices+1] = {device="Oregon Deszcz", field=7, nom="", canal=""}

 
Dodane : 09/11/2019 9:15 am
kniazio
(@kniazio)
Wpisów: 210
Pomocny Donator 2K21
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

No i.....?

A daj Oregon BTH pod field 4 i 5 i zobaczysz co bedzie. Czy nie bedzie go ladowac do field 1 i 2.

Mam ustawiony czujnik identycznie jak u ciebie
les_devices[#les_devices+1] = {device="Tunex", field="3", nom="", canal="1"}

Jest ustawiony na field 3 a laduje go pod field 1 . Dlaczego?


 
Dodane : 09/11/2019 9:22 am
kniazio
(@kniazio)
Wpisów: 210
Pomocny Donator 2K21
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

Co robi parametr nom='' '' ?

 


 
Dodane : 09/11/2019 9:23 am
(@elpaul)
Wpisów: 17
Praktykant
Autor tematu
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

@kniazio

nom to własna nazwa fielda którą ma wysyłać jeżeli chcesz

Thingspeak zawsze będzie zaczynał od pierwszego fielda w tym przypadku.


 
Dodane : 09/11/2019 9:35 am
kniazio
(@kniazio)
Wpisów: 210
Pomocny Donator 2K21
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

No to jak mam ustawic zeby wysylal mi Tunex pod field 3 zamiast pod field 1 ?

Bo z tego co obserwuje to nie ma szans zeby skrypt wysylal mi dane pod field ktory ja chce a nie pod ktory on chce:)


 
Dodane : 09/11/2019 9:41 am
(@elpaul)
Wpisów: 17
Praktykant
Autor tematu
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

W takim przypadku musisz coś wysyłać pod field 1 i 2

Albo w ustawieniach thingspeaka dezaktywować field 1 i 2


 
Dodane : 09/11/2019 9:56 am
Strona 1 / 2
Udostępnij: