Diogo Peralta Cordeiro
59b8bdf99b
[PLUGIN][ActivityPub] Provide ActivityStreams 2.0 responses for every Collection
...
Implemented ActivityPub Outbox
2022-01-11 20:30:25 +00:00
Diogo Peralta Cordeiro
9ea230d12b
[COMPONENT][Subscription] Implement subscription handlers
2022-01-03 02:23:06 +00:00
Diogo Peralta Cordeiro
def5f36c25
[PLUGIN][ActivityPub][Inbox] Accept Follow Activity
...
Improve how Core Activity is handled in general
2022-01-02 23:50:16 +00:00
Diogo Peralta Cordeiro
1d1d169a5c
[PLUGIN][ActivityPub] Support federation of Tombstones
2021-12-28 17:10:20 +00:00
Diogo Peralta Cordeiro
9585472679
[ENTITY][Actor] Basic check if can admin for remote actors
2021-12-28 15:38:41 +00:00
Diogo Peralta Cordeiro
e3efd25b43
[PLUGIN][ActivityPub] Fix typo in getObjectByUri
2021-12-24 02:46:45 +00:00
Diogo Peralta Cordeiro
a005a7bcea
[PLUGIN][ActivityPub] Add getUriByObject, so that we can construct activities referring to other known objects (local or foreign)
2021-12-20 13:32:46 +00:00
Hugo Sales
a81ac673ac
[CORE][ENTITY] Rename 'Entity::getWithPK' to 'Entity::getByPK'
2021-12-19 19:04:01 +00:00
Diogo Peralta Cordeiro
480a42cca5
[PLUGIN][ActivityPub] Introduce ActivitypubObject. Beware, inside the plugin, an Object can never be an Activity.
...
Many bug fixes and other major changes (interface changed, see EVENTS.md)
2021-12-08 23:24:23 +00:00
Diogo Peralta Cordeiro
778cb57d83
[PLUGIN][ActivityPub] Finish base ActivityStreams 2.0 interface
...
Instructions below
To extend an Activity properties do:
public function onActivityPubValidateActivityStreamsTwoData(string $type_name, array &$validators): bool {
if ($type_name === '{Type}') {
$validators['attribute'] = myValidator::class;
}
return Event::next;
}
The Validator should be of the form:
use ActivityPhp\Type;
use ActivityPhp\Type\Util;
use Plugin\ActivityPub\Util\ModelValidator;
class myValidator extends ModelValidator
{
/**
* Validate Attribute's value
*
* @param mixed $value from JSON's attribute
* @param mixed $container A {Type}
* @return bool
* @throws Exception
*/
public function validate($value, $container): bool
{
// Validate that container is a {Type}
Util::subclassOf($container, Type\Extended\Object\{Type}::class, true);
return {Validation Result};
To act on received activities do:
public function onActivityPubNew{Type}(&$obj): bool {
To add information to Activities being federated by ActivityPub do:
public function ActivityPubAddActivityStreamsTwoData(string $type_name, &$type): bool {
To implement an ActivityStreams 2.0 representation do:
public function onActivityPubActivityStreamsTwoResponse(string $route, arrray $vars, ?TypeResponse &$response = null): bool {
if ($route === '{Object route}') {
$response = ModelResponse::handle($vars[{Object}]);
return Event::stop;
}
return Event::next;
}
2021-12-04 21:05:07 +00:00
Diogo Peralta Cordeiro
d044039272
[FreeNetwork] Initial multi-protocol support
2021-12-02 14:23:21 +00:00
Diogo Peralta Cordeiro
dbaee08038
[FreeNetwork] Move mentions logic from AP to FN and handle local webfinger mentions properly
2021-12-02 11:12:04 +00:00
Diogo Peralta Cordeiro
6f543ccc06
[ActivityPub][Model][Activity] Translate including objects
2021-12-01 20:53:51 +00:00
Diogo Peralta Cordeiro
424df54a1b
[ActivityPub] Add HTTP Signatures
2021-12-01 19:47:41 +00:00
Diogo Peralta Cordeiro
123544fa50
[ActivityPub] Port Postman
2021-12-01 19:47:40 +00:00
Diogo Peralta Cordeiro
56526c9ba6
[ActivityPub][Inbox] Restore Create Note Functionality
...
Minor bug fixes
2021-11-29 22:42:46 +00:00
Diogo Peralta Cordeiro
c862c9bf18
[ActivityPub] Make remote mentions great again
2021-11-01 12:16:46 +00:00
Hugo Sales
4d9a5aae5a
[ActivityPub] Always explicitly compare the results of Event::handle
to the constants next
or stop
2021-10-28 17:28:02 +01:00
Diogo Peralta Cordeiro
51c984849f
[ActivityPub] Port Explorer
2021-10-27 04:22:19 +01:00
Diogo Peralta Cordeiro
028ea79fff
[CORE][Router] Properly act on Accept headers
2021-10-27 04:19:30 +01:00
Diogo Peralta Cordeiro
8544fe157b
[FreeNetwork] First steps porting webfinger/lrdd to v3, GET webfinger requests already have a basic result
2021-10-27 04:19:29 +01:00
Hugo Sales
9109c61af5
[TOOLS][CS-FIXER] Run new PHP CS Fixer config. Notably, adds strict_types
2021-10-27 04:19:28 +01:00
Diogo Peralta Cordeiro
517ed953f2
[FreeNetwork] First step towards de-duplication mechanism for federation
...
Refactored AS2 inside AP; [ENTITY][Activity] went from core to AP
Webfinger plugin will be part of FreeNetwork component
2021-10-06 11:48:22 +01:00
Diogo Peralta Cordeiro
d6f31d102a
[CORE][ActivityStreamsTwo][ActivityPub] Set all routes
...
Allow global routes to act for every actor
Fix Favoured stream query
2021-09-18 05:12:15 +01:00
Diogo Peralta Cordeiro
365edbaff0
[ActivityStreamsTwo] Initial Actor support
...
Various bug fixes
2021-09-15 10:26:53 +01:00
Hugo Sales
4e30e5aad9
[TOOLS] Fix all issues found by PHPStan level 2
2021-09-14 13:13:44 +01:00
Diogo Peralta Cordeiro
8880af8197
[ActivityStreamsTwo] Introduce a structure for data representation in ActivityStreams 2.0
...
Type factory borrowed from landrok/activitypub
2021-09-14 13:13:37 +01:00
Hugo Sales
ad67358c3b
[ActivityPub] Remove ActivityPub plugin until we're ready to work on it, as it needs significant work
2021-09-14 13:10:51 +01:00
Hugo Sales
460712e15e
[GIT] Change my email to the new one in all files and bump copyright year
2021-09-14 13:06:56 +01:00
Hugo Sales
f60bdaa2f0
[DB][MODULES][ActivityPub] Cleanup table definitions
2021-09-14 13:06:45 +01:00
Hugo Sales
b624359b9a
[ActivityPub] Initial cleanup, removing 'die' statements, and ignoring the subfolders
2021-09-14 13:06:39 +01:00