Unterschied Push-Methode zu FireAlarm (C2D)

Fragen und Antwort rund um BosMon Mobile. Posting ist ohne Anmeldung erlaubt.
Leitstelle_V
Beiträge: 26
Registriert: 22. Jul 2011, 16:59

Unterschied Push-Methode zu FireAlarm (C2D)

Beitrag von Leitstelle_V »

Hi bosmon,

du kennst doch sicher die App FireAlarm (von FirEmergency). Die läuft ja erst ab einer gewissen Android-Version, weil C2D genutzt wird, dein Programm läuft auch mit älteren Versionen. Wo liegt da der Unterschied in der angewandten Push-Technik?

Ich hab bisher FireAlarm getestet, welches meinem Verständnis nach keine dauerhafte Verbindung zu einem Server aufbaut, sondern eben bei Alarm das Push-Signal und damit die Aufforderung zum Verbindungsaufbau erhält und dann den Alarm abruft. Daher habe ich dort auch keine Übersicht, wie der aktuelle Verbindungsstatus ist.

Wie ist das bei BMM? Ist eine dauerhafte Verbindung notwendig und wenn ja, ist dies dann nicht eher "rückschrittlich" im Vergleich zu C2D, zumal das auch mehr Ressourcen verbrauchen sollte? Und was ist, wenn BMM mal keine Verbindung zum Server hat, dann trifft der Alarm erst ein, wenn BMM nach definierter KeepAliveTime wieder eine Verbindung herstellt, was ja je nach Einstellung 20 Minuten dauern kann, obwohl vielleicht schon nach 10 sec wieder Empfang wäre? Kannst du mir sagen, wie sich C2D im Vergleich dazu verhalten würde?

MfG
Max
codde
Beiträge: 197
Registriert: 22. Apr 2011, 21:47

Re: Unterschied Push-Methode zu FireAlarm (C2D)

Beitrag von codde »

Wieso schickst du keine SMS bzw. Email wenn du schon firEmergency verwendest?


Grüße
Leitstelle_V
Beiträge: 26
Registriert: 22. Jul 2011, 16:59

Re: Unterschied Push-Methode zu FireAlarm (C2D)

Beitrag von Leitstelle_V »

Weil Push viel schneller als Mail ist. Und günstiger als SMS... Mich interessiert in diesem Schritt die Technik dahinter.

Wie lange dauert es denn, bis ich den Alarm von BOSMon im BMM habe?
bosmon
Beiträge: 3972
Registriert: 28. Dez 2009, 18:16

Re: Unterschied Push-Methode zu FireAlarm (C2D)

Beitrag von bosmon »

Hallo,

ich habe weder C2DM noch FireAlarm getestet.

Aber ein paar allgemeine Hinweise:
Bei C2DM werden Informationen über einen externen (Google)-Server ausgetauscht. Bei BosMon Mobile (BMM) wird eine Verbindung direkte zwischen BosMon (BM) und dem Smartphone aufgebaut. Dies ist auch genau so gewollt:

Punkt 1) Datenschutz !!!. So lange man SSL benutzt ist somit bei BMM garantiert, dass kein Dritter Daten mithört. Dies ist gerade bei der möglichen Brisanz der Nachrichten wichtig !

Punkt 2) Komplexität. Je mehr Komponenten (externe Server etc.) involviert sind, desto höher die Komplexität. Bei dem von mir entwickelten Ansatz liegt die komplette Übertragung der Informationen im "Verantwortungsbereich" von BosMon und BosMon Mobile. Damit kann ich eine gewisse Verfügbarkeit garantieren. BosMon und BosMon Mobile können die Verbindung überwachen und bei Problemen entsprechend reagieren (Reconnect o.ä.).

Punkt 3) Plattformunabhängigkeit. BosMon Mobile könnte, da es unabhängig von Google C2DM & Co. ist, auf beliebigen (Smartphone) Plattformen laufen, iPhone, Meego, ...

Punkt 4) Resourcenverbauch. BosMon Mobile ist auf geringen Resourcenverbrauch optimiert. BosMon Mobile hat normalerweise keinen Einfluss aus die Batterielaufzeit.

Punkt 5) Übertragung. Das Übertragungsprotokoll von BosMon ist speziell auf niedrige Bandbreite und schnelle Übermittlung der Informationen optimiert. C2DM ist ein sehr allgemein gehaltenes Protokoll. Ich kenn dort auch nicht die Verzögerung.
Die Verzögerung bis BMM auslöst ist minimal, ich schätze so 1-5 Sekunden.

Grüße
Thimo Eichstädt
BosMon Dokumentation: https://www.bosmon.de/doc
BosMon Support: support@bosmon.de
Leitstelle_V
Beiträge: 26
Registriert: 22. Jul 2011, 16:59

