Skip to main content

message_builder/
message_builder.rs

1use bark_rs::{BarkMessage, Level, SyncBarkClient};
2
3fn main() -> Result<(), Box<dyn std::error::Error>> {
4    // 演示消息构建的各种方式
5    println!("🛠️  演示消息构建功能");
6
7    // 方式1: 使用 BarkMessage::builder()
8    let message1 = BarkMessage::builder()
9        .title("Builder 模式")
10        .body("使用 BarkMessage::builder() 构建")
11        .level(Level::Active)
12        .sound("minuet")
13        .build();
14
15    // 方式2: 使用 BarkMessage::new()
16    let message2 = BarkMessage::new()
17        .title("New 方法")
18        .body("使用 BarkMessage::new() 构建")
19        .level(Level::TimeSensitive)
20        .volume(6)
21        .build();
22
23    // 方式3: 完整参数演示
24    let complete_message = BarkMessage::builder()
25        .title("完整参数演示")
26        .subtitle("副标题")
27        .body("这是一个包含所有参数的消息")
28        .level(Level::Critical)
29        .volume(8)
30        .badge(3)
31        .call(true)
32        .auto_copy(false)
33        .copy("自定义复制内容")
34        .sound("alarm")
35        .icon("https://example.com/icon.png")
36        .group("演示组")
37        .is_archive(true)
38        .url("https://example.com")
39        .action("none")
40        .id("demo_message_001")
41        .build();
42
43    // 创建同步客户端来发送这些消息
44    let client = SyncBarkClient::with_device_key("https://api.day.app", "QJ48vPutCAsPW2B6pE2A3a");
45
46    println!("📤 发送消息1...");
47    let response1 = client.send(&message1)?;
48    println!("✅ 消息1发送成功: {}", response1.message);
49
50    println!("📤 发送消息2...");
51    let response2 = client.send(&message2)?;
52    println!("✅ 消息2发送成功: {}", response2.message);
53
54    println!("📤 发送完整消息...");
55    let response3 = client.send(&complete_message)?;
56    println!("✅ 完整消息发送成功: {}", response3.message);
57
58    println!("🎉 所有消息发送完成!");
59
60    Ok(())
61}