Struct mailgun_rs::Mailgun
source · pub struct Mailgun {
pub api_key: String,
pub domain: String,
pub message: Message,
}
Fields§
§api_key: String
§domain: String
§message: Message
Implementations§
source§impl Mailgun
impl Mailgun
sourcepub fn send(
&self,
region: MailgunRegion,
sender: &EmailAddress
) -> SendResult<SendResponse>
pub fn send( &self, region: MailgunRegion, sender: &EmailAddress ) -> SendResult<SendResponse>
Examples found in repository?
examples/basic.rs (line 29)
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
fn send_html(recipient: &str, key: &str, domain: &str) {
let recipient = EmailAddress::address(recipient);
let message = Message {
to: vec![recipient],
subject: String::from("mailgun-rs"),
html: String::from("<h1>hello from mailgun</h1>"),
..Default::default()
};
let client = Mailgun {
api_key: String::from(key),
domain: String::from(domain),
message,
};
let sender = EmailAddress::name_address("no-reply", "no-reply@hackerth.com");
match client.send(MailgunRegion::US, &sender) {
Ok(_) => {
println!("successful");
}
Err(err) => {
println!("Error: {err}");
}
}
}
fn send_template(recipient: &str, key: &str, domain: &str) {
let mut template_vars = HashMap::new();
template_vars.insert(String::from("firstname"), String::from("Dongri"));
let recipient = EmailAddress::address(recipient);
let message = Message {
to: vec![recipient],
subject: String::from("mailgun-rs"),
template: String::from("template-1"),
template_vars,
..Default::default()
};
let client = Mailgun {
api_key: String::from(key),
domain: String::from(domain),
message,
};
let sender = EmailAddress::name_address("no-reply", "no-reply@hackerth.com");
match client.send(MailgunRegion::US, &sender) {
Ok(_) => {
println!("successful");
}
Err(err) => {
println!("Error: {err}");
}
}
}
pub async fn async_send( &self, region: MailgunRegion, sender: &EmailAddress ) -> SendResult<SendResponse>
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Mailgun
impl RefUnwindSafe for Mailgun
impl Send for Mailgun
impl Sync for Mailgun
impl Unpin for Mailgun
impl UnwindSafe for Mailgun
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more