Skip to content
Extraits de code Groupes Projets
Vérifiée Valider ab597b09 rédigé par Kubat's avatar Kubat
Parcourir les fichiers

Don't re-handle already seem messages

parent 8cf4f590
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -14,7 +14,7 @@ use matrix_sdk::{ ...@@ -14,7 +14,7 @@ use matrix_sdk::{
}, },
UserId, UserId,
}, },
Client, Result, SyncSettings, Client, LoopCtrl, Result, SyncSettings, RoomInfo,
}; };
use matrix_sdk::ruma::{events::SyncStateEvent, Int, MilliSecondsSinceUnixEpoch}; use matrix_sdk::ruma::{events::SyncStateEvent, Int, MilliSecondsSinceUnixEpoch};
...@@ -77,7 +77,7 @@ async fn main() -> Result<()> { ...@@ -77,7 +77,7 @@ async fn main() -> Result<()> {
println!("Logged as: {}", alice); println!("Logged as: {}", alice);
// Don't respond to old messages // Don't respond to old messages
// client.sync_once(SyncSettings::default()).await?; client.sync_once(SyncSettings::default()).await?;
// https://docs.rs/ruma/0.4.0/ruma/events/enum.AnySyncMessageEvent.html // https://docs.rs/ruma/0.4.0/ruma/events/enum.AnySyncMessageEvent.html
client client
...@@ -85,21 +85,18 @@ async fn main() -> Result<()> { ...@@ -85,21 +85,18 @@ async fn main() -> Result<()> {
|ev: SyncMessageEvent<MessageEventContent>, |ev: SyncMessageEvent<MessageEventContent>,
room: Room, room: Room,
encryption_info: Option<EncryptionInfo>| async move { encryption_info: Option<EncryptionInfo>| async move {
println!("---\nROOM: {:?}\nENC: {:?}\nSME: {:?}", room, encryption_info, ev); println!(
"---\nROOM: {:?}\nENC: {:?}\nSME: {:?}",
room, encryption_info, ev
);
}, },
) )
.await; .await;
client
.register_event_handler(|ev: SyncStateEvent<TopicEventContent>| async move {
// You can omit any or all arguments after the first.
})
.await;
// Because we sync once already we must pass the previous sync token
// let settings = SyncSettings::default().token(client.sync_token().await.unwrap());
println!("Entering sync loop"); println!("Entering sync loop");
// client.sync(settings).await; let token = client.sync_token().await.unwrap();
client.sync(SyncSettings::default()).await; let settings = SyncSettings::default().token(token);
client.sync(settings).await;
Ok(()) Ok(())
} }
Err(e) => panic!( Err(e) => panic!(
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter