vzhledem k tomu, že jsem nenašel žádndou chytrou krabičku, která by dělala přesně to, co potřebuju, tak jsem si ji vyrobil sám. Kdyby někdo chtěl, může také vyzkoušet.
Potřeba:
- android 2.3+
- alarm.apk (link na dropbox )
Umí:
- poslat alarm zprávu
----- poslat SMS
----- poslat email
----- poslat xmpp (jabber)
- zapnout/vypnout přes SMS/xmpp
- poslat polohu přes xmpp/sms
- možnost konfigurovat:
----- citlivost g-senzoru (udáváno v násobcích g) pro alarm
----- timeout pro GPS při pokusu o zjištění polohy
----- prodleva mezi zjištěním polohy a jejím odesláním (kvůli tomu, že na začátku GPS na starších přístrojích chvíli hází chaotická data)
----- prodleva mezi posláním notifikací, pokud přetrvává "útok"
----- kontakty (pro každý definovat telefon, xmpp, email a 6 ano/ne hodnot: canChangeSettings, canRequestPosition, canChangeState, smsAlarm, emailAlarm, xmppAlarm)
----- reconnection interval pro xmpp
----- seznam jmen kontaktů, na které se má posílat alarm zpráva (to, kterým kanálem se má odeslat zpráva je definováno pomocí hodnot smsAlarm, emailAlarm, xmppAlarm - viz výše); seznam může obsahovat duplicity
----- alarm zprávu
----- position zprávu se substitucí <latitude> a <longitude>, takže je možné nechat si rovnou posílat nějaké šikovné url
- sms umožnuje pouze on/off/position, zbytek je přes xmpp (včetně konfigurace)
- primárně určeno pro ovládání přes xmpp, na které se při startu služby v telefonu snaží aplikace vždy připojit (když se nepovede, nic se nestane, ale pozbývá to tu "krásu")
Vždycky mě fascinovalo, jak laciné zařízení je smartphone, když je to plně programovatelné, s GSM modulem, GPS modulem a pohybovým čidlem. A to všechno i u naprostého low endu.
edit: pro paranoiky - není to žádný alarm, je to backdoorová aplikace umožňující lokalizovat vaši moto, aby ji mohli unést mimozemšťani
edit: link
edit: úprava odrážek
edit: nevím, jestli xmpp server nějak ověřuje doménu proti uživatelskému jménu, od kterého přijde příkaz; pokud ne, tak pak by zřejmě bylo možné podvrhnout pokyn pro alarm, ale bylo by to dost komplikované i s ohledem na to, že by někdo musel vědět o jeho existenci a jaké jméno použít
edit: technické:
- aby appka zůstala funkční i po vypnutí GUI aplikace, běží to jako služba; nicméně jako background service s malou prioritou, takže pokud tam poběží kopec jiných náročných věcí, tak vám ji systém může ukončit; nastaveno je to tak, aby se při nejbližší možné příležitosti nastartovala, ale tohle nemám vyzkoušené
- koontakty musí být unikátní přes jméno, přes phone, přes email, přes xmpp (ale na to přijdete, až si párkrát přemáznete existující kontakt a bude vám to chování připadat podivné)
- má to hnusnou standardní zelenou ikonku, protože na vizuální design jsem levej
- jmenuje se to autoalarm02, protože první pokus autoalarm už existoval a nechtělo se mi mazat projekt
edit: ZRUŠENO (nebudu vtipnej)
edit: náklady na provoz:
- SIM od odorik.cz
- cena jednoho příkazu přes xmpp v řádech desetin až jednotek haléřů (pokud odorik nekecá, že účtuje po 1kB)
VERZE 23.9.2017 14:20 - na linku nová verze (starou nutno napřed odinstalovat kvůli sqlite databázi), možnost nastavit způsob udržení spojení (presence packet / natvrdo reconnect)
VERZE 24.9.2017 16:30 - na linku nová verze (starou nutno napřed odinstalovat kvůli sqlite databázi)
- možnost nastavit trvalé zaputní CPU (potřeba např. u méh starého samsungu s androidem 2.3, kde telefon po určité době po uspání přestane reagovat na příchozí pakety), může žrát baterku, nutno vyzkoušet
- pro účely zkoumání chování telefonu přidána možnost ověřit http response googlu při každém pokusu o udržení spojení (toto je zalogováno)
- get log umí vrátit u určený počet posledních záznamů
VERZE 26.9. 2017 8:08 - na linku nová verze (starou nutno napřed odinstalovat kvůli sqlite databázi)
- pro PendingIntent použit getApplicationContext místo this (Service)
- použit wakelock po dobu posílání keep-alive paketu
BUG: edit: vyřešen
VERZE 28.9. 16:34 - na linku nová verze (starou nutno napřed odinstalovat kvůli sqlite databázi)
- zrušen presence packet pro keep alive
- použito posílání paketu na vlastní id pro keep alive (trochu větší overhead, ale při reconnect intervalu třeba 5 min to nebude ani 10MB měsíčně - záleží na účtování, může být i mnohem víc nebo méně)
- reconnection interval použit i pro kontrolu, že v tomto intervalu dorazil poslední alive (nebo jakýkoliv jiný) packet; pokud ne, nastává opakovaná (po 30s) snaha o reconnect a CPU zůstává zapnuté, takže to trochu řere baterku; při této kontrole přidána k intervalu tolerance 10%
- zrušeno nějaké nastavení (pro aktuální možnosti viz příkaz "command list")
- výše uvedené na androidu 4+ jede, na 2.3 spojení pořád zdechá, protože tam nějak přestává občas fungovat doručování eventů AlarmManageru
- mám také hlášené, že některé androidy mají ve sleep režimu vypnutý g-sensor, tak tam nebude fungovat alarm (možná by keepCPUOn pomohlo)
Naposledy editováno 28.09.2017 18:39:04
moto666555 píše: Přesunu se z mentálního stavu "nevědomost je sladká" do stavu "panebože jsem ve stresu, že se něco děje, já jsem na meetingu a nic s tím neudělám"
edit2: ale nechám si chvíli posílat polohu
edit: překlepy
rozumim, kdo si hraje nezlobi, me neco podobneho (jeste teda pro siemens m35) lezi v supliku uz mnoho let
1 reakcí na tento příspěvek (reakce na) Samodomo motoalarm
Medved píše: To same, co delam kdyz mi vola alarm z bytu/baraku ... kouknu se na kamery, jestli tam nekdo je a pak bud zavolam fizly (kdyz tam nekdo brouzda - to se jeste nestalo) nebo jdu zase spat. .
...zároveň předběžně beru do ruky bejsbolku nebo nějakou tyč, než z kamery zjistím že je vše OK
Otresovy cidlo napajene na tlacitko rychle volby. Celkove naklady 250 kc i s telefonem.
Jenze kdybych byl zlodej, bez gsm rusicky za 2 litry bych vubec nechodil.
Naposledy editováno 22.09.2017 14:03:45
BUG: edit: vyřešeno (viz první příspevěk --> VERZE 28.9. 16:34)
Naposledy editováno 28.09.2017 16:45:00
edit: tohle je satisfakce za všechny předchozí případy, kdy jsem rejpavé poznámky z příspěvků mazal
Naposledy editováno 29.09.2017 09:26:31
1 reakcí na tento příspěvek Samodomo motoalarm
dokáže se to bez xmpp rozbehnout? nějak jsem to neuchodil :/
rád bych to provozoval bez xmpp, jen an sms/maily ale nedostal jsem se z prvni obrazovky, kde se nastavuje xmpp a smtp. zadna chybova hlaska, nic, jen ticho zmar a hlad
Založil jsi pro spoustu kluků bezva téma.
Někdo tomu rozumí víc, někdo jako já hodně málo. Čekal jsem, že se dovím, jak si zabezpečit mašinu někde na vyjížďce.
Jenže téma přerušili pitomci co si honí vlastní ego ve snaze se předvádět. Mám na mysli ty z první strany.
Hledám alarm, který se spustí, jakmile mi někdo sáhne na mašinu.
Dobrá je pyramida z plechovek. Má ale nevýhodu, když zafouká vítr, zbytečně mě vzbudí.
Nějaký spínač napojený na klakson... Jak na to?
PS. Zkuste vymyslet něco jednoduchého.
Naposledy editováno 08.11.2017 16:50:57