Using gRPC Stream with StreamManagerV2
Stream oracle prices
Copy
Ask AI
import { getNetworkEndpoints, Network } from '@injectivelabs/networks'
import {
StreamManagerV2,
IndexerGrpcOracleStreamV2
} from '@injectivelabs/sdk-ts/client/indexer'
const endpoints = getNetworkEndpoints(Network.Testnet)
const stream = new IndexerGrpcOracleStreamV2(endpoints.indexer)
const streamManager = new StreamManagerV2({
id: 'oracle-prices',
streamFactory: () => stream.streamOraclePrices({
callback: (response) => {
streamManager.emit('data', response)
}
}),
onData: (oraclePrices) => {
console.log(oraclePrices)
},
retryConfig: { enabled: true }
})
streamManager.on('connect', () => console.log('Stream connected'))
streamManager.start()
Stream oracle prices by markets
Copy
Ask AI
import { getNetworkEndpoints, Network } from '@injectivelabs/networks'
import {
StreamManagerV2,
IndexerGrpcOracleStreamV2
} from '@injectivelabs/sdk-ts/client/indexer'
const endpoints = getNetworkEndpoints(Network.Testnet)
const stream = new IndexerGrpcOracleStreamV2(endpoints.indexer)
const streamManager = new StreamManagerV2({
id: 'oracle-prices-by-markets',
streamFactory: () => stream.streamOraclePricesByMarkets({
marketIds: ['0x...'],
callback: (response) => {
streamManager.emit('data', response)
}
}),
onData: (oraclePrices) => {
console.log(oraclePrices)
},
retryConfig: { enabled: true }
})
streamManager.on('connect', () => console.log('Stream connected'))
streamManager.start()
