gam7 7.27.1__tar.gz → 7.27.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of gam7 might be problematic. Click here for more details.
- {gam7-7.27.1 → gam7-7.27.3}/PKG-INFO +1 -1
- {gam7-7.27.1 → gam7-7.27.3}/src/GamCommands.txt +19 -19
- {gam7-7.27.1 → gam7-7.27.3}/src/GamUpdate.txt +28 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/__init__.py +61 -32
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gamlib/glmsgs.py +1 -1
- {gam7-7.27.1 → gam7-7.27.3}/src/gam-install.sh +0 -5
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Chat-Bot-Setup-Use.md +12 -2
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Cloud-Identity-Groups.md +1 -1
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Domain-SharedContacts.md +1 -1
- {gam7-7.27.1 → gam7-7.27.3}/wiki/GamUpdates.md +12 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/How-to-Upgrade-Legacy-GAM-to-GAM7.md +2 -2
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Chat.md +11 -1
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Version-and-Help.md +6 -6
- {gam7-7.27.1 → gam7-7.27.3}/.github/ISSUE_TEMPLATE/aa-question.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/.github/ISSUE_TEMPLATE/za-bug-report.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/.github/ISSUE_TEMPLATE/zz-feature-request.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/.github/ISSUE_TEMPLATE.txt +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/.github/actions/decrypt.sh +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/.github/actions/entitlements.plist +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/.github/actions/package_exclusions.txt +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/.github/stale.yml +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/.github/workflows/build.yml +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/.github/workflows/codeql-analysis.yml +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/.github/workflows/get-cacerts.yml +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/.github/workflows/pushwiki.yml +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/.github/workflows/pypi.yml +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/LICENSE +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/README.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/pyproject.toml +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/.gitignore +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/LICENSE +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/README.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/callgam.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/__main__.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/atom/__init__.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/atom/auth.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/atom/client.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/atom/core.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/atom/data.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/atom/http.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/atom/http_core.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/atom/http_interface.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/atom/mock_http.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/atom/mock_http_core.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/atom/mock_service.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/atom/service.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/atom/token_store.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/atom/url.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/cacerts.pem +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/cbcm-v1.1beta1.json +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/contactdelegation-v1.json +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/datastudio-v1.json +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gamlib/__init__.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gamlib/glaction.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gamlib/glapi.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gamlib/glcfg.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gamlib/glclargs.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gamlib/glentity.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gamlib/glgapi.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gamlib/glgdata.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gamlib/glglobals.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gamlib/glindent.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gamlib/glskus.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gamlib/gluprop.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gamlib/glverlibs.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gamlib/yubikey.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gdata/__init__.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gdata/alt/__init__.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gdata/alt/app_engine.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gdata/alt/appengine.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gdata/apps/__init__.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gdata/apps/audit/__init__.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gdata/apps/audit/service.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gdata/apps/contacts/__init__.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gdata/apps/contacts/service.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gdata/apps/service.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gdata/service.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/gdata/urlfetch.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/meet-v2beta.json +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam/serviceaccountlookup-v1.json +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam-setup.bat +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam.exe.manifest +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam.spec +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/gam.wxs +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/license.rtf +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/tools/a_atleast_b.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/tools/gen-wix-xml-filelist.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/tools/hooks/hook-googleapiclient.model.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/tools/hooks/hook-httplib2.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/tools/mkGamRef.py +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/tools/openssl.props +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/tools/ssd.mjs +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/src/version_info.txt.in +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/00scratch.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Addresses.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Administrators.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Alert-Center.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Aliases.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Authorization.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/BNF-Syntax.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Basic-Items.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Bulk-Processing.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Business-Account-Management.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/CSV-Input-Filtering.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/CSV-Output-Filtering.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/CSV-Special-Characters.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Calendars-Access.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Calendars-Events.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Calendars.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Chrome-AUE-Counts.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Chrome-Browser-Cloud-Management.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Chrome-Installed-Apps.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Chrome-Needs-Attention-Counts.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Chrome-Policies.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Chrome-Printers.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Chrome-Profile-Management.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Chrome-Version-Counts.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Chrome-Version-History.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/ChromeOS-Devices.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Classroom-Courses.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Classroom-Guardians.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Classroom-Invitations.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Classroom-Membership.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Classroom-StudentGroups.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Cloud-Channel.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Cloud-Identity-Devices.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Cloud-Identity-Groups-Membership.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Cloud-Identity-Policies.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Cloud-Storage.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Collections-of-ChromeOS-Devices.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Collections-of-Items.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Collections-of-Users.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Command-Data-From-Google-Docs-Sheets-Storage.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Command-Line-Parsing.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Command-Logging-Progress.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Context-Aware-Access-Levels.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Customer.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Domain-People-Contacts-Profiles.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Domains-Verification.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Domains.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Downloads-Installs.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Drive-File-Selection.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Drive-Items.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Drive-REST-API-v3.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Email-Audit-Monitor.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Find-File-Owner.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/GAM-Public-Chat-Room.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/GAM-Release-Process.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/GAM-Return-Codes.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/GAM-with-minimal-GCP-rights.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/GAM7-FAQ.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/GAM7-on-Android-Devices.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/GAM7-on-Chrome-OS-Devices.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Global-Address-List.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Google-Data-Transfers.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Google-Network-Addresses.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Groups-Membership.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Groups.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/HTTPS-Proxy.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Home.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/How-to-Install-GAM7.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/How-to-Uninstall-GAM7.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/How-to-Update-GAM7.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/How-to-Upgrade-GAMADV-XTD3-to-GAM7.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Inbound-SSO.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Install-GAM-as-Python-Library.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Licenses.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/List-Items.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/List.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Meta-Commands-and-File-Redirection.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Mobile-Devices.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Organizational-Units.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Other-Resources.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Permission-Matches.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Python-Regular-Expressions.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/README.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Rclone.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Reports.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Reseller.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Resources.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Running-GAM7-securely-on-a-Google-Compute-Engine.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/SSL-Root-CA-Certificates.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Schemas.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Scripts.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Send-Email.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Shared-Drives.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Sites.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Tag-Replace.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Todrive.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Unmanaged-Accounts.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Upgrade-Benefits.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Analytics-Admin.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Application-Specific-Passwords.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Backup-Verification-Codes.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Calendars-Access.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Calendars-Events.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Calendars.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Classification-Labels.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Classroom-Profile.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Contacts-Delegates.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Contacts.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Deprovision.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Drive-Activity-Settings.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Drive-Cleanup.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Drive-Comments.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Drive-Copy-Move.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Drive-Files-Display.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Drive-Files-Manage.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Drive-Orphans.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Drive-Ownership.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Drive-Permissions.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Drive-Query.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Drive-Revisions.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Drive-Shortcuts.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Drive-Transfer.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Forms.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Gmail-CSE.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Gmail-Delegates.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Gmail-Filters.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Gmail-Forwarding.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Gmail-Labels.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Gmail-Messages-Threads.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Gmail-Profile.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Gmail-S-MIME.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Gmail-Send-As-Signature-Vacation.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Gmail-Settings.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Group-Membership.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Keep-Notes.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Looker-Studio.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Meet.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-People-Contacts-Profiles.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Photo.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Profile-Photo.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Profile-Sharing.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Shared-Drives.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Signout-Turnoff2SV.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Spreadsheets.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Tag-Manager.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Tasks.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Tokens.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-Web-Resources-and-Sites.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users-YouTube.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Users.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Using-GAM7-with-a-YubiKey.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Using-GAM7-with-a-delegated-admin-service-account.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Using-GAM7-with-keyless-authentication-Workload-Identity-Federation.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Vault-Takeout.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/Verifying-a-GAM7-Build-is-Legitimate-and-Official.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/_Sidebar.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/gam.cfg.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-AdminSettingsExamples.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Android-Installation.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-BulkOperations.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-CalendarExamples.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Chat-Bot.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Chrome-Browser-Management.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Chrome-OS-Installation.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Chrome-Policy-Settings.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Cloud-Identity-Groups.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Command-Reference-Calendar-Resources.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Command-Reference-Calendars.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Command-Reference-Definitions.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Command-Reference-Drive.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Command-Reference-Email.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Command-Reference-Group-Attributes.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Command-Reference-Groups.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Command-Reference-Users.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Context-Aware-Access-Levels.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Creating-client_secrets.json-and-oauth2service.json.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-CreatingClientSecretsFile.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Custom-Schemas.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Data-Transfers.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-DomainVerification.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-ExamplesAccountAuditing.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-ExamplesCSV.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-ExamplesEmailSettings.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-ExamplesOrganizations.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-GAM-Discussion-Group.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-GAM-on-Android-and-Chrome-OS.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-GAM-options-files.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-GAM-with--minimal-GCP-rights.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-GAM3CSVListings.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-GAM3DirectoryCommands.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-GAM3GroupSettings.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Google-Vault---Takeout-Commands.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-GoogleDriveManagement.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Grouping-18-or-Older-Users.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Home.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-How-to-upgrade-from-Standard-GAM.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Inbound-SSO-Settings.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-LicenseExamples.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Managing-Admins.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Managing-CloudPrint-Printers.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Managing-Devices.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Managing-Google-Classroom.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-OAuthKeyManagement.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Printers.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-ResellerCommands.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-SecurityExamples.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-UnmanagedUsersExamples.md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-Using-GAM-with-a-delegated-admin-service-account-(DASA).md +0 -0
- {gam7-7.27.1 → gam7-7.27.3}/wiki/legacy/l-_Footer.md +0 -0
|
@@ -2057,7 +2057,7 @@ gam create chatmessage <ChatSpace>
|
|
|
2057
2057
|
[(thread <ChatThread>)|(threadkey <String>) [replyoption fail|fallbacktonew]]
|
|
2058
2058
|
[returnidonly]
|
|
2059
2059
|
gam update chatmessage name <ChatMessage>
|
|
2060
|
-
<ChatContent>
|
|
2060
|
+
[<ChatContent>] [clearattachments <String>]
|
|
2061
2061
|
gam delete chatmessage name <ChatMessage>
|
|
2062
2062
|
|
|
2063
2063
|
<ChatMessageFieldName> ::=
|
|
@@ -4086,7 +4086,7 @@ gam print group-members [todrive <ToDriveAttribute>*]
|
|
|
4086
4086
|
gam create cigroup <EmailAddress>
|
|
4087
4087
|
[copyfrom <GroupItem>] <GroupAttribute>*
|
|
4088
4088
|
[makeowner] [alias|aliases <CIGroupAliasList>]
|
|
4089
|
-
[security|makesecuritygroup]
|
|
4089
|
+
[security|makesecuritygroup] [locked]
|
|
4090
4090
|
[dynamic <QueryDynamicGroup>]
|
|
4091
4091
|
gam update cigroup <GroupEntity> [copyfrom <GroupItem>] <GroupAttribute>
|
|
4092
4092
|
[security|makesecuritygroup|
|
|
@@ -6428,13 +6428,13 @@ gam <UserTypeEntity> update chatspace <ChatSpace>
|
|
|
6428
6428
|
[type space]
|
|
6429
6429
|
[description <String>] [guidelines|rules <String>]
|
|
6430
6430
|
[history <Boolean>])
|
|
6431
|
-
[managemembersandgroups managers|members]
|
|
6432
|
-
[modifyspacedetails managers|members]
|
|
6433
|
-
[togglehistory managers|members]
|
|
6434
|
-
[useatmentionall managers|members]
|
|
6435
|
-
[manageapps managers|members]
|
|
6436
|
-
[managewebhooks managers|members]
|
|
6437
|
-
[replymessages managers|members]
|
|
6431
|
+
[managemembersandgroups owners|managers|members]
|
|
6432
|
+
[modifyspacedetails owners|managers|members]
|
|
6433
|
+
[togglehistory owners|managers|members]
|
|
6434
|
+
[useatmentionall owners|managers|members]
|
|
6435
|
+
[manageapps owners|managers|members]
|
|
6436
|
+
[managewebhooks owners|managers|members]
|
|
6437
|
+
[replymessages owners|managers|members]
|
|
6438
6438
|
[formatjson]
|
|
6439
6439
|
gam <UserTypeEntity> delete chatspace <ChatSpace>
|
|
6440
6440
|
|
|
@@ -6495,28 +6495,28 @@ gam <UserItem> print chatspaces asadmin [todrive <ToDriveAttribute>*]
|
|
|
6495
6495
|
[formatjson [quotechar <Character>]]
|
|
6496
6496
|
|
|
6497
6497
|
gam <UserTypeEntity> create chatmember <ChatSpace>
|
|
6498
|
-
[type human|bot] [role member|manager]
|
|
6498
|
+
[type human|bot] [role member|manager|owner]
|
|
6499
6499
|
(user <UserItem>)* (members <UserTypeEntity>)*
|
|
6500
6500
|
(group <GroupItem>)* (groups <GroupEntity>)*
|
|
6501
6501
|
[formatjson|returnidonly]
|
|
6502
6502
|
gam <UserTypeEntity> delete chatmember <ChatSpace>
|
|
6503
6503
|
((user <UserItem>)|(members <UserTypeEntity>)|
|
|
6504
6504
|
(group <GroupItem>)|(groups <GroupEntity>))+
|
|
6505
|
-
gam <UserTypeEntity> remove chatmember members <ChatMemberList>
|
|
6505
|
+
`gam <UserTypeEntity> remove chatmember members <ChatMemberList>
|
|
6506
6506
|
gam <UserTypeEntity> update chatmember <ChatSpace>
|
|
6507
|
-
role member|manager
|
|
6507
|
+
role member|manager|owner
|
|
6508
6508
|
((user <UserItem>)|(members <UserTypeEntity>))+
|
|
6509
6509
|
gam <UserTypeEntity> modify chatmember
|
|
6510
|
-
role member|manager
|
|
6510
|
+
role member|manager|owner
|
|
6511
6511
|
members <ChatMemberList>
|
|
6512
6512
|
gam <UserTypeEntity> sync chatmembers <ChatSpace>
|
|
6513
|
-
[role member|manager] [type human|bot]
|
|
6513
|
+
[role member|manager|owner] [type human|bot]
|
|
6514
6514
|
[addonly|removeonly]
|
|
6515
6515
|
[preview [actioncsv]]
|
|
6516
6516
|
(users <UserTypeEntity>)* (groups <GroupEntity>)*
|
|
6517
6517
|
|
|
6518
6518
|
gam <UserItem> create chatmember asadmin <ChatSpace>
|
|
6519
|
-
[type human|bot] [role member|manager]
|
|
6519
|
+
[type human|bot] [role member|manager|owner]
|
|
6520
6520
|
(user <UserItem>)* (members <UserTypeEntity>)*
|
|
6521
6521
|
(group <GroupItem>)* (groups <GroupEntity>)*
|
|
6522
6522
|
[formatjson|returnidonly]
|
|
@@ -6525,13 +6525,13 @@ gam <UserItem> delete chatmember asadmin <ChatSpace>
|
|
|
6525
6525
|
((user <UserItem>)|(members <UserTypeEntity>)|
|
|
6526
6526
|
(group <GroupItem>)|(groups <GroupEntity>))+
|
|
6527
6527
|
gam <UserItem> update chatmember asadmin <ChatSpace>
|
|
6528
|
-
role member|manager
|
|
6528
|
+
role member|manager|owner
|
|
6529
6529
|
((user <UserItem>)|(members <UserTypeEntity>))+
|
|
6530
6530
|
gam <UserItem> modify chatmember asadmin
|
|
6531
|
-
role member|manager
|
|
6531
|
+
role member|manager|owner
|
|
6532
6532
|
members <ChatMemberList>
|
|
6533
6533
|
gam <UserItem> sync chatmembers asadmin <ChatSpace>
|
|
6534
|
-
[role member|manager] [type human|bot]
|
|
6534
|
+
[role member|manager|owner`] [type human|bot]
|
|
6535
6535
|
[addonly|removeonly]
|
|
6536
6536
|
[preview [actioncsv]]
|
|
6537
6537
|
(users <UserTypeEntity>)* (groups <GroupEntity>)*
|
|
@@ -6586,7 +6586,7 @@ gam <UserTypeEntity> create chatmessage <ChatSpace>
|
|
|
6586
6586
|
[replyoption fail|fallback]
|
|
6587
6587
|
[returnidonly]
|
|
6588
6588
|
gam <UserTypeEntity> update chatmessage name <ChatMessage>
|
|
6589
|
-
<ChatContent>
|
|
6589
|
+
[<ChatContent>] [clearattachments <String>]
|
|
6590
6590
|
gam <UserTypeEntity> delete chatmessage name <ChatMessage>
|
|
6591
6591
|
|
|
6592
6592
|
<ChatMessageFieldName> ::=
|
|
@@ -1,3 +1,31 @@
|
|
|
1
|
+
7.27.03
|
|
2
|
+
|
|
3
|
+
Updated `gam <UserTypeEntity> create|update|sync chatmember` role specification to `role member|manager|owner`.
|
|
4
|
+
This is the mapping between the Chat UI and Chat API; GAM uses the Chat UI role names.
|
|
5
|
+
```
|
|
6
|
+
UI: Member, API: ROLE_MEMBER
|
|
7
|
+
UI: Manager, API: ROLE_ASSISTANT_MANAGER
|
|
8
|
+
UI: Owner, API: ROLE_MANAGER
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
Updated `gam <UserTypeEntity> update chatspace` options for permission settings.
|
|
12
|
+
```
|
|
13
|
+
[managemembersandgroups owners|managers|members]
|
|
14
|
+
[modifyspacedetails owners|managers|members]
|
|
15
|
+
[togglehistory owners|managers|members]
|
|
16
|
+
[useatmentionall owners|managers|members]
|
|
17
|
+
[manageapps owners|managers|members]
|
|
18
|
+
[managewebhooks owners|managers|members]
|
|
19
|
+
[replymessages owners|managers|members]
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
7.27.02
|
|
23
|
+
|
|
24
|
+
Added option `clearattachments <String>` to `gam [<UserTypeMessage>] update chatmessage`
|
|
25
|
+
that clears all attachments from a Chat message. If `<ChatContent>` is not specified,
|
|
26
|
+
the current message text is retained and `<String>` is appended; `<String>` must be specified
|
|
27
|
+
but can be empty in which case the current message test is preserved as-is.
|
|
28
|
+
|
|
1
29
|
7.27.01
|
|
2
30
|
|
|
3
31
|
Fixed bug in `gam <UserTypeEntity> claim ownership <DriveFileEntity> ... onlyUsers|skipusers <UserTypeEntity>`
|
|
@@ -25,7 +25,7 @@ https://github.com/GAM-team/GAM/wiki
|
|
|
25
25
|
"""
|
|
26
26
|
|
|
27
27
|
__author__ = 'GAM Team <google-apps-manager@googlegroups.com>'
|
|
28
|
-
__version__ = '7.27.
|
|
28
|
+
__version__ = '7.27.03'
|
|
29
29
|
__license__ = 'Apache License 2.0 (http://www.apache.org/licenses/LICENSE-2.0)'
|
|
30
30
|
|
|
31
31
|
#pylint: disable=wrong-import-position
|
|
@@ -9182,7 +9182,7 @@ def showJSON(showName, showValue, skipObjects=None, timeObjects=None,
|
|
|
9182
9182
|
return
|
|
9183
9183
|
if objectName is not None:
|
|
9184
9184
|
printJSONKey(objectName)
|
|
9185
|
-
|
|
9185
|
+
subObjectKey = dictObjectsKey.get(objectName)
|
|
9186
9186
|
if isinstance(objectValue, list):
|
|
9187
9187
|
if objectName in simpleLists:
|
|
9188
9188
|
printJSONValue(' '.join(objectValue))
|
|
@@ -26506,14 +26506,18 @@ CHAT_TIME_OBJECTS = {'createTime', 'deleteTime', 'eventTime', 'lastActiveTime',
|
|
|
26506
26506
|
def _showChatItem(citem, entityType, FJQC, i=0, count=0):
|
|
26507
26507
|
if entityType == Ent.CHAT_SPACE:
|
|
26508
26508
|
_cleanChatSpace(citem)
|
|
26509
|
+
dictObjectsKey = {None: 'displayName'}
|
|
26509
26510
|
elif entityType == Ent.CHAT_MESSAGE:
|
|
26510
26511
|
_cleanChatMessage(citem)
|
|
26512
|
+
dictObjectsKey = {None: 'text'}
|
|
26513
|
+
else:
|
|
26514
|
+
dictObjectsKey={}
|
|
26511
26515
|
if FJQC.formatJSON:
|
|
26512
26516
|
printLine(json.dumps(cleanJSON(citem, timeObjects=CHAT_TIME_OBJECTS), ensure_ascii=False, sort_keys=True))
|
|
26513
26517
|
return
|
|
26514
26518
|
printEntity([entityType, citem['name']], i, count)
|
|
26515
26519
|
Ind.Increment()
|
|
26516
|
-
showJSON(None, citem, timeObjects=CHAT_TIME_OBJECTS)
|
|
26520
|
+
showJSON(None, citem, timeObjects=CHAT_TIME_OBJECTS, dictObjectsKey=dictObjectsKey)
|
|
26517
26521
|
Ind.Decrement()
|
|
26518
26522
|
|
|
26519
26523
|
def _printChatItem(user, citem, parent, entityType, csvPF, FJQC, addCSVData=None):
|
|
@@ -26772,14 +26776,14 @@ def getChatSpaceParameters(myarg, body, typeChoicesMap, updateMask):
|
|
|
26772
26776
|
|
|
26773
26777
|
CHAT_MEMBER_ROLE_MAP = {
|
|
26774
26778
|
'member': 'ROLE_MEMBER',
|
|
26775
|
-
'manager': '
|
|
26776
|
-
'owner': '
|
|
26779
|
+
'manager': 'ROLE_ASSISTANT_MANAGER',
|
|
26780
|
+
'owner': 'ROLE_MANAGER',
|
|
26777
26781
|
}
|
|
26778
26782
|
|
|
26779
26783
|
CHAT_ROLE_ENTITY_TYPE_MAP = {
|
|
26780
26784
|
'ROLE_MEMBER': Ent.CHAT_MEMBER_USER,
|
|
26781
|
-
'
|
|
26782
|
-
'
|
|
26785
|
+
'ROLE_ASSISTANT_MANAGER': Ent.CHAT_MANAGER_USER,
|
|
26786
|
+
'ROLE_MANAGER': Ent.CHAT_OWNER_USER,
|
|
26783
26787
|
}
|
|
26784
26788
|
|
|
26785
26789
|
CHAT_MEMBER_TYPE_MAP = {
|
|
@@ -26913,7 +26917,8 @@ CHAT_UPDATE_SPACE_TYPE_MAP = {
|
|
|
26913
26917
|
}
|
|
26914
26918
|
|
|
26915
26919
|
CHAT_SPACE_ROLE_PERMISSIONS_MAP = {
|
|
26916
|
-
'
|
|
26920
|
+
'owners': 'managersAllowed',
|
|
26921
|
+
'managers': 'assistantManagersAllowed',
|
|
26917
26922
|
'members': 'membersAllowed',
|
|
26918
26923
|
}
|
|
26919
26924
|
|
|
@@ -26933,13 +26938,13 @@ CHAT_UPDATE_SPACE_PERMISSIONS_MAP = {
|
|
|
26933
26938
|
# [type space]
|
|
26934
26939
|
# [description <String>] [guidelines|rules <String>]
|
|
26935
26940
|
# [history <Boolean>])
|
|
26936
|
-
# managemembersandgroups managers|members
|
|
26937
|
-
# modifyspacedetails managers|members
|
|
26938
|
-
# togglehistory managers|members
|
|
26939
|
-
# useatmentionall managers|members
|
|
26940
|
-
# manageapps managers|members
|
|
26941
|
-
# managewebhooks managers|members
|
|
26942
|
-
# replymessages managers|members
|
|
26941
|
+
# [managemembersandgroups owners|managers|members]
|
|
26942
|
+
# [modifyspacedetails owners|managers|members]
|
|
26943
|
+
# [togglehistory owners|managers|members]
|
|
26944
|
+
# [useatmentionall owners|managers|members]
|
|
26945
|
+
# [manageapps owners|managers|members]
|
|
26946
|
+
# [managewebhooks owners|managers|members]
|
|
26947
|
+
2# [replymessages owners|managers|members]
|
|
26943
26948
|
# [formatjson]
|
|
26944
26949
|
def updateChatSpace(users):
|
|
26945
26950
|
FJQC = FormatJSONQuoteChar()
|
|
@@ -26957,9 +26962,13 @@ def updateChatSpace(users):
|
|
|
26957
26962
|
body.setdefault('permissionSettings', {})
|
|
26958
26963
|
permissionSetting = CHAT_UPDATE_SPACE_PERMISSIONS_MAP[myarg]
|
|
26959
26964
|
role = getChoice(CHAT_SPACE_ROLE_PERMISSIONS_MAP, mapChoice=True)
|
|
26960
|
-
body['permissionSettings'][permissionSetting] = {
|
|
26965
|
+
body['permissionSettings'][permissionSetting] = {}
|
|
26966
|
+
body['permissionSettings'][permissionSetting][role] = True
|
|
26961
26967
|
if role == 'membersAllowed':
|
|
26962
|
-
body['permissionSettings'][permissionSetting]
|
|
26968
|
+
body['permissionSettings'][permissionSetting]['assistantManagersAllowed'] = True
|
|
26969
|
+
body['permissionSettings'][permissionSetting]['managersAllowed'] = True
|
|
26970
|
+
elif role == 'assistantManagersAllowed':
|
|
26971
|
+
body['permissionSettings'][permissionSetting]['managersAllowed'] = True
|
|
26963
26972
|
updateMask.add(f'permissionSettings.{permissionSetting}')
|
|
26964
26973
|
else:
|
|
26965
26974
|
FJQC.GetFormatJSON(myarg)
|
|
@@ -27333,12 +27342,12 @@ def getGroupMemberID(cd, group, groupList):
|
|
|
27333
27342
|
groupList.append(convertEmailAddressToUID(group, cd, emailType='group'))
|
|
27334
27343
|
|
|
27335
27344
|
# gam <UserTypeEntity> create chatmember <ChatSpace>
|
|
27336
|
-
# [type human|bot] [role member|manager]
|
|
27345
|
+
# [type human|bot] [role member|manager|owner]
|
|
27337
27346
|
# (user <UserItem>)* (members <UserTypeEntity>)*
|
|
27338
27347
|
# (group <GroupItem>)* (groups <GroupEntity>)*
|
|
27339
27348
|
# [formatjson|returnidonly]
|
|
27340
27349
|
# gam <UserItem> create chatmember asadmin <ChatSpace>
|
|
27341
|
-
# [type human|bot] [role member|manager]
|
|
27350
|
+
# [type human|bot] [role member|manager|owner]
|
|
27342
27351
|
# (user <UserItem>)* (members <UserTypeEntity>)*
|
|
27343
27352
|
# (group <GroupItem>)* (groups <GroupEntity>)*
|
|
27344
27353
|
# [formatjson|returnidonly]
|
|
@@ -27467,16 +27476,16 @@ def _deleteChatMembers(chat, kvList, jcount, memberNames, i, count, kwargsUAA):
|
|
|
27467
27476
|
# gam <UserItem> remove chatmember asadmin
|
|
27468
27477
|
# members <ChatMemberList>
|
|
27469
27478
|
# gam <UserTypeEntity> update chatmember <ChatSpace>
|
|
27470
|
-
# role member|manager
|
|
27479
|
+
# role member|manager|owner
|
|
27471
27480
|
# ((user <UserItem>)|(members <UserTypeEntity>))+
|
|
27472
27481
|
# gam <UserTypeEntity> modify chatmember
|
|
27473
|
-
# role member|manager
|
|
27482
|
+
# role member|manager|owner
|
|
27474
27483
|
# members <ChatMemberList>
|
|
27475
27484
|
# gam <UserItem> update chatmember asadmin<ChatSpace>
|
|
27476
|
-
# role member|manager
|
|
27485
|
+
# role member|manager|owner
|
|
27477
27486
|
# ((user <UserItem>)|(members <UserTypeEntity>))+
|
|
27478
27487
|
# gam <UserItem> modify chatmember asadmin
|
|
27479
|
-
# role member|manager
|
|
27488
|
+
# role member|manager|owner
|
|
27480
27489
|
# members <ChatMemberList>
|
|
27481
27490
|
def deleteUpdateChatMember(users):
|
|
27482
27491
|
cd = buildGAPIObject(API.DIRECTORY)
|
|
@@ -27570,7 +27579,7 @@ def deleteUpdateChatMember(users):
|
|
|
27570
27579
|
CHAT_SYNC_PREVIEW_TITLES = ['space', 'member', 'role', 'action', 'message']
|
|
27571
27580
|
|
|
27572
27581
|
# gam <UserTypeEntity> sync chatmembers [asadmin] <ChatSpace>
|
|
27573
|
-
# [role member|manager] [type human|bot]
|
|
27582
|
+
# [role member|manager|owner] [type human|bot]
|
|
27574
27583
|
# [addonly|removeonly]
|
|
27575
27584
|
# [preview [actioncsv]]
|
|
27576
27585
|
# (users <UserTypeEntity>)* (groups <GroupEntity>)*
|
|
@@ -27986,10 +27995,11 @@ def _getChatSenderEmail(cd, sender):
|
|
|
27986
27995
|
sender['email'], _ = convertUIDtoEmailAddressWithType(f'uid:{senderUid}', cd, None, emailTypes=['user'])
|
|
27987
27996
|
|
|
27988
27997
|
def trimChatMessageIfRequired(body):
|
|
27989
|
-
|
|
27990
|
-
|
|
27991
|
-
|
|
27992
|
-
|
|
27998
|
+
if 'text' in body:
|
|
27999
|
+
msgLen = len(body['text'])
|
|
28000
|
+
if msgLen > 4096:
|
|
28001
|
+
stderrWarningMsg(Msg.TRIMMED_MESSAGE_FROM_LENGTH_TO_MAXIMUM.format(msgLen, 4096))
|
|
28002
|
+
body['text'] = body['text'][:4095]
|
|
27993
28003
|
|
|
27994
28004
|
CHAT_MESSAGE_REPLY_OPTION_MAP = {
|
|
27995
28005
|
'fail': 'REPLY_MESSAGE_OR_FAIL',
|
|
@@ -28066,22 +28076,29 @@ def doCreateChatMessage():
|
|
|
28066
28076
|
createChatMessage([None])
|
|
28067
28077
|
|
|
28068
28078
|
# gam [<UserTypeMessage>] update chatmessage name <ChatMessage>
|
|
28069
|
-
# <ChatContent>
|
|
28079
|
+
# [<ChatContent>] [clearattachments <String>]
|
|
28070
28080
|
def updateChatMessage(users):
|
|
28071
28081
|
name = None
|
|
28072
28082
|
body = {}
|
|
28083
|
+
updateMask = []
|
|
28084
|
+
clearMsg = ''
|
|
28073
28085
|
while Cmd.ArgumentsRemaining():
|
|
28074
28086
|
myarg = getArgument()
|
|
28075
28087
|
if myarg == 'name':
|
|
28076
28088
|
name = getString(Cmd.OB_CHAT_MESSAGE)
|
|
28077
28089
|
elif myarg in SORF_TEXT_ARGUMENTS:
|
|
28078
28090
|
body['text'] = getStringOrFile(myarg, minLen=0, unescapeCRLF=True)[0]
|
|
28091
|
+
updateMask.append('text')
|
|
28092
|
+
elif myarg == 'clearattachments':
|
|
28093
|
+
clearMsg = getString(Cmd.OB_STRING, minLen=0)
|
|
28094
|
+
body['attachment'] = []
|
|
28095
|
+
updateMask.append('attachment')
|
|
28079
28096
|
else:
|
|
28080
28097
|
unknownArgumentExit()
|
|
28081
28098
|
if not name:
|
|
28082
28099
|
missingArgumentExit('name')
|
|
28083
|
-
if
|
|
28084
|
-
missingArgumentExit('text
|
|
28100
|
+
if not updateMask:
|
|
28101
|
+
missingArgumentExit('text|textfile|clearattachments')
|
|
28085
28102
|
trimChatMessageIfRequired(body)
|
|
28086
28103
|
i, count, users = getEntityArgument(users)
|
|
28087
28104
|
for user in users:
|
|
@@ -28090,9 +28107,19 @@ def updateChatMessage(users):
|
|
|
28090
28107
|
if not chat:
|
|
28091
28108
|
continue
|
|
28092
28109
|
try:
|
|
28110
|
+
if 'attachment' in updateMask and 'text' not in updateMask:
|
|
28111
|
+
resp = callGAPI(chat.spaces().messages(), 'get',
|
|
28112
|
+
throwReasons=[GAPI.NOT_FOUND, GAPI.INVALID_ARGUMENT, GAPI.PERMISSION_DENIED, GAPI.FAILED_PRECONDITION],
|
|
28113
|
+
name=name, fields='text')
|
|
28114
|
+
body['text'] = resp.get('text', '')
|
|
28115
|
+
if clearMsg:
|
|
28116
|
+
body['text'] += clearMsg
|
|
28117
|
+
elif not body['text']:
|
|
28118
|
+
body['text'] = 'Attachments cleared'
|
|
28119
|
+
updateMask.append('text')
|
|
28093
28120
|
resp = callGAPI(chat.spaces().messages(), 'patch',
|
|
28094
28121
|
throwReasons=[GAPI.NOT_FOUND, GAPI.INVALID_ARGUMENT, GAPI.PERMISSION_DENIED, GAPI.FAILED_PRECONDITION],
|
|
28095
|
-
name=name, updateMask='
|
|
28122
|
+
name=name, updateMask=','.join(updateMask), body=body)
|
|
28096
28123
|
kvList.extend([Ent.CHAT_THREAD, resp['thread']['name']])
|
|
28097
28124
|
entityActionPerformed(kvList, i, count)
|
|
28098
28125
|
except (GAPI.notFound, GAPI.invalidArgument, GAPI.permissionDenied) as e:
|
|
@@ -33001,6 +33028,8 @@ def doCreateGroup(ciGroupsAPI=False):
|
|
|
33001
33028
|
initialGroupConfig = 'WITH_INITIAL_OWNER'
|
|
33002
33029
|
elif ciGroupsAPI and myarg in {'security', 'makesecuritygroup'}:
|
|
33003
33030
|
body['labels'][CIGROUP_SECURITY_LABEL] = ''
|
|
33031
|
+
elif ciGroupsAPI and myarg in ['locked']:
|
|
33032
|
+
body['labels'][CIGROUP_LOCKED_LABEL] = ''
|
|
33004
33033
|
elif myarg == 'verifynotinvitable':
|
|
33005
33034
|
verifyNotInvitable = True
|
|
33006
33035
|
else:
|
|
@@ -516,7 +516,7 @@ To set up Google Chat for your current project, please go to:
|
|
|
516
516
|
|
|
517
517
|
and follow the instructions at:
|
|
518
518
|
|
|
519
|
-
https://github.com/GAM-team/GAM/wiki/Chat-Bot#set-up-a-chat-bot
|
|
519
|
+
https://github.com/GAM-team/GAM/wiki/Chat-Bot-Setup-Use#set-up-a-chat-bot
|
|
520
520
|
|
|
521
521
|
You'll use projects/{1}/topics/no-topic in Connection settings Cloud Pub/Sub Topic Name
|
|
522
522
|
"""
|
|
@@ -83,13 +83,8 @@ echo -e '\x1B[0m'
|
|
|
83
83
|
|
|
84
84
|
version_gt()
|
|
85
85
|
{
|
|
86
|
-
# MacOS < 10.13 doesn't support sort -V
|
|
87
|
-
echo "" | sort -V > /dev/null 2>&1
|
|
88
|
-
vsort_failed=$?
|
|
89
86
|
if [ "${1}" = "${2}" ]; then
|
|
90
87
|
true
|
|
91
|
-
elif (( $vsort_failed != 0 )); then
|
|
92
|
-
false
|
|
93
88
|
else
|
|
94
89
|
test "$(printf '%s\n' "$@" | sort -V | head -n 1)" != "$1"
|
|
95
90
|
fi
|
|
@@ -43,7 +43,7 @@ Even if you're not going to use GAM as a Chat Bot, you have to configure a Chat
|
|
|
43
43
|
* Uncheck "Build this Chat app as a Workspace add-on."
|
|
44
44
|
* Enter an App name and Description of your choosing.
|
|
45
45
|
* For the Avatar URL you can use `https://dummyimage.com/384x256/4d4d4d/0011ff.png&text=+GAM` or a public URL to an image of your own choosing.
|
|
46
|
-
*
|
|
46
|
+
* Inƒ Functionality, uncheck both "Receive 1:1 messages" and "Join spaces and group conversations" if present
|
|
47
47
|
* In Connection settings, choose "Cloud Pub/Sub" and enter `projects/<ProjectID>/topics/no-topic` for the Topic Name. Replace `<ProjectID>` with your GAM project ID. GAM doesn't yet listen to pub/sub so this option is not used.
|
|
48
48
|
* In Visibility, uncheck "Make this Chat app available to specific people and groups in Domain Workspace".
|
|
49
49
|
* Click Save.
|
|
@@ -288,7 +288,7 @@ gam create chatmessage spaces spaces/AAAADi-pvqc gdoc announcements@domain.com n
|
|
|
288
288
|
Updates and rewrites an existing Chat message. Message will show as edited and no notification will be sent to members.
|
|
289
289
|
```
|
|
290
290
|
gam update chatmessage name <ChatMessage>
|
|
291
|
-
<ChatContent>
|
|
291
|
+
[<ChatContent>] [clearattachments <String>]
|
|
292
292
|
```
|
|
293
293
|
Specify the source of the message:
|
|
294
294
|
* `text <String>` - The message is `<String>`
|
|
@@ -296,12 +296,22 @@ Specify the source of the message:
|
|
|
296
296
|
* `gdoc <UserGoogleDoc>` - The message is read from a Google Doc.
|
|
297
297
|
* `gcsdoc <StorageBucketObjectName>` - The message is read from a Google Cloud Storage file.
|
|
298
298
|
|
|
299
|
+
The option `clearattachments <String>` can be used to clear all attachments from a Chat message.
|
|
300
|
+
If `<ChatContent>` is not specified, the current message text is retained and `<String>` is appended;
|
|
301
|
+
`<String>` must be specified but can be empty in which case the current message test is preserved as-is.
|
|
302
|
+
|
|
299
303
|
### Example
|
|
304
|
+
|
|
300
305
|
This example updates an existing chat message with new text.
|
|
301
306
|
```
|
|
302
307
|
gam update chatmessage name spaces/AAAADi-pvqc/messages/PKJrx90ooIU.PKJrx90ooIU text "HELLO CHAT?"
|
|
303
308
|
```
|
|
304
309
|
|
|
310
|
+
This example clears attachments from a chat message and appends ` - Attachments cleared`
|
|
311
|
+
to the current message text.
|
|
312
|
+
```
|
|
313
|
+
gam update chatmessage name spaces/AAAADi-pvqc/messages/PKJrx90ooIU.PKJrx90ooIU clearattachments " - Attachments cleared"
|
|
314
|
+
```
|
|
305
315
|
----
|
|
306
316
|
|
|
307
317
|
## Delete a Chat Message
|
|
@@ -245,7 +245,7 @@ to set `<GroupAttribute>`.
|
|
|
245
245
|
gam create cigroup <EmailAddress>
|
|
246
246
|
[copyfrom <GroupItem>] <GroupAttribute>*
|
|
247
247
|
[makeowner] [alias|aliases <CIGroupAliasList>]
|
|
248
|
-
[security|makesecuritygroup]
|
|
248
|
+
[security|makesecuritygroup] [locked]
|
|
249
249
|
[dynamic <QueryDynamicGroup>]
|
|
250
250
|
gam update cigroup <GroupEntity> [copyfrom <GroupItem>] <GroupAttribute>
|
|
251
251
|
[security|makesecuritygroup|
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
- [Delete duplicate email addresses from contacts](#delete-duplicate-email-addresses-from-contacts)
|
|
11
11
|
- [Manage domain contact photos](#manage-domain-contact-photos)
|
|
12
12
|
- [Display domain shared contacts](#display-domain-shared-contacts)
|
|
13
|
-
- [Display global address list](
|
|
13
|
+
- [Display global address list](Global-Address-List)
|
|
14
14
|
|
|
15
15
|
## API documentation
|
|
16
16
|
* [Domain Shared Contacts API](https://developers.google.com/admin-sdk/domain-shared-contacts)
|
|
@@ -10,6 +10,18 @@ Add the `-s` option to the end of the above commands to suppress creating the `g
|
|
|
10
10
|
|
|
11
11
|
See [Downloads-Installs-GAM7](https://github.com/GAM-team/GAM/wiki/Downloads-Installs) for Windows or other options, including manual installation
|
|
12
12
|
|
|
13
|
+
### 7.27.02
|
|
14
|
+
|
|
15
|
+
Added option `clearattachments <String>` to `gam [<UserTypeMessage>] update chatmessage`
|
|
16
|
+
that clears all attachments from a Chat message. If `<ChatContent>` is not specified,
|
|
17
|
+
the current message text is retained and `<String>` is appended; `<String>` must be specified
|
|
18
|
+
but can be empty in which case the current message test is preserved as-is.
|
|
19
|
+
|
|
20
|
+
### 7.27.01
|
|
21
|
+
|
|
22
|
+
Fixed bug in `gam <UserTypeEntity> claim ownership <DriveFileEntity> ... onlyUsers|skipusers <UserTypeEntity>`
|
|
23
|
+
where the email addresses in `onlyUsers|skipusers <UserTypeEntity>` were not normalized.
|
|
24
|
+
|
|
13
25
|
### 7.27.00
|
|
14
26
|
|
|
15
27
|
Added `debug_redaction` Boolean variable to `gam.cfg`. When True, the default,
|
|
@@ -252,7 +252,7 @@ writes the credentials into the file oauth2.txt.
|
|
|
252
252
|
admin@server:/Users/admin$ rm -f /Users/admin/GAMConfig/oauth2.txt
|
|
253
253
|
admin@server:/Users/admin$ gam version
|
|
254
254
|
WARNING: Config File: /Users/admin/GAMConfig/gam.cfg, Section: DEFAULT, Item: oauth2_txt, Value: /Users/admin/GAMConfig/oauth2.txt, Not Found
|
|
255
|
-
GAM 7.27.
|
|
255
|
+
GAM 7.27.02 - https://github.com/GAM-team/GAM - pyinstaller
|
|
256
256
|
GAM Team <google-apps-manager@googlegroups.com>
|
|
257
257
|
Python 3.14.0 64-bit final
|
|
258
258
|
macOS Tahoe 26.0.1 x86_64
|
|
@@ -990,7 +990,7 @@ writes the credentials into the file oauth2.txt.
|
|
|
990
990
|
C:\>del C:\GAMConfig\oauth2.txt
|
|
991
991
|
C:\>gam version
|
|
992
992
|
WARNING: Config File: C:\GAMConfig\gam.cfg, Section: DEFAULT, Item: oauth2_txt, Value: C:\GAMConfig\oauth2.txt, Not Found
|
|
993
|
-
GAM 7.27.
|
|
993
|
+
GAM 7.27.02 - https://github.com/GAM-team/GAM - pythonsource
|
|
994
994
|
GAM Team <google-apps-manager@googlegroups.com>
|
|
995
995
|
Python 3.14.0 64-bit final
|
|
996
996
|
Windows-10-10.0.17134 AMD64
|
|
@@ -751,7 +751,7 @@ gam user user@domain.com create chatmessage spaces spaces/AAAADi-pvqc gdoc annou
|
|
|
751
751
|
Updates and rewrites an existing Chat message. Message will show as edited and no notification will be sent to members.
|
|
752
752
|
```
|
|
753
753
|
gam <UserTypeEntity> update chatmessage name <ChatMessage>
|
|
754
|
-
<ChatContent>
|
|
754
|
+
[<ChatContent>] [clearattachments <String>]
|
|
755
755
|
```
|
|
756
756
|
Specify the text of the message: `<ChatContent>`
|
|
757
757
|
* `text <String>` - The message is `<String>`
|
|
@@ -759,12 +759,22 @@ Specify the text of the message: `<ChatContent>`
|
|
|
759
759
|
* `gdoc <UserGoogleDoc>` - The message is read from a Google Doc.
|
|
760
760
|
* `gcsdoc <StorageBucketObjectName>` - The message is read from a Google Cloud Storage file.
|
|
761
761
|
|
|
762
|
+
The option `clearattachments <String>` can be used to clear all attachments from a Chat message.
|
|
763
|
+
If `<ChatContent>` is not specified, the current message text is retained and `<String>` is appended;
|
|
764
|
+
`<String>` must be specified but can be empty in which case the current message test is preserved as-is.
|
|
765
|
+
|
|
762
766
|
### Example
|
|
763
767
|
This example updates an existing chat message with new text.
|
|
764
768
|
```
|
|
765
769
|
gam user user@domain.com update chatmessage name spaces/AAAADi-pvqc/messages/PKJrx90ooIU.PKJrx90ooIU text "HELLO CHAT?"
|
|
766
770
|
```
|
|
767
771
|
|
|
772
|
+
This example clears attachments from a chat message and appends ` - Attachments cleared`
|
|
773
|
+
to the current message text.
|
|
774
|
+
```
|
|
775
|
+
gam user user@domain.com update chatmessage name spaces/AAAADi-pvqc/messages/PKJrx90ooIU.PKJrx90ooIU clearattachments " - Attachments cleared"
|
|
776
|
+
```
|
|
777
|
+
|
|
768
778
|
### Delete a Chat Message
|
|
769
779
|
Deletes the given Chat message. Members will no longer see the message.
|
|
770
780
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Print the current version of Gam with details
|
|
4
4
|
```
|
|
5
5
|
gam version
|
|
6
|
-
GAM 7.27.
|
|
6
|
+
GAM 7.27.02 - https://github.com/GAM-team/GAM - pyinstaller
|
|
7
7
|
GAM Team <google-apps-manager@googlegroups.com>
|
|
8
8
|
Python 3.14.0 64-bit final
|
|
9
9
|
macOS Tahoe 26.0.1 x86_64
|
|
@@ -15,7 +15,7 @@ Time: 2023-06-02T21:10:00-07:00
|
|
|
15
15
|
Print the current version of Gam with details and time offset information
|
|
16
16
|
```
|
|
17
17
|
gam version timeoffset
|
|
18
|
-
GAM 7.27.
|
|
18
|
+
GAM 7.27.02 - https://github.com/GAM-team/GAM - pyinstaller
|
|
19
19
|
GAM Team <google-apps-manager@googlegroups.com>
|
|
20
20
|
Python 3.14.0 64-bit final
|
|
21
21
|
macOS Tahoe 26.0.1 x86_64
|
|
@@ -27,7 +27,7 @@ Your system time differs from www.googleapis.com by less than 1 second
|
|
|
27
27
|
Print the current version of Gam with extended details and SSL information
|
|
28
28
|
```
|
|
29
29
|
gam version extended
|
|
30
|
-
GAM 7.27.
|
|
30
|
+
GAM 7.27.02 - https://github.com/GAM-team/GAM - pyinstaller
|
|
31
31
|
GAM Team <google-apps-manager@googlegroups.com>
|
|
32
32
|
Python 3.14.0 64-bit final
|
|
33
33
|
macOS Tahoe 26.0.1 x86_64
|
|
@@ -68,7 +68,7 @@ MacOS High Sierra 10.13.6 x86_64
|
|
|
68
68
|
Path: /Users/Admin/bin/gam7
|
|
69
69
|
Version Check:
|
|
70
70
|
Current: 5.35.08
|
|
71
|
-
Latest: 7.27.
|
|
71
|
+
Latest: 7.27.02
|
|
72
72
|
echo $?
|
|
73
73
|
1
|
|
74
74
|
```
|
|
@@ -76,7 +76,7 @@ echo $?
|
|
|
76
76
|
Print the current version number without details
|
|
77
77
|
```
|
|
78
78
|
gam version simple
|
|
79
|
-
7.27.
|
|
79
|
+
7.27.02
|
|
80
80
|
```
|
|
81
81
|
In Linux/MacOS you can do:
|
|
82
82
|
```
|
|
@@ -86,7 +86,7 @@ echo $VER
|
|
|
86
86
|
Print the current version of Gam and address of this Wiki
|
|
87
87
|
```
|
|
88
88
|
gam help
|
|
89
|
-
GAM 7.27.
|
|
89
|
+
GAM 7.27.02 - https://github.com/GAM-team/GAM
|
|
90
90
|
GAM Team <google-apps-manager@googlegroups.com>
|
|
91
91
|
Python 3.14.0 64-bit final
|
|
92
92
|
macOS Tahoe 26.0.1 x86_64
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|