From 57330dd91b207d11f1c9ba7633a486e5917f7e9b Mon Sep 17 00:00:00 2001 From: "Haelwenn (lanodan) Monnier" Date: Tue, 4 Sep 2018 18:15:02 +0200 Subject: [PATCH] [Pleroma.Web.Nodeinfo.NodeinfoController]: Have a list of supported features --- .../web/nodeinfo/nodeinfo_controller.ex | 22 ++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/lib/pleroma/web/nodeinfo/nodeinfo_controller.ex b/lib/pleroma/web/nodeinfo/nodeinfo_controller.ex index c40bf1656..b95e12aed 100644 --- a/lib/pleroma/web/nodeinfo/nodeinfo_controller.ex +++ b/lib/pleroma/web/nodeinfo/nodeinfo_controller.ex @@ -63,6 +63,24 @@ def nodeinfo(conn, %{"version" => "2.0"}) do %{} end + features = [ + "pleroma_api_socket", + "mastodon_api_socket", + "mastodon_api_streaming", + if Keyword.get(media_proxy, :enabled) do + "media_proxy" + end, + if Keyword.get(gopher, :enabled) do + "gopher" + end, + if Keyword.get(chat, :enabled) do + "pleroma_api_chat" + end, + if Keyword.get(suggestions, :enabled) do + "3rdparty_suggestions" + end + ] + response = %{ version: "2.0", software: %{ @@ -84,7 +102,6 @@ def nodeinfo(conn, %{"version" => "2.0"}) do metadata: %{ nodeName: Keyword.get(instance, :name), nodeDescription: Keyword.get(instance, :description), - mediaProxy: Keyword.get(media_proxy, :enabled), private: !Keyword.get(instance, :public, true), suggestions: %{ enabled: Keyword.get(suggestions, :enabled, false), @@ -94,10 +111,9 @@ def nodeinfo(conn, %{"version" => "2.0"}) do web: Keyword.get(suggestions, :web, "") }, staffAccounts: staff_accounts, - chat: Keyword.get(chat, :enabled), - gopher: Keyword.get(gopher, :enabled), federation: federation_response, postFormats: Keyword.get(instance, :allowed_post_formats) + features: features, } }