diff options
| author | Gustav Sörnäs <gustav@sornas.net> | 2020-11-11 00:25:47 +0100 |
|---|---|---|
| committer | Gustav Sörnäs <gustav@sornas.net> | 2020-11-11 00:25:47 +0100 |
| commit | 4ae73c3e2b9a660106030f84e06540ef1324b33e (patch) | |
| tree | 6f4b31869890a05f27c968f5b40e6137f6c2debb /src | |
| parent | f771b73bcda915ce69db49f40473558ae567223f (diff) | |
| download | kodapa-4ae73c3e2b9a660106030f84e06540ef1324b33e.tar.gz | |
initial slack
Diffstat (limited to 'src')
| -rw-r--r-- | src/main.rs | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/main.rs b/src/main.rs new file mode 100644 index 0000000..aef3fa9 --- /dev/null +++ b/src/main.rs @@ -0,0 +1,33 @@ +use slack_api as slack; + +#[tokio::main] +async fn main() { + println!("Hello, world!"); + println!("Setting up Slack"); + + let slack_token = std::env::var("SLACK_API_TOKEN").expect("No token"); + let slack_client = slack::default_client().unwrap(); + + let slack_request = slack::rtm::StartRequest::default(); + let response = slack::rtm::start(&slack_client, &slack_token, &slack_request).await; + + if let Ok(response) = response { + if let Some(channels) = response.channels { + let channel_names = channels + .iter() + .filter_map(|c| c.name.as_ref()) + .collect::<Vec<_>>(); + println!("Got channels {:?}", channel_names); + } + + if let Some(users) = response.users { + let user_names = users + .iter() + .filter_map(|u| u.name.as_ref()) + .collect::<Vec<_>>(); + println!("Got users {:?}", user_names); + } + } else { + println!("{:?}", response) + } +} |
