需要为Hyperledger Composer事件设置什么才能工作?

时间:2018-01-28 18:12:21

标签: hyperledger-composer

我做了以下事情:

  1. https://hyperledger.github.io/composer/business-network/publishing-events.html
  2. https://hyperledger.github.io/composer/applications/subscribing-to-events.html
  3. 文档让您觉得这就是您需要坚持使用Node.js服务器的所有内容:

    businessNetworkConnection.on('event', (event) => {
        // event: { "$class": "org.namespace.BasicEvent", "eventId": "0000-0000-0000-000000#0" }
        console.log(event);
    });
    

    但我的情况并没有发生任何事情。我可以看到我的交易通过游乐场UI发出事件,但他们没有点击我的Node.js服务器。

    我是否必须设置自己的websocket服务器?

1 个答案:

答案 0 :(得分:1)

所以

  1. 在您的TP代码中发送您的活动(并且您已完成此操作) - 示例 - > https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/lib/logic.js#L28https://hyperledger.github.io/composer/business-network/publishing-events.html

  2. 所示
  3. 在模型文件中定义了Event类 - 例如 - > https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/models/trading.cto#L25 - 然后使用composer network update

  4. 更新到之前部署的运行时业务网络
  5. event中的eventId属性始终与发出事件的事务的transactionId相同。