Re: Unterschied Push-Methode zu FireAlarm (C2D)

Beitrag von Leitstelle_V »

Super Antwort! Wie sieht es jetzt aus, wenn die Verbindung abbricht und in dieser Zeit ein Alarm eintrifft. Wird dieser Alarm dann nachträglich beim Wiederverbinden ausgelöst oder dann verschluckt?

Wenn die Verbindung unterbrochen wird, dann wird also ein Reconnect je nach eingestellter KeepAliveTime versucht? Wäre es nicht optimaler, wenn bei Verbindungsabbruch ein dauerhafter Verbindungsversuch gestartet wird? Auch wenn vielleicht etwas batteriefressend...
bosmon
Beiträge: 3972
Registriert: 28. Dez 2009, 18:16

Re: Unterschied Push-Methode zu FireAlarm (C2D)

Beitrag von bosmon »

Hallo,

wenn ein Alarm "verpasst" wird, wird er bei Reconnect ausgelöst.

Die Keepalive-Zeit stellt ein in welchen Abständen BMM überprüfen soll, ob eine Verbindung unterbrochen ist.
Sobald eine abgebrochene Verbindung erkannt wurde, wird fortlaufend probiert die Verbindung wieder aufzubauen, unabhängig von der Keepalive-Zeit.

Grüße
Thimo Eichstädt
BosMon Dokumentation: https://www.bosmon.de/doc
BosMon Support: support@bosmon.de
chortyenz
Beiträge: 29
Registriert: 6. Jul 2011, 11:39

Re: Unterschied Push-Methode zu FireAlarm (C2D)

Beitrag von chortyenz »

Leitstelle_V hat geschrieben: Wie ist das bei BMM? Ist eine dauerhafte Verbindung notwendig und wenn ja, ist dies dann nicht eher "rückschrittlich" im Vergleich zu C2D, zumal das auch mehr Ressourcen verbrauchen sollte? Und was ist, wenn BMM mal keine Verbindung zum Server hat, dann trifft der Alarm erst ein, wenn BMM nach definierter KeepAliveTime wieder eine Verbindung herstellt, was ja je nach Einstellung 20 Minuten dauern kann, obwohl vielleicht schon nach 10 sec wieder Empfang wäre? Kannst du mir sagen, wie sich C2D im Vergleich dazu verhalten würde?
Hi Leitstelle_V
Die Punkte die Thimo angesprochen hat sind alle korrekt.
Ich bin sehr zufrieden mit dem "Auslösen" des Alarms. Wenn du den Keepalive auf eine Minute einstellst und nebenbei einen DME zur Hand hast der auslöst, kommt der Alarm bei mir teilweise um ca 30 sek. versetzt an. Ich denke das ist schon so vollkommen in Ordnung. Finde ich jedenfalls.
Das mit dem Reconnect ist bei mir so das wenn BMM die Verbindung verliert, bekommt das BMM ja mit. Dann versucht er sich zu verbinden und sobald Verbindung besteht werden alle verpassten Alarme angezeigt.
Das schrieb Thimo ja.
Also für mich ist BMM die erste Wahl, hab halt nen Smartphone mit Android. Als zweite Lösung kannst du ja immer noch fire-emergency anbieten.
Leitstelle_V
Beiträge: 26
Registriert: 22. Jul 2011, 16:59

Re: Unterschied Push-Methode zu FireAlarm (C2D)

Beitrag von Leitstelle_V »

Also der Alarm kommt bei mir innerhalb von fünf Sekunden an. Das ist top.

Nur wenn du sagst, dass BMM bei Verbindungsabbruch ständig die Verbindung wiederherstellen will, was ist dann die KeepAliveTime - ich dachte erst nach Ablauf dieser versucht er nen Reconnect?
bosmon
Beiträge: 3972
Registriert: 28. Dez 2009, 18:16

Re: Unterschied Push-Methode zu FireAlarm (C2D)

Beitrag von bosmon »

Hallo,

nochmal anders geschrieben, Keepalive Zeit:

Garantierte, maximale (!!!) Zeit die BosMon Mobile benötigt, um eine abgebrochene Verbindung zu erkennen.

Je nach Grund der Verbindungsabbruchs kann dies natürlich auch bereits früher erkannt werden.

Sobald eine abgebrochene Verbindung erkannt wurde, wird ein Reconnect probiert.


Grüße
Thimo Eichstädt
BosMon Dokumentation: https://www.bosmon.de/doc
BosMon Support: support@bosmon.de
Leitstelle_V
Beiträge: 26
Registriert: 22. Jul 2011, 16:59

Re: Unterschied Push-Methode zu FireAlarm (C2D)

Beitrag von Leitstelle_V »

OK. Du sagst BMM beeifnlusst kaum die Akkulaufzeit. Gilt das auch bei einer KAT von 1 Minute?
Antworten