Dispositivos sempre ficam lotados em alguma companhia específica. Ela fica identificada no arquivo device:
{// documento device gravado com o nome "<imei>" na collection de devices
"imei": "<imei>"
,"deviceOf": "<companyId>"
const https = require('https'); | |
const http = require('http'); | |
const getJSON = (options, onResult) => { | |
console.log('rest::getJSON'); | |
const port = options.port == 443 ? https : http; | |
let output = ''; | |
const req = port.request(options, (res) => { |
let yamldata = { | |
t: newdata.t | |
,dt: newdata.dt | |
,ft: newdata.ft | |
,spd: newdata.spd | |
,lat: newdata.lat || 0 | |
,lng: newdata.lng || 0 | |
,ang: newdata.ang | |
,stp: newdata.stp | |
,ign: newdata.ign |
/* UTILS AND CONSTANTS*/ | |
const SPEED_MULTIPLIER = 1.852; | |
const DISTANCE_MULTIPLIER = 111.045; | |
const SETTINGS = { | |
"default_object_online_timeout": 5 | |
,"valid_by_avg_speed": false | |
,"min_moving_speed": 6 | |
,"addon.device_tracker_app_login": false |
Dispositivos sempre ficam lotados em alguma companhia específica. Ela fica identificada no arquivo device:
{// documento device gravado com o nome "<imei>" na collection de devices
"imei": "<imei>"
,"deviceOf": "<companyId>"
// [bucket]/<userID>/invoices/invoiceID.json | |
{ | |
"invoiceID": "Number" | |
,"by": "UID" | |
,"createdAt": "Date" | |
,"legacyLogin": "String" | |
,"chargeType": "String[event|recurrent|occasional]" | |
,"userToCharge": { | |
"name": "String" | |
,"CPFCNPJ": "String" |
Pegar todo o cache separado por servidor:
https://us-central1-tracker-net.cloudfunctions.net/updateimeis?servernodes=true
Todos os dispositivos separados por servidor: {"imei":"866551038xxxxxx","t":1694968580764,"prot":"ev02","users":["zecarevenda","zecaurubu","3632400600xxxxxx"]}
t é o tempo epoch da última conexão. prot é o protocolo users usuários em ordem.
<!doctype HTML> | |
<html> | |
<head> | |
<meta charset="UTF-8"> | |
<!-- <script type="module" src="http://localhost:5000/tracker-net/us-central1/getHistory" /> --> | |
<!-- <script type="module" src="https://us-central1-tracker-net.cloudfunctions.net/getHistory" /> --> | |
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/xlsx/0.15.3/xlsx.full.min.js" ></script> |
const UserScheme = { | |
uid: { | |
type: "string" | |
,match: /[0-9].*/ | |
,required: true | |
,unique: true | |
,validate: "uid" | |
,trim: true | |
,max: 25 | |
} |
const http = require('node:http'); | |
const url = require('url'); | |
function getData(req) { | |
return new Promise((resolve, reject) => { | |
const queryObject = url.parse(req.url, true).query; | |
let body = ''; | |
function res() { | |
resolve(Object.assign({}, JSON.parse(body||'{}'), queryObject)); | |
} |
/** | |
* Module to work with Models and Classes | |
*/ | |
(function(o){ | |
o.Model = {_:{}}; | |
// o.Model.connection; | |
// o.Model.connect; | |
var counter = 0; |