Crate lib_messenger_archive

source ·
Expand description

This library read a file at the given path and try to interpret it as a valid MSN Messenger / Windows Live Messenger conversation archive.

If it is a valid archive, it returns an iterator to read the various messages contained in the archive.

Archives generated by the Messenger Plus! plugin are supported too.

§Exemple

 use lib_messenger_archive::{Parser, FileType, MessengerArchive, Message, Data, Text};

 let mut parser = Parser::new("test/alice1234.xml").unwrap();
 let expected =  Message {
                 datetime: "2009-04-06T19:40:41.851Z".to_string(),
                 timezone_offset: Some(120),
                 session_id: "1".to_string(),
                 sender_friendly_name: "Alice".to_string(),
                 receiver_friendly_name: "Bob".to_string(),
                 data: vec![Data::Text(Text {
                     style: "font-family:Courier New; color:#004000; ".to_string(),
                     content: "Hello!".to_string(),
                 })],
             };
 assert_eq!(parser.next().unwrap().unwrap(), expected);

Structs§

  • Some general details about the current archive.
  • A part of a message body, containing an image.
  • A message, exchanged by two messenger’s users.
  • This structure automatically handle the various archives types, based on their extensions and call the appropriate parser (Classic XML archive parser or Messenger Plus! parser).
  • A part of a message body, containing some formatted text.

Enums§

  • The various type of parts of the message body.
  • Indicates the type of archive

Traits§