ublox

package module
v0.0.0-...-0a2d57e Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 7, 2016 License: MIT Imports: 10 Imported by: 0

README

U-BLOX Client

GoDoc Build Status Coverage Status

Поддержка работы с сервисом U-BLOX

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	CollectionName         = "ublox"                         // название коллекции
	ExpireAfter            = time.Duration(time.Minute * 30) // время жизни элемента кеша
	MaxDistance    float64 = 100000.0 / geo.EarthRadius      // дистанция в радианах (метры на радиус Земли)
)
View Source
var (
	// RequestTimeout описывает время ожидания от сервера, которое используется при инициализации
	// клиента.
	RequestTimeout = time.Second * 10
	// Servers описывает список серверов для запросов данных.
	Servers = []string{
		"http://online-live1.services.u-blox.com/GetOnlineData.ashx",
		"http://online-live2.services.u-blox.com/GetOnlineData.ashx",
	}
	Pacc = 100000 // расстояние погрешности в метрах
)
View Source
var DefaultProfile = Profile{
	Datatype:    []string{"pos", "eph", "aux"},
	Format:      "aid",
	GNSS:        []string{"gps"},
	FilterOnPos: true,
}

DefaultProfile описывает профиль запроса по умолчанию для запросов.

Functions

This section is empty.

Types

type Cache

type Cache struct {
	// contains filtered or unexported fields
}

Cache описывает кеш ответов сервера U-blox с эфемеридами.

func InitCache

func InitCache(session *mgo.Session, dbName, token string) (cache *Cache, err error)

InitCache возвращает инициализированное хранилище кеша для данных с эфемеридами. В процессе инициализации проверяет наличие необходимых индексов и создает, в случае их отсутствия. Если индексы уже существуют, но отличаются от тех, что задаются по умолчанию, то возвращает ошибку.

func (*Cache) Get

func (c *Cache) Get(point geo.Point, profile Profile) (data []byte, err error)

Get возвращает данные эфемерид для указанной точки. Данные возвращаются из кеша, если есть для ближайшей точки, либо запрашиваются с сервера U-blox в противном случае.

type Client

type Client struct {
	// contains filtered or unexported fields
}

Client описxывает сервис получения данных.

func NewClient

func NewClient(token string) *Client

NewClient возвращает новый инициализированный провайдер для получения данных.

func (*Client) GetOnline

func (c *Client) GetOnline(point geo.Point, profile Profile) ([]byte, error)

GetOnline запрашивает сервер u-blox и получает данные для указанной точки и профиля устройства.

type Profile

type Profile struct {
	Datatype    []string // A comma separated list of the data types required by the client (eph, alm, aux, pos)
	Format      string   // Specifies the format of the data returned (mga = UBX- MGA-* (M8 onwards); aid = UBX-AID-* (u7 or earlier))
	GNSS        []string // A comma separated list of the GNSS for which data should be returned (gps, qzss, glo)
	FilterOnPos bool     // If present, the ephemeris data returned to the client will only contain data for the satellites which are likely to be visible from the approximate position provided
}

Profile описывает профиль возвращаемых данных для данного устройства.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL