1
2
3
4
5
6
7
8
9
10
11
12
13
14
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
//! Library implementing Slack-specific functionalities for [`aoc_leaderbot`], a bot that can watch
//! an [Advent of Code] private leaderboard for changes and report them to various channels
//! like Slack.
//!
//! ## Trait implementations
//!
//! This library includes implementations of the traits found in [`aoc_leaderbot_lib`].
//!
//! ### [`SlackWebhookReporter`]
//!
//! Required feature: `reporter-webhook` (enabled by default)
//!
//! An implementation of the [`Reporter`] trait that reports changes to the leaderboard to a
//! Slack channel via a [Slack webhook].
//!
//! The reporter has several configurable input properties. Although most have default values,
//! at least two must be specified explicitly:
//!
//! * [`webhook_url`]: URL of the Slack webhook to use to report changes.
//! * [`channel`]: Slack channel where to post message reporting changes.
//!
//! There are other optional properties that can be specified. The easiest way to create a
//! reporter instance would be via the [`builder`]. Many properties will also default to reading
//! their values from environment variables (see each property's documentation for details).
//!
//! [`aoc_leaderbot`]: https://github.com/clechasseur/aoc_leaderbot
//! [Advent of Code]: https://adventofcode.com/
//! [`SlackWebhookReporter`]: leaderbot::reporter::slack::webhook::SlackWebhookReporter
//! [`Reporter`]: aoc_leaderbot_lib::leaderbot::Reporter
//! [Slack webhook]: https://api.slack.com/messaging/webhooks
//! [`webhook_url`]: leaderbot::reporter::slack::webhook::SlackWebhookReporterBuilder::webhook_url
//! [`channel`]: leaderbot::reporter::slack::webhook::SlackWebhookReporterBuilder::channel
//! [`builder`]: leaderbot::reporter::slack::webhook::SlackWebhookReporter::builder
pub use Error;
pub use Result;
pub use reqwest;