Catalog npm
Back to packageRELEASE DETAILS

1.0.2

npm

1ot-api

1ot nodejs connector

1otapiiotsim
Published10 Apr 2020
Direct dependencies30
Transitive dependenciesNot calculated

README

Current package documentation

1ot nodejs connector

Connector for https://1ot.com api

Installation

yarn

yarn add 1ot-api

npm

npm install 1ot-api

Usage

import Connector, { primaryStatuses, secondaryStatuses } from '1ot-api'

const username = '...'
const password = '...'

;(async () => {
    const connector = new Connector(/* tokenData if it was saved */)

    // Happen every time new access token received
    connector.on('token', (tokenData) => {
        const { accessToken, expiresIn, refreshToken } = tokenData
        // store token data for reuse
    })

    await connector.auth(username, password)

    const sims = await connector.getSims({ groupName: 'Test group' })

    for (let sim of sims) {
        const {
            status: { primary, secondary }
        } = sim
        if (primary === primaryStatuses.ON) {
            if (secondary === secondaryStatuses.LIVE) {
                // put sim to sleep mode
                await sim.deactivate()
            } else {
                // resume sim from sleep mode
                await sim.activate()
            }
        }
    }
})()

Description

import Connector from '1ot-api'

const connector = new Connector(tokenData?: { accessToken: string, expiresIn: Date, refreshToken: string })

Common methods

/*
* GET /auth
* when accessToken will be expired, token refreshes automatically
*/
const result: boolean = await connector.auth(username: string, password: string)

// GET /get_account_balance
const balance = await connector.account.balance()

// GET /get_account_groups
const groups = await connector.account.getGroups()

/*
* GET /get_available_profiles
* Account must supports esims
*/
const profiles = await connector.getProfiles()
/*
if groupName is defined     -   GET /get_group_alerts
others                      -   GET /get_account_alerts
*/
const alerts = await connector.getAlerts(params?: { groupName?: string })

Sims selection

import { Sim } from '1ot-api'

// GET /get_sim
const sim: Sim = await connector.getSim(params: { iccid?: string, eid?: string})

/*
* Alternative way, without loading sim data
* Usefull for actions on known sims
*/
const sim: Sim = new Sim({iccid?: string, eid?: string})
// It's not necessary
await sim.load()

/*
if iccid or eid are defined     -   GET /get_sims
if groupName is defined         -   GET /get_gpoup_sims
others                          -   GET /get_account_sims
*/
const sims: {
        /* found, limit, total, offset */
        sims: Array<Sim>
    } = await connector.getSims(params?: {
        offset?: number = 0,
        iccid?: (string|Array<string>),
        eid?: (string|Array<string>),
        groupName?: string
    })

/*
* Selecting all sims in several requests if it needed (more than 1000 sims)
* Filtering - same as getSim
*/
const sims: Sims = await connector.getAllSims(filter?: {
    iccid?: (string|Array<string>),
    eid?: (string|Array<string>),
    groupName?: string
})

Sim info

// GET /get_sim_alerts
const alerts = await sim.getAlerts(params?: { offset?: number = 0, onlyUnread?: boolean = false, markAsRead?: boolean = false })

// GET /get_sim_cost
const cost = await sim.getCost(date?: Date)

// GET /get_sim_sessions
const sessions = await sim.getSessions({ offset?: number = 0, from?: number, to?: number })

Actions

// PUT /close
await sim.close()

/*
* PUT /diagnostics
* Only when feature is enabled in App Store
*/
await sim.diagnostics()

// PUT /esim_profile
await sim.esimProfile(profile: string, action: string)

// PUT /reset
await sim.reset()

// PUT /resume
await sim.resume()

// PUT /sendSms
await sim.sendSms(sms: string)

// PUT /set_data_limit
await sim.setDataLimit(dataLimit: number)

// PUT /set_group
await sim.setGroupt(groupName: string)

// PUT /set_name
await sim.setName(name: string)

// PUT /suspend
await sim.suspend()

// PUT /test
await sim.test()

