События не распознаются TypeError: Contract.events.event не является функцией

Я пытаюсь получить более старое состояние контракта. Я развернул контракт, используя трюфель. мой контракт

pragma solidity ^0.4.15;
contract NDA {
bytes32  party1name;
bytes32  party2name; 
bytes32  pary1regaddr;

event Setparty2 (address indexed _from,bytes32 _party2name);
function NDA() {
    party1name = "Me";
}

function setparty2(bytes32 _party2name, bytes32 _pary1regaddr){
    party2name = _party2name;
    pary1regaddr = _pary1regaddr;
    Setparty2(msg.sender, _party2name);
}

function get() constant returns (bytes32, bytes32) {
    return (party1name, party2name);
}
}

когда я NDA.eventsполучаю

truffle(development)> NDA.events
{ 
'0x851b88ce358750e8e352d86d0712c570afe3624e605413a620f25f7e1c012463':
{ anonymous: false,
 inputs: [ [Object], [Object] ],
 name: 'Setparty2',
 type: 'event' } }

Теперь я сделал несколько транзакций с этим контрактом, например

NDA.at(NDA.address).setparty2("Manish", "Kumar Singh");

а потом еще немного.

Теперь я хочу получить предыдущее состояние контракта, я пытаюсь использовать для этого события, но когда я это делаю

truffle(development)> NDA.events.Setparty2({fromBlock : 0 });
TypeError: NDA.events.Setparty2 is not a function

Я не могу понять, как использовать мои события. любая помощь приветствуется.

Ответы (1)

Подобно вашему вызову setparty2, попробуйте

NDA.at(NDA.address).Setparty2({fromBlock: 0});