메인 콘텐츠로 건너뛰기

Messages

MsgRelayBandRates

인가된 Band relayer는 MsgRelayBandRates message를 사용하여 여러 symbol에 대한 price feed 데이터를 relay할 수 있습니다. 등록된 handler는 MsgRelayBandRates에 있는 모든 symbol을 반복하여 각 symbol에 대한 BandPriceState를 생성/업데이트합니다.
Relayer가 인가된 Band relayer가 아닌 경우 이 message는 실패할 것으로 예상됩니다.

MsgRelayCoinbaseMessages

Coinbase provider의 relayer는 MsgRelayCoinbaseMessages message를 사용하여 price 데이터를 전송할 수 있습니다. 각 Coinbase Messages는 Coinbase oracle 주소 0xfCEAdAFab14d46e20144F48824d0C09B1a03F2BC가 제공하는 Signatures로 인증되므로, 누구나 MsgRelayCoinbaseMessages를 제출할 수 있습니다.
서명 검증이 실패하거나 제출된 Timestamp가 이전에 제출된 Coinbase price보다 최신이 아닌 경우 이 message는 실패할 것으로 예상됩니다.

MsgRelayPriceFeedPrice

PriceFeed provider의 relayer는 MsgRelayPriceFeedPrice message를 사용하여 price feed를 전송할 수 있습니다.
Relayer(Sender)가 주어진 Base Quote pair에 대해 인가된 pricefeed relayer가 아니거나 가격이 10000000보다 큰 경우 이 message는 실패할 것으로 예상됩니다.

MsgRequestBandIBCRates

MsgRequestBandIBCRates는 Band chain에 즉시 request를 브로드캐스트하기 위한 message입니다.
누구나 이 message를 브로드캐스트할 수 있으며 특별한 권한이 필요하지 않습니다. handler는 BandIbcEnabled flag가 true인지 확인하고 request를 전송합니다.

MsgRelayPythPrices

MsgRelayPythPrices는 Pyth contract가 oracle module에 가격을 relay하기 위한 message입니다.
Relayer(sender)가 oracle module Params에 정의된 Pyth contract 주소와 같지 않은 경우 이 message는 실패할 것으로 예상됩니다.

MsgRelayStorkPrices

MsgRelayStorkPrices는 Stork contract가 oracle module에 가격을 relay하기 위한 message입니다.
다음과 같은 경우 이 message는 실패할 것으로 예상됩니다:
  • Relayer(sender)가 인가된 oracle publisher가 아니거나 제공된 asset pair 중 assetId가 고유하지 않은 경우
  • SignedPriceOfAssetPair에 대한 ECDSA 서명 검증이 실패한 경우
  • timestamp 간의 차이가 MaxStorkTimestampIntervalNano(500밀리초)를 초과하는 경우

MsgRelayProviderPrices

특정 Provider의 relayer는 MsgRelayProviderPrices message를 사용하여 price feed를 전송할 수 있습니다.
Relayer(Sender)가 주어진 Base Quote pair에 대해 인가된 pricefeed relayer가 아니거나 가격이 10000000보다 큰 경우 이 message는 실패할 것으로 예상됩니다.
마지막 수정일 2026년 3월 30일