Usługi i charakterystyki
Gateway poprzez interfejs Bluetooth udostępnia usługi, które umożliwiają konfiguracją połączenia do sieci WiFi.
Usługa konfiguracji połączenia
UUID: 00010001-0000-0000-0000-76656D6D696F
Charakterystyki
stan
- UUID: 00010002-0000-0000-0000-76656D6D696F
- Typ: uint8
- Odczyt: nie
- Zapis: tak
- Notifikacje: tak
-
Wartości:
- 0x01 - rozpoczęcie zestawiania połączenia
- 0x02 - potwierdzenie zestawienia połączenia
- 0x03 - błąd zestawienia połączenia
- pozostałe wartości zignorować
ssid
- UUID: 00010003-0000-0000-0000-76656D6D696F
- Typ: string
- Maksymalna długość: 31
- Odczyt: tak
- Zapis: tak
- Notifikacje: nie
hasło
- UUID: 00010004-0000-0000-0000-76656D6D696F
- Typ: string
- Maksymalna długość: 63
- Odczyt: nie
- Zapis: tak
- Notifikacje: nie
Wykorzystanie
- Aplikacja mobilna zapisuje SSID i hasło wybranej sieci do odpowiednich charakterystyk.
- W kolejnym kroku aplikacja zapisuje do charakterystyki stan wartość 0x01, która oznacza rozpoczęcie procesu zestawienia połączenia do sieci.
- Następnie aplikacja oczekuje na notyfikację o zmianie wartości charakterystyki stan.
- Na podstawie nowej wartości charakterystyki stan aplikacja informuje użytkownika o powodzeniu lub niepowodzeniu próby zestawienia połączenia.
sequenceDiagram
participant A as Aplikacja
participant U as Usługa
A->>U: zapis wartości do ssid
A->>U: zapis wartości do hasło
A->>U: zapis wartości 0x01 do stan
U->>U: próba zestawienia połączenia
alt zestawienie połączenia zakończone sukcesem
U->>A: notyfikacja o zmianie wartości stan na 0x02
else zestawienie połączenia nie powiodło się
U->>A: notyfikacja o zmianie wartości stan na 0x03
end
Usługa skanowania sieci
UUID: 00020001-0000-0000-0000-76656D6D696F
Charakterystyki
stan
- UUID: 00020002-0000-0000-0000-76656D6D696F
- Typ: uint8
- Odczyt: nie
- Zapis: tak
- Notifikacje: tak
-
Wartości:
- 0x01 - rozpoczęcie skanowania
- 0x02 - zakończenie skanowania
- pozostałe wartości zignorować
ssid
- UUID: 00020003-0000-0000-0000-76656D6D696F
- Typ: string
- Maksymalna długość: 31
- Odczyt: nie
- Zapis: nie
- Notifikacje: tak
Wykorzystanie
- Aplikacja mobilna zapisuje do charakterystyki stan wartość 0x01, co oznacza rozpoczęcie skanowania dostępnych sieci WiFi.
- Następnie aplikacja oczekuje notyfikacji o zmianach wartości charakterystyki ssid, którymi przesyłane będą SSID odnalezionych sieci WiFi.
- Równolegle aplikacja oczekuje na notyfikację o zmianie wartości charakterystyki stan, która poinformuje aplikację o zakończeniu procesu skanowania dostępnych sieci.
sequenceDiagram
participant A as Aplikacja
participant U as Usługa
A->>U: zapis wartości 0x01 do stan
loop dla wszystkich odnalezionych sieci
U->>A: notyfikacja o zmianie wartości ssid
end
U->>A: notyfikacja o zmianie wartości stan na 0x02