@@ -4,13 +4,15 @@ use dirs::config_dir;
4
4
use reqwest;
5
5
use serde_json:: { json, Value } ;
6
6
use serde_yaml;
7
+ use std:: env;
7
8
use std:: fs:: { DirBuilder , File } ;
8
9
use std:: io:: prelude:: * ;
9
- use std:: env;
10
+ use tracing:: info;
11
+ use tracing_subscriber;
10
12
11
13
#[ tokio:: main]
12
14
async fn main ( ) -> Result < ( ) , Box < dyn std:: error:: Error > > {
13
-
15
+ tracing_subscriber :: fmt :: init ( ) ;
14
16
let args: Vec < String > = env:: args ( ) . collect ( ) ;
15
17
let mut port: u16 = 5600 ;
16
18
if args. len ( ) > 1 {
@@ -29,10 +31,6 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
29
31
}
30
32
}
31
33
let aw_client = AwClient :: new ( "localhost" , port, "aw-firebase-sync" ) . unwrap ( ) ;
32
- #[ allow( deprecated) ]
33
- let start = Utc :: now ( ) . date ( ) . and_hms_opt ( 0 , 0 , 0 ) . unwrap ( ) - chrono:: Duration :: days ( 7 ) ;
34
- #[ allow( deprecated) ]
35
- let end = Utc :: now ( ) . date ( ) . and_hms_opt ( 0 , 0 , 0 ) . unwrap ( ) + chrono:: Duration :: days ( 1 ) ;
36
34
37
35
let path = config_dir ( )
38
36
. map ( |mut path| {
@@ -76,26 +74,39 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
76
74
events = filter_keyvals(events, \" $category\" , [[\" Work\" ]]);
77
75
RETURN = events;
78
76
" ;
79
- let timeperiods = vec ! [ ( start, end) ] ;
80
- let query_result = aw_client. query ( & query, timeperiods) . await . expect ( "Failed to query data" ) ;
81
- let query_data = serde_json:: to_string ( & query_result[ 0 ] ) . expect ( "Failed to serialize query data" ) ;
82
77
83
78
let firebase_url = "https://us-central1-aw-mockup.cloudfunctions.net/uploadData" ;
84
79
// let firebase_url = "http://localhost:5001/aw-mockup/us-central1/uploadData";
85
80
86
- let payload = json ! ( {
87
- "apiKey" : apikey,
88
- "data" : query_data
89
- } ) ;
90
-
91
81
let firebase_client = reqwest:: Client :: new ( ) ;
92
- let response = firebase_client
93
- . post ( firebase_url)
94
- . json ( & payload)
95
- . send ( )
96
- . await ?
97
- . json :: < Value > ( )
98
- . await ?;
99
- println ! ( "Response: {:?}" , response) ;
100
- Ok ( ( ) )
82
+
83
+ loop {
84
+ #[ allow( deprecated) ]
85
+ let start =
86
+ Utc :: now ( ) . date ( ) . and_hms_opt ( 0 , 0 , 0 ) . unwrap ( ) - chrono:: Duration :: seconds ( 300 ) ;
87
+ #[ allow( deprecated) ]
88
+ let end = Utc :: now ( ) . date ( ) . and_hms_opt ( 0 , 0 , 0 ) . unwrap ( ) ;
89
+ let timeperiods = vec ! [ ( start, end) ] ;
90
+
91
+ let query_result = aw_client
92
+ . query ( & query, timeperiods)
93
+ . await
94
+ . expect ( "Failed to query data" ) ;
95
+ let query_data =
96
+ serde_json:: to_string ( & query_result[ 0 ] ) . expect ( "Failed to serialize query data" ) ;
97
+ let payload = json ! ( {
98
+ "apiKey" : apikey,
99
+ "data" : query_data
100
+ } ) ;
101
+ let response = firebase_client
102
+ . post ( firebase_url)
103
+ . json ( & payload)
104
+ . send ( )
105
+ . await ?
106
+ . json :: < Value > ( )
107
+ . await ?;
108
+ info ! ( "Response: {:?}" , response) ;
109
+ std:: thread:: sleep ( std:: time:: Duration :: from_secs ( 300 ) ) ;
110
+ }
111
+ // Ok(())
101
112
}
0 commit comments