mirror of
https://github.com/TheRealOwenRees/plantid-discord-bot.git
synced 2026-07-22 20:16:57 +00:00
metrics plugged into interaction responses
This commit is contained in:
@@ -1,10 +1,12 @@
|
|||||||
defmodule PlantIdDiscordBot.Cog.PlantNet do
|
defmodule PlantIdDiscordBot.Cog.PlantNet do
|
||||||
require Logger
|
require Logger
|
||||||
use Nostrum.Consumer
|
use Nostrum.Consumer
|
||||||
|
alias Nostrum.Api
|
||||||
|
alias Nostrum.Cache.GuildCache
|
||||||
alias PlantIdDiscordBot.RateLimiter
|
alias PlantIdDiscordBot.RateLimiter
|
||||||
alias PlantIdDiscordBot.PlantNet.Parser
|
alias PlantIdDiscordBot.PlantNet.Parser
|
||||||
alias PlantIdDiscordBot.FileServer.File
|
alias PlantIdDiscordBot.FileServer.File
|
||||||
alias Nostrum.Api
|
alias PlantIdDiscordBot.Metrics
|
||||||
|
|
||||||
@api Application.compile_env(:plantid_discord_bot, :api)
|
@api Application.compile_env(:plantid_discord_bot, :api)
|
||||||
@plantnet_api_base_url Application.compile_env(:plantid_discord_bot, :plantnet_api_base_url)
|
@plantnet_api_base_url Application.compile_env(:plantid_discord_bot, :plantnet_api_base_url)
|
||||||
@@ -110,7 +112,12 @@ defmodule PlantIdDiscordBot.Cog.PlantNet do
|
|||||||
case HTTPoison.get(query_uri) do
|
case HTTPoison.get(query_uri) do
|
||||||
{:ok, %HTTPoison.Response{status_code: 200, body: body}} ->
|
{:ok, %HTTPoison.Response{status_code: 200, body: body}} ->
|
||||||
response_message = Parser.parse(body)
|
response_message = Parser.parse(body)
|
||||||
RateLimiter.increase_counter(interaction.guild_id)
|
|
||||||
|
guild_id = interaction.guild_id
|
||||||
|
{:ok, %{name: guild_name}} = GuildCache.get(guild_id)
|
||||||
|
|
||||||
|
RateLimiter.increase_counter(guild_id)
|
||||||
|
Metrics.put(guild_id, guild_name)
|
||||||
|
|
||||||
Api.create_followup_message(interaction.application_id, interaction.token, %{
|
Api.create_followup_message(interaction.application_id, interaction.token, %{
|
||||||
content: response_message <> "\n#{original_images}"
|
content: response_message <> "\n#{original_images}"
|
||||||
@@ -129,7 +136,11 @@ defmodule PlantIdDiscordBot.Cog.PlantNet do
|
|||||||
})
|
})
|
||||||
|
|
||||||
{:ok, %HTTPoison.Response{status_code: 404}} ->
|
{:ok, %HTTPoison.Response{status_code: 404}} ->
|
||||||
RateLimiter.increase_counter(interaction.guild_id)
|
guild_id = interaction.guild_id
|
||||||
|
{:ok, %{name: guild_name}} = GuildCache.get(guild_id)
|
||||||
|
|
||||||
|
RateLimiter.increase_counter(guild_id)
|
||||||
|
Metrics.put(guild_id, guild_name)
|
||||||
|
|
||||||
Api.create_followup_message(interaction.application_id, interaction.token, %{
|
Api.create_followup_message(interaction.application_id, interaction.token, %{
|
||||||
content: "Species Not Found"
|
content: "Species Not Found"
|
||||||
|
|||||||
Reference in New Issue
Block a user