Coder Social home page Coder Social logo

geotab / sdk Goto Github PK

View Code? Open in Web Editor NEW
36.0 16.0 115.0 41.43 MB

The Geotab SDK (Software Development Kit) is a powerful set of tools for automating tasks and working with the data in MyGeotab. Within these documents you will find information on how to develop JavaScript and C# applications, build and integrate Add-Ins and use MyGeotab with third-party systems.

Home Page: https://geotab.github.io/sdk/

License: MIT License

Ruby 0.02% JavaScript 46.82% HTML 36.10% CSS 2.71% SCSS 14.36%

sdk's Introduction

Geotab Developers

This project serves as the online SDK for the MyGeotab, Geotab Drive, and MyAdmin. It also contains the guidelines and protocols to integrate IOX hardware add-ons with the GO device as well as Custom Telematics Devices using Geotab’s Data Intake Gateway (DIG). Everything is hosted via Github pages.

Getting Started

Make sure you have installed:

  • Ruby: >2.0 with Bundler >1.10
  • Node: >17.3.1
  • Gulp: 4.0 : npm install gulp-cli -g

If you have cloned this repo or want to reinstall, make sure there's no node_modules or Gemfile.lock folder/file and then run:

$ npm install
$ bundle install

For local testing run with command:

$ gulp

Deployment

The documention can be built and deployed using these commands:

$ gulp build --prod
$ gulp deploy

Settings

The _config.yml and _config.build.yml provide the Jekyll settings. _config.build.yml is only used in production build and overrides settings in _config.yml;

Dependencies

generator-jekyllized For more information on how to use this project, please refer to the README on Github.

Owner

Geotab Inc.

sdk's People

Contributors

anthonyturcogeotab avatar beefo avatar canislobo avatar colonelchlorine avatar denispogeotab avatar dependabot[bot] avatar eugen-mueller avatar glenn-sand avatar jpazgeo avatar juntujerry avatar justinballarogeotab avatar jwkeithpo avatar jyalenkatian avatar kevinbuchaly avatar kevindesousa37 avatar liza1102 avatar lmoxey-geotab avatar mitp7 avatar muyuncaigeotab avatar noelprashanth avatar nolankingdon avatar norman-to avatar paulhillier avatar pcgeotab avatar ptu91 avatar ravneet-s avatar rubenplaza avatar stephen-f avatar thetranman avatar tranjennie avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

sdk's Issues

BUG: GetFeed of LogRecord fails in Geotab.Checkmate.ObjectModel package version 5.7.2103.1

The following NuGet package call:

            var now = DateTimeOffset.UtcNow;
            LogRecordSearch searchParams = new()
            {
                FromDate = now.AddHours(-1).DateTime,
                ToDate = now.DateTime,
            };

            var gps = await api.CallAsync<IEnumerable<LogRecord>>("GetFeed", typeof(LogRecord), new
            {
                search = searchParams,
            });

yields the following request:

{
    "id": 0,
    "method": "GetFeed",
    "params": {
        "credentials": {
            "database": "<redacted>",
            "sessionId": "<redacted>",
            "userName": "<redacted>"
        },
        "typeName": "Geotab.Checkmate.ObjectModel.LogRecord",
        "search": {
            "fromDate": "2021-10-11T14:36:12.680Z",
            "toDate": "2021-10-11T15:36:12.680Z",
            "observeActiveState": false
        }
    }
}

which results (via Fiddler) in the following response:

{
    "result": {
        "data": [
<records>
        ],
        "toVersion": "0000000003a7c824"
    },
    "jsonrpc": "2.0",
    "id": 0
}

but using the NuGet package, the following exception is raised:

System.Exception: Error getting json response. HttpStatusCode: OK

JsonException: The JSON value could not be converted to System.Collections.Generic.IEnumerable`1[Geotab.Checkmate.ObjectModel.LogRecord]. Path: $.result | LineNumber: 0 | BytePositionInLine: 11.

This essentially makes the package unusable for us at this time.

Inquiry

Hello,

It is not really an issue but more of a help, I am trying to generate a report on top of your APIs that shows the duration and distance for drivers per duty status (D and ON ), in other words how many hours, miles the driver was driving and On Duty. I am using The DutyStatusLogs but I am seeing only log date. It does not tell me for how long the status was D and same for ON. Can you help me with that?

Regards,
Khaled

Device Coordinates

I've executed an authenticated request to get a list of devices in the database. Now, I need to get the coordinates. The API documentation says that I can attain the real-time coordinates by performing a search using each device's serial number. However, I am unable to find any example and/or instructions on how to do so. I've been looking at your source code. The thing is that there is no information provided to the developer when programming with your api in the IDE. What class do I use to perform this search. Am I still supposed to use a search parameters builder?

JS Import Users Demo responds with error

Demo: JS Import Users - https://geotab.github.io/sdk/software/js-samples/importUsers.html

When following the instructions found here - https://community.geotab.com/s/article/How-to-bulk-import-users-using-the-Import-Users-tool?language=en_US and using the provided Excel Template and ensuring the resulted data is Green

image

Or completing the provided form

When clicking Import Users the script responds with a JSONRPCError of -32700, which I believe is a Parse error - according to https://www.jsonrpc.org/specification#error_object

image

Is it possible to know why this error is being caused or what has changed from the instructions needed?
As the data requirements for adding users or drivers changed? We appear to be having similar issues displayed in the demo for our own internal API powered tools.

api.mobile.notify() for Geotab Drive

I have setup a simple Drive Add in, which calls api.mobile.notify() in the focus function. This works as expected on an Android device, however the same add in does not display a notification on an ios device (ios11, iphone 6) - is it still supported? It is worth noting that the Geotab on iphone does try to request notification permissions, however when accepted no permission is added in Settings.

Also is it possible to manage notifications further, such as changing the alert time, or removing them using the id?

BUG (NuGet): Geotab.Checkmate.ObjectModel.ToVersion is a long, should be a string

I don't know why whoever wrote the NuGet package decided to completely ignore your own API docs that say this field is a string, but this property's definition needs to be corrected. Just because it looks like a hexadecimal number, doesn't mean it's a hexadecimal number.

For anyone else struggling with this, because they need to use FeedResult.ToVersion as the fromVersion in a subsequent call to GetFeed, you need to do the following:

var fromVersion = feedResult?.ToVersion?.ToString("x16");

Of course, should this property be corrected to string, the above will no longer be necessary.

DeviceStatusInfoSearch not imported

DeviceStatusInfoSearch is not in my stack. I imported the SDK using gradle.build. It's missing from the SDK. In your documentation it shows it not as a inner class. If it is an inner class then what is it's outer class.

Map.html

I'm trying to re-create the singlesignon on our server, but as we know the map.html is referenced on the geotab server and thus the api key will not run the map. is there a way to get these files and add our own goolge api key and run the map.html on our server without having to recreate everything.

We love the functionality on the map.html and passing vehicles directly to it, we just want to show other items on the map, like defaulting to traffic, map vs satellite default to map, hide the top menu and left slide menus...

OpenAPI Spec

Hello, do you publish an openapi spec anywhere?
If not, is there consideration for doing so?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.