Przejdź do treści

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