2016-10-11 7 views
1

Eris Blockchainのすべてのブロックですべてのイベントを表示する方法はありますか?現在、私はただ、特定のイベントにEris Blockchainのすべてのブロックですべてのイベントを表示する方法はありますか?

契約

contract IdisContractsFTW { 
    uint storedData; 
    string name; 

    event SetName(address indexed _from, string _name); 

    function set(uint x) { 
    storedData = x; 
    } 

    function get() constant returns (uint retVal) { 
    return storedData; 
    } 

    function setName(string _name){ 
    name = _name; 
    SetName(msg.sender, _name); 
    } 

    function getName() constant returns (string retVal){ 
    return name; 
    } 

} 

のNode.js

var myContract; 

var IdisContractsFTW = JSON.parse(fs.readFileSync('./abi/' + 'IdisContractsFTW', 'utf8')); 
var myContractFactory = manager.newContractFactory(IdisContractsFTW); 


myContractFactory.at(incoming.address, function(error, contract){ 
    if(error) {throw error} 
    myContract = contract; 

    if(myContract){ 

     myContract.SetName(
      function(error,eventSub){ 
      if(error){ 
       throw error; 
      } 
      if(eventSub){ 
       console.log(JSON.stringify(eventSub)); 
       response.statusCode = 200; 
       response.setHeader('Content-Type', 'application/json'); 
       response.write(JSON.stringify(eventSub)); 
       response.end('\n'); 
      } 


     }, function (error,event) { 
       if(error){ 
        console.log("listenContractEvent error:"+error); 
       } 
       if(event){ 
        console.log("event:"+JSON.stringify(event)); 
       } 

      } 
     ); 



    } 

}); 

それが作成されますたびNode.jsの中に私の現在のコードは、単にイベントを出力を購読することができました。私はこの契約IdisContractFTWによって作成された一連のイベントを取得しようとしています。これについてあなたのアドバイスを感謝します。

ここマネージャ・オブジェクトは、これが今日のことはできませんが、それはa commonly requested feature

var contracts = require('eris-contracts'); 
manager = contracts.newContractManagerDev(chainUrl, accounts.simplechain_full_000); 
+0

この質問をethereumフォーラムに追加しました。http://ethereum.stackexchange.com/questions/9188/is-there-a-way-to-view-all-events-on-all-blocks -for-eris-blockchain –

答えて

2

を使用して作成されます。

関連する問題