Almost done with Anthology! SO close. Walmart notes.
This commit is contained in:
@ -947,3 +947,13 @@ Travis question re: Context Aware screens:
|
||||
|
||||
* If they enter from help screen, driver will see resource overview screen - can we skip this?
|
||||
* If they enter from the RC organically, driver will see the resource overview screen - no change.
|
||||
|
||||
## 02/07/2024
|
||||
|
||||
### Context Aware Engagement Metrics
|
||||
|
||||
Expectations? None really. These are new metrics that they haven't seen before - no KPIs yet.
|
||||
They have some internal funnels to break it out by category.
|
||||
What does Travis want to see improve when we pull these numbers next quarter?
|
||||
* Segmentation of resource overview
|
||||
* Content Authoring - fewer activities, are we using all features,
|
||||
|
||||
@ -1,13 +1,5 @@
|
||||
const apiKey = '8ALsk8jDOlynEwn8ScMBSnG87';
|
||||
|
||||
function newTrigger() {
|
||||
ScriptApp.newTrigger(readLog)
|
||||
.timeBased()
|
||||
.everyMinutes(1)
|
||||
.create();
|
||||
prepareSheet();
|
||||
}
|
||||
|
||||
async function prepareSheet() {
|
||||
var ss = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/1Kck1UUOkVIU4kbBC8b_bl77fNaCTSFStiv0I5Gg-kIc/');
|
||||
sheet = ss.getActiveSheet();
|
||||
@ -19,53 +11,7 @@ async function prepareSheet() {
|
||||
}
|
||||
}
|
||||
|
||||
function readLog() {
|
||||
var previousLast = 0
|
||||
var folder = DriveApp.getFolderById("1nAkWPYFNpRx-UZECMJN4C3N--i0Clcho")
|
||||
var files = folder.getFiles()
|
||||
while (files.hasNext()) {
|
||||
var fileName = files.next()
|
||||
if (fileName == "status.json") {
|
||||
var content = fileName.getBlob().getDataAsString();
|
||||
var json = JSON.parse(content);
|
||||
var previousLast = json['lastLine'];
|
||||
main(previousLast)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function createLog() {
|
||||
var folder = DriveApp.getFolderById("1hAz7O-eoxFUk4YW7FoHr4uNJmPs7CiV5BjBNTLtMJzXwY0CbpykYgSAkFR5Quy_MPdn3e_5j")
|
||||
blob = JSON.stringify(obj);
|
||||
file = folder.createFile("status.json", blob);
|
||||
}
|
||||
|
||||
function updateLog(lastUpdatedLine) {
|
||||
var folder = DriveApp.getFolderById("1hAz7O-eoxFUk4YW7FoHr4uNJmPs7CiV5BjBNTLtMJzXwY0CbpykYgSAkFR5Quy_MPdn3e_5j");
|
||||
obj = JSON.stringify({ lastLine: lastUpdatedLine });
|
||||
var files = folder.getFiles();
|
||||
while (files.hasNext()) {
|
||||
var fileName = files.next();
|
||||
if (fileName == "status.json") {
|
||||
Logger.log(fileName+" found!")
|
||||
fileName.setContent(obj);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function deleteLog() {
|
||||
var folder = DriveApp.getFolderById("1hAz7O-eoxFUk4YW7FoHr4uNJmPs7CiV5BjBNTLtMJzXwY0CbpykYgSAkFR5Quy_MPdn3e_5j");
|
||||
var files = folder.getFiles();
|
||||
while (files.hasNext()) {
|
||||
var fileName = files.next();
|
||||
if (fileName == "status.json") {
|
||||
folder.removeFile(fileName);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function main(previousLast) {
|
||||
Logger.log("Main PL: "+previousLast)
|
||||
var folder = DriveApp.getFolderById("1hAz7O-eoxFUk4YW7FoHr4uNJmPs7CiV5BjBNTLtMJzXwY0CbpykYgSAkFR5Quy_MPdn3e_5j");
|
||||
var files = folder.getFiles();
|
||||
while (files.hasNext()) {
|
||||
@ -78,19 +24,16 @@ function main(previousLast) {
|
||||
var updated_file = file.getBlob()
|
||||
var updated_blob = updated_file.getDataAsString();
|
||||
var updated_data = Utilities.parseCsv(updated_blob, ',');
|
||||
//var updated_data = updated_data.slice(previousLast);
|
||||
var full_data = Utilities.parseCsv(updated_blob, ',');
|
||||
fullParse(full_data, previousLast);
|
||||
//var full_data = full_data.slice(previousLast)
|
||||
var updated_data = updated_data.sort();
|
||||
} else if (date != fileDateFormatted) {
|
||||
var outdated_file = file.getBlob()
|
||||
var outdated_blob = outdated_file.getDataAsString();
|
||||
var outdated_data = Utilities.parseCsv(outdated_blob, ',');
|
||||
//var outdated_data = outdated_data.slice(previousLast);
|
||||
var outdated_data = outdated_data.sort();
|
||||
}
|
||||
}
|
||||
//austinComparseData(outdated_data, updated_data);
|
||||
moveOldFiles();
|
||||
austinComparseData(outdated_data, updated_data);
|
||||
//moveOldFiles();
|
||||
}
|
||||
|
||||
function moveOldFiles() {
|
||||
@ -99,9 +42,9 @@ function moveOldFiles() {
|
||||
while (files.hasNext()) {
|
||||
var file = files.next();
|
||||
var getDate = new Date();
|
||||
var date = Utilities.formatDate(getDate, 'America/New_York', 'MM/dd/yyyy');
|
||||
var date = Utilities.formatDate(getDate, 'America/New_York', 'MM/dd/yyyy hh' );
|
||||
var fileDate = file.getDateCreated();
|
||||
var fileDateFormatted = Utilities.formatDate(fileDate, 'America/New_York', 'MM/dd/yyyy');
|
||||
var fileDateFormatted = Utilities.formatDate(fileDate, 'America/New_York', 'MM/dd/yyyy hh');
|
||||
if (date != fileDateFormatted) {
|
||||
const destination = DriveApp.getFolderById('17WCI5QkV9W6j35a-1n9BspTF6z_MZ9yu');
|
||||
file.moveTo(destination);
|
||||
@ -129,7 +72,7 @@ function austinComparseData(outdated_data, updated_data) {
|
||||
allOutdatedGroups.push(outdated_data[outdatedFlag][j].trim());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if(allUpdatedGroups.length !== allOutdatedGroups.length){
|
||||
domains_to_update.push(updated_data[updatedFlag]);
|
||||
} else {
|
||||
@ -188,7 +131,7 @@ function updatedDomainsOnly(domains_to_update) {
|
||||
replaceOnSheet(array);
|
||||
const dom = array.shift();
|
||||
const groups = array;
|
||||
sendWebhook({domain_to_update : { domain: dom, group_ids: groups }})
|
||||
//sendWebhook({domain_to_update : { domain: dom, group_ids: groups }})
|
||||
}
|
||||
}
|
||||
|
||||
@ -197,23 +140,30 @@ function replaceOnSheet(array) {
|
||||
var ss = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/1Kck1UUOkVIU4kbBC8b_bl77fNaCTSFStiv0I5Gg-kIc/');
|
||||
var sheet = ss.getActiveSheet()
|
||||
var dataRow = Math.max(sheet.getLastRow(),1);
|
||||
var column = 0; //column Index
|
||||
var columnValues = sheet.getRange(2, column, dataRow).getValues(); //1st is header row
|
||||
|
||||
const dom = array.shift();
|
||||
const groups = array;
|
||||
var searchResult = columnValues.findIndex(dom); //Row Index - 2
|
||||
Logger.log(searchResult)
|
||||
|
||||
if(searchResult != -1)
|
||||
{
|
||||
//searchResult + 2 is row index.
|
||||
//SpreadsheetApp.getActiveSpreadsheet().setActiveRange(sheet.getRange(searchResult + 2, 1))
|
||||
}
|
||||
Logger.log(dom)
|
||||
let boo = sheet.createTextFinder(dom).findNext()
|
||||
if (boo != null ) {
|
||||
currCell = boo.getRowIndex();
|
||||
sheet.getRange(currCell, 1).setValue(dom);
|
||||
sheet.getRange(currCell, 2, groups.length, 1).setValues(groups);
|
||||
} else {
|
||||
sheet.getRange(dataRow + 1, 1).setValue(dom);
|
||||
sheet.getRange(dataRow + 1, 2, groups.length, 1).setValues(groups)
|
||||
}
|
||||
// var searchResult = columnValues.findIndex(([r]) => r == dom);
|
||||
// if(searchResult != -1) {
|
||||
// sheet.getRange(searchResult + 2, 1)
|
||||
// } else {
|
||||
// sheet.getRange(dataRow + 1, 1).setValue(dom);
|
||||
// sheet.getRange(dataRow + 1, 2).setValue(groups)
|
||||
// }
|
||||
}
|
||||
|
||||
function fullParse(full_data, previousLast) {
|
||||
for (var x = 2220; x < full_data.length; x++) {
|
||||
for (var x = 1; x < full_data.length; x++) {
|
||||
var array = full_data[x];
|
||||
for (var i = 1; i < array.length; i++) {
|
||||
var item = array[i]
|
||||
|
||||
Reference in New Issue
Block a user