Co to přináší vám
- Zprávy a reakce se na telefonu druhého člověka i na vašich dalších zařízeních objeví okamžitě.
- Telefon, který byl offline, po návratu do sítě vše plynule a bez mezer doplní.
Jak to funguje
Každá aplikace udržuje jedno ověřené spojení WebSocket otevřené k serveru. Když odešlete zprávu, server ji nejprve zapíše do databáze a teprve poté publikuje událost. Několik serverových procesů běží vedle sebe a předává si události přes sdílený kanál publish/subscribe, takže zprávu doručí ten proces, který právě obsluhuje spojení příjemce.
Pokud je příjemce offline, push oznámení probudí jeho telefon a aplikace po opětovném připojení doplní zprávy z protokolu přehrávání. V koncově šifrovaném chatu tímto systémem prochází zašifrovaná obálka, kterou server nedokáže přečíst.
Pod kapotou
WebSocket · Node.js · TypeScript · PostgreSQL · Redis
Časté otázky
Co se stane, když odešlu zprávu bez připojení?
Aplikace ji odešle, jakmile se spojení obnoví. Jakmile ji server obdrží, je uložena dříve, než je kdokoli upozorněn.
Jak dlouho server uchovává zašifrovanou zprávu?
Dokud si ji nevyzvednou všechny telefony příjemce, nejvýše však 30 dní.