mirror of
https://github.com/GAM-team/GAM.git
synced 2026-07-03 20:31:35 +00:00
Replace some old admin settings API calls with customers().
This commit is contained in:
130
src/gam.py
130
src/gam.py
@@ -7108,10 +7108,6 @@ def doUpdateInstance():
|
|||||||
logoFile = sys.argv[4]
|
logoFile = sys.argv[4]
|
||||||
logoImage = readFile(logoFile)
|
logoImage = readFile(logoFile)
|
||||||
callGData(service=adminObj, function=u'UpdateDomainLogo', logoImage=logoImage)
|
callGData(service=adminObj, function=u'UpdateDomainLogo', logoImage=logoImage)
|
||||||
elif command == u'mx_verify':
|
|
||||||
result = callGData(service=adminObj, function=u'UpdateMXVerificationStatus')
|
|
||||||
print u'Verification Method: %s' % result[u'verificationMethod']
|
|
||||||
print u'Verified: %s' % result[u'verified']
|
|
||||||
elif command == u'sso_settings':
|
elif command == u'sso_settings':
|
||||||
enableSSO = samlSignonUri = samlLogoutUri = changePasswordUri = ssoWhitelist = useDomainSpecificIssuer = None
|
enableSSO = samlSignonUri = samlLogoutUri = changePasswordUri = ssoWhitelist = useDomainSpecificIssuer = None
|
||||||
i = 4
|
i = 4
|
||||||
@@ -7157,72 +7153,6 @@ def doUpdateInstance():
|
|||||||
keyFile = sys.argv[4]
|
keyFile = sys.argv[4]
|
||||||
keyData = readFile(keyFile)
|
keyData = readFile(keyFile)
|
||||||
callGData(service=adminObj, function=u'UpdateSSOKey', signingKey=keyData)
|
callGData(service=adminObj, function=u'UpdateSSOKey', signingKey=keyData)
|
||||||
elif command == u'user_migrations':
|
|
||||||
value = sys.argv[4].lower()
|
|
||||||
if value not in [u'true', u'false']:
|
|
||||||
print u'ERROR: value for user_migrations must be true or false, got %s' % sys.argv[4]
|
|
||||||
sys.exit(2)
|
|
||||||
result = callGData(service=adminObj, function=u'UpdateUserMigrationStatus', enableUserMigration=value)
|
|
||||||
elif command == u'outbound_gateway':
|
|
||||||
gateway = sys.argv[4]
|
|
||||||
mode = sys.argv[6].upper()
|
|
||||||
try:
|
|
||||||
result = callGData(service=adminObj, function=u'UpdateOutboundGatewaySettings', smartHost=gateway, smtpMode=mode)
|
|
||||||
except TypeError:
|
|
||||||
pass
|
|
||||||
elif command == u'email_route':
|
|
||||||
i = 4
|
|
||||||
while i < len(sys.argv):
|
|
||||||
if sys.argv[i].lower() == u'destination':
|
|
||||||
destination = sys.argv[i+1]
|
|
||||||
i += 2
|
|
||||||
elif sys.argv[i].lower() == u'rewrite_to':
|
|
||||||
rewrite_to = sys.argv[i+1].lower()
|
|
||||||
if rewrite_to == u'true':
|
|
||||||
rewrite_to = True
|
|
||||||
elif rewrite_to == u'false':
|
|
||||||
rewrite_to = False
|
|
||||||
else:
|
|
||||||
print u'ERROR: value for rewrite_to must be true or false, got %s' % sys.argv[i+1]
|
|
||||||
sys.exit(2)
|
|
||||||
i += 2
|
|
||||||
elif sys.argv[i].lower() == u'enabled':
|
|
||||||
enabled = sys.argv[i+1].lower()
|
|
||||||
if enabled == u'true':
|
|
||||||
enabled = True
|
|
||||||
elif enabled == u'false':
|
|
||||||
enabled = False
|
|
||||||
else:
|
|
||||||
print u'ERROR: value for enabled must be true or false, got %s' % sys.argv[i+1]
|
|
||||||
sys.exit(2)
|
|
||||||
i += 2
|
|
||||||
elif sys.argv[i].lower() == u'bounce_notifications':
|
|
||||||
bounce_notifications = sys.argv[i+1].lower()
|
|
||||||
if bounce_notifications == u'true':
|
|
||||||
bounce_notifications = True
|
|
||||||
elif bounce_notifications == u'false':
|
|
||||||
bounce_notifications = False
|
|
||||||
else:
|
|
||||||
print u'ERROR: value for bounce_notifications must be true or false, got %s' % sys.argv[i+1]
|
|
||||||
sys.exit(2)
|
|
||||||
i += 2
|
|
||||||
elif sys.argv[i].lower() == u'account_handling':
|
|
||||||
account_handling = sys.argv[i+1].lower()
|
|
||||||
if account_handling == u'all_accounts':
|
|
||||||
account_handling = u'allAccounts'
|
|
||||||
elif account_handling == u'provisioned_accounts':
|
|
||||||
account_handling = u'provisionedAccounts'
|
|
||||||
elif account_handling == u'unknown_accounts':
|
|
||||||
account_handling = u'unknownAccounts'
|
|
||||||
else:
|
|
||||||
print u'ERROR: value for account_handling must be all_accounts, provisioned_accounts or unknown_accounts. Got %s' % sys.argv[i+1]
|
|
||||||
sys.exit(2)
|
|
||||||
i += 2
|
|
||||||
else:
|
|
||||||
print u'ERROR: %s is not a valid argument for "gam update instance email_route"' % sys.argv[i]
|
|
||||||
sys.exit(2)
|
|
||||||
callGData(service=adminObj, function=u'AddEmailRoute', routeDestination=destination, routeRewriteTo=rewrite_to, routeEnabled=enabled,
|
|
||||||
bounceNotifications=bounce_notifications, accountHandling=account_handling)
|
|
||||||
else:
|
else:
|
||||||
print u'ERROR: %s is not a valid argument for "gam update instance"' % command
|
print u'ERROR: %s is not a valid argument for "gam update instance"' % command
|
||||||
sys.exit(2)
|
sys.exit(2)
|
||||||
@@ -7234,48 +7164,35 @@ def doGetInstanceInfo():
|
|||||||
url = 'http://www.google.com/a/cpanel/%s/images/logo.gif' % (GC_Values[GC_DOMAIN])
|
url = 'http://www.google.com/a/cpanel/%s/images/logo.gif' % (GC_Values[GC_DOMAIN])
|
||||||
geturl(url, target_file)
|
geturl(url, target_file)
|
||||||
sys.exit(0)
|
sys.exit(0)
|
||||||
print u'Google Apps Domain: %s' % (GC_Values[GC_DOMAIN])
|
|
||||||
cd = buildGAPIObject(u'directory')
|
cd = buildGAPIObject(u'directory')
|
||||||
if GC_Values[GC_CUSTOMER_ID] != MY_CUSTOMER:
|
if GC_Values[GC_CUSTOMER_ID] != MY_CUSTOMER:
|
||||||
customerId = GC_Values[GC_CUSTOMER_ID]
|
customerKey = GC_Values[GC_CUSTOMER_ID]
|
||||||
else:
|
else:
|
||||||
result = callGAPI(service=cd.users(), function=u'list',
|
customerKey = u'my_customer'
|
||||||
fields=u'users(customerId)', customer=GC_Values[GC_CUSTOMER_ID], maxResults=1)
|
customer_info = callGAPI(cd.customers(), u'get', customerKey=customerKey)
|
||||||
try:
|
customerId = customer_info[u'id']
|
||||||
customerId = result[u'users'][0][u'customerId']
|
primaryDomain = customer_info[u'customerDomain']
|
||||||
except KeyError:
|
|
||||||
customerId = UNKNOWN
|
|
||||||
print u'Customer ID: %s' % customerId
|
print u'Customer ID: %s' % customerId
|
||||||
default_language = callGAPI(service=adm.defaultLanguage(), function=u'get', domainName=GC_Values[GC_DOMAIN])
|
print u'Primary Domain: %s' % primaryDomain
|
||||||
print u'Default Language: %s' % default_language[u'entry'][u'apps$property'][0][u'value']
|
verified = callGAPI(cd.domains(), u'get', fields=u'verified', customer=customerId, domainName=primaryDomain)[u'verified']
|
||||||
org_name = callGAPI(service=adm.organizationName(), function='get', domainName=GC_Values[GC_DOMAIN])
|
print u'Domain Verified: %s' % verified
|
||||||
print convertUTF8(u'Organization Name: %s' % org_name[u'entry'][u'apps$property'][0][u'value'])
|
print u'Default Language: %s' % customer_info[u'language']
|
||||||
admin_email = callGAPI(service=adm.adminSecondaryEmail(), function='get', domainName=GC_Values[GC_DOMAIN])
|
if u'postalAddress' in customer_info:
|
||||||
print u'Admin Secondary Email: %s' % admin_email[u'entry'][u'apps$property'][0][u'value']
|
print u'Address:'
|
||||||
|
for (key, value) in customer_info[u'postalAddress'].items():
|
||||||
|
print u' %s: %s' % (key, value)
|
||||||
|
if u'phoneNumber' in customer_info:
|
||||||
|
print u'Phone: %s' % customer_info[u'phoneNumber']
|
||||||
|
print u'Admin Secondary Email: %s' % customer_info[u'alternateEmail']
|
||||||
max_users = callGAPI(service=adm.maximumNumberOfUsers(), function=u'get', domainName=GC_Values[GC_DOMAIN])
|
max_users = callGAPI(service=adm.maximumNumberOfUsers(), function=u'get', domainName=GC_Values[GC_DOMAIN])
|
||||||
print u'Maximum Users: %s' % max_users[u'entry'][u'apps$property'][0][u'value']
|
print u'Maximum Users: %s' % max_users[u'entry'][u'apps$property'][0][u'value']
|
||||||
current_users = callGAPI(service=adm.currentNumberOfUsers(), function=u'get', domainName=GC_Values[GC_DOMAIN])
|
current_users = callGAPI(service=adm.currentNumberOfUsers(), function=u'get', domainName=GC_Values[GC_DOMAIN])
|
||||||
print u'Current Users: %s' % current_users[u'entry'][u'apps$property'][0][u'value']
|
print u'Current Users: %s' % current_users[u'entry'][u'apps$property'][0][u'value']
|
||||||
is_dom_verified = callGAPI(service=adm.isVerified(), function=u'get', domainName=GC_Values[GC_DOMAIN])
|
|
||||||
print u'Domain is Verified: %s' % is_dom_verified[u'entry'][u'apps$property'][0][u'value']
|
|
||||||
domain_edition = callGAPI(service=adm.edition(), function=u'get', domainName=GC_Values[GC_DOMAIN])
|
domain_edition = callGAPI(service=adm.edition(), function=u'get', domainName=GC_Values[GC_DOMAIN])
|
||||||
print u'Domain Edition: %s' % domain_edition[u'entry'][u'apps$property'][0][u'value']
|
print u'Domain Edition: %s' % domain_edition[u'entry'][u'apps$property'][0][u'value']
|
||||||
customer_pin = callGAPI(service=adm.customerPIN(), function=u'get', domainName=GC_Values[GC_DOMAIN])
|
customer_pin = callGAPI(service=adm.customerPIN(), function=u'get', domainName=GC_Values[GC_DOMAIN])
|
||||||
print u'Customer PIN: %s' % customer_pin[u'entry'][u'apps$property'][0][u'value']
|
print u'Customer PIN: %s' % customer_pin[u'entry'][u'apps$property'][0][u'value']
|
||||||
creation_time = callGAPI(service=adm.creationTime(), function=u'get', domainName=GC_Values[GC_DOMAIN])
|
print u'Customer Creation Time: %s' % customer_info[u'customerCreationTime']
|
||||||
my_date = creation_time[u'entry'][u'apps$property'][0][u'value']
|
|
||||||
my_date = my_date[:15]
|
|
||||||
my_offset = creation_time[u'entry'][u'apps$property'][0][u'value'][19:]
|
|
||||||
nice_time = datetime.datetime.strptime(my_date, u"%Y%m%dT%H%M%S")
|
|
||||||
print u'Domain Creation Time: %s %s' % (nice_time, my_offset)
|
|
||||||
country_code = callGAPI(service=adm.countryCode(), function=u'get', domainName=GC_Values[GC_DOMAIN])
|
|
||||||
print u'Domain Country Code: %s' % country_code[u'entry'][u'apps$property'][0][u'value']
|
|
||||||
mxverificationstatus = callGAPI(service=adm.mxVerification(), function=u'get', domainName=GC_Values[GC_DOMAIN])
|
|
||||||
for entry in mxverificationstatus[u'entry'][u'apps$property']:
|
|
||||||
if entry[u'name'] == u'verified':
|
|
||||||
print u'MX Verification Verified: %s' % entry[u'value']
|
|
||||||
elif entry[u'name'] == u'verificationMethod':
|
|
||||||
print u'MX Verification Method: %s' % entry[u'value']
|
|
||||||
ssosettings = callGAPI(service=adm.ssoGeneral(), function=u'get', domainName=GC_Values[GC_DOMAIN])
|
ssosettings = callGAPI(service=adm.ssoGeneral(), function=u'get', domainName=GC_Values[GC_DOMAIN])
|
||||||
for entry in ssosettings[u'entry'][u'apps$property']:
|
for entry in ssosettings[u'entry'][u'apps$property']:
|
||||||
if entry[u'name'] == u'enableSSO':
|
if entry[u'name'] == u'enableSSO':
|
||||||
@@ -7307,19 +7224,6 @@ def doGetInstanceInfo():
|
|||||||
print u'Full SSO Key: %s' % entry[u'value']
|
print u'Full SSO Key: %s' % entry[u'value']
|
||||||
except TypeError:
|
except TypeError:
|
||||||
pass
|
pass
|
||||||
migration_status = callGAPI(service=adm.userEmailMigrationEnabled(), function=u'get', domainName=GC_Values[GC_DOMAIN])
|
|
||||||
print u'User Migration Enabled: %s' % migration_status[u'entry'][u'apps$property'][0][u'value']
|
|
||||||
outbound_gateway_settings = {u'smartHost': u'', u'smtpMode': u''} # Initialize blank in case we get an 1801 Error
|
|
||||||
outbound_gateway_settings = callGAPI(service=adm.outboundGateway(), function=u'get', domainName=GC_Values[GC_DOMAIN])
|
|
||||||
try:
|
|
||||||
for entry in outbound_gateway_settings[u'entry'][u'apps$property']:
|
|
||||||
if entry[u'name'] == u'smartHost':
|
|
||||||
print u'Outbound Gateway Smart Host: %s' % entry[u'value']
|
|
||||||
elif entry[u'name'] == u'smtpMode':
|
|
||||||
print u'Outbound Gateway SMTP Mode: %s' % entry[u'value']
|
|
||||||
except KeyError:
|
|
||||||
print u'Outbound Gateway Smart Host: None'
|
|
||||||
print u'Outbound Gateway SMTP Mode: None'
|
|
||||||
|
|
||||||
def doDeleteUser():
|
def doDeleteUser():
|
||||||
cd = buildGAPIObject(u'directory')
|
cd = buildGAPIObject(u'directory')
|
||||||
|
|||||||
Reference in New Issue
Block a user