Protokol SOS: technická specifikace pro textovou komunikaci přes SMS
Protokol SOS definuje strukturu a logiku textové komunikace intimního charakteru prostřednictvím SMS. Využívá striktní formát zprávy se stavovými kódy, příznaky a kontrolním součtem pro synchronizaci a ověření integrity. Tento dokument popisuje formát zprávy, stavy stavového automatu a zpracování chyb, čímž zajišťuje spolehlivý provoz bez nutnosti připojení k internetu.
Formát a struktura zpráv
SOS-zpráva má následující schéma: SOS-message = start-tag "|" version "|" state "|" session-id "|" flags "|" payload-length "|" payload ["|" checksum]. Jednotlivá pole jsou oddělena svislou čárou.
- start-tag: "SOS" — identifikátor protokolu.
- version: "1" — aktuální verze.
- state: jeden ze stavů (IDLE, SYNS, SYNR, ESTD, FINW, PRMT, BUSY, SUSP, CLSD, MORE).
- session-id: pětimístné číslo (1–65535), monotónně rostoucí pro každou relaci.
- flags: "A" (ACK), "F" (FIN), "R" (RST) nebo prázdné pole.
- payload-length: tři číslice udávající délku datové části v znacích (0–160).
- payload: text s možnými řídícími sekvencemi.
- checksum: dva hexadecimální znaky (volitelné).
Příklad: SOS|1|SYNS|42||12|Ahoj, kráska|3E.
Výpočet kontrolního součtu
Algoritmus:
- Rozdělit payload na slova (bez mezer).
- Vynásobit délky jednotlivých slov (pokud je payload prázdný, výsledek je 1).
- Odečíst počet mezer v payloadu.
- Vzít zbytek po dělení 256 a převést do hexadecimálního formátu.
Tato metoda zajišťuje jednoduchost i odolnost proti poškození dat na mobilních zařízeních.
Klíčové pojmy a řídící sekvence
Základní pojmy:
- Iniciátor: strana, která pošle první zprávu.
- Cílový uživatel: strana, která zprávu přijme nebo odmítne.
- Stav: fáze běhu protokolového automatu.
- Řídící sekvence: emocionální nebo funkční označení v rámci payloadu.
Řídící sekvence v payloadu:
| Sekvence | Význam |
|----------|--------|
| Y | Souhlas |
| N | Odmítnutí |
| ... | Pauza |
| :-) | Dobrovolný, přátelský náznak |
| ;-) | Hravý, lehce provokativní podtext |
| :-D | Smích |
| ^_^ | Radostné potvrzení |
| >_< | Rozpačitost |
| ~ | Mnohoznačnost, neurčitost |
| (.)(.) | Náznak fyzických atributů |
| ¯\\_(ツ)_/¯ | Neurčitost, rezignace |
Implementace mohou tyto sekvence automaticky rozpoznávat a reagovat na ně odpovídajícím způsobem.
Protokolový automat a stavy
Každá strana udržuje vlastní konečný automat. Synchronizace probíhá prostřednictvím polí state a flags.
Stavy:
- IDLE: Počáteční stav.
- SYNS: Čekání na odpověď na pozvání.
- SYNR: Pozvání přijato, odpověď odeslána.
- ESTD: Aktivní komunikace.
- FINW: Čekání na potvrzení ukončení.
- PRMT: Předčasné ukončení.
- BUSY: Dočasně nedostupný.
- SUSP: Podezřelá aktivita.
- CLSD: Relace ukončena.
- MORE: Pokračování po ukončení (FIN).
Přechody mezi stavy
Přechody vyvolané událostmi (odeslání/příjem SOS-zprávy):
- IDLE → SYNS: odeslání SYNS, časový limit 10 minut.
- SYNS → ESTD: příjem SYNR + příznak A.
- SYNS → PRMT: vypršení časového limitu nebo příjem RST.
- ESTD → FINW: nastavení příznaku F, časový limit 2 minuty.
- FINW → CLSD: potvrzení A.
- FINW → MORE: odpověď MORE + A, návrat do ESTD.
- Libovolný stav → PRMT: příjem RST nebo vypršení časového limitu.
- IDLE → BUSY: odpověď BUSY na SYN.
- SYNR → SUSP: anomálie v
session-idnebo chybnýchecksum.
Časové limity a sankce
- SYN: 10 minut → PRMT.
- ESTD: 10 minut na potvrzení ACK → PRMT.
- FINW: 2 minuty → CLSD.
- MORE: 10 minut → CLSD.
Sankce:
- PRMT: blokace na 30 minut; po třech incidentech na 7 dní.
- BUSY: čekání 15 minut.
- SUSP: odeslání RST + blokace na 24 hodin.
Řešení kolizí
Při aktivní relaci při příjmu SYN: odpověď BUSY s textem „relace již probíhá“. Iniciátor se vrátí do stavu IDLE. Porušení monotónnosti session-id vede do stavu SUSP a následně k odeslání RST.
Klíčové body:
- SOS standardizuje SMS-komunikaci se stavovým řízením a kontrolním součtem pro maximální spolehlivost.
- Umožňuje synchronizaci prostřednictvím SYNS/SYNR/ESTD bez připojení k internetu.
- Řídící sekvence zjednodušují emocionální výměnu a interpretaci záměru.
- Sankce a časové limity efektivně brání spamu a anomálním chováním.
- Jednoduchý kontrolní součet je odolný vůči typickým zkreslením při přenosu SMS.
— Editorial Team
Zatím žádné komentáře.