Pagina 2 di 78

Re: [Proposta] sviluppo programma antifurto pc

Inviato: sabato 12 settembre 2009, 20:29
da pico977
Graziosa questa idea

Speriamo che vadi in porto...

Re: [Proposta] sviluppo programma antifurto pc

Inviato: domenica 13 settembre 2009, 6:09
da reahel93
Ho dei problemi notevoli di connessioni in questi giorni... grossi danni sulla linea in tutta la cittá... azz...

Stó sistemando delle cosine... Ho unito in uno solo script le due parti di codice che ho postato, e pare funzionino.
Per ora l'ho lasciato con vlc, non me ne vogliate, ma mi piace troppo...:)
Quindi deve essere installato... o combiate le impostazioni... lo script toglie mute, se é attivato e ne alza a palla il volume.
Per ora ho risolto il tutto cosí(funziona per gnome):
dobbiamo avere impostato uno screensaver e disattivare la possibilitá di cambiare l'utente nella schermata del blocco schermo (altrimenti possono arrivare ai controlli per spegnere il pc).
Cambiamo il proprietario dello script e lo mettiamo come root (cosí che possa girare anche quando il blocca schermo é attivato)[sudo chown root nomefile.py]
Facciamo partire il programma ma in un o da un terminale.
Automaticamente parte il blocca schermo. Se tolgo batterie o AC, l'allarme si mette a squillare, al massimo del volume. Se tolgo entrambe...hahhhaha!
Se entro nelle console tty1, etc... l'allarme continua a suonare e pure li ovviamente mi viene chiesto username e password.
Per disattivarlo, devo loggarmi, e con ctrl+c nel terminale con processo attivo, lo posso bloccare.
Se lo script parte senza funzionare in un terminale, quando mi riloggo devo killare nomeprogramma.py ma vcl continua a suonare... come processo zombie(che paura... pure incacchiato...strilla...:) ).
Devo quindi con dipof vlc trovare il pid del processo e poi killarlo (almeno questo é il modo che ho usato).
Nel frattempo il frastuono continua... anche se ovviamente posso togliere il volume e lavorare con calma :)
Per questo la mia precisazione anteriore "in un o da un terminale", per rendere la cosa piú spicciola.
Possiamo mettere la cartella con lo script e il file in home e creare un collegamento sul desktop, ad esempio, per far partire il programma (che chiede la password di root per fare il suo lavoro).

Cosa manca? Che premendo col tasto di spegnimento si spegne tutto(acc...). Voglio bloccarlo, ma solo durante il blocca schermo. Non stó trovando il modo di farlo. E resta poi la questione dei comandi sul kernel... personalmente non li voglio disattivare. Ad ognimodo nel forum trovate come disattivarli, o controllare se li avete attivi.
Tra l'altro questo ladro deve saperne un pó di pc per usare questo metodo, e sapere che il pc tiene questo tipo di allarme.

@pico977 ...visto...giá funziona...
@kokito... pardon per il formato di compressione audio... ho fatto di corsa e non mi ero accorto che era 7z.
Lo cambio appena la connessione regge un pó.

Re: [Proposta] sviluppo programma antifurto pc

Inviato: domenica 13 settembre 2009, 6:10
da reahel93

Codice: Seleziona tutto

#! /usr/bin/python
# -*- coding: UTF-8 -*-

import commands

alimentazione = commands.getstatusoutput("on_ac_power")
batteria = commands.getstatusoutput("sudo cat /proc/acpi/battery/*/state | grep present:")
commands.getstatusoutput("gnome-screensaver-command --lock")

#commands.getstatusoutput("kdesktop_lock") dovrebbe essere per kde, per far partire il lock screen

while alimentazione[0] == 0 and batteria[1]== "present:                 yes":

        alimentazione = commands.getstatusoutput("on_ac_power") 
        batteria = commands.getstatusoutput("sudo cat /proc/acpi/battery/*/state | grep present:")
        
else:
        commands.getstatusoutput('amixer set Master on')
        commands.getstatusoutput('amixer set Master 100%')
        commands.getstatusoutput('cvlc  --volume 700 sc --loop allarme.wav')
        
Beccatevi stó allegato... ditemi cosa ne pensate. Mi preoccupa che con la pressione del tasto di spegnimento si spenga il pc.
Purtroppo non trovo nulla di semplice per sistemare la cosa...

Re: [Proposta] sviluppo programma antifurto pc

