Описание передачи геолокации на мобильных устройствах
В этой статье описывается передача геолокации с мобильных устройств посетителей посредством Webim Mobile SDK для платформ Android и iOS.
Передача геолокации в мобильных приложениях осуществляется посредством функции sendGeolocation(Geolocation geolocation, GeolocationCallback callback)
Webim Mobile SDK. Частности реализации и вызова отличаются в зависимости от платформы, но общий алгоритм работы следующий:
-
В клиентском приложении при включенной в account config опции отправки геолокации отображается кнопка Отправить местоположение.
-
По нажатию на кнопку открывается виджет используемой картографической службы (Yandex.Карты, Google Maps, 2GIS, etc., настраивается через account config)
-
Посетитель отправляет своё местоположение по нажатию на кнопку Отправить
-
На Chat Backend посредством
sendGeolocation(Geolocation geolocation, GeolocationCallback callback)
отсылаетсяaction=geo_response
-
В Chat Backend происходит валидация и сохранение геолокации в объекте
Visitor
с последующей отправкой дельт оператору и посетителю -
С Chat Backend приходит ответ:
-
{'result': 'ok')
в случае успеха; -
{'error': 'invalid-coordinates-recieved'}
в случае, если были переданы невалидные координаты
-
Параметр geolocation
, передаваемый функции - объект класса Geolocation
, в котором хранятся следующие параметры:
-
'latitude'
- широта, типfloat
, либоString
-
'longtitude'
- долгота, типfloat
, либоString