9 releases (breaking)
0.7.0 | Aug 9, 2024 |
---|---|
0.6.0 | Sep 15, 2023 |
0.5.0 | Jul 22, 2023 |
0.4.0 | Mar 31, 2023 |
0.1.0 | Jun 12, 2022 |
#422 in Web programming
61 downloads per month
68KB
963 lines
dailyco
Rust bindings to interact with the Daily
API.
We aim to eventually support the entire API surface, for now this crate supports
- Room creation
- Getting + deleting room(s)
- Meeting tokens
Example
Let's make a customized meeting room and generate a meeting token to join it. To run this example you will need to make an account with Daily to generate a valid API key.
use dailyco::meeting_token::CreateMeetingToken;
use dailyco::room::{CreateRoom, RoomPrivacy};
use dailyco::RoomPropertiesBuilder;
#[tokio::main]
async fn main() -> dailyco::Result<()> {
let client = dailyco::Client::new("test-api-key")?;
// Make a customized room
let created_room = CreateRoom::new()
.name("my-test-room")
.privacy(RoomPrivacy::Private)
.properties(
RoomPropertiesBuilder::new()
.enable_screenshare(false)
.max_participants(20)
.start_audio_off(true)
)
.send(&client)
.await?;
// Since it is a private room, we will need a meeting token to join it! Let's give
// ourselves owner privileges while we're at it.
let _meeting_token = CreateMeetingToken::new()
.room_name(&created_room.name)
.is_owner(true)
.send(&client)
.await?;
Ok(())
}
Installation
The dailyco
client is just a thin wrapper around a reqwest::Client
. Because of this,
in future we aim to add a feature set which forwards relevant features to reqwest
. For
now,
[dependencies]
dailyco = { version = "0.1.0" }
License
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Dependencies
~4–18MB
~288K SLoC