Inviato: domenica 13 settembre 2009, 12:09
da Ivan!
L'archivio non si estrae, è corrotto. :-\

Comunque ho cambiato un pò quello che hai scritto, in pratica l'effetto è lo stesso, ma, per esempio invece di usare cat/grep usa la funzione read() di python.
;)

Codice: Seleziona tutto

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import commands
import os

folder_alim = "/proc/acpi/ac_adapter"
folder_batt = "/proc/acpi/battery"

DEV_alim = os.listdir(folder_alim)[0]
DEV_batt = os.listdir(folder_batt)[0]

file_alim = os.path.join(folder_alim, DEV_alim, "state")
file_batt = os.path.join(folder_batt, DEV_batt, "state")

# GNOME
#commands.getstatusoutput("gnome-screensaver-command --lock")
# KDE
#commands.getstatusoutput("kdesktop_lock")

def LeggiFile():
	# Apro i file e li leggo
	f_alim = open(file_alim, "r")
	f_batt = open(file_batt, "r")

	# Leggo
	data_alim = f_alim.read()
	data_batt = f_batt.read()

	# Chiudo i file
	f_alim.close()
	f_batt.close()

	# Controllo alimentazione
	state_alim = data_alim.splitlines()[0]
	if "on-line" in state_alim:
		# L'alimentazione e' presente
		ALIM = True
	else:
		ALIM = False

	# Controllo batteria
	state_batt = data_batt.splitlines()[0]
	if "yes" in state_batt:
		# La batteria e' presente
		BATT = True
	else:
		BATT = False

	TOT = ALIM and BATT
	print "%s = %s and %s" % (str(TOT), str(ALIM), str(BATT))
	return TOT

TOT = LeggiFile()

while TOT == True:
	TOT = LeggiFile()
else:
	# Scatta l'allarme
	commands.getstatusoutput('amixer set Master on')
	commands.getstatusoutput('amixer set Master 100%')
	commands.getstatusoutput('cvlc  --volume 700 sc --loop allarme.mp3')
Per provarlo basta mettere un file allarme.mp3 nella cartella dove c'è questo file.

@kokito
Immagino che ci voglia un'interfaccia grafica?!
Secondo me sarebbe molto più comodo, magari che si minimizza tutto nell'icona nella tray, quindi non da neanche noia, e quando ci si clicca si mostra, con tutte le opzioni.
giusto?

Se si, se hai un'idea di come vorresti l'interfaccia grafica, fai uno schizzo e postalo ;)

Re: [Proposta] sviluppo programma antifurto pc

Inviato: domenica 13 settembre 2009, 23:16
da reahel93
Purtroppo mi é caduta la connessione mentre lo stavo mettendo.
Non só quando sistemeranno la cosa, poi é domenica... figurati se lavorano...
Stó avendo internet per lasso di tempo di 10-15 secondi, poi la linea cade per tempo imprecisato e si riconnettere per un altro piccolo intervallo di tempo. Forse ora vá...
Ora copio il tuo codice e me lo studio.
Non ho fatto nulla di che nella cartella, ho solo organizzato le cose per agevolarne le prove; ora dovrebbe andare.
Non riesco a trovare come bloccare il tasto fisico dello spegnimento mentre il programma funziona. Non só se l'hai giá messo nel codice.
Purtroppo inizio a cercare ste cose sul web e la linea cade.
[grazie per le modifiche, magari cosí imparo a programmare e la cosa non mi dispiacerebbe]

EDIT
Geniale come richiami la funzione di lettura dello stato batteria e AV. Ad ogni modo direttamente con bash, uno risparmierebbe righe di programma. Non vedo l'ora di leggere come te la caverai con la grafica... :)

Re: [Proposta] sviluppo programma antifurto pc

Inviato: domenica 13 settembre 2009, 23:31
da Ivan!
No per adesso non l'ho messo, ma ho provato un pò a cercare anche io...
;)

Avevo pensato a mettere, che suona anche se chiudi lo schermo :D

Re: [Proposta] sviluppo programma antifurto pc

Inviato: lunedì 14 settembre 2009, 0:02
da reahel93
Buona idea...!
Dovremmo poi fare un menu configurabile, o cmq spiegare cosa spuntare, in modo che uno possa decidere come impostarlo.
Ad ogni modo sentiamo cosa dice l'ideatore del progetto... :)

Scusa la domanda, ma sei un programmatore? O solo super appassionato?

Re: [Proposta] sviluppo programma antifurto pc

Inviato: lunedì 14 settembre 2009, 0:28
da Ivan!
Sisi, io farei un menu configurabile, con delle checkbox ;)
Poi una finestra principale dove c'è il pulsante per avviare la "sicurezza", e qualche opzione che si usa spesso.
Ma aspettiamo anche il parere del "capo"  :P

Comunque no, non sono programmatore, da un'anno (ma con qualche mese di stallo), da quando sono passato a linux, programmo in python.
Si, diciamo che lo faccio per divertimento/passione. :D

Re: [Proposta] sviluppo programma antifurto pc

Inviato: lunedì 14 settembre 2009, 9:27
da marcellom
si potrebbe integrare nel gestore dell'alimentazione cosa ne dite?
l'idea dell'antifurto è geniale complimenti (b2b) (b2b)

Re: [Proposta] sviluppo programma antifurto pc

Inviato: lunedì 14 settembre 2009, 18:09
da reahel93
...anche...
La cosa stupenda di GNU/linux e dintorni é proprio questa: uno puó leggere il sorgente, modificarlo, migliorarlo, metterlo in un altro programma, integrarlo in una o altra parte del sistema... etc. etc.
Personalmente credo che cercheró di metterlo come demone, magari riscrivendolo direttamente in bash.
Ma sono curioso di federlo finito, anche con la grafica.

[forse la connessione oggi vá... cosí continuo a cercare per il tasto di spegnimento fisico... la vedo dura peró... credo agisca sull'hardware, come interruttore, ... non só se si possa disabilitare... o usiamo un bubble-gum.... :) ]

Re: [Proposta] sviluppo programma antifurto pc

Inviato: lunedì 14 settembre 2009, 18:35
da kokito
innanzitutto grazie a tutti per l'interessamento! siete davvero mitici! (b2b)

allora per la grafica...un iconcina nella barra ci starebbe, però ci sono degli inconvenienti:

1) c'è chi non ha la barra e utilizza le dock

2)pensavo di dare al programma anche uno scopo "preventivo", quindi rendere evidente il fatto che ci sia un allarme inserito, si potrebbe fare così:

1)una schermata tipo salvaschermo....magari con una sirena che gira :D e la scritta che avverte che c'è un allarme bla bla bla

2)un icona nella barra (o ancora meglio nell'area di notifica che hanno anche le dock) da cui si può accedere ad una schermata di configurazione, questa potrebbe cambiare passando dall'iconcina con la chiave (vedi messaggio con immagini allegate) quando l'allarme è attivo a quella senza quando è attivo (stile compiz switch) rendendone facile l'attivazione (clicandoci su)

attendo i vostri pareri/ critiche :D

Immagine

Re: [Proposta] sviluppo programma antifurto pc

Inviato: lunedì 14 settembre 2009, 18:50
da Ivan!
1) beh si, però ci sono moltissimi programmi che usano la tray di sistema, quindi secondo me conviene metterla un'iconcina là :)

2) ci avevo pensato anche io, solo che non saprei come fare ad integrare un label nella schermata di blocco ::)

21) vedi 2

22) beh anche questo non è difficile da fare :)

comunque hai delle idee su come fare la grafica (cioè posizionamento pulsanti, che opzioni metterci ecc) della finestra del programma? :D
tra poco se ce la faccio posto come avevo pensato io...

Re: [Proposta] sviluppo programma antifurto pc

Inviato: lunedì 14 settembre 2009, 18:59
da kokito
mmm ho fatto un po' di confusione con i punti! ::)

non ho capito per quale cosa c'è la difficoltà! per il salvaschermo??

no onestamente non ci ho ancora pensato....magari stasera faccio uno schizzo

intanto tu posta pure!

Re: [Proposta] sviluppo programma antifurto pc

Inviato: lunedì 14 settembre 2009, 19:05
da Ivan!
si, cioè...
tu dicevi di creare, nell'applicazione, una funzione come il "blocca schermo" di gnome, però con l'avviso e la sirena, oppure aggiungere l'avviso e la sirena direttamente nel blocca schermo di gnome?

se fosse la prima: creare una finestra che non dia modo di toglierla se non con la passwor, di preciso adesso non saprei come implementarla, ma non ci ho ancora pensato...
se fosse la due: bhe qui non saprei proprio come fare, bisognerebbe modificare il blocca schermo ::)

però anche secondo me sarebbe utile (yes)

Re: [Proposta] sviluppo programma antifurto pc

