X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=doc%2FAddons.md;h=debdc89dd47390871234c6d5906ce6a49d43d53d;hb=1dc613a0a10cf1a7df968bd5b0342fc1c6129826;hp=4a32dc09f430c9a96c477e21412ae6a2869cd454;hpb=03a2888b831bd42f58e53226ded0ab923eddb77a;p=friendica.git diff --git a/doc/Addons.md b/doc/Addons.md index 4a32dc09f4..debdc89dd4 100644 --- a/doc/Addons.md +++ b/doc/Addons.md @@ -479,6 +479,81 @@ Hook data: - **uid** (input): the user to return the contact data for (can be empty for public contacts). - **result** (output): Set by the hook function to indicate a successful detection. +### support_follow + +Called to assert whether a connector addon provides follow capabilities. + +Hook data: +- **protocol** (input): shorthand for the protocol. List of values is available in `src/Core/Protocol.php`. +- **result** (output): should be true if the connector provides follow capabilities, left alone otherwise. + +### support_revoke_follow + +Called to assert whether a connector addon provides follow revocation capabilities. + +Hook data: +- **protocol** (input): shorthand for the protocol. List of values is available in `src/Core/Protocol.php`. +- **result** (output): should be true if the connector provides follow revocation capabilities, left alone otherwise. + +### follow + +Called before adding a new contact for a user to handle non-native network remote contact (like Twitter). + +Hook data: + +- **url** (input): URL of the remote contact. +- **contact** (output): should be filled with the contact (with uid = user creating the contact) array if follow was successful. + +### unfollow + +Called when unfollowing a remote contact on a non-native network (like Twitter) + +Hook data: +- **contact** (input): the remote contact (uid = local unfollowing user id) array. +- **result** (output): wether the unfollowing is successful or not. + +### revoke_follow + +Called when making a remote contact on a non-native network (like Twitter) unfollow you. + +Hook data: +- **contact** (input): the remote contact (uid = local revoking user id) array. +- **result** (output): a boolean value indicating wether the operation was successful or not. + +### block + +Called when blocking a remote contact on a non-native network (like Twitter). + +Hook data: +- **contact** (input): the remote contact (uid = 0) array. +- **uid** (input): the user id to issue the block for. +- **result** (output): a boolean value indicating wether the operation was successful or not. + +### unblock + +Called when unblocking a remote contact on a non-native network (like Twitter). + +Hook data: +- **contact** (input): the remote contact (uid = 0) array. +- **uid** (input): the user id to revoke the block for. +- **result** (output): a boolean value indicating wether the operation was successful or not. + +### storage_instance + +Called when a custom storage is used (e.g. webdav_storage) + +Hook data: +- **name** (input): the name of the used storage backend +- **data['storage']** (output): the storage instance to use (**must** implement `\Friendica\Model\Storage\IWritableStorage`) + +### storage_config + +Called when the admin of the node wants to configure a custom storage (e.g. webdav_storage) + +Hook data: +- **name** (input): the name of the used storage backend +- **data['storage_config']** (output): the storage configuration instance to use (**must** implement `\Friendica\Model\Storage\IStorageConfiguration`) + ## Complete list of hook callbacks Here is a complete list of all hook callbacks with file locations (as of 24-Sep-2018). Please see the source for details of any hooks not documented above. @@ -509,7 +584,7 @@ Here is a complete list of all hook callbacks with file locations (as of 24-Sep- Hook::callAll('enotify_mail', $datarray); Hook::callAll('check_item_notification', $notification_data); -### include/conversation.php +### src/Content/Conversation.php Hook::callAll('conversation_start', $cb); Hook::callAll('render_location', $locate); @@ -731,9 +806,19 @@ Here is a complete list of all hook callbacks with file locations (as of 24-Sep- Hook::callAll('logged_in', $a->user); +### src/Core/Protocol.php + + Hook::callAll('support_follow', $hook_data); + Hook::callAll('support_revoke_follow', $hook_data); + Hook::callAll('unfollow', $hook_data); + Hook::callAll('revoke_follow', $hook_data); + Hook::callAll('block', $hook_data); + Hook::callAll('unblock', $hook_data); + ### src/Core/StorageManager Hook::callAll('storage_instance', $data); + Hook::callAll('storage_config', $data); ### src/Worker/Directory.php