mirror of
https://github.com/TheRealOwenRees/plantid-discord-bot.git
synced 2026-07-23 04:26:57 +00:00
Feat/error logs (#16)
* added list of tasks to achieve * update deps * update elixir version in CI/CD pipeline * update todo with branch push checks * underscores separation of large numbers * update elixir version and deps * add basic module docs * remove IO.inspect call * check if list is empty rather than traversing list for length * revert empty list code * duration tests * add mime type tests * use logger instread of inspect, remove todos * replace list length check with Enum.empty * replace list length check with !Enum.empty? * numbers readability fix by using underscores on large numbers * iucn parser replaced case with multiclause function and added test * replace map and join with map_join * fix multiple spec issues where map() must be inside a list
This commit is contained in:
@@ -1,4 +1,9 @@
|
||||
defmodule PlantIdDiscordBot.Cog.Info do
|
||||
@moduledoc """
|
||||
Functions for using the /info application command.
|
||||
|
||||
Returns a message embed of application commands available to the user.
|
||||
"""
|
||||
use Nostrum.Consumer
|
||||
import Nostrum.Struct.Embed
|
||||
alias PlantIdDiscordBot.Utils
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
defmodule PlantIdDiscordBot.Cog.PlantNetMessage do
|
||||
@moduledoc """
|
||||
Functions for sending and receiving data from PLantNet
|
||||
"""
|
||||
require Logger
|
||||
|
||||
use Nostrum.Consumer
|
||||
@@ -49,7 +52,6 @@ defmodule PlantIdDiscordBot.Cog.PlantNetMessage do
|
||||
nil
|
||||
end
|
||||
|
||||
# TODO improve composition
|
||||
if saved_images do
|
||||
try do
|
||||
prepare_images(saved_images)
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
defmodule PlantIdDiscordBot.FileServer do
|
||||
@moduledoc """
|
||||
File server for temporary storage of images until a response is made.
|
||||
"""
|
||||
use Plug.Builder
|
||||
|
||||
plug(Plug.Logger)
|
||||
|
||||
@@ -2,6 +2,8 @@ defmodule PlantIdDiscordBot.FileServer.File do
|
||||
@moduledoc """
|
||||
File utilities
|
||||
"""
|
||||
require Logger
|
||||
|
||||
alias PlantIdDiscordBot.FileServer.ImageConverter
|
||||
|
||||
@image_path Application.compile_env(:plantid_discord_bot, :image_path)
|
||||
@@ -56,7 +58,6 @@ defmodule PlantIdDiscordBot.FileServer.File do
|
||||
|> File.read()
|
||||
end
|
||||
|
||||
# TODO make into a task for async deletion and deal with errors
|
||||
@spec delete_files!([String.t()]) :: :ok
|
||||
def delete_files!(filenames) do
|
||||
tasks =
|
||||
@@ -65,8 +66,7 @@ defmodule PlantIdDiscordBot.FileServer.File do
|
||||
try do
|
||||
File.rm!(Path.join(@image_path, filename))
|
||||
rescue
|
||||
# TODO Logger
|
||||
e -> IO.inspect(e)
|
||||
e -> Logger.error(e)
|
||||
end
|
||||
end)
|
||||
end)
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
defmodule PlantIdDiscordBot.Guild do
|
||||
@moduledoc """
|
||||
Guild related functions.
|
||||
"""
|
||||
alias Nostrum.Cache.GuildCache
|
||||
|
||||
def get_guild_name!(guild_id) do
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
defmodule PlantIdDiscordBot.ProcessRegistry do
|
||||
@moduledoc """
|
||||
Process registry.
|
||||
"""
|
||||
def start_link do
|
||||
Registry.start_link(keys: :unique, name: __MODULE__)
|
||||
end
|
||||
|
||||
@@ -1,4 +1,10 @@
|
||||
defmodule PlantIdDiscordBot.RateLimiter do
|
||||
@moduledoc """
|
||||
Basic rate limiter to prevent one guild from calling too many requests in 24 hours.
|
||||
|
||||
Custom limits have been set for some guilds that are trusted.
|
||||
"""
|
||||
|
||||
use GenServer
|
||||
require Logger
|
||||
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
defmodule PlantIdDiscordBot.Utils do
|
||||
@moduledoc """
|
||||
Bot related utility functions.
|
||||
"""
|
||||
def get_uptime() do
|
||||
start_time = Application.get_env(:plantid_discord_bot, :start_time)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user