From 57330dd91b207d11f1c9ba7633a486e5917f7e9b Mon Sep 17 00:00:00 2001 From: "Haelwenn (lanodan) Monnier" Date: Tue, 4 Sep 2018 18:15:02 +0200 Subject: [PATCH 1/2] [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, } } From 7906dfe5a080cf698474a324d6242101bcf68ed6 Mon Sep 17 00:00:00 2001 From: "Haelwenn (lanodan) Monnier" Date: Fri, 7 Sep 2018 02:45:26 +0200 Subject: [PATCH 2/2] [Pleroma.Web.Nodeinfo.NodeinfoController]: Simplify features strings --- lib/pleroma/web/nodeinfo/nodeinfo_controller.ex | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/lib/pleroma/web/nodeinfo/nodeinfo_controller.ex b/lib/pleroma/web/nodeinfo/nodeinfo_controller.ex index b95e12aed..59b0ce3e1 100644 --- a/lib/pleroma/web/nodeinfo/nodeinfo_controller.ex +++ b/lib/pleroma/web/nodeinfo/nodeinfo_controller.ex @@ -64,8 +64,8 @@ def nodeinfo(conn, %{"version" => "2.0"}) do end features = [ - "pleroma_api_socket", - "mastodon_api_socket", + "pleroma_api", + "mastodon_api", "mastodon_api_streaming", if Keyword.get(media_proxy, :enabled) do "media_proxy" @@ -74,10 +74,10 @@ def nodeinfo(conn, %{"version" => "2.0"}) do "gopher" end, if Keyword.get(chat, :enabled) do - "pleroma_api_chat" + "chat" end, if Keyword.get(suggestions, :enabled) do - "3rdparty_suggestions" + "suggestions" end ] @@ -112,8 +112,8 @@ def nodeinfo(conn, %{"version" => "2.0"}) do }, staffAccounts: staff_accounts, federation: federation_response, - postFormats: Keyword.get(instance, :allowed_post_formats) - features: features, + postFormats: Keyword.get(instance, :allowed_post_formats), + features: features } }