async fn handle(
services: &Services,
client: &IpAddr,
origin: &ServerName,
txn_id: &TransactionId,
started: Instant,
pdus: impl Stream<Item = (usize, (OwnedRoomId, OwnedEventId, CanonicalJsonObject))> + Send,
edus: impl Stream<Item = (usize, Edu)> + Send,
) -> Result<BTreeMap<OwnedEventId, Result>>