+ $object_data = self::getObjectDataFromActivity($object);
+
+ $receiverdata = self::getReceivers($object, $object_data['actor'] ?? '', $object_data['tags'], true, false);
+ $receivers = $reception_types = [];
+ foreach ($receiverdata as $key => $data) {
+ $receivers[$key] = $data['uid'];
+ $reception_types[$data['uid']] = $data['type'] ?? 0;
+ }
+
+ $object_data['receiver_urls'] = self::getReceiverURL($object);
+ $object_data['receiver'] = $receivers;
+ $object_data['reception_type'] = $reception_types;
+
+ $object_data['unlisted'] = in_array(-1, $object_data['receiver']);
+ unset($object_data['receiver'][-1]);
+ unset($object_data['reception_type'][-1]);
+
+ return $object_data;
+ }
+
+ /**
+ * Fetches data from the object part of an client to server activity
+ *
+ * @param array $object
+ *
+ * @return array Object data
+ */
+ private static function processC2SObject(array $object): array
+ {
+ $object_data = self::getObjectDataFromActivity($object);
+
+ $object_data['target'] = self::getTargets($object, $object_data['actor'] ?? '');
+ $object_data['receiver'] = [];
+
+ return $object_data;
+ }
+
+ /**
+ * Create an object data array from a given activity
+ *
+ * @param array $object
+ *
+ * @return array Object data
+ */
+ private static function getObjectDataFromActivity(array $object): array
+ {