[awesome][batterie] alerte, batterie est vide (résolu)
[awesome][batterie] alerte, batterie est vide (résolu)
Bonjour.
J’utilise awesome, et j’aimerais savoir comment déclancher une alerte (par exemple le lancement d’un programme), quand ma batterie est en déchargement, et presque vide.
J’ai essayé de regarder un peu comment fonctionnait le widget pour la batterie dans la documentation (que j’utilise pour afficher le pourcentage de charge), mais j’ai pas trouvé comment faire.
Merci !
J’utilise awesome, et j’aimerais savoir comment déclancher une alerte (par exemple le lancement d’un programme), quand ma batterie est en déchargement, et presque vide.
J’ai essayé de regarder un peu comment fonctionnait le widget pour la batterie dans la documentation (que j’utilise pour afficher le pourcentage de charge), mais j’ai pas trouvé comment faire.
Merci !
Dernière modification par dionisos le mer. 30 mai 2012, 19:03, modifié 2 fois.
Re: [awesome][batterie] alerte quand la batterie est vide
Bonjour. Quel widget utilises tu pour afficher le poucentage de ta batterie ? un fait maison ou autre chose ? C'est pour savoir vers quoi s'orienter.
Re: [awesome][batterie] alerte quand la batterie est vide
Merci pour ton aide je commençais à desespérer ^^.
Alors j’utilise le widget de vicious comme ça:
Mais après, je ne suis pas attaché a une manière particulière de faire, j’ai fait avec vicious parce que c’était simple, et que je ne connais awesome que de manière superficielle.
Alors j’utilise le widget de vicious comme ça:
Code : Tout sélectionner
vicious.register(batwidget,vicious.widgets.bat, "bat:$1 $2% $3 ", 61, "BAT0")
Re: [awesome][batterie] alerte quand la batterie est vide
Voilà un exemple de widget qui est tiré de ma configuration (pompé d'internet puis modifié un peu cf http://blog.mitemitreski.com/2011/05/sm ... power.html) :
Si tu veux avoir le widget, ajoute le dans là où tu places les widgets vicious.
Je pense qu'avec ce code tu devrais pouvoir t'en tirer sans trop de problèmes. Si besoin redemande un peu d'aide.
Ensuite tout va dépendre du programme que tu veux lancer…
Code : Tout sélectionner
-- create image widget
-- batticon = widget({type = "imagebox"})
-- create widget
mybattmon = widget({ type = "textbox", name = "mybattmon", align = "right" })
-- define function to update battery status
function battery_status ()
local output={} --output buffer
local fd=io.popen("acpi", "r") -- read info from acpi
local line=fd:read()
local battery_load = string.match(line, "%d+%%") -- obtain percent
local time_rem = string.match(line, "(%d+\:%d+)\:%d+") -- obtain time
local discharging
if string.match(line, "Discharging") then -- discharging
discharging="<span color=\"#CC7777\">" -- red color
-- my icon
-- batticon.image=image("/home/mrmen/.config/awesome/icons/power-bat.png")
battery_load=battery_load.."</span> ("..time_rem..")"
else --charging
discharging="<span color=\"#DCDCCC\">" -- white
battery_load=battery_load.."</span>"
-- my icon
-- batticon.image=image("/home/mrmen/.config/awesome/icons/power-ac.png")
end
table.insert(output, discharging..battery_load)
line=fd:read() --read next line
return table.concat(output," ")
end
-- at awesome launch, update battery status
mybattmon.text = battery_status()
-- add a timer
my_battmon_timer=timer({timeout=60})
my_battmon_timer:add_signal("timeout", function()
mybattmon.text = " " .. battery_status() .. " "
end)
-- start timer
my_battmon_timer:start()
Je pense qu'avec ce code tu devrais pouvoir t'en tirer sans trop de problèmes. Si besoin redemande un peu d'aide.
Ensuite tout va dépendre du programme que tu veux lancer…
Re: [awesome][batterie] alerte quand la batterie est vide
Merci !, j’ai regardé en diagonale, et j’pense que je vais pouvoir m’en sortir avec ça.
Sinon je pense que le programme, ça sera juste une console avec un message d’aversissement, ça fait trois fois que je ne fais pas attention à la batterie, et que du coup, mon portable se coupe en pleine activitée, avec ça je ne me ferais plus avoir.
Je regarde plus précisement demain, j’vais aller dormir, et je te tiens au courant.
Sinon je pense que le programme, ça sera juste une console avec un message d’aversissement, ça fait trois fois que je ne fais pas attention à la batterie, et que du coup, mon portable se coupe en pleine activitée, avec ça je ne me ferais plus avoir.
Je regarde plus précisement demain, j’vais aller dormir, et je te tiens au courant.
Re: [awesome][batterie] alerte quand la batterie est vide
Content que ça ait l'air de te convenir. Si c'est pour ce type de programme, alors pas de soucis ça devrait passer : comme une lettre à la poste ! Jette aussi un oeil à notify…
Re: [awesome][batterie] alerte quand la batterie est vide
Voilà, j’ai modifié la fonction battery_status comme ça:
et ça marche comme il faut, merci encore !
Code : Tout sélectionner
do
local alert_run = false
local hibernation_run = false
function battery_status ()
local output={} -- output buffer
local fd=io.popen("acpi", "r") --read info from acpi
local line=fd:read()
local return_value = "bug"
if(line ~= nil)then
local battery_load = string.match(line, "(%d+)%%") --obtain percent
local time_rem = string.match(line, "(%d+\:%d+)\:%d+") --obtain time
local discharging
if string.match(line, "Discharging") then -- discharging
discharging="<span color=\"#CC7777\">" --red color
--my icon
-- batticon.image=image("/home/mrmen/.config/awesome/icons/power-bat.pngé")
if(tonumber(battery_load) < 20)and not(alert_run)then
alert_run = true
awful.util.spawn(terminal_cmd .. "/home/dionisos/script/alert_bat")
end
if(tonumber(battery_load) < 10)and not(hibernation_run)then
hibernation_run = true
awful.util.spawn(terminal_cmd .. "/home/dionisos/script/hibernation")
end
battery_load=battery_load.."%</span> ("..time_rem..") "
else --charging
discharging="<span color=\"#DCDCCC\">" --white
battery_load=battery_load .."%</span>"
alert_run = false
hibernation_run = false
-- --my icon
-- batticon.image=image("/home/mrmen/.config/awesome/icons/power-ac.png")
end
table.insert(output, discharging..battery_load)
line=fd:read() --read next line
return_value = table.concat(output," ")
else
return_value = "no bat"
end
return return_value
end
end
Dernière modification par dionisos le lun. 04 juin 2012, 20:36, modifié 3 fois.
Re: [awesome][batterie] alerte, batterie est vide (résolu)
Content que ça ait convenu. 
