Entwicklung: Messenger der neuen Generation (Teil 2)

Fortsetzung ( Teil 1 ), Teil 3.



Messenger-Funktionalität für Android und iOS


Für die Registrierung wird keine Telefonnummer verwendet


Bei der Entwicklung des Registrierungsprozesses des Messenger wurde sehr deutlich, dass die Telefonnummer als Kennung überhaupt nicht benötigt wird und sogar stört.
Dies ist ungefähr das Gleiche, um sicherzustellen, dass einige Geräte den Morsecode unterstützen, dh Anachronismus in seiner reinsten Form.

Überraschenderweise registrieren sich viele Boten hartnäckig weiterhin per Telefonnummer - anscheinend ist es so wichtig, Informationen über den Besitzer zu erhalten, dass sie die folgenden Probleme in Kauf nehmen:

Es gibt keine garantierte SMS-Zustellung für alle Betreiber


Der Prozentsatz des erfolgreichen SMS-Empfangs liegt im Durchschnitt bei 60-70%, und dies ist nicht überraschend, da es Hunderte von Ländern gibt und in jedem Land mehrere Betreiber und es ziemlich schwierig ist, die Funktionsfähigkeit jeder Route sicherzustellen.

Alle großen SMS-Aggregatoren (z. B. Nexmo) garantieren überhaupt keine Zustellung, und es ist unmöglich, mit einigen Betreibern SMS in Länder wie beispielsweise Afghanistan zu senden. Nexmo hat mehrere Routen für jeden Bediener, und manchmal funktionieren ganze Anweisungen für diesen Aggregator wochenlang nicht.

Das Senden von SMS ist ein teures Vergnügen


Jeder erinnert sich an den Vorfall vor nicht allzu langer Zeit - WhatsApp Lock in Brasilien.
Was dann geschah - Millionen von Brasilianern begannen sich bei anderen Boten zu registrieren -, sagte TG zum Beispiel, dass es Millionen neuer Benutzer in diesem Land erhalten habe.

Aber nicht jeder weiß, dass das Senden von SMS mit einem Bestätigungscode nach Brasilien durchschnittlich 10-12 Cent kostet.

Nehmen wir an, 2 Millionen - 10 Cent * 2 Millionen = 200.000 USD sind registriert.
Das heißt, 200 000 USD wurden an einem Tag unwiderruflich ausgeworfen.

Warum unwiderruflich? Denn nach einem Tag wurde WhatsApp entsperrt und Benutzer verließen TG.

Warum erzähle ich dir das alles?

Es scheint mir, dass dies eine Gelegenheit ist, darüber nachzudenken - warum fordern einige Boten trotz der Tatsache, dass es für sie unpraktisch und teuer ist, weiterhin Telefonnummern von Benutzern an?

Der Messenger benötigt also nicht die Telefonnummer des Besitzers. Sie müssen lediglich ein Login erstellen, das auf Eindeutigkeit und Passwort überprüft wird.

Bei der Registrierung wird die E-Mail-Adresse nur angefordert, damit Sie Ihr Passwort zurücksetzen können. Das heißt, Wenn Sie die falsche E-Mail-Adresse angeben oder diese nicht bestätigen, erfolgt die Registrierung trotzdem. Nur wenn Sie das Passwort vergessen haben, können Sie es nicht wiederherstellen.

Messenger benötigt keinen Zugriff auf Ihr Notebook


Leider benötigen fast alle gängigen Instant Messenger Zugriff auf Ihr Telefonbuch, Ihre Telefonnummer allein reicht ihnen nicht aus.

Und die Leute haben keine Ahnung, wie gefährlich das sein kann.

Einerseits ist es natürlich sehr praktisch - eines schönen Tages eine Benachrichtigung zu erhalten, dass Plumber Petrovich auch WhatsApp, Viber usw. beigetreten ist, obwohl Sie vor über einem Jahr ein paar Mal mit ihm gesprochen haben.

