Developing with Mojio 101

Getting Started: Developing with Mojio 101

Mojio uses machine-to-machine (M2M) cellular data exchange to send and receive data to and from a vehicle in real time. That data is "translated" and fed to an app on a smartphone, providing information about the vehicle and its status. Mojio keeps users connected to their favorite people, places and things.


A Brief Introduction

It's easy. Mojio plugs into a vehicle's OnBoard Diagnostic (OBD) port, which is located under the dash usually within 24 inches of the steering wheel on the driver's side. Then, the user downloads an app onto their smartphone. The two will automatically pair and you're off to the races.

Mojio works in most cars built after 1995 and will connect to select cellular networks as we roll out across the world. Currently, we are available in the US and Canada. For more information on when Mojio will be available in your country, please contact us at info@moj.io

Mojio connects to the Internet through an always-on cellular connection inside the device that is plugged into a vehicle. This allows for a seamless experience and is important because Mojio makes the car the device that is connected to the Internet directly (not a smartphone). Through this always-on connection, among other advantages, you know where a vehicle is at any moment.


Domain Model

On Your Marks...

This is the simplified domain model showing the relationships between the four principle entities: Device, Vehicle, Event, and Trip.

  • A Mojio Device installs in a Vehicle.
  • A Vehicle generates trips.
  • Trips also get attached to the Device's trip log.
  • A Vehicle fires events, such as Low Fuel Warning
  • Events also get recorded as part of a trip log.

Get Set...

  • A Device to Vehicle is typically 1 to 1.
  • A Mojio will have zero-to-many Trips.
  • A Vehicle will have zero-to-many Trips.
  • A Vehicle will have zero-to-many Events
  • A Trip will have 1 or more Events.
  • Device, Vehicle and Trip all have an Owner. An Owner is the person who is registered to the Mojio Device.
  • A Vehicle, Trip and Event all have a Driver. A Driver could also be the Owner, but it's not required (for example, a Device Owner could lend out their car).

Go...!

We have now added User and Access control entities to our domain model.

  • A User has many Access control records that determine access to domain objects.
  • A Device, Vehicle, Trip, Event, and User each all have a single Access control record that defines who can access them along with their permission level.
Next: Build Your First App

Advanced Topics: Service Layers

Application & Storage

Developers create their own applications that leverage the Mojio REST API. Most of the API calls require an AppID and Secret Key, which are generated for every new application that a Developer creates. Applications are the first security layer for accessing the API, as you cannot access the API outside of an application.

The Storage layer allows applications to store data that is application specific, but related to a specific domain object. In other words, each object in the domain can have application-specific values stored in a secure manner. Other applications are not able to access this data. Storage entries are simple key => value pairs associated with the domain object and the application.

Observer

Observers are a mechanism for being able to receive data when ANY object changes in the Mojio system. Instead of polling for changes in a loop, the Mojio system will push data to the application when that data changes.

Every object in the Mojio domain can be observed.


comments powered by Disqus