UNPKG

@aeternity/aepp-sdk

Version:
163 lines (124 loc) 7.41 kB
<a id="module_@aeternity/aepp-sdk/es/ae/oracle"></a> ## @aeternity/aepp-sdk/es/ae/oracle Oracle module - routines to interact with the æternity oracle system The high-level description of the oracle system is https://github.com/aeternity/protocol/blob/master/ORACLE.md in the protocol repository. **Example** ```js import Oracle from '@aeternity/aepp-sdk/es/ae/oracle' ``` * [@aeternity/aepp-sdk/es/ae/oracle](#module_@aeternity/aepp-sdk/es/ae/oracle) * [Oracle([options])](#exp_module_@aeternity/aepp-sdk/es/ae/oracle--Oracle) `Object` * _instance_ * _async_ * [.getOracleObject(oracleId)](#exp_module_@aeternity/aepp-sdk/es/ae/oracle--getOracleObject) `Promise.&lt;Object&gt;` * [.getQueryObject(oracleId, queryId)](#exp_module_@aeternity/aepp-sdk/es/ae/oracle--getQueryObject) `Promise.&lt;Object&gt;` * [.exports.pollForQueryResponse(oracleId, queryId, [options])](#exp_module_@aeternity/aepp-sdk/es/ae/oracle--exports.pollForQueryResponse) `Promise.&lt;Object&gt;` * [.registerOracle(queryFormat, responseFormat, [options])](#exp_module_@aeternity/aepp-sdk/es/ae/oracle--registerOracle) `Promise.&lt;Object&gt;` * [.postQueryToOracle(oracleId, query, [options])](#exp_module_@aeternity/aepp-sdk/es/ae/oracle--postQueryToOracle) `Promise.&lt;Object&gt;` * [.extendOracleTtl(oracleId, oracleTtl, [options])](#exp_module_@aeternity/aepp-sdk/es/ae/oracle--extendOracleTtl) `Promise.&lt;Object&gt;` * [.respondToQuery(oracleId, queryId, response, [options])](#exp_module_@aeternity/aepp-sdk/es/ae/oracle--respondToQuery) `Promise.&lt;Object&gt;` <a id="exp_module_@aeternity/aepp-sdk/es/ae/oracle--Oracle"></a> ### Oracle([options]) `Object` Oracle Stamp Oracle provides oracle-system related methods atop [Ae](#exp_module_@aeternity/aepp-sdk/es/ae--Ae) clients. **Kind**: Exported function **Returns**: `Object` - Oracle instance **rtype**: `Stamp` | Param | Type | Default | Description | | --- | --- | --- | --- | | [options] | `Object` | <code>{}</code> | Initializer object | <a id="exp_module_@aeternity/aepp-sdk/es/ae/oracle--getOracleObject"></a> ### .getOracleObject(oracleId) `Promise.&lt;Object&gt;` Constructor for Oracle Object (helper object for using Oracle) **Kind**: instance method of [`@aeternity/aepp-sdk/es/ae/oracle`](#module_@aeternity/aepp-sdk/es/ae/oracle) **Returns**: `Promise.&lt;Object&gt;` - Oracle object **Category**: async | Param | Type | Description | | --- | --- | --- | | oracleId | `String` | Oracle public key | <a id="exp_module_@aeternity/aepp-sdk/es/ae/oracle--getQueryObject"></a> ### .getQueryObject(oracleId, queryId) `Promise.&lt;Object&gt;` Constructor for OracleQuery Object (helper object for using OracleQuery) **Kind**: instance method of [`@aeternity/aepp-sdk/es/ae/oracle`](#module_@aeternity/aepp-sdk/es/ae/oracle) **Returns**: `Promise.&lt;Object&gt;` - OracleQuery object **Category**: async | Param | Type | Description | | --- | --- | --- | | oracleId | `String` | Oracle public key | | queryId | `String` | Oracle Query id | <a id="exp_module_@aeternity/aepp-sdk/es/ae/oracle--exports.pollForQueryResponse"></a> ### .exports.pollForQueryResponse(oracleId, queryId, [options]) `Promise.&lt;Object&gt;` Poll for oracle query response **Kind**: instance method of [`@aeternity/aepp-sdk/es/ae/oracle`](#module_@aeternity/aepp-sdk/es/ae/oracle) **Returns**: `Promise.&lt;Object&gt;` - OracleQuery object **Category**: async | Param | Type | Description | | --- | --- | --- | | oracleId | `String` | Oracle public key | | queryId | `String` | Oracle Query id | | [options] | `Object` | Options object | | [options.attempts] | `Object` | Poll attempt's(default: 20) | | [options.interval] | `Object` | Poll interval(default: 5000) | <a id="exp_module_@aeternity/aepp-sdk/es/ae/oracle--registerOracle"></a> ### .registerOracle(queryFormat, responseFormat, [options]) `Promise.&lt;Object&gt;` Register oracle **Kind**: instance method of [`@aeternity/aepp-sdk/es/ae/oracle`](#module_@aeternity/aepp-sdk/es/ae/oracle) **Returns**: `Promise.&lt;Object&gt;` - Oracle object **Category**: async | Param | Type | Default | Description | | --- | --- | --- | --- | | queryFormat | `String` | | Format of query | | responseFormat | `String` | | Format of query response | | [options] | `Object` | <code>{}</code> | Options | | [options.queryFee] | `String` \| `Number` | | queryFee Oracle query Fee | | [options.oracleTtl] | `String` \| `Number` | | oracleTtl OracleTtl object {type: 'delta|block', value: 'number'} | | [options.vmVersion] | `Number` | | vmVersion Always 0 (do not use virtual machine) | | [options.fee] | `Number` | | fee Transaction fee | | [options.ttl] | `Number` | | Transaction time to leave | <a id="exp_module_@aeternity/aepp-sdk/es/ae/oracle--postQueryToOracle"></a> ### .postQueryToOracle(oracleId, query, [options]) `Promise.&lt;Object&gt;` Post query to oracle **Kind**: instance method of [`@aeternity/aepp-sdk/es/ae/oracle`](#module_@aeternity/aepp-sdk/es/ae/oracle) **Returns**: `Promise.&lt;Object&gt;` - Query object **Category**: async | Param | Type | Default | Description | | --- | --- | --- | --- | | oracleId | `String` | | Oracle public key | | query | `String` | | Oracle query object | | [options] | `Object` | <code>{}</code> | | | [options.queryTtl] | `String` \| `Number` | | queryTtl Oracle query time to leave | | [options.responseTtl] | `String` \| `Number` | | queryFee Oracle query response time to leave | | [options.queryFee] | `String` \| `Number` | | queryFee Oracle query fee | | [options.fee] | `Number` | | fee Transaction fee | | [options.ttl] | `Number` | | Transaction time to leave | <a id="exp_module_@aeternity/aepp-sdk/es/ae/oracle--extendOracleTtl"></a> ### .extendOracleTtl(oracleId, oracleTtl, [options]) `Promise.&lt;Object&gt;` Extend oracle ttl **Kind**: instance method of [`@aeternity/aepp-sdk/es/ae/oracle`](#module_@aeternity/aepp-sdk/es/ae/oracle) **Returns**: `Promise.&lt;Object&gt;` - Oracle object **Category**: async | Param | Type | Default | Description | | --- | --- | --- | --- | | oracleId | `String` | | Oracle public key | | oracleTtl | `String` | | Oracle time to leave for extend | | [options] | `Object` | <code>{}</code> | | | [options.fee] | `Number` | | fee Transaction fee | | [options.ttl] | `Number` | | Transaction time to leave | <a id="exp_module_@aeternity/aepp-sdk/es/ae/oracle--respondToQuery"></a> ### .respondToQuery(oracleId, queryId, response, [options]) `Promise.&lt;Object&gt;` Extend oracle ttl **Kind**: instance method of [`@aeternity/aepp-sdk/es/ae/oracle`](#module_@aeternity/aepp-sdk/es/ae/oracle) **Returns**: `Promise.&lt;Object&gt;` - Oracle object **Category**: async | Param | Type | Default | Description | | --- | --- | --- | --- | | oracleId | `String` | | Oracle public key | | queryId | `String` | | Oracle query id | | response | `String` | | Oracle query response | | [options] | `Object` | <code>{}</code> | | | [options.responseTtl] | `Number` | | responseTtl Query response time to leave | | [options.fee] | `Number` | | Transaction fee | | [options.ttl] | `Number` | | Transaction time to leave |