Google网上论坛 - Zend API - 设置访问级别

时间:2013-01-18 20:15:28

标签: php zend-framework google-groups

我正在关注的指南就在这里 - > http://framework.zend.com/manual/1.12/en/zend.gdata.gapps.html#zend.gdata.gapps.groups.creating。我正在尝试创建一个组并为其分配“访问级别”,但没有关于可接受值的文档。

这是我写的脚本:

<?php

// This should point to the exact path of the file being imported
require_once '/Users/myuser/Source/Zend/Loader.php';
Zend_Loader::loadClass('Zend_Gdata_ClientLogin');
Zend_Loader::loadClass('Zend_Gdata_Gapps');

if (count($argv) == 1) {
    echo "Usage: ".$argv[0]." \"group id\" \"group name\" \"description\" \"email permission\"\n";
    die;
}

// Arguments passed in on the command line
$groupId = $argv[1];
$groupName = $argv[2];
$groupDesc = null;
if (count($argv) > 3) {
    $groupDesc = $argv[3];
}
$groupPermission = null;
if (count($argv) > 4) {
    $groupPermission = $argv[4];
}

// Set this to your gapps email/pass
$email = "test@domain.com";
$password = "foobar";
// Gapps domain
$domain = "domain.com";

$client = Zend_Gdata_ClientLogin::getHttpClient($email, $password, Zend_Gdata_Gapps::AUTH_SERVICE_NAME);
$gdata = new Zend_Gdata_Gapps($client, $domain);

$entry = $gdata->createGroup($groupId, $groupName, $groupDesc, $groupPermission);
?>

Gapps.php文件中“createGroup”的描述如下:

/**
 * Create a new group.
 * @param string $groupId A unique identifier for the group
 * @param string $groupName The name of the group
 * @param string $description A description of the group
 * @param string $emailPermission The subscription permission of the group
 * @return Zend_Gdata_Gapps_GroupEntry The group entry as created on the server.
 *

如果您在“角色和权限”下查看Google Apps,则会定义4个访问级别:团队,仅限公告,受限制,自定义。我无法在emailPermission字段中发送成功将组设置为“自定义”以外的任何内容的值。到目前为止,我可以发送“所有者”或“会员”,并选择“自定义”访问级别,并在“向该组发送电子邮件”旁边选中“所有者”或“会员”。

是否有人熟悉这样做?就像fyi一样,你必须拥有超级管理员权限并启用配置api才能对你的gapps域执行这个脚本。

1 个答案:

答案 0 :(得分:0)

可接受的值是所有者,成员,域和任何人。请注意,由于此API调用是使用Provisioning API 2.0发布的,因此Google网上论坛获得了更细粒度的权限,其中一些权限可通过Groups Settings API访问。如果您希望自定义基本所有者,成员,域和任何默认设置之外的群组权限,请使用群组设置API。