Page 5 sur 9
Re: LUA : Horoscope du jour pour un signe donné
Publié : 31 mars 2017, 15:32
par Nemesis24
humm ! j'utilise vdesc autrement moi alors essaye de mettre
et remplace
par
Re: LUA : Horoscope du jour pour un signe donné
Publié : 31 mars 2017, 15:42
par vil1driver
tu peux mettre le script en pause, pointer sur un élément html pour obtenir le code, éditer modifier tout ou partie..etc..
la console de dev permet beaucoup, mais il faut s'y mettre..
c'est l'outil de débug par excellence.
Re: LUA : Horoscope du jour pour un signe donné
Publié : 31 mars 2017, 15:43
par Nemesis24
Re: LUA : Horoscope du jour pour un signe donné
Publié : 31 mars 2017, 15:52
par Doudy
Nemesis24 a écrit :humm ! j'utilise vdesc autrement moi alors essaye de mettre
et remplace
par
Hé bien négatif

Re: LUA : Horoscope du jour pour un signe donné
Publié : 31 mars 2017, 23:57
par Jeff
Nemesis24 a écrit :mets dans index. html en fin de page apres les popups
Code : Tout sélectionner
<div id="popup_horoscope"><script src="http://www.astroo.com/_horoscope_astrologie.js" charset="ISO-8859-1"></script></div>
mets dans frontpage .js
tout au début
puis dans les lignes ou on ajoutes les unités
Code : Tout sélectionner
} else if (vtype === "Horoscope") {//horoscope
vdata = HOIN[vdesc];
}
enfin dans frontpage-settings
"0 Belier"," 1 Taureau"," 2 Gemeaux"," 3 Cancer"," 4 Lion"," 5 Vierge"," 6 Balance"," 7 Scorpion"," 8 Sagittaire"," 9 Capricorne"," 10 Verseau"," 11Poissons"
a voir sur mon git
https://github.com/Nemesis24/monitor-ma ... 0949d219b3
et du coup plus de problèmes, en plus on ne polue pas domoticz d'une info qui n'a absolument aucun rapport avec la domotique.

Pour moi ca marche, merci @Nemesis24
Impressionnant le lien github qui résume tous les changements à faire
Je ne comprends toujours pas bien le principe des popups, mais cela semble utile d’après mes essais.
Sinon il faut aussi penser à changer ceci dans index.html
Code : Tout sélectionner
<script src="js/frontpage.js"></script>
<!--<script src="js/frontpage.min.js"></script>-->
Et rajouter la condition du "S" dans frontpage.js ligne 585
Code : Tout sélectionner
if ($.PageArray[ii][0] === item.idx || $.PageArray[ii][0] === item.Name|| $.PageArray[ii][0] === "S")
Re: LUA : Horoscope du jour pour un signe donné
Publié : 01 avr. 2017, 00:01
par Nemesis24
Super !
@jeff tu n'a rien fais de plus que ce que j'ai indiqué... pour renseigner @Doudy, je n'ai pas eu le temps du tout de me plonger la dessus.
Re: LUA : Horoscope du jour pour un signe donné
Publié : 01 avr. 2017, 08:53
par Doudy
Jeff a écrit :
Sinon il faut aussi penser à changer ceci dans index.html
Code : Tout sélectionner
<script src="js/frontpage.js"></script>
<!--<script src="js/frontpage.min.js"></script>-->
Lorsque je fais ça, je n'ai plus d'image fond d'écran (fond d'écran noir)
Et rajouter la condition du "S" dans frontpage.js ligne 585
Code : Tout sélectionner
if ($.PageArray[ii][0] === item.idx || $.PageArray[ii][0] === item.Name|| $.PageArray[ii][0] === "S")
Moi à la ligne 585 j'ai ceci :
Je suppose que ce n'est pas là que je mets cette condition !
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....
Re: LUA : Horoscope du jour pour un signe donné
Publié : 01 avr. 2017, 11:36
par Nemesis24
Doudy a écrit :
Lorsque je fais ça, je n'ai plus d'image fond d'écran (fond d'écran noir)
Je penses pas que cela devrait changer quoi que ce soit, par contre si tu modifie frontpage.js, c'est bien entendu celui ci qui doit être chargé dans index.html
Re: LUA : Horoscope du jour pour un signe donné
Publié : 01 avr. 2017, 15:22
par papoo
Pour ceux qui souhaitent continuer à utiliser le script lua, je viens de faire plusieurs modifications au script de la première page (page que je ne peux plus modifier)
Nouveau changement de site, possibilité d'afficher l'horoscope dans une variable, troncage du texte à afficher..
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 = "cancer" --[[ renseigner le signe choisi en minuscule sans accent : belier, taureau, gemeaux, cancer, lion, vierge,
balance, scorpion, sagittaire, capricorne, verseau, poissons ]]--
local horoscope_device = 342 -- 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% 2 == 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 commandArray
Re: LUA : Horoscope du jour pour un signe donné
Publié : 01 avr. 2017, 19:14
par LSBdu68
Salut Papoo
Ton nouveau script me bloque le PI !!