Skip to content

thingsdb/module-go-thingsdb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ThingsDB Module (Go)

ThingsDB module written using the Go language.

With this module you gain access other scopes. This works both on the same node as with a connection to another ThingsDB cluster.

Installation

Install the module by running the following command in the @thingsdb scope:

new_module('thingsdb', 'github.com/thingsdb/module-go-thingsdb');

Optionally, you can choose a specific version by adding a @ followed with the release tag. For example: @v0.1.0.

Configuration

The host is required and either a username & password or a valid token.

Property Type Description
host str (required) Address of the ThingsDB node.
port int (optional) Port of the node, defaults to 9200.
username str (optional) Username for authentication.
password str (optional) Password for the username.
token str (optional) Token for authentication (instead of username and password).
use_ssl bool (optional) Use SSL for the connection, default to false.
skip_verify bool (optional) Only for SSL, default to false.
nodes list (optional) List with additional nodes as {host: <NODE_ADDRESS>, port: <PORT>} where port is optional.

Example configuration:

set_module_conf('thingsdb', {
    host: 'localhost',
    username: 'admin',
    password: 'pass',
});

Exposed functions

Name Description
query Perform a query.
run Run a procedure.

query

Syntax: query(scope, code, vars)

Arguments

  • scope: The scope to run the query in.
  • code: The code for the query.
  • vars: Optional variable for the query.

Example:

thingsdb.query("//stuff", ".has(key);", {key: "example"}).then(|res| {
    res;  // response as "mpdata"
});

run

Syntax: run(scope, name, args)

Arguments

  • scope: The scope of the procedure.
  • name: Name fot the procedure to run.
  • args: Optional arguments as a list or thing for the procedure.

Example:

thingsdb.run("//stuff", "addition", {a: 4, b: 7}).then(|res| {
    res;  // response as "mpdata"
});

About

Module for connecting ThingsDB to ThingDB

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published