A ideia do CMLK é justamente ser independente do transporte. Hoje, na PoC, usamos WebSocket porque é o caminho mais simples para validar o protocolo, mas nada impede que ele rode em cima de outros meios como SMS, BLE ou LoRa.
Na prática, o que aconteceria:
Fragmentação: mensagens seriam serializadas (CBOR/Base64) e quebradas em pedaços do tamanho que cada transporte suporta (ex.: 160 caracteres no SMS, poucos bytes no LoRa). No destino, esses fragmentos seriam reagrupados e validados.
Gateways/Dispositivos: cada cenário pode funcionar de duas formas:
dispositivo com o hardware do transporte (modem GSM, rádio LoRa, BLE);
ou um gateway que faz a ponte (ex.: recebe via SMS e repassa pro restante da rede CMLK).
Operação sem internet: em vez de depender de conectividade contínua, o protocolo pode trabalhar de forma store-and-forward ou até em topologias mesh/DTN, onde cada nó guarda e repassa mensagens quando entra em alcance de outro.
Ou seja: mesmo em ambientes com conectividade limitada, o protocolo continua funcionando, só que com um modelo mais assíncrono. O foco atual está em WebSocket, mas a arquitetura foi pensada para suportar essas extensões de transporte conforme a necessidade.