Newton's Preposterous Miscalculation

    dbgcensus

    1.0.1 • Public • Published

    dbgcensus

    A simple way to use the Daybreak Games Census API service

    Table of Contents

    Installing

    npm install dbgcensus --save
    

    Creating a new query

    var CensusQuery = require('dbgcensus').Query;
    var query = new CensusQuery('character', 'ps2', 'example')

    The dbgcensus.Query constructor accepts a service, optional serviceType, and optional serviceId. If a globalNamespace is not set than that argument becomes required. The acceptable namespaces can be found on the census.daybreakgames.com website. If a serviceId is not provided it defaults to the globalKey if one is set or 'example'.

    Returning data from the query

    query.get(function (error, data) {
      if (error) {
        // something went wrong!
      }
     
      //do something with data
    });

    The data variable represents the data of the collection list. Normally when a query is made with the census API it is returned like:

    {
      character_list: [
        {
          'character_id': 1234,
          //etc
        }
      ]
    }

    However dbgcensus returns just the data so the above becomes:

    [
      {
        'character_id': 1234,
        //etc
      }
    ]

    Setting global parameters

    var dbgcensus = require('dbgcensus');
    dbgcensus.SetGlobalNamespace('ps2:v2');
    dbgcensus.SetGlobalServiceKey('example');

    Defining a condition

    query.where('name.lower').equals('lampjaw');

    The following operations and their equivalent syntax is below:

    • equals: =
    • notEquals: =!
    • isLessThan: =<
    • isLessThanOrEquals: =[
    • isGreaterThan: =>
    • isGreaterThanOrEquals: =]
    • startsWith: =^
    • contains: =*

    Setting a language

    query.setLanguage('en');

    No language is set by default so you will receive all localized strings if available.

    Show certain fields

    query.showFields(['character_id', 'name', 'faction_id']);

    Hide certain fields

    query.hideFields(['currency', 'times']);

    Set a limit for number of rows to return

    query.setLimit(10);

    Set the starting row

    query.setStart(100);

    Add a resolve

    query.addResolve('world');

    or for multiple resolves

    query.resolve(['world', 'outfit']);

    Join to another service

    var worldJoin = query.joinService('characters_world');

    Join objects have the following methods:

    • isList(bool)
    • isOuterJoin(bool)
    • showFields(array): See the 'Show certain fields' section above
    • hideFields(array): See the 'Hide certain fields' section above
    • onField(string)
    • toField(string)
    • injectAt(string)
    • where(string): See the 'Defining a condition' section above
    • joinService(string): Returns another join object for sub joining

    Tree results on a field

    var query = new CensusQuery('vehicle', 'ps2');
    var vehicleTree = query.treeField('type_id');

    Tree objects have the following methods:

    • isList(bool)
    • groupPrefix(string)
    • startField(string)
    • treeField(string): Returns another tree object for sub grouping

    Getting the url of the query

    var url = query.toUrl();

    Install

    npm i dbgcensus

    DownloadsWeekly Downloads

    2

    Version

    1.0.1

    License

    MIT

    Last publish

    Collaborators

    • lampjaw