Mittwoch, 28. März 2012

Sourcecode der AlarmApp nun öffentlich verfügbar

Gerade habe ich den Quelltext der AlarmApp für die Android-Smartphones öffentlich verfügbar gemacht. Der Quelltext findet sich auf Github und ist unter der Apache2-Lizenz verfügbar.

Bei der veröffentlichten Version handelt es sich um die akutell ausgelieferte Version. Allerdings müssen noch die Lizenz-Header in alle Dateien eingefügt werden.


Als nächstes werde ich den Quelltext der iPhone-Version unter der Apache2-Lizenz veröffentlichen.

Sonntag, 25. März 2012

Einstellungen bei der iPhone-App

Oft werde ich gefragt, wo man die Einstellungen der AlarmApp für das iPhone ändern kann. Manchmal werde ich auch gefragt, warum die iPhone-App keine Einstellungen hat. In diesem Blog-Post möchte ich euch daher erläutern, warum es keine Einstellungen für das iPhone gibt während man beim Android einige Einstellungen verändern kann.


Daher stellt sich zunächst einmal die Frage, welche Einstellungen es in der Android-App gibt. Ich habe euch daher in der Abbildung 1 einen Screen-Shot mit den Einstellungen der Android-App angehängt. 
Abb.1: Einstellungen bei Android
Beginnen wir mit der Frage, warum man den Klingelton beim iPhone nicht umstellen kann:

Apple hat sich dazu entschieden, Apps nur über den AppStore zur Verfügung zu stellen. Daher musste ich mich bei der Entwicklung der AlarmApp an den Apple AppStore-Review-Guidelines orientieren.   Eventuell seht ihr diese Guidelines nur mit einem Apple-Developer-Account. Daher möchte ich mal einige Zitate aus den Guidelines hier wiederholen:

5.1

Apps that provide Push Notifications without using the Apple Push Notification (APN) API will be rejected
Das klingt erstmal nicht besonders schlimm: Wenn man Push-Nachrichten an ein iPhone senden will, muss man den Apple-Push-Service verwenden. Der Apple-Push-Service kümmert sich (nebenbei) darum, dass das Smartphone beim Empfang einer Push-Nachricht klingelt. Allerdings muss man in der Push-Nachricht den Namen des Klingeltons mitsenden. Das iPhone sucht den Klingelton allerdings nur im App-Bundle der installierten App. Leider kann man nach dem Upload der App in den AppStore das App-Bundle nicht mehr verändern. Der Benutzer kann also keinen selbst definierten Alarmton abspielen. Es können nur Alarmtöne abgespielt werden, die schon mit der App mitgeliefert werden. Ich könnte zwar immer noch mehrere Klingeltöne mitliefern, aber ich müsste immer dann ein Update der App machen, wenn jemand einen neuen Klingelton haben möchte.

Kommen wir nun zur Einstellungen Vibrieren: Diese kann man tatsächlich verändern. Allerdings nicht in der App sondern in den Benachrichtigungen-Einstellungen des iPhones. Dort werden alle Apps mit aktiven Benachrichtigungen und die zugehörigen Vibrations- und Soundeinstellungen angezeigt.

Die Einstellung Lautlosmodus beim Alarmieren wird immer beachtet. Es ist nicht möglich, dies zu umgehen ohne die AppStore-Review-Guidelines zu verletzen:

10.5

Apps that alter the functions of standard switches, such as the Volume Up/Down and Ring/Silent switches, will be rejected

Kommen wir nun zur maximalen Klingeldauer. Auch diese kann man nicht beeinflussen. Der Klingelton wird immer vom Betriebssystem selbst abgespielt. Dabei wird der Klingelton gespielt, bis er zu Ende ist oder eine Spieldauer von 30 Sekunden überschritten wurde. An diesem Verhalten kann man als App-Entwickler meines Wissens nach nichts ändern.

Aber liebe Leser, bitte versteht mich jetzt nicht falsch: Das soll keine Hass-Predigt gegen das iPhone sein. Die AlarmApp für das iPhone ist sicherlich nicht besser oder schlechter als die App für das Android. Ich gebe mein möglichstes, beide Plattformen gleichrangig zu behandeln. Leider unterscheiden sich die Plattformen in ihren Möglichkeiten. Daher haben die Apps auch unterschiedliche Möglichkeiten.

