Filter

getFilterChanges

caver.klay.getFilterChanges(filterId [, callback])

Polling method for a filter, which returns an array of logs since the last poll.

Parameters

Return Value

Promise returns Array - Array of log objects, or an empty array if nothing has changed since last poll.

The structure of the returned log Object in the Array looks as follows:

Example

> caver.klay.getFilterChanges('0xafb8e49bbcba9d61a3c616a3a312533e').then(console.log);
[ 
    { 
        address: '0x71e503935b7816757AA0314d4E7354dab9D39162',
        topics: [ '0xe8451a9161f9159bc887328b634789768bd596360ef07c5a5cbfb927c44051f9' ],
        data: '0x0000000000000000000000000000000000000000000000000000000000000001',
        blockNumber: 3525,
        transactionHash: '0x1b28e2c723e45a0d8978890598903f36a74397c9cea8531dc9762c39483e417f',
        transactionIndex: 0,
        blockHash: '0xb7f0bdaba93d3baaa01a5c24517da443207f774e0202f02c298e8e997a540b3d',
        logIndex: 0,
        id: 'log_c1ea867d'
    } 
]

getFilterLogs

caver.klay.getFilterLogs(filterId [, callback])

Returns an array of all logs matching the filter with the given id. The filter object should be obtained using newFilter. Note that filter ids returned by other filter creation functions, such as newBlockFilter or newPendingTransactionFilter, cannot be used with this function.

Parameters

Return Value

See getFilterChanges

Example

> caver.klay.getFilterLogs('0xcac08a7fc32fc625a519644187e9f690').then(console.log);
[
    {
        address: '0x55384B52a9E5091B6012717197887dd3B5779Df3',
        topics: [ '0xe8451a9161f9159bc887328b634789768bd596360ef07c5a5cbfb927c44051f9' ],
        data: '0x0000000000000000000000000000000000000000000000000000000000000001',
        blockNumber: 7217,
        transactionHash: '0xa7436c54e47dafbce696de65f6e890c96ac22c236f50ca1be28b9b568034c3b3',
        transactionIndex: 0,
        blockHash: '0xe4f27c524dacfaaccb36735deccee69b3d6c315e969779784c36bb8e14b89e01',
        logIndex: 0,
        id: 'log_2dd695a8' 
    }
]

getPastLogs

caver.klay.getPastLogs(options [, callback])

Gets past logs, matching the given options.

Parameters

Return Value

Promise returns Array - Array of log objects.

The structure of the returned event Object in the Array looks as follows:

Example

> caver.klay.getPastLogs({
    address: "0x11f4d0A3c12e86B4b5F39B213F7E19D048276DAe",
    topics: ["0x033456732123ffff2342342dd12342434324234234fd234fd23fd4f23d4234"]
})
.then(console.log);

[{
    data: '0x7f9fade1c0d57a7af66ab4ead79fade1c0d57a7af66ab4ead7c2c2eb7b11a91385',
    topics: ['0xfd43ade1c09fade1c0d57a7af66ab4ead7c2c2eb7b11a91ffdd57a7af66ab4ead7', '0x7f9fade1c0d57a7af66ab4ead79fade1c0d57a7af66ab4ead7c2c2eb7b11a91385']
    logIndex: 0,
    transactionIndex: 0,
    transactionHash: '0x7f9fade1c0d57a7af66ab4ead79fade1c0d57a7af66ab4ead7c2c2eb7b11a91385',
    blockHash: '0xfd43ade1c09fade1c0d57a7af66ab4ead7c2c2eb7b11a91ffdd57a7af66ab4ead7',
    blockNumber: 1234,
    address: '0xde0B295669a9FD93d5F28D9Ec85E40f4cb697BAe',
    id: 'log_124d61bc',
},{...}]

newBlockFilter

caver.klay.newBlockFilter([callback])

Creates a filter in the node to receive the information about new block arrival. To check if the state has changed, call getFilterChanges.

Parameters

Return Value

Promise returns String - A filter id.

Example

> caver.klay.newBlockFilter().then(console.log);
0x9ca049dc8b0788ee05724e45fc4137f1

newFilter

caver.klay.newFilter(options [, callback])

Creates a filter object using the given filter options, to receive the specific state changes (logs).

For detailed information about topic filters, please see Klaytn Platform API - klay_newFilter.

Parameters

Return Value

Promise returns String - A filter id.

Example

> caver.klay.newFilter({}).then(console.log);
0x40d40cb9758c6f0d99d9c2ce9c0f823

> caver.klay.newFilter({address: "0x55384B52a9E5091B6012717197887dd3B5779Df3"}).then(console.log);
0xd165cbf31b9d60346aada33dbefe01b

newPendingTransactionFilter

caver.klay.newPendingTransactionFilter([callback])

Creates a filter in the node, to receive the information about new pending transactions arrival. To check if the state has changed, call getFilterChanges.

Parameters

Return Value

Promise returns String - A filter id.

Example

> caver.klay.newPendingTransactionFilter().then(console.log);
0x1426438ffdae5abf43edf4159c5b013b

uninstallFilter

caver.klay.uninstallFilter(filterId [, callback])

Removes the filter with the given id. It is strongly recommended to immediately remove the filter if monitoring is no longer needed. A filter will be removed if the filter has not been invoked through getFilterChanges for more than the timeout value set in the node. The default configuration is 5 minutes.

Parameters

Return Value

Promise returns Boolean - true if the filter was successfully uninstalled, otherwise false.

Example

> caver.klay.uninstallFilter('0x1426438ffdae5abf43edf4159c5b013b').then(console.log);
true

Last updated