@@ -300,7 +300,7 @@ where
300
300
///
301
301
/// * `Ok(())` - If message processing succeeds
302
302
/// * `Err(Error)` - If message processing fails
303
- pub fn process_message ( & self , event : & Event ) -> Result < ( ) , Error > {
303
+ pub fn process_message ( & self , event : & Event ) -> Result < Option < message_types :: Message > , Error > {
304
304
if event. kind != Kind :: MlsGroupMessage {
305
305
return Err ( Error :: UnexpectedEvent {
306
306
expected : Kind :: MlsGroupMessage ,
@@ -385,7 +385,7 @@ where
385
385
386
386
tracing:: debug!( target: "nostr_mls::messages::process_message" , "Processed message: {:?}" , processed_message) ;
387
387
tracing:: debug!( target: "nostr_mls::messages::process_message" , "Message: {:?}" , message) ;
388
- Ok ( ( ) )
388
+ Ok ( Some ( message ) )
389
389
}
390
390
Ok ( None ) => {
391
391
// This is what happens with proposals, commits, etc.
@@ -401,7 +401,7 @@ where
401
401
. save_processed_message ( processed_message)
402
402
. map_err ( |e| Error :: Message ( e. to_string ( ) ) ) ?;
403
403
404
- Ok ( ( ) )
404
+ Ok ( None )
405
405
}
406
406
Err ( e) => {
407
407
match e {
@@ -429,7 +429,7 @@ where
429
429
processed_message. state =
430
430
message_types:: ProcessedMessageState :: Processed ;
431
431
self . storage ( )
432
- . save_processed_message ( processed_message)
432
+ . save_processed_message ( processed_message. clone ( ) )
433
433
. map_err ( |e| Error :: Message ( e. to_string ( ) ) ) ?;
434
434
435
435
tracing:: debug!( target: "nostr_mls::messages::process_message" , "Updated state of own cached message" ) ;
@@ -441,7 +441,9 @@ where
441
441
tracing:: debug!( target: "nostr_mls::messages::process_message" , "Message previously failed to process" ) ;
442
442
}
443
443
}
444
- return Ok ( ( ) ) ;
444
+ let message =
445
+ self . get_message ( & processed_message. message_event_id . unwrap ( ) ) ?;
446
+ return Ok ( message) ;
445
447
}
446
448
_ => {
447
449
tracing:: error!( target: "nostr_mls::messages::process_message" , "Error processing message: {:?}" , e) ;
@@ -457,7 +459,7 @@ where
457
459
. map_err ( |e| Error :: Message ( e. to_string ( ) ) ) ?;
458
460
}
459
461
}
460
- Ok ( ( ) )
462
+ Ok ( None )
461
463
}
462
464
}
463
465
}
0 commit comments