31 lines
833 B
Rust
31 lines
833 B
Rust
use serenity::model::channel::Message;
|
|
use serenity::prelude::*;
|
|
use std::fs::File;
|
|
use std::io::{self, prelude::*, BufReader};
|
|
|
|
struct Handler;
|
|
|
|
impl EventHandler for Handler {
|
|
fn message(&self, ctx: Context, msg: Message) {
|
|
if msg.content == "!ping" {
|
|
if let Err(cause) = msg.channel_id.say(&ctx.http, "pong") {
|
|
println!("error sending message {:?}", cause);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
pub fn main() {
|
|
let mut client = Client::new(
|
|
read_token().expect("Could not read token from file `secret` in current directory"),
|
|
Handler,
|
|
)
|
|
.expect("Error creating client");
|
|
client.start().expect("Could not connect to discord");
|
|
}
|
|
|
|
fn read_token() -> io::Result<String> {
|
|
let reader = BufReader::new(File::open("secret")?);
|
|
reader.lines().next().unwrap()
|
|
}
|