Der jüngste Hype um die GetContact-Anwendung zeigt jedoch, dass dies nicht so einfach ist - mehr als 2 Milliarden Nummern wurden bereits zusammengeführt, und die Nummern derjenigen, die diese Anwendung nicht einmal installiert haben, wurden zusammengeführt.
Stellen Sie sich vor, alle gängigen Instant Messenger kennen die Nummern Ihrer Freunde, Bekannten, Verwandten und diese Informationen werden ständig aktualisiert. Sie können Kreuzungen erstellen, Analysen durchführen, Ziele festlegen usw.

Standardverschlüsselung


Der Messenger verwendet das Standard-TLS / SRTP-Verschlüsselungsprotokoll. Alles ist verschlüsselt, einschließlich Audio- und Videoanrufe.

Als einfache unabhängige Prüfung können Sie Folgendes tun: Verbinden Sie ein Gateway oder ein IP-Telefon, das mit TLS / SRTP parallel zu Ihrem Konto verschlüsselt werden kann, und aktivieren Sie diese Funktion. Der Server versteht die Verschlüsselung und übernimmt sie.

Sicherheit und Datenschutz


Unserer Meinung nach erwies sich der Messenger als sicherer als andere beworbene Messenger, hauptsächlich aus dem einfachen Grund, dass wir keine Nummer benötigen und keinen Zugriff auf ein Notebook benötigen.

Selbst wenn wir uns einen hypothetischen Fall vorstellen, in dem der MITM-Angriff erfolgreich war und die Nachrichten entschlüsselt wurden, ist völlig unklar, wem die Korrespondenz gehört, da es nichts Wichtiges gibt - die Telefonnummer und die Seiten der Kommunikation können nicht identifiziert werden.

Kommunikation erst nach Genehmigung der Anfrage


Sie können nicht mit dem Benutzer im Messenger kommunizieren, ohne eine Anfrage zum Starten der Kommunikation zu senden und ohne die Erlaubnis der anderen Seite einzuholen.

Spam-Schutz.

Standardfunktionen




Alle Standardfunktionen sind in Instant Messenger implementiert:

- Text-Chats
- Senden von Audio-Nachrichten
- Dateien senden
- Standortfreigabe
- Audio- / Videoanrufe
- Gruppenchats ohne Begrenzung der Teilnehmerzahl

Nachrichten automatisch löschen




In Chats können Sie das automatische Löschen von Nachrichten nach einem bestimmten Zeitraum aktivieren.

Remote-Standortanforderung




Ein Benutzer in einem bestimmten Chat kann die Berechtigung aktivieren, eine Geolokalisierung von einem anderen Chat-Teilnehmer anzufordern.

Infolgedessen kann die andere Seite jederzeit unabhängig Informationen über den Standort des Gesprächspartners erhalten, wenn diese Funktion aktiviert ist.

Es kann nützlich sein, um den Standort von Kindern, älteren Verwandten usw. zu kontrollieren.

Benutzer in der Nähe




Die Funktion Benutzer in der Nähe zeigt die Entfernung zu den Benutzern an, die diesen Modus ebenfalls aktiviert haben. Die Entfernung ist auf 100 km begrenzt.

Wenn Sie diesen Modus deaktivieren, werden Sie nicht sichtbar, aber für andere Benutzer nicht sichtbar.

Push-to-Talk-Modus (PTT, Walkie-Talkie, Walkie-Talkie)




Der Messenger implementiert Echtzeit-PTT - Walkie-Talkie-Modus.
Der Modus funktioniert, wenn jeder Chat-Teilnehmer eingeschaltet ist.
Funktioniert auch in Gruppenchats. Wenn in einem Gruppenchat jemand diesen Modus nicht aktiviert hat, hört er solche Nachrichten einfach nicht.

Die Anzahl der Teilnehmer in einer Gruppe mit einem Walkie-Talkie ist nicht begrenzt.
Sie können den Nachtmodus einstellen, dh den Zeitraum, in dem die Walkie-Talkie-Nachrichten nicht gehört werden (z. B. nachts).

Live-TV-Modus




Mit der Live-TV-Funktion können Sie das Smartphone eines Benutzers in einen Camcorder verwandeln.
Sie können diesen Modus für jeden Messenger-Benutzer sowie für eine bestimmte Gruppe aktivieren.

Ermöglicht die schnelle Organisation der Videoüberwachung von Büro, Wohnung, Cottage, Autos usw.

