mirror of
https://code.eliotberriot.com/funkwhale/funkwhale.git
synced 2025-10-04 05:49:16 +02:00
Can now fetch domain nodeinfo
This commit is contained in:
parent
e4117043cb
commit
be388870a3
9 changed files with 171 additions and 1 deletions
|
@ -1,8 +1,9 @@
|
|||
from rest_framework import mixins, response, viewsets
|
||||
from rest_framework.decorators import list_route
|
||||
from rest_framework.decorators import detail_route, list_route
|
||||
|
||||
from funkwhale_api.common import preferences
|
||||
from funkwhale_api.federation import models as federation_models
|
||||
from funkwhale_api.federation import tasks as federation_tasks
|
||||
from funkwhale_api.music import models as music_models
|
||||
from funkwhale_api.users import models as users_models
|
||||
from funkwhale_api.users.permissions import HasUserPermission
|
||||
|
@ -98,6 +99,7 @@ class ManageInvitationViewSet(
|
|||
class ManageDomainViewSet(
|
||||
mixins.ListModelMixin, mixins.RetrieveModelMixin, viewsets.GenericViewSet
|
||||
):
|
||||
lookup_value_regex = "[a-zA-Z0-9\-\.]+"
|
||||
queryset = (
|
||||
federation_models.Domain.objects.external()
|
||||
.with_last_activity_date()
|
||||
|
@ -116,3 +118,10 @@ class ManageDomainViewSet(
|
|||
"actors_count",
|
||||
"outbox_activities_count",
|
||||
]
|
||||
|
||||
@detail_route(methods=["get"])
|
||||
def nodeinfo(self, request, *args, **kwargs):
|
||||
domain = self.get_object()
|
||||
federation_tasks.update_domain_nodeinfo(domain_name=domain.name)
|
||||
domain.refresh_from_db()
|
||||
return response.Response(domain.nodeinfo, status=200)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue