Two small updates

This commit is contained in:
Ross Scroggs
2023-12-04 11:57:56 -08:00
parent 1c0e6ebf9c
commit d639e8e728
5 changed files with 38 additions and 18 deletions

View File

@ -10,6 +10,14 @@ Add the `-s` option to the end of the above commands to suppress creating the `g
See [Downloads](https://github.com/taers232c/GAMADV-XTD3/wiki/Downloads) for Windows or other options, including manual installation See [Downloads](https://github.com/taers232c/GAMADV-XTD3/wiki/Downloads) for Windows or other options, including manual installation
### 6.66.05
Added column `space.name` to `gam <UserTypeEntity> print chatmembers`.
### 6.66.04
Updated Chat info|show|print commands to display all time fields in local time if specified in `gam.cfg`.
### 6.66.03 ### 6.66.03
Fixed bug in `gam <UserTypeEntity> print filelist select <DriveFileEntity>` where `stripcrsfromname` was not being Fixed bug in `gam <UserTypeEntity> print filelist select <DriveFileEntity>` where `stripcrsfromname` was not being

View File

@ -334,7 +334,7 @@ writes the credentials into the file oauth2.txt.
admin@server:/Users/admin/bin/gamadv-xtd3$ rm -f /Users/admin/GAMConfig/oauth2.txt admin@server:/Users/admin/bin/gamadv-xtd3$ rm -f /Users/admin/GAMConfig/oauth2.txt
admin@server:/Users/admin/bin/gamadv-xtd3$ ./gam version admin@server:/Users/admin/bin/gamadv-xtd3$ ./gam version
WARNING: Config File: /Users/admin/GAMConfig/gam.cfg, Section: DEFAULT, Item: oauth2_txt, Value: /Users/admin/GAMConfig/oauth2.txt, Not Found WARNING: Config File: /Users/admin/GAMConfig/gam.cfg, Section: DEFAULT, Item: oauth2_txt, Value: /Users/admin/GAMConfig/oauth2.txt, Not Found
GAMADV-XTD3 6.66.03 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource GAMADV-XTD3 6.66.05 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource
Ross Scroggs <ross.scroggs@gmail.com> Ross Scroggs <ross.scroggs@gmail.com>
Python 3.10.8 64-bit final Python 3.10.8 64-bit final
MacOS High Sierra 10.13.6 x86_64 MacOS High Sierra 10.13.6 x86_64
@ -1002,7 +1002,7 @@ writes the credentials into the file oauth2.txt.
C:\GAMADV-XTD3>del C:\GAMConfig\oauth2.txt C:\GAMADV-XTD3>del C:\GAMConfig\oauth2.txt
C:\GAMADV-XTD3>gam version C:\GAMADV-XTD3>gam version
WARNING: Config File: C:\GAMConfig\gam.cfg, Section: DEFAULT, Item: oauth2_txt, Value: C:\GAMConfig\oauth2.txt, Not Found WARNING: Config File: C:\GAMConfig\gam.cfg, Section: DEFAULT, Item: oauth2_txt, Value: C:\GAMConfig\oauth2.txt, Not Found
GAMADV-XTD3 6.66.03 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource GAMADV-XTD3 6.66.05 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource
Ross Scroggs <ross.scroggs@gmail.com> Ross Scroggs <ross.scroggs@gmail.com>
Python 3.12.0 64-bit final Python 3.12.0 64-bit final
Windows-10-10.0.17134 AMD64 Windows-10-10.0.17134 AMD64

View File

@ -4,7 +4,7 @@
Print the current version of Gam with details Print the current version of Gam with details
``` ```
gam version gam version
GAMADV-XTD3 6.66.03 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource GAMADV-XTD3 6.66.05 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource
Ross Scroggs <ross.scroggs@gmail.com> Ross Scroggs <ross.scroggs@gmail.com>
Python 3.12.0 64-bit final Python 3.12.0 64-bit final
MacOS Monterey 12.7 x86_64 MacOS Monterey 12.7 x86_64
@ -16,7 +16,7 @@ Time: 2023-06-02T21:10:00-07:00
Print the current version of Gam with details and time offset information Print the current version of Gam with details and time offset information
``` ```
gam version timeoffset gam version timeoffset
GAMADV-XTD3 6.66.03 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource GAMADV-XTD3 6.66.05 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource
Ross Scroggs <ross.scroggs@gmail.com> Ross Scroggs <ross.scroggs@gmail.com>
Python 3.12.0 64-bit final Python 3.12.0 64-bit final
MacOS Monterey 12.7 x86_64 MacOS Monterey 12.7 x86_64
@ -28,7 +28,7 @@ Your system time differs from www.googleapis.com by less than 1 second
Print the current version of Gam with extended details and SSL information Print the current version of Gam with extended details and SSL information
``` ```
gam version extended gam version extended
GAMADV-XTD3 6.66.03 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource GAMADV-XTD3 6.66.05 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource
Ross Scroggs <ross.scroggs@gmail.com> Ross Scroggs <ross.scroggs@gmail.com>
Python 3.12.0 64-bit final Python 3.12.0 64-bit final
MacOS Monterey 12.7 x86_64 MacOS Monterey 12.7 x86_64
@ -65,7 +65,7 @@ MacOS High Sierra 10.13.6 x86_64
Path: /Users/Admin/bin/gamadv-xtd3 Path: /Users/Admin/bin/gamadv-xtd3
Version Check: Version Check:
Current: 5.35.08 Current: 5.35.08
Latest: 6.66.03 Latest: 6.66.05
echo $? echo $?
1 1
``` ```
@ -73,7 +73,7 @@ echo $?
Print the current version number without details Print the current version number without details
``` ```
gam version simple gam version simple
6.66.03 6.66.05
``` ```
In Linux/MacOS you can do: In Linux/MacOS you can do:
``` ```
@ -83,7 +83,7 @@ echo $VER
Print the current version of Gam and address of this Wiki Print the current version of Gam and address of this Wiki
``` ```
gam help gam help
GAM 6.66.03 - https://github.com/taers232c/GAMADV-XTD3 GAM 6.66.05 - https://github.com/taers232c/GAMADV-XTD3
Ross Scroggs <ross.scroggs@gmail.com> Ross Scroggs <ross.scroggs@gmail.com>
Python 3.12.0 64-bit final Python 3.12.0 64-bit final
MacOS Monterey 12.7 x86_64 MacOS Monterey 12.7 x86_64

View File

@ -2,6 +2,14 @@
Merged GAM-Team version Merged GAM-Team version
6.66.05
Added column `space.name` to `gam <UserTypeEntity> print chatmembers`.
6.66.04
Updated Chat info|show|print commands to display all time fields in local time if specified in `gam.cfg`.
6.66.03 6.66.03
Fixed bug in `gam <UserTypeEntity> print filelist select <DriveFileEntity>` where `stripcrsfromname` was not being Fixed bug in `gam <UserTypeEntity> print filelist select <DriveFileEntity>` where `stripcrsfromname` was not being

View File

@ -24578,6 +24578,8 @@ def doPrintShowBrowsers():
csvPF.SetSortTitles(['deviceId']) csvPF.SetSortTitles(['deviceId'])
csvPF.writeCSVfile('Browsers') csvPF.writeCSVfile('Browsers')
BROWSER_TOKEN_TIME_OBJECTS = {'createTime', 'expireTime', 'revokeTime'}
def _showBrowserToken(browser, FJQC, i=0, count=0): def _showBrowserToken(browser, FJQC, i=0, count=0):
if FJQC.formatJSON: if FJQC.formatJSON:
printLine(json.dumps(cleanJSON(browser), ensure_ascii=False, sort_keys=True)) printLine(json.dumps(cleanJSON(browser), ensure_ascii=False, sort_keys=True))
@ -24633,8 +24635,6 @@ def doRevokeBrowserToken():
except GAPI.forbidden: except GAPI.forbidden:
accessErrorExit(None) accessErrorExit(None)
BROWSER_TOKEN_TIME_OBJECTS = {'createTime', 'expireTime', 'revokeTime'}
BROWSER_TOKEN_FIELDS_CHOICE_MAP = { BROWSER_TOKEN_FIELDS_CHOICE_MAP = {
'createtime': 'createTime', 'createtime': 'createTime',
'creatorid': 'creatorId', 'creatorid': 'creatorId',
@ -24788,14 +24788,17 @@ def _cleanChatSpace(space):
space.pop('type', None) space.pop('type', None)
space.pop('threaded', None) space.pop('threaded', None)
CHAT_SPACE_TIME_OBJECTS = {'createTime'}
def _showChatSpace(space, FJQC, i=0, count=0): def _showChatSpace(space, FJQC, i=0, count=0):
_cleanChatSpace(space) _cleanChatSpace(space)
if FJQC.formatJSON: if FJQC.formatJSON:
printLine(json.dumps(cleanJSON(space), ensure_ascii=False, sort_keys=True)) printLine(json.dumps(cleanJSON(space, timeObjects=CHAT_SPACE_TIME_OBJECTS),
ensure_ascii=False, sort_keys=True))
return return
printEntity([Ent.CHAT_SPACE, space['name']], i, count) printEntity([Ent.CHAT_SPACE, space['name']], i, count)
Ind.Increment() Ind.Increment()
showJSON(None, space) showJSON(None, space, timeObjects=CHAT_SPACE_TIME_OBJECTS)
Ind.Decrement() Ind.Decrement()
def getChatSpaceParameters(myarg, body, typeChoicesMap): def getChatSpaceParameters(myarg, body, typeChoicesMap):
@ -25059,7 +25062,7 @@ CHAT_PAGE_SIZE = 1000
def printShowChatSpaces(users): def printShowChatSpaces(users):
def _printChatSpace(user, space): def _printChatSpace(user, space):
_cleanChatSpace(space) _cleanChatSpace(space)
row = flattenJSON(space) row = flattenJSON(space, timeObjects=CHAT_SPACE_TIME_OBJECTS)
if user is not None: if user is not None:
row['User'] = user row['User'] = user
if not FJQC.formatJSON: if not FJQC.formatJSON:
@ -25067,7 +25070,7 @@ def printShowChatSpaces(users):
elif csvPF.CheckRowTitles(row): elif csvPF.CheckRowTitles(row):
row = {'User': user} if user is not None else {} row = {'User': user} if user is not None else {}
row.update({'name': space['name'], row.update({'name': space['name'],
'JSON': json.dumps(cleanJSON(space), 'JSON': json.dumps(cleanJSON(space, timeObjects=CHAT_SPACE_TIME_OBJECTS),
ensure_ascii=False, sort_keys=True)}) ensure_ascii=False, sort_keys=True)})
csvPF.WriteRowNoFilter(row) csvPF.WriteRowNoFilter(row)
@ -25554,17 +25557,18 @@ def printShowChatMembers(users):
row = flattenJSON(member, timeObjects=CHAT_MEMBER_TIME_OBJECTS) row = flattenJSON(member, timeObjects=CHAT_MEMBER_TIME_OBJECTS)
if user is not None: if user is not None:
row['User'] = user row['User'] = user
row['space.name'] = parent
if not FJQC.formatJSON: if not FJQC.formatJSON:
csvPF.WriteRowTitles(row) csvPF.WriteRowTitles(row)
elif csvPF.CheckRowTitles(row): elif csvPF.CheckRowTitles(row):
row = {'User': user} if user is not None else {} row = {'User': user, 'space.name': parent} if user is not None else {'space.name': parent}
row.update({'name': member['name'], row.update({'name': member['name'],
'JSON': json.dumps(cleanJSON(member, timeObjects=CHAT_MEMBER_TIME_OBJECTS), 'JSON': json.dumps(cleanJSON(member, timeObjects=CHAT_MEMBER_TIME_OBJECTS),
ensure_ascii=False, sort_keys=True)}) ensure_ascii=False, sort_keys=True)})
csvPF.WriteRowNoFilter(row) csvPF.WriteRowNoFilter(row)
cd = buildGAPIObject(API.DIRECTORY) cd = buildGAPIObject(API.DIRECTORY)
csvPF = CSVPrintFile(['User', 'name'] if not isinstance(users, list) else ['name']) if Act.csvFormat() else None csvPF = CSVPrintFile(['User', 'space.name', 'name'] if not isinstance(users, list) else ['space.name', 'name']) if Act.csvFormat() else None
FJQC = FormatJSONQuoteChar(csvPF) FJQC = FormatJSONQuoteChar(csvPF)
kwargs = {} kwargs = {}
parent = None parent = None
@ -25773,7 +25777,7 @@ def doDeleteChatMessage():
def _cleanChatMessage(message): def _cleanChatMessage(message):
message.pop('cards', None) message.pop('cards', None)
CHAT_MESSAGE_TIME_OBJECTS = {'createTime'} CHAT_MESSAGE_TIME_OBJECTS = {'createTime', 'deleteTime', 'lastUpdateTime'}
def _showChatMessage(message, FJQC, i=0, count=0): def _showChatMessage(message, FJQC, i=0, count=0):
_cleanChatMessage(message) _cleanChatMessage(message)
@ -25844,7 +25848,7 @@ def printShowChatMessages(users):
csvPF.WriteRowNoFilter(row) csvPF.WriteRowNoFilter(row)
cd = buildGAPIObject(API.DIRECTORY) cd = buildGAPIObject(API.DIRECTORY)
csvPF = CSVPrintFile(['User', 'name'] if not isinstance(users, list) else ['name']) if Act.csvFormat() else None csvPF = CSVPrintFile(['User', 'space.name', 'name'] if not isinstance(users, list) else ['space.name', 'name']) if Act.csvFormat() else None
FJQC = FormatJSONQuoteChar(csvPF) FJQC = FormatJSONQuoteChar(csvPF)
parent = pfilter = None parent = pfilter = None
showDeleted = False showDeleted = False