SIP-Integration




SIP im Messenger wird in zwei Modi unterstützt - SIP-Amtsleitung und SIP-Client.

SIP-Amtsleitungsmodus


Ermöglicht das Verbinden eines IP-Telefons, eines VOIP-Gateways oder einer Amtsleitung von einer beliebigen IP-Telefonanlage (virtuell, in Asterisk usw.) mit einem parallel registrierten Konto

Im entsprechenden Abschnitt zur SIP-Ausstattung eines Kontos befinden sich Daten für die Verbindung.
Wenn Sie ein IP-Telefon anschließen, erhält ein Anruf des Messenger-Benutzers einen Anruf sowohl an die Anwendung als auch an das IP-Telefon.

Über die Anwendung können Sie einen Intercom-Anruf tätigen, der eine Verbindung zwischen dem IP-Telefon und der Anwendung herstellt.

Wenn die Amtsleitung eine Verbindung über die VoIP-TK-Anlage herstellt, wird der Anruf jeweils an die Amtsleitung der TK-Anlage gesendet, dh vom Messenger-Ökosystem aus können Sie Anrufe an eine beliebige TK-Anlage tätigen und diese so verarbeiten, als ob eine DID-Verbindung hergestellt worden wäre.

Die Anzahl der gleichzeitigen Anrufe ist nicht begrenzt.

SIP-Client mit Push-Benachrichtigung




Der SIP-Client-Modus dient zum Registrieren von Instant Messenger als Client, ähnlich wie bei Anwendungen wie Csimple, Linphone usw.

Im Gegensatz zu solchen Clients kann der Messenger jedoch im Schlafmodus arbeiten und verbraucht dementsprechend beim Warten nur sehr wenig.

Wie Sie wissen, besteht das Problem bei allen SIP-Clients darin, dass sie die Registrierung beim SIP-Registrierungsserver regelmäßig unterstützen müssen, was bedeutet, dass regelmäßig Registrierungspakete gesendet werden. Infolgedessen können solche Clients nicht in den Standby-Modus wechseln und sind immer online, wodurch der Akku des Smartphones entladen wird. Daher verwenden die meisten Benutzer diese Clients nur für ausgehende Anrufe.

Unserem SIP-Client wird dieser Nachteil vorenthalten - wenn ein eingehender Anruf eine Push-Benachrichtigung erhält, die die Anwendung "aufweckt" und erst dann startet.

Das heißt, Wenn jemand DID-Nummern mit SIP-Registrierung verwendet, kann er im Ruhemodus des Smartphones eingehende Anrufe zu diesen Nummern empfangen.

Es werden bis zu 8 gleichzeitige SIP-Registrierungen unterstützt.

Dies kann sowohl für Personen nützlich sein, die VOIP-Anbieter verwenden, um kostengünstige Anrufe zu tätigen, als auch für Unternehmen. Sie können die interne Nummer der TK-Anlage im Messenger anzeigen und haben keine Angst, dass dieser Modus den Akku entlädt.

Es wurde auch eine interessante Gelegenheit gefunden, in diesem Modus zu arbeiten - die Arbeit eines SIP-Kontos, eines Kontos gleichzeitig auf verschiedenen Geräten.

Wenn ein eingehender Anruf unter einer SIP-Nummer eingeht, klingeln gleichzeitig alle Telefone gleichzeitig.
Dies kann nützlich sein für diejenigen, die sparen möchten, beispielsweise ein bezahltes Konto von einem Anbieter nehmen und auf mehrere Personen verteilen möchten.

Oder nehmen Sie zum Beispiel eine Nummer für eingehende Anrufe und verteilen Sie sie gleichzeitig an mehrere Personen (Mitarbeiter, Verwandte usw.).

Dies geschieht - einmal registrieren, d.h. Wir bekommen nur einen Login.

Registrieren Sie sich anschließend beim SIP-Anbieter, erstellen Sie ein Konto und registrieren Sie es im Messenger.
Darüber hinaus laden andere Benutzer den Messenger herunter und melden sich mit demselben Login an, da der Messenger die gleichzeitige Arbeit mit einem Login von mehreren Geräten unterstützt.
Jetzt können Sie unter einem SIP-Konto Anrufe tätigen und gleichzeitig Anrufe an eine SIP-Nummer empfangen.

