telegram_markov_chain/
lib.rs1use std::fs;
2use markov::Chain;
3
4lazy_static::lazy_static! {
5 static ref CHAIN: Chain<String> = {
6 let mut chain = Chain::new();
7 let file = fs::read_to_string("result.json").unwrap();
8 let parsed = json::parse(&file).unwrap();
9 let messages = &parsed["messages"];
10 if let json::JsonValue::Array(messages) = messages {
11 for message in messages {
12 if let json::JsonValue::String(text) = &message["text"] {
13 if text.is_empty() {
14 continue
15 } else {
16 chain.feed_str(text);
18 }
19 }
20 }
21 }
22 chain
23 };
24}
25
26
27pub fn chain() -> String {
28 CHAIN.generate_str()
29}