// PUT /activate
await sim.activate()

// PUT /deactivate
await sim.deactivate()

For Sims object (connector.getAllSims()) all actions are available (will be apply for every sim inside). For example:

const sims = await connector.getAllSims({ groupName: 'Temperature sensors'})
await sims.suspend()

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Declared dependencies 30

Native requirements
30 direct targetsNot calculated transitive count
Package / targetRequirementRelationship
bent
Environment
{
  "local_name": "bent",
  "alias": false,
  "peer_metadata": null
}
^7.1.2runtime
@babel/cli
Environment
{
  "local_name": "@babel/cli",
  "alias": false,
  "peer_metadata": null
}
^7.8.4development
@babel/core
Environment
{
  "local_name": "@babel/core",
  "alias": false,
  "peer_metadata": null
}
^7.9.0development
@babel/node
Environment
{
  "local_name": "@babel/node",
  "alias": false,
  "peer_metadata": null
}
^7.8.7development
@babel/plugin-proposal-class-properties
Environment
{
  "local_name": "@babel/plugin-proposal-class-properties",
  "alias": false,
  "peer_metadata": null
}
^7.8.3development
@babel/plugin-syntax-export-namespace-from
Environment
{
  "local_name": "@babel/plugin-syntax-export-namespace-from",
  "alias": false,
  "peer_metadata": null
}
^7.8.3development
@babel/preset-env
Environment
{
  "local_name": "@babel/preset-env",
  "alias": false,
  "peer_metadata": null
}
^7.9.5development
@rollup/plugin-commonjs
Environment
{
  "local_name": "@rollup/plugin-commonjs",
  "alias": false,
  "peer_metadata": null
}
^11.0.2development
@rollup/plugin-node-resolve
Environment
{
  "local_name": "@rollup/plugin-node-resolve",
  "alias": false,
  "peer_metadata": null
}
^7.1.1development
babel-eslint
Environment
{
  "local_name": "babel-eslint",
  "alias": false,
  "peer_metadata": null
}
^10.1.0development
babel-jest
Environment
{
  "local_name": "babel-jest",
  "alias": false,
  "peer_metadata": null
}
^25.3.0development
babel-plugin-inline-json-import
Environment
{
  "local_name": "babel-plugin-inline-json-import",
  "alias": false,
  "peer_metadata": null
}
^0.3.2development
babel-plugin-root-import
Environment
{
  "local_name": "babel-plugin-root-import",
  "alias": false,
  "peer_metadata": null
}
^6.5.0development
dotenv
Environment
{
  "local_name": "dotenv",
  "alias": false,
  "peer_metadata": null
}
^8.2.0development
dotenv-cli
Environment
{
  "local_name": "dotenv-cli",
  "alias": false,
  "peer_metadata": null
}
^3.1.0development
eslint
Environment
{
  "local_name": "eslint",
  "alias": false,
  "peer_metadata": null
}
^6.8.0development
eslint-config-standard
Environment
{
  "local_name": "eslint-config-standard",
  "alias": false,
  "peer_metadata": null
}
^14.1.1development
eslint-plugin-babel
Environment
{
  "local_name": "eslint-plugin-babel",
  "alias": false,
  "peer_metadata": null
}
^5.3.0development
eslint-plugin-import
Environment
{
  "local_name": "eslint-plugin-import",
  "alias": false,
  "peer_metadata": null
}
^2.20.2development
eslint-plugin-jest
Environment
{
  "local_name": "eslint-plugin-jest",
  "alias": false,
  "peer_metadata": null
}
^23.8.2development
eslint-plugin-node
Environment
{
  "local_name": "eslint-plugin-node",
  "alias": false,
  "peer_metadata": null
}
^11.1.0development
eslint-plugin-promise
Environment
{
  "local_name": "eslint-plugin-promise",
  "alias": false,
  "peer_metadata": null
}
^4.2.1development
eslint-plugin-standard
Environment
{
  "local_name": "eslint-plugin-standard",
  "alias": false,
  "peer_metadata": null
}
^4.0.1development
husky
Environment
{
  "local_name": "husky",
  "alias": false,
  "peer_metadata": null
}
^4.2.5development
jest
Environment
{
  "local_name": "jest",
  "alias": false,
  "peer_metadata": null
}
^25.3.0development
lint-staged
Environment
{
  "local_name": "lint-staged",
  "alias": false,
  "peer_metadata": null
}
^10.1.3development
nodemon
Environment
{
  "local_name": "nodemon",
  "alias": false,
  "peer_metadata": null
}
^2.0.3development
prettier
Environment
{
  "local_name": "prettier",
  "alias": false,
  "peer_metadata": null
}
^2.0.4development
rollup
Environment
{
  "local_name": "rollup",
  "alias": false,
  "peer_metadata": null
}
^2.3.4development
rollup-plugin-babel
Environment
{
  "local_name": "rollup-plugin-babel",
  "alias": false,
  "peer_metadata": null
}
^4.4.0development

Distribution files

1 collected
Distribution 1

Source distribution

Source file
Checksums from source
{
  "integrity": "sha512-t0UdSz4HJI42BpOpUtFO5ef+absMNAXK5oP+rZ9yakk6JpmngD7yroE24HLxk68cwwv36A9vUKRVUjmaqw/9nA==",
  "shasum": "933d8afd13da5f430f98589b5f474b7208238449",
  "tarball": "https://registry.npmjs.org/1ot-api/-/1ot-api-1.0.2.tgz",
  "fileCount": 4,
  "unpackedSize": 69389,
  "npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJej7cGCRA9TVsSAnZWagAAlpQP/05XCokNmH9a9K2qoSj+\nvGhHb1nFhYQGjxnSFaEH309ZWvivJOS4Z4ZxxKlsC5R19VaTdGcJiJ/FvBEI\nq8/+hxQYSVWg11ufu0DPdIalySc5umjYfgiQvFlLlT1fEo1Xn2EXoLi6YVuT\nRIo6vFYsZ3e6ZjkyrLKvTzZvGADdrlKcG8vmD42FDin47QHKNArfK93XV+g+\n6/7B+YG1JSzuIQM0zZXnN2ps0HOuiB2WCv18WWDwpSWnUJWlP18G6S3Z6O0u\nLHgdbRCPmmebcDc58uUp5wqIcg65bBwjv6EXDsPeRLDjGji1yDsBBdEKaUoK\nJ0WBzViNTFPTvv0NJXEpV2SPX9nsCRNxd0gjELwxe080m+Jtrbu0/IAmLar+\n7IJpqOjIrnyr1HyhiDry9mIE1nwOecBInVAUMqWwd3bKiV8J2ZkQCswZ+Hnl\nw52dhLEBs/Gxx7L27U1Ao5dxM11j3TqsMgKFGcA6sbGL7N11A4+mahDn0qSZ\nM9KoaxLAHe+kq87RPfSEUkLHOK7KKLIHEz8rCGjrGmbohT2Ii7I1sDf1/8Vx\njdbDtd0sJTe3LzH+E0ysagDVBXxO2OibzRsvnUjm7QDqDHLW28RNjxbDzKtb\ny5VpKjm37kCV7VDtYTHNREE4FQHSOayvhD20kuyXcHQF2tXqRUROC/5AFNBU\nEt+Y\r\n=0Bn1\r\n-----END PGP SIGNATURE-----\r\n",
  "signatures": [
    {
      "keyid": "SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA",
      "sig": "MEQCIBHZfXX8zqCk/z4N1TVkU8nA70ovilxl6A5aiHo0miwbAiAmdDTWqCtwPplRoydu43jIdy+IyvJRCpqUzAAO6lZF+w=="
    }
  ]
}

Repository

PENDING
lybrus/1ot-api

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 18:34 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package_version:7ca9fff43c9860cc2231968b1e4e21de6f45cc8384f8d2ecd5ec33c8bdb56071

Other collected versions

1.0.510 Apr1.0.410 Apr1.0.19 AprView all collected versions →