redirect_on_failure: true
#base_url: "https://cache.pleroma.social"
+config :pleroma, :chat,
+ enabled: true
+
# Import environment specific config. This must remain at the bottom
# of this file so it overrides the configuration defined above.
import_config "#{Mix.env}.exs"
limit: 2500
]]),
worker(Pleroma.Web.Federator, []),
- worker(Pleroma.Web.ChatChannel.ChatChannelState, []),
worker(Pleroma.Stats, []),
]
++ if Mix.env == :test, do: [], else: [worker(Pleroma.Web.Streamer, [])]
+ ++ if !chat_enabled(), do: [], else: [worker(Pleroma.Web.ChatChannel.ChatChannelState, [])]
# See http://elixir-lang.org/docs/stable/elixir/Supervisor.html
# for other strategies and supported options
opts = [strategy: :one_for_one, name: Pleroma.Supervisor]
Supervisor.start_link(children, opts)
end
+
+ defp chat_enabled do
+ Application.get_env(:pleroma, :chat, []) |> Keyword.get(:enabled)
+ end
end
## Channels
# channel "room:*", Pleroma.Web.RoomChannel
- channel "chat:*", Pleroma.Web.ChatChannel
+ if Application.get_env(:pleroma, :chat) |> Keyword.get(:enabled) do
+ channel "chat:*", Pleroma.Web.ChatChannel
+ end
## Transports
transport :websocket, Phoenix.Transports.WebSocket
defmodule Pleroma.Web.Endpoint do
use Phoenix.Endpoint, otp_app: :pleroma
- socket "/socket", Pleroma.Web.UserSocket
+ if Application.get_env(:pleroma, :chat) |> Keyword.get(:enabled) do
+ socket "/socket", Pleroma.Web.UserSocket
+ end
socket "/api/v1", Pleroma.Web.MastodonAPI.MastodonSocket
# Serve at "/" the static files from "priv/static" directory.