README.md 1.79 KB
Newer Older
1 2
# ActivityPub for Drupal

3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
Implements the ActivityPub protocol for your site. Readers will be able to
follow content on Mastodon and other federated platforms that support
ActivityPub. Responses are possible too (Like, Announce, Reply) with more to
come.

The module works with the following federated platforms:

- Mastodon

## Features

- Enable ActivityPub per user
- Block remote domains from posting
- Map Activity types to content types
- discovery via Webfinger module
- outbox and followers endpoints
- HttpSignature for authorization
- Accept follow requests, Undo (follow) as well
- Configure Activity types and properties
- Send posts via drush or cron

24 25 26
## Public and Private keys

Public and private keys are saved in private://activitypub/keys.
swentel's avatar
swentel committed
27
The default path can be overridden in settings.php via settings:
28 29

```
swentel's avatar
swentel committed
30
$settings['activitypub_keys_path'] = '/your/path/';
31 32
```

33
## Default avatar
34

35
The default avatar path can be overridden in settings.php via settings:
36

37 38 39 40 41 42 43 44 45 46 47 48
```
$settings['activitypub_default_avatar_path'] = '/default/image.png';
```

## Inbox and outbox

Every user has an inbox and outbox where activities from remote users are stored.

'Accept', 'Undo' and handled by the 'Static types' plugin. All other activity
types will be stored, but do not have any impact.

An overview can be found at user/x/activitypub.
49

50 51 52
## Sending posts to followers

Activities in the outbox are stored in a queue and send either by
53
cron or drush. Configure this at /admin/config/services/activitypub
54

55
The drush command is activitypub:send-activities
swentel's avatar
swentel committed
56

57
## Drush commands
swentel's avatar
swentel committed
58

59 60 61 62
- activitypub:send-activities: send activities ready to be processed
- activitypub:add-to-queue: adds an outbox activity to the queue
- activitypub:delete-activity: send a delete request
- activitypub:webfinger-info: test command to get info about a remote user