Wenn sich jemand von euch besser mit der App-Entwicklung für das iPhone auskennt als ich, und weiß, wie man die eine oder andere Einschränkung umgehen kann, ohne das iPhone zu jailbreaken, dann schreibt mir doch bitte einfach eine Email.












Sonntag, 11. März 2012

Hilfe, ich bin neu hier - Der AlarmApp-Starter-Guide für neue Feuerwehren

Da momentan einige Benutzer die AlarmApp in ihrer Feuerwehr testen wollen, werde ich in diesem Artikel beschreiben, wie die AlarmApp einrichtet. Der Artikel beschreibt die ersten Schritte, die nach dem Erzeugen einer neuen Feuerwehr notwendig sind.

Zunächt werde ich erklären, wie man einen Probealarm auslösen kann, um die AlarmApp auf seinem Handy zu testen. Anschließend werde ich erläutern, wie man weitere Benutzer erstellt und verwaltet. Weiterhin soll beschrieben werden, wie man die Benutzer in Alarmgruppen ordnet und die Benutzerrechte verwaltet.

Wenn eure Feuerwehr bei der AlarmApp angelegt wurde, dann bekommt ihr eine Email mit eurem Benutzer-Account. Dieser Benutzeraccount hat automatisch alle Berechtigungen. Mit dem Benutzer-Account kann man sich sowohl auf dem Smartphone als auch bei der Verwaltungswebsite anmelden. Dieser Artikel wird sich aber hauptsächlich auf die Funktionen der Verwaltungswebsite beschränken. Über diese Website kann man:
  • Vergangene Alarmierungen ansehen
  • Alarmierungen auslösen
  • Alarmgruppen verwalten
  • Benutzer verwalten
1. Alarmieren

Wenn ihr also eure Feuerwehr und euren Benutzeraccount habt muss als erstes getestet werden, ob die AlarmApp auf eurem Smartphone überhaupt wie zu erwarten funktioniert. Daher müsst ihr euch im ersten Schritt auf der Website alarmapp.org anmelden und im Menü auf Alarmierung drücken. Dann solltet ihr das in Abb. 1 zu sehende Fenster vor euch haben. Dort könnt ihr einen Alarmtitel und eine Alarmbeschreibung angeben. Wenn man auf den blauen Knopf drückt, wird der Alarm abgeschickt und ihr bekommt den dazu gehörenden Alarmstatus angezeigt. Wichtig: In der Smartphone-App müsst ihr auch angemeldet sein. Wenn ihr euch in der AlarmApp noch nicht angemeldet habt, werdet ihr keine Alarmierung empfangen können.

Abb. 1: Auslösen einer Alarmierung
Nun sollte auch schon euer Smartphone klingeln. Wenn das nicht der Fall ist, und ihr ein Android-Telefon verwendet, findet ihr weitere Infos hier. Wenn alles nichts hilft, dann schreibt mir bitte einfach eine Email.


2. Alarmgruppen verwalten

Alarmgruppen werden im Feuerwehrjargon auch als Schleifen bezeichnet. Im Gegensatz zum FME und zum DME erfolgt die Zuteilung von Feuerwehrleuten zu Schleifen nicht auf dem Empfangsgerät sondern passiert direkt im Web. Daher werden Änderungen an Schleifen auch sofort aktiv.

Auf der Seite "Alarmgruppen" können  neue Schleifen angelegt oder bestehende Schleifen bearbeitet werden. Jede Feuerwehr hat mindestens die Schleife "Probealarm".  Diese kann man wie in Abb 2. zu sehen bearbeiten, wenn man auf den Bearbeiten-Knopf drückt.

Bearbeiten wir nun mal testweise die Alarmgruppe Probealarm: Die Seite "Alarmgruppen bearbeiten" teilt sich in drei Bereiche auf. Ganz oben kann man die Bezeichnung der Alarmgruppe bearbeiten.  In der Mitte kann man den Alarmauslöser der Alarmgruppe bearbeiten. Der Alarmauslöser gibt gewissermaßen an, welche Ereignisse eine Alarmierung dieser Schleife zur Folge haben sollen. In Abb. 2 ist das beispielsweise eine Email von test@alarmapp... an test@alarmnotificationservice... mit einem beliebigen Inhalt und einem beliebigen Betreff. Weitere Informationen zum Alarmauslöser finden sich hier.

