Я не знаю, в чем ошибка. Я бы тоже подумал, что в библиотеке Google PHP-клиента может кто-то помочь с этим.
Это мой код:
$this->client->refreshToken($con[0]->secret); $newtoken = $this->client->getAccessToken(); $this->client->setAccessToken($newtoken); $activityAccess = new Google_Acl(); $activityAccess->setDomainRestricted(true); $object = new Google_ActivityObject(); $originalContent = $object->setOriginalContent('Happy me'); $originalContent = $object->setContent('Happy me'); $originalContent = $object->setObjectType('domain'); $body = explode(".", $args["post"]); $activity = new Google_Activity(); $postBody = $activity->setTitle($body[0]); $postBody = $activity->setVerb('post'); $postBody = $activity->setKind('plus#activity'); $postBody = $activity->setObject($originalContent); $postBody = $activity->setAccess($activityAccess); $data = $this->connect->activities->insert('me', $postBody);
Это порождает ошибку ниже. Я не знаю, что именно означает ошибка.
A PHP Error was encountered Severity: 4096 Message: Argument 1 passed to Google_Activity::setObject() must be an instance of Google_ActivityObject , null given, called in /home/socialsu/public_html/application/autopost/Google_plus.php on line 179 and defined Filename: contrib/Google_PlusDomainsServices.php Line Number: 635
A PHP Error was encountered Severity: 4096 Message: Argument 2 passed to Google_ActivitiesServiceResource::insert() must be an instance of Google_Activity, null given, called in /home/socialsu/public_html/application/autopost/Google_plus.php on line 182 and defined Filename: contrib/Google_PlusDomainsServices.php Line Number: 54
A PHP Error was encountered Severity: Notice Message: Undefined index: type Filename: io/Google_REST.php Line Number: 98
A PHP Error was encountered Severity: Notice Message: Undefined index: value Filename: io/Google_REST.php Line Number: 109
Ошибка здесь заключается в том, что объект активности не строится должным образом, поэтому ошибка « должна быть экземпляром Google_Activity ». Существуют различные способы создания объекта активности для вставки его в качестве комментария в свой профиль G Suite Google Plus. Возьмем, к примеру, следующий подход.
$service = new Google_Service_PlusDomains($client); $activity = new Google_Service_PlusDomains_Activity( array( 'access' => array( 'items' => array( 'type' => 'domain' ), 'domainRestricted' => true ), 'verb' => 'post', 'object' => array( 'originalContent' => "Post using Google API PHP Client Library!" ), ) ); $newActivity = $service->activities->insert("me", $activity); var_dump($newActivity);
В справочной документации объясняется, какие требуемые и необязательные свойства должен иметь объект. Я настоятельно рекомендую вам создать объект, используя массив, как описано выше. Это должно заставить его работать. Я надеюсь, что эта информация поможет.