Handle not playing as not an error

This commit is contained in:
Roman 2023-06-06 17:01:17 -04:00
parent ae27515e1c
commit c2240be553
2 changed files with 16 additions and 2 deletions

View file

@ -65,7 +65,13 @@ defmodule Sergei.Consumer do
%{type: 4, data: %{content: msg, flags: 2 ** 6}} %{type: 4, data: %{content: msg, flags: 2 ** 6}}
{:error, msg} -> {:error, msg} ->
%{type: 4, data: %{content: msg, flags: 2 ** 6}} %{
type: 4,
data: %{
content: "error: #{msg}\n\nPlease contact <@447533152567689226> for help",
flags: 2 ** 6
}
}
end end
Api.create_interaction_response!(interaction, response) Api.create_interaction_response!(interaction, response)
@ -109,6 +115,9 @@ defmodule Sergei.Consumer do
:ok -> :ok ->
{:ok, "Pausing..."} {:ok, "Pausing..."}
:not_playing ->
{:ok, "I'm not playing anything right now."}
{:error, err} -> {:error, err} ->
Logger.error("Failed to pause media: #{err}") Logger.error("Failed to pause media: #{err}")
{:error, "This is embarrasing..."} {:error, "This is embarrasing..."}
@ -121,6 +130,9 @@ defmodule Sergei.Consumer do
:ok -> :ok ->
{:ok, "Resuming..."} {:ok, "Resuming..."}
:not_playing ->
{:ok, "I'm not playing anything right now."}
{:error, err} -> {:error, err} ->
Logger.error("Failed to resume media: #{err}") Logger.error("Failed to resume media: #{err}")
{:error, "This is embarrasing..."} {:error, "This is embarrasing..."}

View file

@ -20,10 +20,12 @@ defmodule Sergei.Player do
GenServer.call(__MODULE__, {:play, guild_id, channel_id, url}) GenServer.call(__MODULE__, {:play, guild_id, channel_id, url})
end end
@spec pause(integer()) :: :ok | :not_playing | {:error, String.t()}
def pause(guild_id) do def pause(guild_id) do
GenServer.call(__MODULE__, {:pause, guild_id}) GenServer.call(__MODULE__, {:pause, guild_id})
end end
@spec resume(integer()) :: :ok | :not_playing | {:error, String.t()}
def resume(guild_id) do def resume(guild_id) do
GenServer.call(__MODULE__, {:resume, guild_id}) GenServer.call(__MODULE__, {:resume, guild_id})
end end
@ -57,7 +59,7 @@ defmodule Sergei.Player do
@impl true @impl true
def handle_call({_, guild_id}, _from, state) when not is_map_key(state, guild_id) do def handle_call({_, guild_id}, _from, state) when not is_map_key(state, guild_id) do
{:reply, {:error, "I'm not playing anything right now"}, state} {:reply, :not_playing, state}
end end
@impl true @impl true