Nearby Messages API to interfejs API typu publikowanie-subskrypcja, który umożliwia przesyłanie małych binarnych pakietów danych między połączonymi z internetem urządzeniami z Androidem i iOS. Urządzenia nie muszą być w tej samej sieci, ale muszą być połączone z internetem.
Funkcja W pobliżu używa Bluetooth Low Energy do przesyłania między urządzeniami unikalnego kodu parowania. Serwer ułatwia wymianę wiadomości między urządzeniami, które wykrywają ten sam kod parowania. Gdy urządzenie wykryje kod parowania z pobliskiego urządzenia, wysyła go na serwer Nearby Messages w celu weryfikacji i sprawdzenia, czy są jakieś wiadomości do dostarczenia dla bieżącego zestawu subskrypcji aplikacji.
Nearby Messages nie wymaga uwierzytelniania ani konta Google.
Dokładny mechanizm wymiany danych może się różnić w zależności od wersji. Poniższa sekwencja pokazuje zdarzenia prowadzące do wymiany wiadomości:
Aplikacja publikująca wysyła żądanie powiązania binarnego ładunku (wiadomości) z unikalnym w czasie kodem parowania (tokenem). Serwer tymczasowo kojarzy ładunek wiadomości z tokenem.
Urządzenie publikujące używa technologii Bluetooth Low Energy, aby token był wykrywalny przez urządzenia w pobliżu. Urządzenie publikujące używa też Bluetootha Low Energy do skanowania tokenów z innych urządzeń.
Aplikacja subskrybująca łączy subskrypcję z tokenem i wysyła go do wydawcy za pomocą Bluetooth Low Energy oraz wykrywa token wydawcy.
Gdy jedna ze stron wykryje token drugiej strony, zgłasza to serwerowi.
Serwer ułatwia wymianę wiadomości między 2 urządzeniami, gdy oba są powiązane ze wspólnym tokenem, a klucze interfejsu API używane przez aplikacje wywołujące są powiązane z tym samym projektem w Google Developers Console.
Podczas korzystania z pakietu SDK Usług Google Play do obsługi urządzeń w pobliżu zbierane są statystyki użytkowania, które służą do ulepszania działania usługi.
- Dane o skuteczności: podczas korzystania z pakietu SDK Nearby zbierane są dane o czasie trwania publikacji i subskrypcji oraz liczbie otrzymanych wiadomości.
- Informacje o urządzeniu: zbieramy model urządzenia, kraj, wersję kompilacji i nazwę pakietu aplikacji, a następnie łączymy je z danymi o wydajności, aby identyfikować segmenty regionalne i zależne od urządzenia.
- Wymiana wiadomości z urządzeniami w pobliżu publikuje: dane publikowane za pomocą tej usługi są przechowywane przez Google do momentu, gdy wiadomość przestanie być publikowana. Te dane są udostępniane subskrybentom, którzy znajdują się w pobliżu urządzenia.
Użytkownicy mogą zezwolić na to gromadzenie danych lub mu odmówić, wybierając kolejno Ustawienia > Google > Użytkowanie i diagnostyka.