すべてのプロダクト
Search
ドキュメントセンター

Blockchain as a Service:イベントインターフェース

最終更新日:Jan 19, 2025

アカウントイベントをサブスクライブする

event.account 操作を呼び出して、アカウントイベントをサブスクライブできます。

リクエストパラメーター

以下のパラメーターはオブジェクトとしてカプセル化され、渡されます。

名前 必須 タイプ 説明
to true string ターゲットアカウント。

// イベントインスタンスを作成する
const contractEvent = chain.event.contract({
  to: 'first'
}, (err, data) => {
  console.log(data)
})

// イベントコールバックを登録する
contractEvent.on((err, data) => {
  console.log(data)
})

// コントラクトコードを更新する
chain.ctr.contract('first').update(bytecode, {}, (err, contract, data) => {})

アカウントイベントのサブスクリプションをキャンセルする

accountEvent.close 操作を呼び出して、アカウントイベントのサブスクリプションをキャンセルできます。この操作にはリクエストパラメーターは必要ありません。

// イベントインスタンスを作成する
const accountEvent = chain.event.account({
  to: 'Tester001'
}, (err, data) => {
  console.log(data)
})

// イベントをキャンセルする
accountEvent.close((err, data) => {
  console.log(data)
})

コントラクトイベントをサブスクライブする

event.contract 操作を呼び出して、コントラクトイベントをサブスクライブできます。

リクエストパラメーター

以下のパラメーターはオブジェクトとしてカプセル化され、渡されます。

名前 必須 タイプ 説明
to true string ターゲットコントラクトのハッシュまたは名前。

// イベントインスタンスを作成する
const contractEvent = chain.event.contract({
  to: 'first'
}, (err, data) => {
  console.log(data)
})

// イベントコールバックを登録する
contractEvent.on((err, data) => {
  console.log(data)
})

// コントラクトコードを更新する
chain.ctr.UpdateContract({
  to: 'first',
  data: {
    code: bytecode
  }
}, (err, data, rlpData) => {})

コントラクトイベントのサブスクライブを解除する

contractEvent.close 操作を呼び出して、アカウントイベントのサブスクライブを解除できます。この操作にはリクエストパラメーターは必要ありません。

// イベントインスタンスを作成する
const contractEvent = chain.event.contract({
  to: 'first'
}, (err, data) => {
  console.log(data)
})

// イベントのサブスクライブを解除する
contractEvent.close((err, data) => {
  console.log(data)
})

トピックイベントをサブスクライブする

event.topic 操作を呼び出して、トピックイベントをサブスクライブできます。

リクエストパラメーター

以下のパラメーターはオブジェクトとしてカプセル化され、渡されます。

名前 必須 タイプ 説明
to true string ターゲットトピック。

// イベントインスタンスを作成する
const topicEvent = chain.event.topic({
  to: 'create_account'
}, (err, data) => {
  console.log(data)
})

// イベントコールバックを登録する
topicEvent.on((err, data) => {
  console.log(data)
})

// CreateAccount を実行して create_account トピックイベントをトリガーする
chain.ctr.CreateAccount({
  from: 'Tester001',
  to: 'Tester002',
  data: {
    recover_key: '0xf5e50510a04a3f659a0e89f2063f79f8c1aed5ddaab6420ac47700020d9889dc14dae4dc9843c88d8222167095d9e6ce052e8a19cbc737c3f3cddf66409dbb0a',
    auth_key: '0xf5e50510a04a3f659a0e89f2063f79f8c1aed5ddaab6420ac47700020d9889dc14dae4dc9843c88d8222167095d9e6ce052e8a19cbc737c3f3cddf66409dbb0a',
    auth_weight: 100
  }
}, (err, data) => {})

トピックイベントのサブスクライブを解除する

topicEvent.close 操作を呼び出して、トピックイベントのサブスクライブを解除できます。この操作にはリクエストパラメーターは必要ありません。

// イベントインスタンスを作成する
const topicEvent = chain.event.topic({
  to: 'create_account'
}, (err, data) => {
  console.log(data)
})

// イベントのサブスクライブを解除する
topicEvent.close((err, data) => {
  console.log(data)
})

ブロックイベントをサブスクライブする

event.block 操作を呼び出して、コントラクトイベントをサブスクライブできます。この操作にリクエストパラメーターは必要ありません。

// イベントインスタンスを作成する
const blockEvent = chain.event.block({}, (err, data) => {
  console.log(data)
})

// ブロック生成中にイベントをトリガーするイベントコールバックを登録する
blockEvent.on((err, data) => {
  console.log(data)
})

ブロックイベントのサブスクライブを解除する

blockEvent.close 操作を呼び出して、トピックイベントのサブスクライブを解除できます。この操作にはリクエストパラメーターは必要ありません。

// イベントインスタンスを作成する
const blockEvent = chain.event.block({}, (err, data) => {
  console.log(data)
})

// イベントのサブスクライブを解除する
blockEvent.close((err, data) => {
  console.log(data)
})