Im unteren Bereich kann man die Mitglieder der Alarmgruppe bearbeiten. Man kann Feuerwehrleute in die Alarmgruppe einfügen oder aus der Alarmgruppe entfernen. Im Alarmfall werden alle Mitglieder der Alarmgruppe alarmiert.

Bei dieser Alarmgruppe ist die Option "Automatisch einfügen" gesetzt. Das heißt, dass neue Mitglieder der Feuerwehr automatisch in diese Schleife mit eingefügt werden. Diese Option ist besonders für Schleifen interessant, die sehr viele Mitglieder haben.

Abb. 2: Alarmgruppen bearbeiten



3. Mitglieder verwalten
Es gibt zwei Arten, wie Feuerwehrleute zum Mitglied einer Feuerwehr werden können:
  1. Der Personalverantwortliche legt für jeden Feuerwehrmann einen Benutzeraccount an
  2. Jeder Feuerwehrmann registriert sich selbst und stellt eine Beitrittsanfrage 
zu 1: Um explizit einen neuen Benutzeraccount anzulegen, muss man die Seite Mitglieder öffnen und dann auf den Knopf "Neues Mitglied" drücken. Dann wird man aufgefordert, den Namen und die Email-Adresse des neuen Mitglieds einzugeben. Das neue Mitglied wird dann per Email über alle wichtigen Account-Informationen benachrichtigt.

zu 2: Wenn sich der Feuerwehrmann selbst einen Account registriert hat, dann muss er noch eine Beitrittsanfrage senden. Dieser Schritt ist dringend notwendig, da sonst jeder beliebige Benutzer einfach so Mitglied eurer Feuerwehr werden könnte. Wenn also jemand eurer Feuerwehr beitreten will, dann bekommen alle Benutzer mit der Rolle "Personalverantwortlicher" eine Email. Nun kann ein Personalverantwortlicher entscheiden, ob die Beitrittsanfrage in Ordnung ist. Dazu muss der Personalverantwortliche die Seite "Beitrittsanfragen" besuchen. Dort bekommt der Personalverantwortliche alle offenen Beitrittsanfragen angezeigt. Wenn der Personalverantwortliche auf Akzeptieren drückt, wird der Feuerwehrmann automatisch Mitglied der Feuerwehr. Wenn der Personalverantwortliche auf ablehnen drückt, wird die Beitrittsanfrage abgelehnt.

4. Rechte verwalten
Natürlich könnt ihr auch andere Feuerwehrleute mit mehr Rechten ausstatten. Dann müsst ihr nicht mehr eure Feuerwehr allein verwalten. Um dies zu tun, muss man ein Mitglied bearbeiten. Nun kann man, wie in Abb. 3 zu sehen, drei Rollen vergeben:
  • Personalverantwortliche dürfen Benutzer anlegen, bearbeiten oder freischalten
  • Technische Betreuer dürfen Alarmierungen auslösen und Alarmgruppen bearbeiten
  • Alarmstatusbetrachter dürfen die Rückmeldungen einer Alarmierung  auf dem Smartphone sehen.
Abb. 3: Verwaltung der Benutzerrechte


Samstag, 10. März 2012

Probleme behoben

Seit heute morgen bin ich aus dem Urlaub zurück. Wie versprochen habe ich mich auch direkt an die Probleme mit der AlarmApp für das iPhone gesetzt. Diese sind jetzt behoben und die AlarmApp für das iPhone funktioniert wie zu erwarten.

Auf meiner Todo-Liste steht noch eine Anleitung für den Einstieg und ein Blog-Post über neue Features der Web-Site.

Donnerstag, 1. März 2012

iPhone-App funktioniert nicht richtig

Leider muss ich heute eine schlechte Mitteilung machen: Die iPhone-App für das iPhone ist zwar fertig - die App funktioniert aber nicht richtig. Leider kann ich den Fehler nich kurzzeitig beheben, weil ich gerade im Urlaub bin. Aber wenn ich wieder zurück komme, hat die Fehlerbehebung oberste Priorität.

 Ich werde dann auch eine Beschreibung nachliefern, wie es zu dem Fehler kommen konnte...


Ich habe als Konsequenz zum Fehler die App vorerst aus dem AppStore zurückgezogen. Es bringt nichts, die App dort zu haben, wenn keine Alarmierungen ankommen.