Inviato: lunedì 14 settembre 2009, 19:17
da kokito
no no intendevo la prima anche perchè uno può avere un altro bloccaschermo che vorrebbe tenere di norma....penso sia complicato fare andare un bloccaschermo in un'occasione e un altro quando il programma è inattivo

la mia idea è fare una cosa tipo la schermata di splash all'avvio! con lo spazio per la password il disegno/animazione e la scritta....

Re: [Proposta] sviluppo programma antifurto pc

Inviato: lunedì 14 settembre 2009, 20:04
da reahel93
Sona amante della semplicitá e sono pigro...hahha!

Ma se invece che creare un'altra schermata di login, semplicemente si mettesse un save screen bello bello con sirena e logo del programma che avvisa che é in funzioni l'allarme?

Tra l'altro uno puó bleffare come nel poker e lasciarlo anche se azione il blocca schermo 'normale'  (rotfl)

Personalmente sono piú della strategia stile ninja mimetico... senza avviso... cosí il ladro non se l'aspetta.

[ancora niente per lo spegnimento forzato del pc da tasto... ho chiesto anche ad un amico programmatore, ma al momento non sá come fare...e con tutto il lavoro che ha da fare,...sono sicuro che si dimenticherá di cercare... :) ]

Re: [Proposta] sviluppo programma antifurto pc

Inviato: lunedì 14 settembre 2009, 20:36
da Ivan!
questo è cosa avevo pensato
Immagine
fatta un pò male cmq... :P
reahel93 ha scritto: Personalmente sono piú della strategia stile ninja mimetico... senza avviso... cosí il ladro non se l'aspetta.

(rotfl) furbo!, in effetti però se si vede da questo punto di vista è meglio all'impovviso, se lo sa il ladro può togliere subito le batterie e poi staccare la spina (se ha un minimo di cervello xD)

Re: [Proposta] sviluppo programma antifurto pc

Inviato: lunedì 14 settembre 2009, 21:54
da reahel93
Ho trovato due mezzi per bloccare il tasto di spegnimento, quello fisico:

*modificare l'opzione dal bios corrispondente => non posso farlo... non la ho [suppostamente si potrebbe aumentare la durata del tempo della pressione per lo spegnimento]

*modificando /etc/acpi/events/powerbtn , mettendo action=/bin/true => non mi funziona, neanche riavviando il sistema [ forse era per una versione vecchia di ubuntu...] ... ho provato anche action=none (me la sono inventata) e niente

Re: [Proposta] sviluppo programma antifurto pc

Inviato: martedì 15 settembre 2009, 10:18
da kokito
e perchè non mettere la possibilità di scegliere? chi vuole mette la schermata e chi vuole no! sempre che non sia troppo complicato realizzarla....dal menù opzioni si potrebbe aggiungere l'opzione mostra schermata oppure modalità nascosta (o modalità ninja  ;D)

per quanto riguarda la opzioni che ha messo ivan direi che vanno bene!
io però sono in dubbio sul volume.....dici che conviene metterlo abbassabile?
e si potrebbe anche mettere "mostra icona nella traybar" almeno uno può scegliere 3 modalità: con la schermata, senza schermata con l'iconcina e senza schermata e senza iconcina!
il salva log attività di dice se qualcuno tocca il pc giusto?

dai che il progetto sta prendendo forma!! (good)

Re: [Proposta] sviluppo programma antifurto pc

Inviato: martedì 15 settembre 2009, 19:29
da reahel93
kokito, poi Ivan! ti confermerá, delle cose che hai detto si puó fare tutto e non é neanche molto complesso.
La parte grafica non la só fare, o meglio posso mettermici ma ci vorranno dei mesi...agagagag.. quindi conta su Ivan, o se Ivan mi dice che devo fare o come collaborare, senza indugio lo faró. Non vedo l'ora sia finito il programmino.
Se agissimo solo sullo script direttamente basterebbe togliere e mettere # per le varie opzioni, cosí da configurarlo o fargli da terminale dei comandi guidati per modificare il file (allarme visibile o no? con quanta percentuale di volume vuoi suoni l'allarme? etc etc).
Certo che senza schermata, volendo si puó bloccare l'allarme...anche se lo lo blocchiamo con password... peró se ha permessi alti magari é un pó piú complesso da killare, se uno non se ne intende molto...

[per il tasto famoso stó per arrendermi... si trovano info ma su come bloccare quello che appare nel desktop: a noi non importa {meglio potrebbe essere utile se si usa il programma senza blocco schermo...}]