Да, это совершенно нормально. Например, будет работать следующее:
@InitiatingFlow
@StartableByRPC
class Initiator : FlowLogic<Unit>() {
override val progressTracker = ProgressTracker()
@Suspendable
override fun call() {
val selfSession = initiateFlow(ourIdentity)
selfSession.send("It's me!")
}
}
@InitiatedBy(Initiator::class)
class Responder(val counterpartySession: FlowSession) : FlowLogic<Unit>() {
@Suspendable
override fun call() {
logger.info(counterpartySession.receive<String>().unwrap { it })
}
}