Beinahe alles was man klicken kann, das kann auch über die API automatisiert werden. Trivial mit den Benutzerrollen ist das auch per z.B. Powershell nicht - aber es geht.@fxbastler weisst du das zufällig.
$tcxurl = "mypbx.mydomain.de" # needs port if not 443
$jsonauthbody = (@{
Username="100" # 3CX user, maybe email address
Password="Super_Secret0815" # 3CX user password
SecurityCode=""
} | ConvertTo-Json)
$LoginResponse = Invoke-RestMethod -Uri "https://$tcxurl/webclient/api/Login/GetAccessToken" -Body $jsonauthbody -Method POST -ContentType "application/json"
$headers = @{Authorization = "Bearer $($LoginResponse.Token.access_token)"}
$userid = ((Invoke-RestMethod -uri "https://$tcxurl/xapi/v1/Users" -headers $headers -Method GET -ContentType "application/json").Value | where {$_.Number -eq "211"}).Id
$userdata = Invoke-RestMethod -uri "https://$tcxurl/xapi/v1/Users($userid)?`$expand=Groups(`$expand=Rights,GroupRights)" -headers $headers -Method GET -ContentType "application/json"
$userdata.Groups entspr. ändern: für alle Gruppen in welcher der Benutzer Mitglied ist die Rights.RoleName und GroupRights.RoleName jeweils gleich setzen.Invoke-RestMethod ... -method PATCH in die 3CX zurückspielen und gut ist.2005 gegründet, als VoIP noch eine aufstrebende Technologie war, hat sich 3CX seither zu einem globalen Marktführer im Bereich der Geschäftskommunikation entwickelt.