mirror of
https://github.com/wanderer-industries/wanderer
synced 2025-12-13 11:15:51 +00:00
feat: support webhook and sse
This commit is contained in:
@@ -340,8 +340,14 @@ defmodule WandererAppWeb.MapWebhooksAPIController do
|
||||
end
|
||||
|
||||
def create(conn, %{"map_identifier" => map_identifier} = params) do
|
||||
with {:ok, map} <- get_map(conn, map_identifier),
|
||||
{:ok, webhook_params} <- validate_create_params(params, map.id) do
|
||||
# Check if webhooks are enabled
|
||||
unless Application.get_env(:wanderer_app, :external_events, [])[:webhooks_enabled] do
|
||||
conn
|
||||
|> put_status(:service_unavailable)
|
||||
|> json(%{error: "Webhooks are disabled on this server"})
|
||||
else
|
||||
with {:ok, map} <- get_map(conn, map_identifier),
|
||||
{:ok, webhook_params} <- validate_create_params(params, map.id) do
|
||||
|
||||
case MapWebhookSubscription.create(webhook_params) do
|
||||
{:ok, webhook} ->
|
||||
@@ -378,6 +384,7 @@ defmodule WandererAppWeb.MapWebhooksAPIController do
|
||||
|> put_status(:internal_server_error)
|
||||
|> json(%{error: "Internal server error"})
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def update(conn, %{"map_identifier" => map_identifier, "id" => webhook_id} = params) do
|
||||
|
||||
Reference in New Issue
Block a user