Die Anzahl der Benutzer ist nahezu unbegrenzt.

Amazon Echo-Integration mit Amazon




Wir haben auch den Amazon-Bot von Amazon in den Messenger integriert.

Infolgedessen stehen den Benutzern des Messenger nun fast alle Fähigkeiten von Alexa zur Verfügung.
Wenn Sie diesen Modus zum ersten Mal aufrufen, müssen Sie entweder ein vorhandenes Login für Amazon eingeben oder ein neues erstellen.

Mit Hilfe von Alexa können Sie Wetter, Zeit herausfinden, ein Taxi (Uber) bestellen, Pizza mit Ihrer Stimme bestellen, bei Amazon einkaufen und vieles mehr - etwa 20.000 Fertigkeiten stehen zur Verfügung.

Vor allem aber können Sie die intelligenten Steckdosen, Lampen, Schalter, Thermostate, intelligenten Schlösser und sogar Autos mit Ihrer Stimme steuern.

Jeden Tag gibt es eine zunehmende Anzahl von Geräten, die Alex unterstützen, von billigen Sonoff-Schaltern für 5 US-Dollar bis zu Fitbit-Armbändern.

Die Integration mit Alexa Echo haben wir in drei Modi implementiert:

- Sprachsteuerung

Hier ist alles klar - wir drücken den Knopf, wir sagen, die Geräte schalten sich ein oder Antworten werden beantwortet usw.

- Ausführung von Textbefehlen

Ein Analogon des Boten - wir schreiben Alex Fragen oder Befehle in einer Zeile, sie werden ausgeführt.
Es ist praktisch, wenn Sie schweigen müssen.

- Erfüllung vordefinierter Befehlsmuster durch Tippen auf Schaltflächen



In diesem Fall werden Schaltflächen mit vorprogrammierten Befehlen (die häufig ausgeführt werden) erstellt und dann durch Drücken wie eine Fernbedienung ausgeführt.
Eine solche Fernbedienung funktioniert natürlich ohne Entfernungsbeschränkung. Sie können ein Haus über Tausende von Kilometern steuern.
Es ist dann nützlich, wenn es notwendig ist, Stille zu beobachten und gleichzeitig zu faul oder unpraktisch, um den Text zu schreiben.

API für Alexa

Wir gingen weiter und implementierten eine einfache API, sodass über den enthaltenen Messenger alle Geräte und im Allgemeinen Alexa von anderen Geräten aus verwaltet werden konnten - von der Site, von Arduino, von einem anderen Messenger.
In diesem Fall müssen Sie nur bestimmte json-Befehle ausführen.

Bots




Sie können Bots im Messenger-Ökosystem erstellen.

Es gibt zwei Arten von Bots:

Standard Bots

Jeder Benutzer kann sie mithilfe der API erstellen.
In der Suchleiste unterscheiden sich solche Bots nicht von normalen Benutzern.

Business Bots

Sie unterscheiden sich darin, dass der Name eines solchen Bots mit einem kaufmännischen @ beginnt. Wenn sie hinzugefügt werden, fallen sie in einen bestimmten Abschnitt und mischen sich nicht in die allgemeine Liste mit normalen Benutzern.
Nur wir können solche Bots erstellen und sie sind offizielle Bots.
Dies bietet auch Schutz vor Cybersquatting der Namen von offiziellen Bots.

Geschäftskonten



Geschäftskonten sind eine Kombination aus drei Einheiten:

1. Offizielle Geschäftsseite
2. Der offizielle Bot des Unternehmens (angefangen von einem Visitenkarten-Bot bis hin zu einem einfachen Online-Shop)
3. Integration in die IP-Telefonanlage des Unternehmens - die Möglichkeit für den durchschnittlichen Benutzer, direkte Audio- / Videoanrufe an den Support, den technischen Support usw. zu tätigen.

Geschäftskonten im Namen haben ein kaufmännisches Und-Zeichen und fallen auch in einen separaten Abschnitt im Messenger und werden nur von der Verwaltung erstellt.

Source: https://habr.com/ru/post/de410681/


All Articles