-
Notifications
You must be signed in to change notification settings - Fork 332
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Extend the Chain
trait to enable listening for IBC events from non-Cosmos SDK chains, eg. Substrate
#1456
Comments
Chain
abstraction to allow for non-Cosmos EventMonitor
Hi @DaviRain-Su, thanks for opening this issue! If I understand correctly, you are rightfully pointing out that the What do you suggest to fix this? Would extending the fn init_event_monitor(
&self,
rt: Arc<TokioRuntime>,
) -> Result<(EventReceiver, TxMonitorCmd), Error> { work for you? At the moment, the
where pub struct EventBatch {
pub chain_id: ChainId,
pub height: Height,
pub events: Vec<IbcEvent>,
} Do you think this would work? To be more clear, do you think it would be possible for Substrate to emit events such that we can feed them into a channel that emits If you had some example code from your implementation, for example your implementation of the |
Chain
abstraction to allow for non-Cosmos EventMonitor
Chain
trait to enable listening for IBC events from non-Cosmos SDK chains, eg. Substrate
this is super exciting. <3 |
@romac Thank you for your reply, do you see the logic of my modification here, my understanding for Newblock this event is the event of generating a new block on the node. For substrate is to generate SystemEventSuccess event. There may be some problems here. And for the chain request to substrate rpc request is used substrate-subxt. The last question is, for start this command also seems to be related to Eventmointor, I would like to know where are some difficulties in adapting this command here. This is my code: https://github.com/octopus-network/ibc-rs/blob/b7d1556aae68262504115115330571795b5ec038/relayer/src/event/substrate_mointor.rs#L347 |
@DaviRain-Su What do you think of the refactoring in #2865? Does this help with your use case? |
It looks good, but there are still some components that are strongly related to tendermint that I wish could be abstracted |
Closed by #2865: #2865 (comment) |
Crate
None
Summary
init_event_monitor Support multiply chain to event mointor
https://github.com/informalsystems/ibc-rs/blob/8944f94815c35b2d3297971aa437900d259dc75a/relayer/src/chain.rs#L99
https://github.com/informalsystems/ibc-rs/blob/8944f94815c35b2d3297971aa437900d259dc75a/relayer/src/event/monitor.rs#L132
Problem Definition
Recently I am doing support for substrate relayer support, for event listening here, it seems that there is no support for multiple chains like ChainEndpoint defines an interface, here for EventMonitor to listen to events suitable for
tendermint-rpc
strong binding, no implementation and different chains between the loose coupling. Is there a good implementation to achieve this part of the function, because I found that this EventMointor in the implementation ofstart
andlisten
command is related.Proposal
None
Acceptance Criteria
None
For Admin Use
The text was updated successfully, but these errors were encountered: