Idem pour moi sur un SynoLSBdu68 a écrit :Salut Papoo
Ton nouveau script me bloque le PI !!
[LUA] Horoscope du jour pour un signe donné
-
fredandrick65
- Messages : 121
- Inscription : 23 avr. 2016, 20:45
Re: LUA : Horoscope du jour pour un signe donné
Domoticz V3.8153 sur Synology DS3615xs DSM 5.2-5967 Update 3
RFLink_v1.1_r46 (433.92 & 433.42 Mhz)
Sonde Oregon THGR810-Prise Everspring-OWL CM180
Humidité du sol Opus XT300-Sondes Oregon pour les nuls V2
Les non-dit font les pires malentendus !
RFLink_v1.1_r46 (433.92 & 433.42 Mhz)
Sonde Oregon THGR810-Prise Everspring-OWL CM180
Humidité du sol Opus XT300-Sondes Oregon pour les nuls V2
Les non-dit font les pires malentendus !
Re: LUA : Horoscope du jour pour un signe donné
j'ai un partage sur ma freebox pour le fichier temporaire, avez vous personnalisé le script pour votre propre usage?
si vous utilisez la variable pensez à la créer auparavant
j'ai édité le code pour éviter cette erreurlocal fname ="/tmp/horoscope.xml"
--local fname ="/media/Freebox/Trend/horoscope.xml"
si vous utilisez la variable pensez à la créer auparavant
Re: LUA : Horoscope du jour pour un signe donné
Dans index.html, tu as au debut la déclaration des javascript que tu utilises, nous c'est frontpage.js et pas frontpage.min.js (version optimisée) que tu commentes par.<!-- Tu as dû faire une erreur...Doudy a écrit :Lorsque je fais ça, je n'ai plus d'image fond d'écran (fond d'écran noir)Jeff a écrit : Sinon il faut aussi penser à changer ceci dans index.htmlCode : Tout sélectionner
<script src="js/frontpage.js"></script> <!--<script src="js/frontpage.min.js"></script>-->
Moi à la ligne 585 j'ai ceci :Et rajouter la condition du "S" dans frontpage.js ligne 585Code : Tout sélectionner
if ($.PageArray[ii][0] === item.idx || $.PageArray[ii][0] === item.Name|| $.PageArray[ii][0] === "S")Je suppose que ce n'est pas là que je mets cette condition !Code : Tout sélectionner
var vdesc= $.PageArray[ii][3]; // description
Mais où ? J'ai ceci :Code : Tout sélectionner
function fct() { if ($.PageArray[ii][0] === item.idx || $.PageArray[ii][0] === item.Name) { // Domoticz idx number or device name var vtype= $.PageArray[ii][1]; // Domotitcz type (like Temp, Humidity) var vlabel= $.PageArray[ii][2]; // cell number from HTML layout var vdesc= $.PageArray[ii][3]; // description var lastseen= $.PageArray[ii][4]; // display lastseen or noT var vplusmin= $.PageArray[ii][5]; // minplus buttons var vattr= $.PageArray[ii][6]; // extra css attributes var valarm= $.PageArray[ii][7]; // alarm value to turn text to red var vdata= item[vtype]; // current value var vstatus= item.Status; var vls= item.LastUpdate; // ´Last Seen´ var vdimmercurrent= item.LevelInt; // What is the dim level //console.log(item.Name+' : '+vdata); if(vtype === 'Euro'){ vdata=item.Data; } etc....
Après pour la ligne 585, fais preuve d'adaptation tu vois bien que tu dois trouver la condition comme la mienne c'est-à-dire ici pour toi
Code : Tout sélectionner
function fct() {
if ($.PageArray[ii][0] === item.idx || $.PageArray[ii][0] === item.Name) { // Domoticz idx number or device nameCode : Tout sélectionner
if ($.PageArray[ii][0] === item.idx || $.PageArray[ii][0] === item.Name|| $.PageArray[ii][0] === "S")Version: 2023.1 sur VM Synology, docker Zwave Js UI (Z-stick GEN5, Fibaro...), Zigbeefordomoticz. Nextion RGB Led Screen
Re: LUA : Horoscope du jour pour un signe donné
Papoo,
J'ai rien compris à ta réponse ....
J'ai uniquement personnalisé l'IDX ...
J'ai rien compris à ta réponse ....
J'ai uniquement personnalisé l'IDX ...
Re: LUA : Horoscope du jour pour un signe donné
copie de nouveau le script j'ai supprimer ma personnalisation, ça devrait fonctionner pour toi maintenant
Re: LUA : Horoscope du jour pour un signe donné
Papoo,
Impec, merci à toi, maintenant je vais essayer de mettre ça dans la custom page ....
Impec, merci à toi, maintenant je vais essayer de mettre ça dans la custom page ....
Re: LUA : Horoscope du jour pour un signe donné
Bonjour à tous,
J'ai un petit soucis avec l'horoscope de @Nemesis24,
Il me remonte un defaut dans la console. Je vois bien qu'il ne comprend pas quel signe je veux, mais après plusieurs essais, je suis dans l'impasse.
Merci,
PS: il s'agit d'un excelent travail et le résultat est formidable
J'ai un petit soucis avec l'horoscope de @Nemesis24,
Il me remonte un defaut dans la console. Je vois bien qu'il ne comprend pas quel signe je veux, mais après plusieurs essais, je suis dans l'impasse.
Merci,
PS: il s'agit d'un excelent travail et le résultat est formidable
Re: LUA : Horoscope du jour pour un signe donné
Bonjour Papoo, j'ai un message d'erreur que je ne comprend pas dans le script_time_horoscope.lua.
Error: EventSystem: in /home/pi/domoticz/scripts/lua/script_time_horoscope.lua: /home/pi/domoticz/scripts/lua/script_time_horoscope.lua:38: bad argument #1 to 'sub' (string expected, got nil)
Je ne connais rien en Lua je vient de découvrir la domotique et surtout Domoticz et bien entendu Monitor
ma config :
Raspberry Pi 3+
RFXtrx433XL ProXL1
OWL Micro+ CM180
9 prise DI-O + télécommande
Plusieurs Modul éclairage DI-O & Modul prise DI-O
Z-Wave USB Dongle ZU1401
Error: EventSystem: in /home/pi/domoticz/scripts/lua/script_time_horoscope.lua: /home/pi/domoticz/scripts/lua/script_time_horoscope.lua:38: bad argument #1 to 'sub' (string expected, got nil)
Je ne connais rien en Lua je vient de découvrir la domotique et surtout Domoticz et bien entendu Monitor
ma config :
Raspberry Pi 3+
RFXtrx433XL ProXL1
OWL Micro+ CM180
9 prise DI-O + télécommande
Plusieurs Modul éclairage DI-O & Modul prise DI-O
Z-Wave USB Dongle ZU1401
Code : Tout sélectionner
--[[
name : script_time_horoscope.lua
auteur : papoo
Mise à jour : 01/04/2017 Changement de site + troncage de texte
date : 26/06/2016
Principe :
Ce script a pour but de remonter les informations du site https://astro.rtl.fr/horoscope-jour-gratuit/ dans un device texte
sur domoticz pour un signe donné et de nous alerter le cas écheant selon le niveau de notification choisi
Fil de discussion : https://easydomoticz.com/forum/viewtopic.php?f=17&t=2176&p=34662#p34662
]]--
-- ========================================================================
-- Variables à éditer
-- ========================================================================
local nom_script = "Horoscope"
local version = "1.15"
local signe = "lion" --[[ renseigner le signe choisi en minuscule sans accent : belier, taureau, gemeaux, cancer, lion, vierge,
balance, scorpion, sagittaire, capricorne, verseau, poissons ]]--
local horoscope_device = 418 -- renseigner l'id du device texte associé (dummy - text)
local horoscope_variable = nil -- renseigner le nom de la variable associée ou nil
local send_notification = 0 -- 0: notifications désactivées, 1: notifications actives
local debugging = true -- true pour voir les logs dans la console log Dz ou false pour ne pas les voir
-- ========================================================================
-- Fin Variables à éditer
-- ========================================================================
local indexArray=0
-- ========================================================================
-- Fonctions
-- ========================================================================
function voir_les_logs (s)
if (debugging) then
print ("<font color='#f3031d'>".. s .."</font>");
end
end
--==============================================================================================
function TronquerTexte(texte, nb) --texte à tronquer, nb limite de caractère à afficher
local sep ="[;!?.]"
local DernierIndex = nil
texte = string.sub(texte, 1, nb)
local p = string.find(texte, sep, 1)
DernierIndex = p
while p do
p = string.find(texte, sep, p + 1)
if p then
DernierIndex = p
end
end
return(string.sub(texte, 1, DernierIndex))
end
-- ========================================================================
-- Fin Fonctions
-- ========================================================================
commandArray = {}
time = os.date("*t")
-- if (time.hour == 00 and time.min == 20) then -- tout les matins à 00h20
-- if (time.min == 20 and ((time.hour == 7) or (time.hour == 13) or (time.hour == 18))) then -- 3 éxecutions du script par jour à 7H20, 13h20 et 18H20
-- if time.hour % 2 == 0 then -- toutes les deux heures
-- if (time.hour%1 == 0 and time.min == 10) then -- Toutes les heures et 10 minutes
if time.min% 5 == 0 then
voir_les_logs("=========== ".. nom_script .." (v".. version ..") ===========",debugging)
local fname ="/tmp/horoscope.xml"
voir_les_logs('--- --- --- debut recuperation du fichier horoscope.xml --- --- ---',debugging);
os.execute("wget -q -O " .. fname .. " https://astro.rtl.fr/horoscope-jour-gratuit/"..signe)
voir_les_logs("Fichier local : " ..fname,debugging)
local f = io.open(fname, "r")
if f == nil then
voir_les_logs("Error opening file '" .. fname .. "'.",debugging)
os.exit(1)
end
local testhtml = f:read("*all")
f:close()
voir_les_logs('--- --- --- fin recuperation du fichier horoscope.xml --- --- ---',debugging);
for instance in testhtml:gmatch("<body>(.-)</body>") do
voir_les_logs('--- --- --- boucle for --- --- --',debugging);
div, horoscope=instance:match('<h2>En résumé</h2>(.-)<p class="text">(.-)</p>')
end
horoscope = TronquerTexte(horoscope, 240)
if horoscope ~= nil and signe ~= nil then
voir_les_logs("--- --- --- ".. signe .." : ".. horoscope,debugging)
if horoscope_device ~= nil then
commandArray[indexArray] = {['UpdateDevice'] = horoscope_device..'|0|'.. horoscope}
indexArray=indexArray+1
end
if horoscope_variable ~= nil then
commandArray[indexArray] = {['Variable:'.. horoscope_variable] = tostring(horoscope)}
indexArray=indexArray+1
end
if send_notification > 0 then
commandArray[indexArray] = {['SendNotification'] = 'horoscope pour le signe du '.. signe ..'#'.. horoscope}
indexArray=indexArray+1
end
end
voir_les_logs("========= Fin ".. nom_script .." (v".. version ..") =========",debugging)
end -- if time
return commandArrayRe: LUA : Horoscope du jour pour un signe donné
ce n'est pas la dernière version du script, tu trouveras la version 1.25 sur mon github
https://github.com/papo-o/domoticz_scri ... oscope.lua
as tu fait un?
https://github.com/papo-o/domoticz_scri ... oscope.lua
as tu fait un
Code : Tout sélectionner
sudo chmod +x /home/pi/domoticz/scripts/lua/script_time_horoscope.luaRe: LUA : Horoscope du jour pour un signe donné
Bonjour papoo, j'ai lancer télécharger la dernière version et lancer la commande
tu peux m'expliquer ce que fait cette commande.
J'ai juste changer les signes et renomer mes devices texte en Horoscope 1, et Horoscope 2
Mais j'ai un message d'erreur que je ne sais pas exploiter, y a t'il quelle que chose que je ne fait pas correctement, faut il mettre mes Idx qu'elle que part, merci pour ton aide cela fait un mois que je suis dessus ne connaissant pas Lua je galère un peux beaucoup à 62 ans c'est un peut dur pour moi
Code : Tout sélectionner
sudo chmod +x /home/pi/domoticz/scripts/lua/script_time_horoscope.lua
J'ai juste changer les signes et renomer mes devices texte en Horoscope 1, et Horoscope 2
Code : Tout sélectionner
------------ Variables à éditer ------------
--------------------------------------------
local debugging = false -- true pour voir les logs dans la console log Dz ou false pour ne pas les voir
local script_actif = true -- active (true) ou désactive (false) ce script simplement
local send_notification = 0 -- 0: notifications désactivées, 1: notifications actives
local les_horoscopes = {} --[[ renseigner le signe choisi en minuscule sans accent : belier, taureau, gemeaux, cancer, lion, vierge,
balance, scorpion, sagittaire, capricorne, verseau, poissons ]]--
les_horoscopes[#les_horoscopes+1] = {device = 'Horoscope 1', signe = 'lion'}
les_horoscopes[#les_horoscopes+1] = {device = 'Horoscope 2', signe = 'balance'}
--------------------------------------------
----------- Fin variables à éditer ---------
--------------------------------------------
local nom_script = 'Horoscope'
local version = '1.25'
local horoscope = ''
local device = ''
local signe = ''
--------------------------------------------
Code : Tout sélectionner
2019-07-10 14:45:00.450 Error: EventSystem: in /home/pi/domoticz/scripts/lua/script_time_horoscope.lua: /home/pi/domoticz/scripts/lua/script_time_horoscope.lua:33: module 'fonctions_perso' not found:
2019-07-10 14:45:00.450 no field package.preload['fonctions_perso']
2019-07-10 14:45:00.450 no file '/usr/local/share/lua/5.2/fonctions_perso.lua'
2019-07-10 14:45:00.450 no file '/usr/local/share/lua/5.2/fonctions_perso/init.lua'
2019-07-10 14:45:00.450 no file '/usr/local/lib/lua/5.2/fonctions_perso.lua'
2019-07-10 14:45:00.450 no file '/usr/local/lib/lua/5.2/fonctions_perso/init.lua'
2019-07-10 14:45:00.450 no file './fonctions_perso.lua'
2019-07-10 14:45:00.450 no file '/home/pi/domoticz/scripts/lua/fonctions/fonctions_perso.lua'
2019-07-10 14:45:00.450 no file '/usr/local/lib/lua/5.2/fonctions_perso.so'
2019-07-10 14:45:00.450 no file '/usr/local/lib/lua/5.2/loadall.so'
2019-07-10 14:45:00.450 no file './fonctions_perso.so'