From aba1ba67dc78a0c14e5de3c8ac650829e436e96f Mon Sep 17 00:00:00 2001 From: Perry Fraser Date: Wed, 31 Jan 2018 17:28:01 -0500 Subject: Add create message builder example (#268) --- examples/11_create_message_builder/src/main.rs | 43 ++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 examples/11_create_message_builder/src/main.rs (limited to 'examples/11_create_message_builder/src') diff --git a/examples/11_create_message_builder/src/main.rs b/examples/11_create_message_builder/src/main.rs new file mode 100644 index 0000000..88be5a9 --- /dev/null +++ b/examples/11_create_message_builder/src/main.rs @@ -0,0 +1,43 @@ +extern crate serenity; + +use serenity::model::channel::Message; +use serenity::model::gateway::Ready; +use serenity::prelude::*; +use std::env; + +struct Handler; + +impl EventHandler for Handler { + fn message(&self, _: Context, msg: Message) { + if msg.content == "!hello" { + // The create message builder allows you to easily create embeds and messages + // using a builder syntax. + // This example will create a message that says "Hello, World!", with an embed that has + // a title, description, and footer. + if let Err(why) = msg.channel_id.send_message(|m| m + .content("Hello, World!") + .embed(|e| e + .title("This is a title") + .description("This is a description") + .footer(|f| f + .text("This is a footer")))) { + println!("Error sending message: {:?}", why); + } + } + } + + fn ready(&self, _: Context, ready: Ready) { + println!("{} is connected!", ready.user.name); + } +} + +fn main() { + // Configure the client with your Discord bot token in the environment. + let token = env::var("DISCORD_TOKEN") + .expect("Expected a token in the environment"); + let mut client = Client::new(&token, Handler).expect("Err creating client"); + + if let Err(why) = client.start() { + println!("Client error: {:?}", why); + } +} -- cgit v1.2.3