zimbra-api / soap-api

Zimbra SOAP client in PHP language
BSD 3-Clause "New" or "Revised" License
62 stars 48 forks source link

Method createAccount #43

Open maksymkornilenko opened 4 years ago

maksymkornilenko commented 4 years ago

I need help. I want to set third params to attr givenName, displayName and cn How I can do that

subhankar commented 4 years ago

Hi I am also need same help how to set different parameters in createAccount() method. I tried to pass as parameters but no luck.

// $accountPramas = array( // 'givenName'=>'John', // 'sn'=>'Doe', // 'displayName'=>'John Doe' // );

$api->createAccount($account_name,$password,$accountPramas);

antonioneris commented 3 years ago

Hi a have same problem.

code

$username = 'antonio';
$domain = 'test.test';
$pass = 'pass';
$data = [
    'displayName' => 'Antonio Jr',
    'co' => 'Brasil',
    'l' => 'Sao Jose do Rio Preto',
    'mobile' => 'xx xxxxxxx',
    'postalCode' => 'xxxxxx',
    'st' => 'xx',
    'telephoneNumber' => 'xxxxxx',
    'title' => 'Analista de Sistemas'
];
$adminApi = \Zimbra\Admin\AdminFactory::instance('https://mail.xxxxxxxxxxxxx.com.br:7071/service/admin/soap');   
$adminApi->auth ( 'admin', 'pass'); 
$adminApi->createAccount($username.'@'.$domain, $pass, $data);

Error

UnexpectedValueException TypedSequence<Zimbra\Struct\KeyValuePair> can only hold objects of Zimbra\Struct\KeyValuePair class.

maksymkornilenko commented 3 years ago

Hi a have same problem.

code

$username = 'antonio';
$domain = 'test.test';
$pass = 'pass';
$data = [
    'displayName' => 'Antonio Jr',
    'co' => 'Brasil',
    'l' => 'Sao Jose do Rio Preto',
    'mobile' => 'xx xxxxxxx',
    'postalCode' => 'xxxxxx',
    'st' => 'xx',
    'telephoneNumber' => 'xxxxxx',
    'title' => 'Analista de Sistemas'
];
$adminApi = \Zimbra\Admin\AdminFactory::instance('https://mail.xxxxxxxxxxxxx.com.br:7071/service/admin/soap');   
$adminApi->auth ( 'admin', 'pass'); 
$adminApi->createAccount($username.'@'.$domain, $pass, $data);

Error

UnexpectedValueException TypedSequence<Zimbra\Struct\KeyValuePair> can only hold objects of Zimbra\Struct\KeyValuePair class.

You need to use class KeyValuePair. For example: $attrGivenName = new KeyValuePair ('givenName', $firstName); $attrDisplayName = new KeyValuePair ('givenName', $firstName.' '.$lastName); $api->createAccount($mailLogin, $mailPass,[$attrGivenName,$attrDisplayName]);

antonioneris commented 3 years ago

Hi a have same problem. code

$username = 'antonio';
$domain = 'test.test';
$pass = 'pass';
$data = [
    'displayName' => 'Antonio Jr',
    'co' => 'Brasil',
    'l' => 'Sao Jose do Rio Preto',
    'mobile' => 'xx xxxxxxx',
    'postalCode' => 'xxxxxx',
    'st' => 'xx',
    'telephoneNumber' => 'xxxxxx',
    'title' => 'Analista de Sistemas'
];
$adminApi = \Zimbra\Admin\AdminFactory::instance('https://mail.xxxxxxxxxxxxx.com.br:7071/service/admin/soap');   
$adminApi->auth ( 'admin', 'pass'); 
$adminApi->createAccount($username.'@'.$domain, $pass, $data);

Error UnexpectedValueException TypedSequence<Zimbra\Struct\KeyValuePair> can only hold objects of Zimbra\Struct\KeyValuePair class.

You need to use class KeyValuePair. For example: $attrGivenName = new KeyValuePair ('givenName', $firstName); $attrDisplayName = new KeyValuePair ('givenName', $firstName.' '.$lastName); $api->createAccount($mailLogin, $mailPass,[$attrGivenName,$attrDisplayName]);

Thanks for you help, everything worked out.