Compare commits
3 Commits
947d4d64c4
...
eb6a55eefd
| Author | SHA1 | Date | |
|---|---|---|---|
| eb6a55eefd | |||
| a6456ad9de | |||
| fb3f38596e |
@@ -20,8 +20,14 @@
|
||||
systemd.services.alan = {
|
||||
wantedBy = ["networking-online.target"];
|
||||
enable = true;
|
||||
path = [
|
||||
pkgs.newalan
|
||||
];
|
||||
environment = {
|
||||
DING_SOUND = "${pkgs.new_alan}/share/sounds/ding.mp3";
|
||||
};
|
||||
script = ''
|
||||
${pkgs.new_alan}/bin/new_alan
|
||||
${pkgs.new_alan}/bin/new_alan
|
||||
'';
|
||||
};
|
||||
})
|
||||
|
||||
@@ -66,6 +66,10 @@
|
||||
# artifacts from above.
|
||||
newalan = craneLib.buildPackage (commonArgs // {
|
||||
inherit cargoArtifacts;
|
||||
postInstall = ''
|
||||
mkdir -p $out/share/sounds
|
||||
cp ding.mp3 $out/share/sounds/
|
||||
'';
|
||||
});
|
||||
in rec {
|
||||
checks = pkgs.lib.optionalAttrs (system == "x86_64-linux") {
|
||||
|
||||
@@ -3,6 +3,8 @@ use std::sync::Arc;
|
||||
use std::time::{Duration, Instant};
|
||||
use rand::prelude::*;
|
||||
use serenity::Client;
|
||||
use songbird::error::JoinError;
|
||||
use songbird::{ffmpeg, create_player};
|
||||
use songbird::id::ChannelId;
|
||||
use std::thread::sleep;
|
||||
use std::collections::HashMap;
|
||||
@@ -45,7 +47,7 @@ async fn popin(ctx: Context, guild: Guild) {
|
||||
most = Some(id);
|
||||
}
|
||||
},
|
||||
Err(error) => {
|
||||
Err(_error) => {
|
||||
|
||||
}
|
||||
};
|
||||
@@ -60,13 +62,27 @@ async fn popin(ctx: Context, guild: Guild) {
|
||||
Some(chan) => {
|
||||
let manager = songbird::get(&ctx).await
|
||||
.expect("Songbird: intialization");
|
||||
let (_,_status) = manager.join(guild.id, chan).await;
|
||||
let (call,status) = manager.join(guild.id, chan).await;
|
||||
match status {
|
||||
Ok(_) => {
|
||||
let mut call = call.lock().await;
|
||||
let ding_src = std::env::var("DING_SOUND")
|
||||
.expect("DING not found in DING_SOUND");
|
||||
let ding = ffmpeg(ding_src)
|
||||
.await
|
||||
.expect("no ding.");
|
||||
let (mut audio, handle) = create_player(ding);
|
||||
call.play(audio);
|
||||
},
|
||||
Err(_err) => {
|
||||
println!("Error joining channel")
|
||||
}
|
||||
}
|
||||
},
|
||||
None => {
|
||||
println!("No good channel to join")
|
||||
}
|
||||
}
|
||||
()
|
||||
}
|
||||
|
||||
async fn popin_soon(ctx: Context, guild: Guild) {
|
||||
|
||||
Reference in New Issue
Block a user