|
10888
|
215
|
61
|
2026-04-14T09:02:47.688998+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157367688_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
PhpStormFileFVtavsco.isvViewNavigateCodeLaravelRef PhpStormFileFVtavsco.isvViewNavigateCodeLaravelRefactor#11894 on JY-18909-automated-reports-ask-liminny kvToolsWindowHelpProject vProphetAiv D Reports© AutomatedReportsCl© AutomatedReportsRe© AutomatedReportsSt© CreateMockAskJimir© DeleteReportComma© GenerateMarketingR© Team.php© Usage.phpD Slack• TeamsD TracksO TranscriptionO TwilioD UsersVocabularyDZoom© CoachingFeedbacksUpr© Command.phpo Cearevaroaseusers.oc Daraoase oecountoi© DeleteOldAiCrmNotesC:© DeleteS3LeftoversComiDevPostmanCommand.|© DiarizeViaAiParticipantk© EncryptTokensComman© EngagementStatsRegen© FeatureFlagsHelper.php© FixCrossTenantissues.p© FlushRolesPermissionsC© GeneratelnternalWebho• GroupSetDefaultLangua© HelperTruncateCoachin© HubspotJournalPollingC© HubspotWebhookServic© ImportRecording.php@ Imnortl|sercFromCcvEill(c) IterateUsersCommand.cJiminnvcacheclearcom(c) minnv Deouacommanc(c)Jminnvser-ncrvotedio(c) Jiminny okenintocomm© MakeSlackLiveCoaching© ManageScimForTeam.p© MarkBranchForEnvironn© MuteOrganizerChannel.© PhpApm.php© PropagateCoachingFeer© PurgeConferences.php© PurgeSoftDeletedOppor© PurgeSyncBatchesCom(C) RecalculateDealRisksCdC) RemoveDeleteMarkersd© RemoveExpiredNudgest© RemoveUnusedParticip:© ResetElasticSearch.php© RestoreActivityCrmProv© RestoreActivityTypeCor© ReportController.phpJiminnybebuecommana.ongAutomaleakeportscommana.ong© AutomatedReportsSendCommand.phpC AutomatedReportsRepository.phpAulomaleakeporisservice.onoc CrealenelaAcuiviyevent.ono• TrackProviderInstalledEvent.php© AutomatedReportsCallbackService.php© RequestGenerateAskJiminnyReportJob.php© AddLayoutEntities.php© Team.phpCreateActivityLoggedEvent.php© RequestGenerateReportJob.php© UserPilotActivityListener.php© AutomatedReportResult.phps.ong© ActivityLogged.php© AutomatedReport.phpdeclare(strict_types=1);namespace Jiminny\Console\Commands\Reports;use Carbon\Carbon;uuse uunnare console conmanoruse uumnare conuracus bus usparcher as bususoatcher.[useumnare suooor Locrecclomuse sainny oos Auronareckeoors reoues.cenerareask...mnnvreoortJoo.use Jiminny\Jobs\AutomatedReports\RequestGenerateReportJob;use valuny mouees Aucolllaceuneoore.Juse Jiminny \Models\Team;use Jiminny\Repositories\AutomatedReportsRepository:use Jiminny\Services\Kiosk\AutomatedReports\AutomatedReportsService;use Psr\Log\LoggerInterface;kenect19 Dclass AutonaredreoorrStonmano extenos conmano23/*** Log prefix for all log messages*/private const string LOG_PREFIX =[automated-reports]'/*** The name and signature of the console command.29* @var string*/Cascade & XICommand &elprotected $signature = 'automated-reports';31 Gtprotected $signature = 'automated-reports {--report-id= : Process a specific report by ID or UUID (bypasses frequency scheduling)}':*** The console command description.* Ovar stringprotected $description = 'Process automated reports based on their frequency (weekly, monthly, quarterly)' ;38 Ctprotected $description = 'Process automated reports based on their frequency (weekly, monthly, quarterly). Use --report-id to manually trigger4041 đtpublic function __construct(private readonly LoggerInterface $logger,private readonly BusDispatcher $dispatcher,private readonly AutomatedReportsRepository $reportRepository* Execute the console command.* Oreturn intT 1 of 6 editsAccept File &~X Reject File t3@+ 2 of 2 files →Windsurf changelog 2.12.21: A new version is available. // View Changelog (today 10:33)= custom.log= laravel.log4 SF ljiminny@localhost]A HS_local [jiminny@localhost]A console (PROD]Al console [EU]4 console [STAGING]© AskJiminnyReportActivityService.php x© RequestGenerateAskJiminnyReportJobTest×2 21 ^class AskJiminnyReportActiviprivate const int DEFAULprivate const array DATEActivityActualDate:ActivityActualDate::ActivityUpdatedDate:ActivityUpdatedDate:ClosingPeriodFilter:ClosingPeriodFilter:public function __constrprivate readonly Actprivate readonly Elaprivate readonly LogDf..F/*** Fetch activity IDs fo* Date filters stored* no date constraint .* Creturn string[] Acti*/public function getActivSearch $savedSearchUser $user,): array {$requestParams = $th$criteria = Criteriaarray_merge($reqnuser->certnezo$filterSet = $this->$activityIds = $this$this->logger->info('saved_search_id'user_id'= Sus'activity_count'1);return $activityIds;, 0lablSupport Daily - in 2h 58mA100% C•Tue 14 Apr 12:02:47• RequestGenerateAskJiminnyReportJobTest-CascadeFixing ReportControlleAutomated Report MaAutomated Report Lp#L211 and add validation with logs [EMAIL]#L209-213wLet me read the current state of the command file first.kead Automateakeportscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports. I need to implement getReportById properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycoLlection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucoma ceakepo rtscommand.ohoRead AutomatecRenortscommand.onoThe file is now only 140 lines — the user removed the processSingleReport/warnIfNotApplicableForSchedulemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:• AutomatedReportsRepository.phpAlso tix the import order (Collection should be betore the models alphabetically):• AutomatedReportsCommand.php+1 -1AutomatedReportsCommand.php+1 -1vone. oummary or changes.AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric string → find() bv int ID• Non-numeric → UUID lookup via toOptimized()Both use withTrashed() so soft-deleted reports are findable manuallygetReportById() (AutomatedReportsCommand. php:135-194) - checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violation,but sull rerurns the repor so processing continues.CheckBehaviour on failINot Tounewarhina loe + terminal warn, returns emoty collection skips processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + terninal warn, continuesExoiredFrequency wouldn't run todaywarning log + terminal warn, continuesinfo log + terminal warn, continuesC1l -2 files +81 -5 ›Ask anything (XAL)+ <> CodeClaude Sonnet 4.6Reject allAccept allwinasur leamsuir-o( 4 spaces...
|
NULL
|
-5431219693283045843
|
NULL
|
visual_change
|
ocr
|
NULL
|
PhpStormFileFVtavsco.isvViewNavigateCodeLaravelRef PhpStormFileFVtavsco.isvViewNavigateCodeLaravelRefactor#11894 on JY-18909-automated-reports-ask-liminny kvToolsWindowHelpProject vProphetAiv D Reports© AutomatedReportsCl© AutomatedReportsRe© AutomatedReportsSt© CreateMockAskJimir© DeleteReportComma© GenerateMarketingR© Team.php© Usage.phpD Slack• TeamsD TracksO TranscriptionO TwilioD UsersVocabularyDZoom© CoachingFeedbacksUpr© Command.phpo Cearevaroaseusers.oc Daraoase oecountoi© DeleteOldAiCrmNotesC:© DeleteS3LeftoversComiDevPostmanCommand.|© DiarizeViaAiParticipantk© EncryptTokensComman© EngagementStatsRegen© FeatureFlagsHelper.php© FixCrossTenantissues.p© FlushRolesPermissionsC© GeneratelnternalWebho• GroupSetDefaultLangua© HelperTruncateCoachin© HubspotJournalPollingC© HubspotWebhookServic© ImportRecording.php@ Imnortl|sercFromCcvEill(c) IterateUsersCommand.cJiminnvcacheclearcom(c) minnv Deouacommanc(c)Jminnvser-ncrvotedio(c) Jiminny okenintocomm© MakeSlackLiveCoaching© ManageScimForTeam.p© MarkBranchForEnvironn© MuteOrganizerChannel.© PhpApm.php© PropagateCoachingFeer© PurgeConferences.php© PurgeSoftDeletedOppor© PurgeSyncBatchesCom(C) RecalculateDealRisksCdC) RemoveDeleteMarkersd© RemoveExpiredNudgest© RemoveUnusedParticip:© ResetElasticSearch.php© RestoreActivityCrmProv© RestoreActivityTypeCor© ReportController.phpJiminnybebuecommana.ongAutomaleakeportscommana.ong© AutomatedReportsSendCommand.phpC AutomatedReportsRepository.phpAulomaleakeporisservice.onoc CrealenelaAcuiviyevent.ono• TrackProviderInstalledEvent.php© AutomatedReportsCallbackService.php© RequestGenerateAskJiminnyReportJob.php© AddLayoutEntities.php© Team.phpCreateActivityLoggedEvent.php© RequestGenerateReportJob.php© UserPilotActivityListener.php© AutomatedReportResult.phps.ong© ActivityLogged.php© AutomatedReport.phpdeclare(strict_types=1);namespace Jiminny\Console\Commands\Reports;use Carbon\Carbon;uuse uunnare console conmanoruse uumnare conuracus bus usparcher as bususoatcher.[useumnare suooor Locrecclomuse sainny oos Auronareckeoors reoues.cenerareask...mnnvreoortJoo.use Jiminny\Jobs\AutomatedReports\RequestGenerateReportJob;use valuny mouees Aucolllaceuneoore.Juse Jiminny \Models\Team;use Jiminny\Repositories\AutomatedReportsRepository:use Jiminny\Services\Kiosk\AutomatedReports\AutomatedReportsService;use Psr\Log\LoggerInterface;kenect19 Dclass AutonaredreoorrStonmano extenos conmano23/*** Log prefix for all log messages*/private const string LOG_PREFIX =[automated-reports]'/*** The name and signature of the console command.29* @var string*/Cascade & XICommand &elprotected $signature = 'automated-reports';31 Gtprotected $signature = 'automated-reports {--report-id= : Process a specific report by ID or UUID (bypasses frequency scheduling)}':*** The console command description.* Ovar stringprotected $description = 'Process automated reports based on their frequency (weekly, monthly, quarterly)' ;38 Ctprotected $description = 'Process automated reports based on their frequency (weekly, monthly, quarterly). Use --report-id to manually trigger4041 đtpublic function __construct(private readonly LoggerInterface $logger,private readonly BusDispatcher $dispatcher,private readonly AutomatedReportsRepository $reportRepository* Execute the console command.* Oreturn intT 1 of 6 editsAccept File &~X Reject File t3@+ 2 of 2 files →Windsurf changelog 2.12.21: A new version is available. // View Changelog (today 10:33)= custom.log= laravel.log4 SF ljiminny@localhost]A HS_local [jiminny@localhost]A console (PROD]Al console [EU]4 console [STAGING]© AskJiminnyReportActivityService.php x© RequestGenerateAskJiminnyReportJobTest×2 21 ^class AskJiminnyReportActiviprivate const int DEFAULprivate const array DATEActivityActualDate:ActivityActualDate::ActivityUpdatedDate:ActivityUpdatedDate:ClosingPeriodFilter:ClosingPeriodFilter:public function __constrprivate readonly Actprivate readonly Elaprivate readonly LogDf..F/*** Fetch activity IDs fo* Date filters stored* no date constraint .* Creturn string[] Acti*/public function getActivSearch $savedSearchUser $user,): array {$requestParams = $th$criteria = Criteriaarray_merge($reqnuser->certnezo$filterSet = $this->$activityIds = $this$this->logger->info('saved_search_id'user_id'= Sus'activity_count'1);return $activityIds;, 0lablSupport Daily - in 2h 58mA100% C•Tue 14 Apr 12:02:47• RequestGenerateAskJiminnyReportJobTest-CascadeFixing ReportControlleAutomated Report MaAutomated Report Lp#L211 and add validation with logs [EMAIL]#L209-213wLet me read the current state of the command file first.kead Automateakeportscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports. I need to implement getReportById properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycoLlection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucoma ceakepo rtscommand.ohoRead AutomatecRenortscommand.onoThe file is now only 140 lines — the user removed the processSingleReport/warnIfNotApplicableForSchedulemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:• AutomatedReportsRepository.phpAlso tix the import order (Collection should be betore the models alphabetically):• AutomatedReportsCommand.php+1 -1AutomatedReportsCommand.php+1 -1vone. oummary or changes.AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric string → find() bv int ID• Non-numeric → UUID lookup via toOptimized()Both use withTrashed() so soft-deleted reports are findable manuallygetReportById() (AutomatedReportsCommand. php:135-194) - checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violation,but sull rerurns the repor so processing continues.CheckBehaviour on failINot Tounewarhina loe + terminal warn, returns emoty collection skips processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + terninal warn, continuesExoiredFrequency wouldn't run todaywarning log + terminal warn, continuesinfo log + terminal warn, continuesC1l -2 files +81 -5 ›Ask anything (XAL)+ <> CodeClaude Sonnet 4.6Reject allAccept allwinasur leamsuir-o( 4 spaces...
|
10887
|
|
10890
|
215
|
62
|
2026-04-14T09:02:50.083510+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157370083_m2.jpg...
|
PhpStorm
|
faVsco.js – AutomatedReportsCommand.php
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
Project: faVsco.js, menu
#11894 on JY-18909-automa Project: faVsco.js, menu
#11894 on JY-18909-automated-reports-ask-jiminny, menu
Start Listening for PHP Debug Connections
RequestGenerateAskJiminnyReportJobTest
Run 'RequestGenerateAskJiminnyReportJobTest'
Debug 'RequestGenerateAskJiminnyReportJobTest'
More Actions
JetBrains AI
Search Everywhere
IDE and Project Settings
Sync Changes
Hide This Notification
Code changed:
Hide
2
1
Previous Highlighted Error
Next Highlighted Error
<?php
declare(strict_types=1);
namespace Jiminny\Services\Kiosk\AutomatedReports;
use Jiminny\Component\ActivitySearch\FilterDefinition\ActivityActualDate;
use Jiminny\Component\ActivitySearch\FilterDefinition\ActivityUpdatedDate;
use Jiminny\Component\ActivitySearch\FilterDefinition\DealInsights\ClosingPeriodFilter;
use Jiminny\Component\ActivitySearch\Service\ActivitySearch;
use Jiminny\Models\Activity\Search;
use Jiminny\Models\User;
use Jiminny\Repositories\ElasticActivityRepository;
use Jiminny\VO\Repository\OnDemandActivitySearch\Criteria;
use Psr\Log\LoggerInterface;
class AskJiminnyReportActivityService
{
private const int DEFAULT_TOP_ACTIVITIES_COUNT = 100;
private const array DATE_FILTER_KEYS = [
ActivityActualDate::PARAM_START_DATE,
ActivityActualDate::PARAM_END_DATE,
ActivityUpdatedDate::PARAM_UPDATED_FROM,
ActivityUpdatedDate::PARAM_UPDATED_TO,
ClosingPeriodFilter::KEY_START_DATE,
ClosingPeriodFilter::KEY_END_DATE,
];
public function __construct(
private readonly ActivitySearch $activitySearch,
private readonly ElasticActivityRepository $elasticRepository,
private readonly LoggerInterface $logger,
) {
}
/**
* Fetch activity IDs for a saved search, passing its filters as-is to Criteria.
* Date filters stored on the saved search are excluded; if no other filters exist,
* no date constraint is applied — matching the behaviour of getContextForAskAnythingByFilter.
*
* @return string[] Activity IDs
*/
public function getActivityIdsForSavedSearch(
Search $savedSearch,
User $user,
): array {
$requestParams = $this->buildRequestParamsFromSearch($savedSearch, $user);
$criteria = Criteria::createFromRequest(
array_merge($requestParams, ['limit' => self::DEFAULT_TOP_ACTIVITIES_COUNT, 'page' => 1]),
$user->getTimezone()
);
$filterSet = $this->activitySearch->getOnDemandPageFilterSet($criteria, $user);
$activityIds = $this->elasticRepository->onDemandSearchIdsOnly($user, $criteria, $filterSet);
$this->logger->info('[AskJiminnyReport] Fetched activity IDs for saved search', [
'saved_search_id' => $savedSearch->getId(),
'user_id' => $user->getId(),
'activity_count' => count($activityIds),
]);
return $activityIds;
}
private function buildRequestParamsFromSearch(Search $savedSearch, User $user): array
{
$params = [];
$arrayFilterKeys = $this->activitySearch->getArrayFilterKeys($user);
foreach ($savedSearch->getFilters() as $filter) {
$key = $filter->getFilterProperty();
$value = $filter->getFilterValue();
if (in_array($key, self::DATE_FILTER_KEYS, true)) {
continue;
}
if (isset($params[$key])) {
$params[$key][] = $value;
} elseif (in_array($key, $arrayFilterKeys, true)) {
$params[$key] = [$value];
} else {
$params[$key] = $value;
}
}
return $params;
}
}
Code changed:
Hide
Sync Changes
Hide This Notification
4
Previous Highlighted Error
Next Highlighted Error
<?php
declare(strict_types=1);
namespace Jiminny\Console\Commands\Reports;
use Carbon\Carbon;
use Illuminate\Console\Command;
use Illuminate\Contracts\Bus\Dispatcher as BusDispatcher;
use Illuminate\Support\Collection;
use Jiminny\Jobs\AutomatedReports\RequestGenerateAskJiminnyReportJob;
use Jiminny\Jobs\AutomatedReports\RequestGenerateReportJob;
use Jiminny\Models\AutomatedReport;
use Jiminny\Models\Team;
use Jiminny\Repositories\AutomatedReportsRepository;
use Jiminny\Services\Kiosk\AutomatedReports\AutomatedReportsService;
use Psr\Log\LoggerInterface;
class AutomatedReportsCommand extends Command
{
/**
* Log prefix for all log messages
*/
private const string LOG_PREFIX = '[automated-reports]';
/**
* The name and signature of the console command.
*
* @var string
*/
protected $signature = 'automated-reports {--report-id= : Process a specific report by ID or UUID (bypasses frequency scheduling)}';
/**
* The console command description.
*
* @var string
*/
protected $description = 'Process automated reports based on their frequency (weekly, monthly, quarterly). Use --report-id to manually trigger a specific report by ID or UUID.';
public function __construct(
private readonly LoggerInterface $logger,
private readonly BusDispatcher $dispatcher,
private readonly AutomatedReportsRepository $reportRepository
) {
parent::__construct();
}
/**
* Execute the console command.
*
* @return int
*/
public function handle(): int
{
$this->logger->info(self::LOG_PREFIX . ' Started');
$now = Carbon::now();
$isMonday = $now->isMonday();
$isFirstDayOfMonth = $now->day === 1;
$currentMonth = $now->month;
// Check if the current month is a quarterly month (January, April, July, October)
$isQuarterlyMonth = in_array($currentMonth, [1, 4, 7, 10], true);
$this->logger->info(self::LOG_PREFIX . ' Checking conditions', [
'isMonday' => $isMonday,
'isFirstDayOfMonth' => $isFirstDayOfMonth,
'currentMonth' => $currentMonth,
'isQuarterlyMonth' => $isQuarterlyMonth,
]);
// Process daily reports
$this->processReports(AutomatedReportsService::FREQUENCY_DAILY);
// Process weekly reports on Mondays
if ($isMonday) {
$this->processReports(AutomatedReportsService::FREQUENCY_WEEKLY);
}
// Process monthly reports on the first day of the month
if ($isFirstDayOfMonth) {
$this->processReports(AutomatedReportsService::FREQUENCY_MONTHLY);
}
// Process quarterly reports on the first day of January, April, July, and October
if ($isFirstDayOfMonth && $isQuarterlyMonth) {
$this->processReports(AutomatedReportsService::FREQUENCY_QUARTERLY);
}
$this->logger->info(self::LOG_PREFIX . ' Completed');
return 0;
}
/**
* Process reports for a specific frequency.
*
* @param string $frequency
*
* @return void
*/
private function processReports(string $frequency): void
{
$this->logger->info(self::LOG_PREFIX . " Processing $frequency reports");
$reportId = $this->option('report-id');
if ($reportId !== null) {
$reports = $this->getReportById($reportId);
} else {
// Get all enabled, not deleted reports with active teams for the specified frequency
$reports = $this->reportRepository->getActiveReportsByFrequency($frequency);
}
$this->logger->info(self::LOG_PREFIX . " Found {$reports->count()} $frequency reports to process");
/** @var AutomatedReport $report */
foreach ($reports as $report) {
$this->logger->info(self::LOG_PREFIX . ' Dispatching Generate Report job for report', [
'reportUuid' => $report->getUuid(),
'teamId' => $report->getTeamId(),
'frequency' => $report->getFrequency(),
'type' => $report->getType(),
]);
$job = $report->isAskJiminnyReport()
? new RequestGenerateAskJiminnyReportJob($report->getUuid())
: new RequestGenerateReportJob($report->getUuid());
// $this->dispatcher->dispatch($job);
$this->dispatcher->dispatchSync($job);
}
}
private function getReportById(string $reportId): Collection
{
$report = $this->reportRepository->findByIdOrUuid($reportId);
if ($report === null) {
$this->logger->warning(self::LOG_PREFIX . ' Report not found for --report-id', ['reportId' => $reportId]);
$this->warn("Report not found: {$reportId}");
return collect();
}
if (! $report->getStatus()) {
$this->logger->warning(self::LOG_PREFIX . ' Report is inactive, processing anyway (manual override)', [
'reportId' => $reportId,
'reportUuid' => $report->getUuid(),
]);
$this->warn('Report is inactive — processing anyway (manual override).');
}
$team = $report->getTeam();
if ($team->getStatus() !== Team::STATUS_ACTIVE) {
$this->logger->warning(self::LOG_PREFIX . ' Team is not active, processing anyway (manual override)', [
'reportId' => $reportId,
'reportUuid' => $report->getUuid(),
'teamId' => $report->getTeamId(),
'teamStatus' => $team->getStatus(),
]);
$this->warn("Team #{$report->getTeamId()} is not active — processing anyway (manual override).");
}
if ($report->isExpired()) {
$this->logger->warning(self::LOG_PREFIX . ' Report is expired, processing anyway (manual override)', [
'reportId' => $reportId,
'reportUuid' => $report->getUuid(),
'expiresAt' => $report->getExpiresAt()?->toDateString(),
]);
$this->warn('Report is expired (expires_at: ' . $report->getExpiresAt()?->toDateString() . ') — processing anyway (manual override).');
}
$now = Carbon::now();
$frequency = $report->getFrequency();
$wouldRunToday = match ($frequency) {
AutomatedReportsService::FREQUENCY_DAILY => true,
AutomatedReportsService::FREQUENCY_WEEKLY => $now->isMonday(),
AutomatedReportsService::FREQUENCY_MONTHLY => $now->day === 1,
AutomatedReportsService::FREQUENCY_QUARTERLY => $now->day === 1 && in_array($now->month, [1, 4, 7, 10], true),
default => false,
};
if (! $wouldRunToday) {
$this->logger->info(self::LOG_PREFIX . ' Report frequency would not run today, processing anyway (manual override)', [
'reportId' => $reportId,
'reportUuid' => $report->getUuid(),
'frequency' => $frequency,
]);
$this->warn("Report frequency is '{$frequency}' — would NOT run today, processing anyway (manual override).");
}
return collect([$report]);
}
}
Project
Project
New File or Directory…
Expand Selected
Collapse All...
|
[{"role":"AXButton","text" [{"role":"AXButton","text":"Project: faVsco.js, menu","depth":5,"bounds":{"left":0.03046875,"top":0.017361112,"width":0.0453125,"height":0.022222223},"help_text":"~/jiminny/app","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"#11894 on JY-18909-automated-reports-ask-jiminny, menu","depth":5,"bounds":{"left":0.07578125,"top":0.017361112,"width":0.14960937,"height":0.022222223},"help_text":"Pull request #11894 exists for current branch JY-18909-automated-reports-ask-jiminny, but local branch is out of sync with remote","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Start Listening for PHP Debug Connections","depth":5,"bounds":{"left":0.76171875,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"RequestGenerateAskJiminnyReportJobTest","depth":6,"bounds":{"left":0.7796875,"top":0.017361112,"width":0.12109375,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Run 'RequestGenerateAskJiminnyReportJobTest'","depth":6,"bounds":{"left":0.9007813,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Debug 'RequestGenerateAskJiminnyReportJobTest'","depth":6,"bounds":{"left":0.9140625,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"More Actions","depth":6,"bounds":{"left":0.9273437,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"JetBrains AI","depth":5,"bounds":{"left":0.96015626,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Search Everywhere","depth":5,"bounds":{"left":0.9734375,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"IDE and Project Settings","depth":5,"bounds":{"left":0.9867188,"top":0.017361112,"width":0.013281226,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Sync Changes","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide This Notification","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Code changed:","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.049609374,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"2","depth":4,"bounds":{"left":0.6699219,"top":0.19513889,"width":0.009375,"height":0.013194445},"role_description":"text"},{"role":"AXStaticText","text":"1","depth":4,"bounds":{"left":0.6816406,"top":0.19513889,"width":0.00859375,"height":0.013194445},"role_description":"text"},{"role":"AXButton","text":"Previous Highlighted Error","depth":4,"bounds":{"left":0.6921875,"top":0.19375,"width":0.00859375,"height":0.015972223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Next Highlighted Error","depth":4,"bounds":{"left":0.7007812,"top":0.19375,"width":0.008203125,"height":0.015972223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"<?php\n\ndeclare(strict_types=1);\n\nnamespace Jiminny\\Services\\Kiosk\\AutomatedReports;\n\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinition\\ActivityActualDate;\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinition\\ActivityUpdatedDate;\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinition\\DealInsights\\ClosingPeriodFilter;\nuse Jiminny\\Component\\ActivitySearch\\Service\\ActivitySearch;\nuse Jiminny\\Models\\Activity\\Search;\nuse Jiminny\\Models\\User;\nuse Jiminny\\Repositories\\ElasticActivityRepository;\nuse Jiminny\\VO\\Repository\\OnDemandActivitySearch\\Criteria;\nuse Psr\\Log\\LoggerInterface;\n\nclass AskJiminnyReportActivityService\n{\n private const int DEFAULT_TOP_ACTIVITIES_COUNT = 100;\n\n private const array DATE_FILTER_KEYS = [\n ActivityActualDate::PARAM_START_DATE,\n ActivityActualDate::PARAM_END_DATE,\n ActivityUpdatedDate::PARAM_UPDATED_FROM,\n ActivityUpdatedDate::PARAM_UPDATED_TO,\n ClosingPeriodFilter::KEY_START_DATE,\n ClosingPeriodFilter::KEY_END_DATE,\n ];\n\n public function __construct(\n private readonly ActivitySearch $activitySearch,\n private readonly ElasticActivityRepository $elasticRepository,\n private readonly LoggerInterface $logger,\n ) {\n }\n\n /**\n * Fetch activity IDs for a saved search, passing its filters as-is to Criteria.\n * Date filters stored on the saved search are excluded; if no other filters exist,\n * no date constraint is applied — matching the behaviour of getContextForAskAnythingByFilter.\n *\n * @return string[] Activity IDs\n */\n public function getActivityIdsForSavedSearch(\n Search $savedSearch,\n User $user,\n ): array {\n $requestParams = $this->buildRequestParamsFromSearch($savedSearch, $user);\n\n $criteria = Criteria::createFromRequest(\n array_merge($requestParams, ['limit' => self::DEFAULT_TOP_ACTIVITIES_COUNT, 'page' => 1]),\n $user->getTimezone()\n );\n\n $filterSet = $this->activitySearch->getOnDemandPageFilterSet($criteria, $user);\n\n $activityIds = $this->elasticRepository->onDemandSearchIdsOnly($user, $criteria, $filterSet);\n\n $this->logger->info('[AskJiminnyReport] Fetched activity IDs for saved search', [\n 'saved_search_id' => $savedSearch->getId(),\n 'user_id' => $user->getId(),\n 'activity_count' => count($activityIds),\n ]);\n\n return $activityIds;\n }\n\n private function buildRequestParamsFromSearch(Search $savedSearch, User $user): array\n {\n $params = [];\n $arrayFilterKeys = $this->activitySearch->getArrayFilterKeys($user);\n\n foreach ($savedSearch->getFilters() as $filter) {\n $key = $filter->getFilterProperty();\n $value = $filter->getFilterValue();\n\n if (in_array($key, self::DATE_FILTER_KEYS, true)) {\n continue;\n }\n\n if (isset($params[$key])) {\n $params[$key][] = $value;\n } elseif (in_array($key, $arrayFilterKeys, true)) {\n $params[$key] = [$value];\n } else {\n $params[$key] = $value;\n }\n }\n\n return $params;\n }\n}","depth":4,"bounds":{"left":0.6238281,"top":0.0,"width":0.31953126,"height":1.0},"value":"<?php\n\ndeclare(strict_types=1);\n\nnamespace Jiminny\\Services\\Kiosk\\AutomatedReports;\n\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinition\\ActivityActualDate;\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinition\\ActivityUpdatedDate;\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinition\\DealInsights\\ClosingPeriodFilter;\nuse Jiminny\\Component\\ActivitySearch\\Service\\ActivitySearch;\nuse Jiminny\\Models\\Activity\\Search;\nuse Jiminny\\Models\\User;\nuse Jiminny\\Repositories\\ElasticActivityRepository;\nuse Jiminny\\VO\\Repository\\OnDemandActivitySearch\\Criteria;\nuse Psr\\Log\\LoggerInterface;\n\nclass AskJiminnyReportActivityService\n{\n private const int DEFAULT_TOP_ACTIVITIES_COUNT = 100;\n\n private const array DATE_FILTER_KEYS = [\n ActivityActualDate::PARAM_START_DATE,\n ActivityActualDate::PARAM_END_DATE,\n ActivityUpdatedDate::PARAM_UPDATED_FROM,\n ActivityUpdatedDate::PARAM_UPDATED_TO,\n ClosingPeriodFilter::KEY_START_DATE,\n ClosingPeriodFilter::KEY_END_DATE,\n ];\n\n public function __construct(\n private readonly ActivitySearch $activitySearch,\n private readonly ElasticActivityRepository $elasticRepository,\n private readonly LoggerInterface $logger,\n ) {\n }\n\n /**\n * Fetch activity IDs for a saved search, passing its filters as-is to Criteria.\n * Date filters stored on the saved search are excluded; if no other filters exist,\n * no date constraint is applied — matching the behaviour of getContextForAskAnythingByFilter.\n *\n * @return string[] Activity IDs\n */\n public function getActivityIdsForSavedSearch(\n Search $savedSearch,\n User $user,\n ): array {\n $requestParams = $this->buildRequestParamsFromSearch($savedSearch, $user);\n\n $criteria = Criteria::createFromRequest(\n array_merge($requestParams, ['limit' => self::DEFAULT_TOP_ACTIVITIES_COUNT, 'page' => 1]),\n $user->getTimezone()\n );\n\n $filterSet = $this->activitySearch->getOnDemandPageFilterSet($criteria, $user);\n\n $activityIds = $this->elasticRepository->onDemandSearchIdsOnly($user, $criteria, $filterSet);\n\n $this->logger->info('[AskJiminnyReport] Fetched activity IDs for saved search', [\n 'saved_search_id' => $savedSearch->getId(),\n 'user_id' => $user->getId(),\n 'activity_count' => count($activityIds),\n ]);\n\n return $activityIds;\n }\n\n private function buildRequestParamsFromSearch(Search $savedSearch, User $user): array\n {\n $params = [];\n $arrayFilterKeys = $this->activitySearch->getArrayFilterKeys($user);\n\n foreach ($savedSearch->getFilters() as $filter) {\n $key = $filter->getFilterProperty();\n $value = $filter->getFilterValue();\n\n if (in_array($key, self::DATE_FILTER_KEYS, true)) {\n continue;\n }\n\n if (isset($params[$key])) {\n $params[$key][] = $value;\n } elseif (in_array($key, $arrayFilterKeys, true)) {\n $params[$key] = [$value];\n } else {\n $params[$key] = $value;\n }\n }\n\n return $params;\n }\n}","role_description":"text entry area","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Code changed:","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.049609374,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Sync Changes","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide This Notification","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"4","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.009375,"height":0.0},"role_description":"text"},{"role":"AXButton","text":"Previous Highlighted Error","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.00859375,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Next Highlighted Error","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.008203125,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"<?php\n\ndeclare(strict_types=1);\n\nnamespace Jiminny\\Console\\Commands\\Reports;\n\nuse Carbon\\Carbon;\nuse Illuminate\\Console\\Command;\nuse Illuminate\\Contracts\\Bus\\Dispatcher as BusDispatcher;\nuse Illuminate\\Support\\Collection;\nuse Jiminny\\Jobs\\AutomatedReports\\RequestGenerateAskJiminnyReportJob;\nuse Jiminny\\Jobs\\AutomatedReports\\RequestGenerateReportJob;\nuse Jiminny\\Models\\AutomatedReport;\nuse Jiminny\\Models\\Team;\nuse Jiminny\\Repositories\\AutomatedReportsRepository;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AutomatedReportsService;\nuse Psr\\Log\\LoggerInterface;\n\nclass AutomatedReportsCommand extends Command\n{\n /**\n * Log prefix for all log messages\n */\n private const string LOG_PREFIX = '[automated-reports]';\n\n /**\n * The name and signature of the console command.\n *\n * @var string\n */\n protected $signature = 'automated-reports {--report-id= : Process a specific report by ID or UUID (bypasses frequency scheduling)}';\n\n /**\n * The console command description.\n *\n * @var string\n */\n protected $description = 'Process automated reports based on their frequency (weekly, monthly, quarterly). Use --report-id to manually trigger a specific report by ID or UUID.';\n\n\n public function __construct(\n private readonly LoggerInterface $logger,\n private readonly BusDispatcher $dispatcher,\n private readonly AutomatedReportsRepository $reportRepository\n ) {\n parent::__construct();\n }\n\n /**\n * Execute the console command.\n *\n * @return int\n */\n public function handle(): int\n {\n $this->logger->info(self::LOG_PREFIX . ' Started');\n\n $now = Carbon::now();\n $isMonday = $now->isMonday();\n $isFirstDayOfMonth = $now->day === 1;\n $currentMonth = $now->month;\n\n // Check if the current month is a quarterly month (January, April, July, October)\n $isQuarterlyMonth = in_array($currentMonth, [1, 4, 7, 10], true);\n\n $this->logger->info(self::LOG_PREFIX . ' Checking conditions', [\n 'isMonday' => $isMonday,\n 'isFirstDayOfMonth' => $isFirstDayOfMonth,\n 'currentMonth' => $currentMonth,\n 'isQuarterlyMonth' => $isQuarterlyMonth,\n ]);\n\n // Process daily reports\n $this->processReports(AutomatedReportsService::FREQUENCY_DAILY);\n\n // Process weekly reports on Mondays\n if ($isMonday) {\n $this->processReports(AutomatedReportsService::FREQUENCY_WEEKLY);\n }\n\n // Process monthly reports on the first day of the month\n if ($isFirstDayOfMonth) {\n $this->processReports(AutomatedReportsService::FREQUENCY_MONTHLY);\n }\n\n // Process quarterly reports on the first day of January, April, July, and October\n if ($isFirstDayOfMonth && $isQuarterlyMonth) {\n $this->processReports(AutomatedReportsService::FREQUENCY_QUARTERLY);\n }\n\n $this->logger->info(self::LOG_PREFIX . ' Completed');\n\n return 0;\n }\n\n /**\n * Process reports for a specific frequency.\n *\n * @param string $frequency\n *\n * @return void\n */\n private function processReports(string $frequency): void\n {\n $this->logger->info(self::LOG_PREFIX . \" Processing $frequency reports\");\n\n $reportId = $this->option('report-id');\n if ($reportId !== null) {\n $reports = $this->getReportById($reportId);\n } else {\n // Get all enabled, not deleted reports with active teams for the specified frequency\n $reports = $this->reportRepository->getActiveReportsByFrequency($frequency);\n }\n\n $this->logger->info(self::LOG_PREFIX . \" Found {$reports->count()} $frequency reports to process\");\n\n /** @var AutomatedReport $report */\n foreach ($reports as $report) {\n $this->logger->info(self::LOG_PREFIX . ' Dispatching Generate Report job for report', [\n 'reportUuid' => $report->getUuid(),\n 'teamId' => $report->getTeamId(),\n 'frequency' => $report->getFrequency(),\n 'type' => $report->getType(),\n ]);\n\n $job = $report->isAskJiminnyReport()\n ? new RequestGenerateAskJiminnyReportJob($report->getUuid())\n : new RequestGenerateReportJob($report->getUuid());\n\n // $this->dispatcher->dispatch($job);\n $this->dispatcher->dispatchSync($job);\n }\n }\n\n private function getReportById(string $reportId): Collection\n {\n $report = $this->reportRepository->findByIdOrUuid($reportId);\n\n if ($report === null) {\n $this->logger->warning(self::LOG_PREFIX . ' Report not found for --report-id', ['reportId' => $reportId]);\n $this->warn(\"Report not found: {$reportId}\");\n\n return collect();\n }\n\n if (! $report->getStatus()) {\n $this->logger->warning(self::LOG_PREFIX . ' Report is inactive, processing anyway (manual override)', [\n 'reportId' => $reportId,\n 'reportUuid' => $report->getUuid(),\n ]);\n $this->warn('Report is inactive — processing anyway (manual override).');\n }\n\n $team = $report->getTeam();\n if ($team->getStatus() !== Team::STATUS_ACTIVE) {\n $this->logger->warning(self::LOG_PREFIX . ' Team is not active, processing anyway (manual override)', [\n 'reportId' => $reportId,\n 'reportUuid' => $report->getUuid(),\n 'teamId' => $report->getTeamId(),\n 'teamStatus' => $team->getStatus(),\n ]);\n $this->warn(\"Team #{$report->getTeamId()} is not active — processing anyway (manual override).\");\n }\n\n if ($report->isExpired()) {\n $this->logger->warning(self::LOG_PREFIX . ' Report is expired, processing anyway (manual override)', [\n 'reportId' => $reportId,\n 'reportUuid' => $report->getUuid(),\n 'expiresAt' => $report->getExpiresAt()?->toDateString(),\n ]);\n $this->warn('Report is expired (expires_at: ' . $report->getExpiresAt()?->toDateString() . ') — processing anyway (manual override).');\n }\n\n $now = Carbon::now();\n $frequency = $report->getFrequency();\n $wouldRunToday = match ($frequency) {\n AutomatedReportsService::FREQUENCY_DAILY => true,\n AutomatedReportsService::FREQUENCY_WEEKLY => $now->isMonday(),\n AutomatedReportsService::FREQUENCY_MONTHLY => $now->day === 1,\n AutomatedReportsService::FREQUENCY_QUARTERLY => $now->day === 1 && in_array($now->month, [1, 4, 7, 10], true),\n default => false,\n };\n\n if (! $wouldRunToday) {\n $this->logger->info(self::LOG_PREFIX . ' Report frequency would not run today, processing anyway (manual override)', [\n 'reportId' => $reportId,\n 'reportUuid' => $report->getUuid(),\n 'frequency' => $frequency,\n ]);\n $this->warn(\"Report frequency is '{$frequency}' — would NOT run today, processing anyway (manual override).\");\n }\n\n return collect([$report]);\n }\n}","depth":4,"bounds":{"left":0.15234375,"top":0.12777779,"width":0.5601562,"height":0.8722222},"value":"<?php\n\ndeclare(strict_types=1);\n\nnamespace Jiminny\\Console\\Commands\\Reports;\n\nuse Carbon\\Carbon;\nuse Illuminate\\Console\\Command;\nuse Illuminate\\Contracts\\Bus\\Dispatcher as BusDispatcher;\nuse Illuminate\\Support\\Collection;\nuse Jiminny\\Jobs\\AutomatedReports\\RequestGenerateAskJiminnyReportJob;\nuse Jiminny\\Jobs\\AutomatedReports\\RequestGenerateReportJob;\nuse Jiminny\\Models\\AutomatedReport;\nuse Jiminny\\Models\\Team;\nuse Jiminny\\Repositories\\AutomatedReportsRepository;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AutomatedReportsService;\nuse Psr\\Log\\LoggerInterface;\n\nclass AutomatedReportsCommand extends Command\n{\n /**\n * Log prefix for all log messages\n */\n private const string LOG_PREFIX = '[automated-reports]';\n\n /**\n * The name and signature of the console command.\n *\n * @var string\n */\n protected $signature = 'automated-reports {--report-id= : Process a specific report by ID or UUID (bypasses frequency scheduling)}';\n\n /**\n * The console command description.\n *\n * @var string\n */\n protected $description = 'Process automated reports based on their frequency (weekly, monthly, quarterly). Use --report-id to manually trigger a specific report by ID or UUID.';\n\n\n public function __construct(\n private readonly LoggerInterface $logger,\n private readonly BusDispatcher $dispatcher,\n private readonly AutomatedReportsRepository $reportRepository\n ) {\n parent::__construct();\n }\n\n /**\n * Execute the console command.\n *\n * @return int\n */\n public function handle(): int\n {\n $this->logger->info(self::LOG_PREFIX . ' Started');\n\n $now = Carbon::now();\n $isMonday = $now->isMonday();\n $isFirstDayOfMonth = $now->day === 1;\n $currentMonth = $now->month;\n\n // Check if the current month is a quarterly month (January, April, July, October)\n $isQuarterlyMonth = in_array($currentMonth, [1, 4, 7, 10], true);\n\n $this->logger->info(self::LOG_PREFIX . ' Checking conditions', [\n 'isMonday' => $isMonday,\n 'isFirstDayOfMonth' => $isFirstDayOfMonth,\n 'currentMonth' => $currentMonth,\n 'isQuarterlyMonth' => $isQuarterlyMonth,\n ]);\n\n // Process daily reports\n $this->processReports(AutomatedReportsService::FREQUENCY_DAILY);\n\n // Process weekly reports on Mondays\n if ($isMonday) {\n $this->processReports(AutomatedReportsService::FREQUENCY_WEEKLY);\n }\n\n // Process monthly reports on the first day of the month\n if ($isFirstDayOfMonth) {\n $this->processReports(AutomatedReportsService::FREQUENCY_MONTHLY);\n }\n\n // Process quarterly reports on the first day of January, April, July, and October\n if ($isFirstDayOfMonth && $isQuarterlyMonth) {\n $this->processReports(AutomatedReportsService::FREQUENCY_QUARTERLY);\n }\n\n $this->logger->info(self::LOG_PREFIX . ' Completed');\n\n return 0;\n }\n\n /**\n * Process reports for a specific frequency.\n *\n * @param string $frequency\n *\n * @return void\n */\n private function processReports(string $frequency): void\n {\n $this->logger->info(self::LOG_PREFIX . \" Processing $frequency reports\");\n\n $reportId = $this->option('report-id');\n if ($reportId !== null) {\n $reports = $this->getReportById($reportId);\n } else {\n // Get all enabled, not deleted reports with active teams for the specified frequency\n $reports = $this->reportRepository->getActiveReportsByFrequency($frequency);\n }\n\n $this->logger->info(self::LOG_PREFIX . \" Found {$reports->count()} $frequency reports to process\");\n\n /** @var AutomatedReport $report */\n foreach ($reports as $report) {\n $this->logger->info(self::LOG_PREFIX . ' Dispatching Generate Report job for report', [\n 'reportUuid' => $report->getUuid(),\n 'teamId' => $report->getTeamId(),\n 'frequency' => $report->getFrequency(),\n 'type' => $report->getType(),\n ]);\n\n $job = $report->isAskJiminnyReport()\n ? new RequestGenerateAskJiminnyReportJob($report->getUuid())\n : new RequestGenerateReportJob($report->getUuid());\n\n // $this->dispatcher->dispatch($job);\n $this->dispatcher->dispatchSync($job);\n }\n }\n\n private function getReportById(string $reportId): Collection\n {\n $report = $this->reportRepository->findByIdOrUuid($reportId);\n\n if ($report === null) {\n $this->logger->warning(self::LOG_PREFIX . ' Report not found for --report-id', ['reportId' => $reportId]);\n $this->warn(\"Report not found: {$reportId}\");\n\n return collect();\n }\n\n if (! $report->getStatus()) {\n $this->logger->warning(self::LOG_PREFIX . ' Report is inactive, processing anyway (manual override)', [\n 'reportId' => $reportId,\n 'reportUuid' => $report->getUuid(),\n ]);\n $this->warn('Report is inactive — processing anyway (manual override).');\n }\n\n $team = $report->getTeam();\n if ($team->getStatus() !== Team::STATUS_ACTIVE) {\n $this->logger->warning(self::LOG_PREFIX . ' Team is not active, processing anyway (manual override)', [\n 'reportId' => $reportId,\n 'reportUuid' => $report->getUuid(),\n 'teamId' => $report->getTeamId(),\n 'teamStatus' => $team->getStatus(),\n ]);\n $this->warn(\"Team #{$report->getTeamId()} is not active — processing anyway (manual override).\");\n }\n\n if ($report->isExpired()) {\n $this->logger->warning(self::LOG_PREFIX . ' Report is expired, processing anyway (manual override)', [\n 'reportId' => $reportId,\n 'reportUuid' => $report->getUuid(),\n 'expiresAt' => $report->getExpiresAt()?->toDateString(),\n ]);\n $this->warn('Report is expired (expires_at: ' . $report->getExpiresAt()?->toDateString() . ') — processing anyway (manual override).');\n }\n\n $now = Carbon::now();\n $frequency = $report->getFrequency();\n $wouldRunToday = match ($frequency) {\n AutomatedReportsService::FREQUENCY_DAILY => true,\n AutomatedReportsService::FREQUENCY_WEEKLY => $now->isMonday(),\n AutomatedReportsService::FREQUENCY_MONTHLY => $now->day === 1,\n AutomatedReportsService::FREQUENCY_QUARTERLY => $now->day === 1 && in_array($now->month, [1, 4, 7, 10], true),\n default => false,\n };\n\n if (! $wouldRunToday) {\n $this->logger->info(self::LOG_PREFIX . ' Report frequency would not run today, processing anyway (manual override)', [\n 'reportId' => $reportId,\n 'reportUuid' => $report->getUuid(),\n 'frequency' => $frequency,\n ]);\n $this->warn(\"Report frequency is '{$frequency}' — would NOT run today, processing anyway (manual override).\");\n }\n\n return collect([$report]);\n }\n}","role_description":"text entry area","is_enabled":true,"is_focused":true,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Project","depth":3,"role_description":"text"},{"role":"AXButton","text":"Project","depth":3,"bounds":{"left":0.0140625,"top":0.041666668,"width":0.028515626,"height":0.021527778},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"New File or Directory…","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Expand Selected","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Collapse All","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false}]...
|
-4642392915445425012
|
7004952196924009268
|
click
|
accessibility
|
NULL
|
Project: faVsco.js, menu
#11894 on JY-18909-automa Project: faVsco.js, menu
#11894 on JY-18909-automated-reports-ask-jiminny, menu
Start Listening for PHP Debug Connections
RequestGenerateAskJiminnyReportJobTest
Run 'RequestGenerateAskJiminnyReportJobTest'
Debug 'RequestGenerateAskJiminnyReportJobTest'
More Actions
JetBrains AI
Search Everywhere
IDE and Project Settings
Sync Changes
Hide This Notification
Code changed:
Hide
2
1
Previous Highlighted Error
Next Highlighted Error
<?php
declare(strict_types=1);
namespace Jiminny\Services\Kiosk\AutomatedReports;
use Jiminny\Component\ActivitySearch\FilterDefinition\ActivityActualDate;
use Jiminny\Component\ActivitySearch\FilterDefinition\ActivityUpdatedDate;
use Jiminny\Component\ActivitySearch\FilterDefinition\DealInsights\ClosingPeriodFilter;
use Jiminny\Component\ActivitySearch\Service\ActivitySearch;
use Jiminny\Models\Activity\Search;
use Jiminny\Models\User;
use Jiminny\Repositories\ElasticActivityRepository;
use Jiminny\VO\Repository\OnDemandActivitySearch\Criteria;
use Psr\Log\LoggerInterface;
class AskJiminnyReportActivityService
{
private const int DEFAULT_TOP_ACTIVITIES_COUNT = 100;
private const array DATE_FILTER_KEYS = [
ActivityActualDate::PARAM_START_DATE,
ActivityActualDate::PARAM_END_DATE,
ActivityUpdatedDate::PARAM_UPDATED_FROM,
ActivityUpdatedDate::PARAM_UPDATED_TO,
ClosingPeriodFilter::KEY_START_DATE,
ClosingPeriodFilter::KEY_END_DATE,
];
public function __construct(
private readonly ActivitySearch $activitySearch,
private readonly ElasticActivityRepository $elasticRepository,
private readonly LoggerInterface $logger,
) {
}
/**
* Fetch activity IDs for a saved search, passing its filters as-is to Criteria.
* Date filters stored on the saved search are excluded; if no other filters exist,
* no date constraint is applied — matching the behaviour of getContextForAskAnythingByFilter.
*
* @return string[] Activity IDs
*/
public function getActivityIdsForSavedSearch(
Search $savedSearch,
User $user,
): array {
$requestParams = $this->buildRequestParamsFromSearch($savedSearch, $user);
$criteria = Criteria::createFromRequest(
array_merge($requestParams, ['limit' => self::DEFAULT_TOP_ACTIVITIES_COUNT, 'page' => 1]),
$user->getTimezone()
);
$filterSet = $this->activitySearch->getOnDemandPageFilterSet($criteria, $user);
$activityIds = $this->elasticRepository->onDemandSearchIdsOnly($user, $criteria, $filterSet);
$this->logger->info('[AskJiminnyReport] Fetched activity IDs for saved search', [
'saved_search_id' => $savedSearch->getId(),
'user_id' => $user->getId(),
'activity_count' => count($activityIds),
]);
return $activityIds;
}
private function buildRequestParamsFromSearch(Search $savedSearch, User $user): array
{
$params = [];
$arrayFilterKeys = $this->activitySearch->getArrayFilterKeys($user);
foreach ($savedSearch->getFilters() as $filter) {
$key = $filter->getFilterProperty();
$value = $filter->getFilterValue();
if (in_array($key, self::DATE_FILTER_KEYS, true)) {
continue;
}
if (isset($params[$key])) {
$params[$key][] = $value;
} elseif (in_array($key, $arrayFilterKeys, true)) {
$params[$key] = [$value];
} else {
$params[$key] = $value;
}
}
return $params;
}
}
Code changed:
Hide
Sync Changes
Hide This Notification
4
Previous Highlighted Error
Next Highlighted Error
<?php
declare(strict_types=1);
namespace Jiminny\Console\Commands\Reports;
use Carbon\Carbon;
use Illuminate\Console\Command;
use Illuminate\Contracts\Bus\Dispatcher as BusDispatcher;
use Illuminate\Support\Collection;
use Jiminny\Jobs\AutomatedReports\RequestGenerateAskJiminnyReportJob;
use Jiminny\Jobs\AutomatedReports\RequestGenerateReportJob;
use Jiminny\Models\AutomatedReport;
use Jiminny\Models\Team;
use Jiminny\Repositories\AutomatedReportsRepository;
use Jiminny\Services\Kiosk\AutomatedReports\AutomatedReportsService;
use Psr\Log\LoggerInterface;
class AutomatedReportsCommand extends Command
{
/**
* Log prefix for all log messages
*/
private const string LOG_PREFIX = '[automated-reports]';
/**
* The name and signature of the console command.
*
* @var string
*/
protected $signature = 'automated-reports {--report-id= : Process a specific report by ID or UUID (bypasses frequency scheduling)}';
/**
* The console command description.
*
* @var string
*/
protected $description = 'Process automated reports based on their frequency (weekly, monthly, quarterly). Use --report-id to manually trigger a specific report by ID or UUID.';
public function __construct(
private readonly LoggerInterface $logger,
private readonly BusDispatcher $dispatcher,
private readonly AutomatedReportsRepository $reportRepository
) {
parent::__construct();
}
/**
* Execute the console command.
*
* @return int
*/
public function handle(): int
{
$this->logger->info(self::LOG_PREFIX . ' Started');
$now = Carbon::now();
$isMonday = $now->isMonday();
$isFirstDayOfMonth = $now->day === 1;
$currentMonth = $now->month;
// Check if the current month is a quarterly month (January, April, July, October)
$isQuarterlyMonth = in_array($currentMonth, [1, 4, 7, 10], true);
$this->logger->info(self::LOG_PREFIX . ' Checking conditions', [
'isMonday' => $isMonday,
'isFirstDayOfMonth' => $isFirstDayOfMonth,
'currentMonth' => $currentMonth,
'isQuarterlyMonth' => $isQuarterlyMonth,
]);
// Process daily reports
$this->processReports(AutomatedReportsService::FREQUENCY_DAILY);
// Process weekly reports on Mondays
if ($isMonday) {
$this->processReports(AutomatedReportsService::FREQUENCY_WEEKLY);
}
// Process monthly reports on the first day of the month
if ($isFirstDayOfMonth) {
$this->processReports(AutomatedReportsService::FREQUENCY_MONTHLY);
}
// Process quarterly reports on the first day of January, April, July, and October
if ($isFirstDayOfMonth && $isQuarterlyMonth) {
$this->processReports(AutomatedReportsService::FREQUENCY_QUARTERLY);
}
$this->logger->info(self::LOG_PREFIX . ' Completed');
return 0;
}
/**
* Process reports for a specific frequency.
*
* @param string $frequency
*
* @return void
*/
private function processReports(string $frequency): void
{
$this->logger->info(self::LOG_PREFIX . " Processing $frequency reports");
$reportId = $this->option('report-id');
if ($reportId !== null) {
$reports = $this->getReportById($reportId);
} else {
// Get all enabled, not deleted reports with active teams for the specified frequency
$reports = $this->reportRepository->getActiveReportsByFrequency($frequency);
}
$this->logger->info(self::LOG_PREFIX . " Found {$reports->count()} $frequency reports to process");
/** @var AutomatedReport $report */
foreach ($reports as $report) {
$this->logger->info(self::LOG_PREFIX . ' Dispatching Generate Report job for report', [
'reportUuid' => $report->getUuid(),
'teamId' => $report->getTeamId(),
'frequency' => $report->getFrequency(),
'type' => $report->getType(),
]);
$job = $report->isAskJiminnyReport()
? new RequestGenerateAskJiminnyReportJob($report->getUuid())
: new RequestGenerateReportJob($report->getUuid());
// $this->dispatcher->dispatch($job);
$this->dispatcher->dispatchSync($job);
}
}
private function getReportById(string $reportId): Collection
{
$report = $this->reportRepository->findByIdOrUuid($reportId);
if ($report === null) {
$this->logger->warning(self::LOG_PREFIX . ' Report not found for --report-id', ['reportId' => $reportId]);
$this->warn("Report not found: {$reportId}");
return collect();
}
if (! $report->getStatus()) {
$this->logger->warning(self::LOG_PREFIX . ' Report is inactive, processing anyway (manual override)', [
'reportId' => $reportId,
'reportUuid' => $report->getUuid(),
]);
$this->warn('Report is inactive — processing anyway (manual override).');
}
$team = $report->getTeam();
if ($team->getStatus() !== Team::STATUS_ACTIVE) {
$this->logger->warning(self::LOG_PREFIX . ' Team is not active, processing anyway (manual override)', [
'reportId' => $reportId,
'reportUuid' => $report->getUuid(),
'teamId' => $report->getTeamId(),
'teamStatus' => $team->getStatus(),
]);
$this->warn("Team #{$report->getTeamId()} is not active — processing anyway (manual override).");
}
if ($report->isExpired()) {
$this->logger->warning(self::LOG_PREFIX . ' Report is expired, processing anyway (manual override)', [
'reportId' => $reportId,
'reportUuid' => $report->getUuid(),
'expiresAt' => $report->getExpiresAt()?->toDateString(),
]);
$this->warn('Report is expired (expires_at: ' . $report->getExpiresAt()?->toDateString() . ') — processing anyway (manual override).');
}
$now = Carbon::now();
$frequency = $report->getFrequency();
$wouldRunToday = match ($frequency) {
AutomatedReportsService::FREQUENCY_DAILY => true,
AutomatedReportsService::FREQUENCY_WEEKLY => $now->isMonday(),
AutomatedReportsService::FREQUENCY_MONTHLY => $now->day === 1,
AutomatedReportsService::FREQUENCY_QUARTERLY => $now->day === 1 && in_array($now->month, [1, 4, 7, 10], true),
default => false,
};
if (! $wouldRunToday) {
$this->logger->info(self::LOG_PREFIX . ' Report frequency would not run today, processing anyway (manual override)', [
'reportId' => $reportId,
'reportUuid' => $report->getUuid(),
'frequency' => $frequency,
]);
$this->warn("Report frequency is '{$frequency}' — would NOT run today, processing anyway (manual override).");
}
return collect([$report]);
}
}
Project
Project
New File or Directory…
Expand Selected
Collapse All...
|
NULL
|
|
10892
|
215
|
63
|
2026-04-14T09:02:51.137096+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157371137_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
PhpStormFileViewNavigateCodelaraveRefactonToolsWin PhpStormFileViewNavigateCodelaraveRefactonToolsWindowHelpFVtavsco.isv#11894 on JY-18909-automated-reports-ask-iminny kvProject vProphetAiv _ Reports(C AutomatedReportsC(©) AutomatedReportsR(C) AutomatedReportsS(C) CreateMockAsk. liminC DeleteReportcommae ceneratemarkerinok©leam.phpC Usage.phpM Slack_leams→ Tracks_ TranscriptionD TwilioD Users_ Vocabulary_ 40om© coachingeedbacksupcg command.phpc Crearevaroaseusers.oc Daraoase oecountoiC DeleteOldAiCrmNotesC(C) DeleteS3LeftoversCom(C DevPostmanCommand.C DiarizeViaAiParticipantl(©) EncryptTokensCommar(©) EngagementStatsRegerT FeatureFlagsHelper.php© rixcross|enantissues.p(c) -ushro espermissions(e) Generatelnterna weoho(C) GroupSetDefaultLanquaC) HelperTruncateCoachin(C) HubspotJournalPollingC(C) HubspotWebhookServic(c) ImportRecording.phpC ImportUsersFromCsvFilC IterateUsersCommand.(©) JiminnyCacheClearCom(c) minnv Deouacommanc© Jiminnysetencryptedlo(c) Jiminny okenintocommMakeslackLvecoaching(c Manacescimror eam.o(©) MarkBranchForEnvironn(C) MuteOrganizerChannel(C) PhpApm.php(C PropagateCoachingFee(©) PurgeConterences.php(©) PurgeSoftDeletedOppol© PurgeSyncBatchesCom(e Recalculatebealkisksco(c) Removebe eremarkersc(e) Remove-xoiredNudoes(C) RemoveUnusedParticio:C ResetElasticSearch.php(C) RestoreActivityCrmProv(C) RestoreActivityTypeCorc) RenortController.ongJiminnybebuecommana.ongAutomaleakeportscommana.ongC) AutomatedReportsSendCommand.phpC AddLayoutEntities.php(©) Team.php= custom.log= laravel.logC AutomatedReportsRepository.phpAulomaleakeporisservice.onoc CrealenelaAcuiviyevent.ono© TrackProviderInstalledEvent.phpC CreateActivityLoggedEvent.php4 SF [iiminny@localhostl© UserPilotActivityListener.php9 ActivityLogged.php© AutomatedReportsCallbackService.php© RequestGenerateAskJiminnyReportJob.phpC RequestGenerateReportJob.phpc HS_local Jiminny@localhost)(©) AutomatedReportResult.phpc) Automatedkeport.onee console (PROD]¿ console (EU]srongA console [STAGINGAskJiminnyReportActivityService.php Xdeclare(strict_types=1):C RequestGenerateAskJiminnyReportJobTesnamespace Jiminny Console\commands Reports:MLAI^class AskJLmennykeporcAct1V1use cardon cardon;uuse uumnare console conmanoruunnare conuracus bus usparcher as bususoatcher.luse Illuminate Support Collection:use sainny oos Auronareckeoors reoues.cenerareask...mnnvreoortJoo.use Jiminny Jobs AutomatedReports RequestGenerateReportJob:use Jiminny Models AutomatedReport:use Jiminny Models Team:use Jiminny Repositories AutomatedReportsrepos1tory:use Jiminny Services K1OSK AutomatedReports AutomatedReportsserviceuse Psr\LogLoggerinterface:class Autonaredredor scommano extenos connano/***/* Loa prefix for all loa messages33private const string LOG_PREFIX ='lautomated-reports.':/*** The name and signature of the console command.*ovar string*/Cascade 88 LCommand &1316protected $signature = 'automated-reports {--report-id= : Process a specific report by ID or UUID (bypasses frequency scheduling)}':33* The console command description.* dvar strincprotected $description = 'Process automated reports based on their frequency (weekly, monthly, quarterly)';AcceptReject38 6protected $description = 'Process automated reports based on their frequency (weekly, monthly, quarterly). Use --report-id to danually trigger i5141©)public function __construct(private readonly LoggerInterface $logger,private readonly BusDispatcher Sdispatcher.private readonly AutomatedReportsRepository SreportRepositoryparent::__constructh* Execure mne console conmena.** dreturn int*/T 1 of 6 edits JAccept File &+3X Reject File t3@+ 2 of 2 files →nuhl ic function handlel. intWinasurt changelog 2.12.21: A new version is avallable. | View Changelog (today 10:33)private const int DEFAULprivate const array DATEActivityActualDate:ActivityActualDate:ActivityUpdatedDate:ActivityUpdatedDate:ClosingPer1odrilter:ClosingPeriodFilter:public function __constrprivate readonly Actprivate readonly Elaprivate readonly Log)4...3* Fetch activity IDs fo* Date filters stored* no dace constraint* @return stringl] Act:*/public function getActivSearch SsavedSearchUser suser): array {srequestParams = sthnenrera s untuerarray_mergelsrecnuser->certnezoSfilterSet = $this->SactivityIds = $thissthis->logger->infol'saved_search_10'User_1d'= SUSactvt counte1);return Sactivitvids, 0labl: Support Daily • in 2h 58 m100% [2Tue 14 Apr 12:02:50• RequestGenerateAskJiminnyReportJobTest-CascadeFixing ReportControlleAutomated Report MaAutomated Report1n7 211 and adc valication with loas insideGAutomatedRenortscommand. 0hn1 209-210et me read the current state of the command tile firstkead Automateakeportscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports.Ineed to implement getReportByld properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycoLlection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucoma ceakepo rtscommand.ohoRead AutomatecRenortscommand.onoThe file is now only 140 lines - the user removed the processSingleReport/warnlfNotApp Licab leForSchedu lemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:1 Aulomalecreoorsreroslorv.onoAlso tix the import order (Collection should be before the models alphabetically):• AutomatedReportsCommand.php+1-1• AutomatedReportsCommand.php+1 -1Done. Summary of changes:AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric string → find() bv int ID•Non-numenc → Uu d ookuo via tooptimizedoBoth use withTrashed() so soft-deleted reports are findable manuallygetReportByld() (AutomatedReportsCommand.php: 135-194) - checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violationbut sull rerurns the repor so processing continues.chockBehaviour on failINot Tounewarhina loe + terminal warn, returns emoty collection skips processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + ternnal warn, continuesExoiredwarning log + terminal warn, continuesFrequency wouldn't run todayinfo lod + terminal warn. continuesWC1l -2 files +78 -4 >Ask anything (&+L)+ < CodeClaude Sennet 4.6Reject allAccept allwinasun leams14:2uir-oia 4 spaces...
|
NULL
|
-7651469665894883074
|
NULL
|
click
|
ocr
|
NULL
|
PhpStormFileViewNavigateCodelaraveRefactonToolsWin PhpStormFileViewNavigateCodelaraveRefactonToolsWindowHelpFVtavsco.isv#11894 on JY-18909-automated-reports-ask-iminny kvProject vProphetAiv _ Reports(C AutomatedReportsC(©) AutomatedReportsR(C) AutomatedReportsS(C) CreateMockAsk. liminC DeleteReportcommae ceneratemarkerinok©leam.phpC Usage.phpM Slack_leams→ Tracks_ TranscriptionD TwilioD Users_ Vocabulary_ 40om© coachingeedbacksupcg command.phpc Crearevaroaseusers.oc Daraoase oecountoiC DeleteOldAiCrmNotesC(C) DeleteS3LeftoversCom(C DevPostmanCommand.C DiarizeViaAiParticipantl(©) EncryptTokensCommar(©) EngagementStatsRegerT FeatureFlagsHelper.php© rixcross|enantissues.p(c) -ushro espermissions(e) Generatelnterna weoho(C) GroupSetDefaultLanquaC) HelperTruncateCoachin(C) HubspotJournalPollingC(C) HubspotWebhookServic(c) ImportRecording.phpC ImportUsersFromCsvFilC IterateUsersCommand.(©) JiminnyCacheClearCom(c) minnv Deouacommanc© Jiminnysetencryptedlo(c) Jiminny okenintocommMakeslackLvecoaching(c Manacescimror eam.o(©) MarkBranchForEnvironn(C) MuteOrganizerChannel(C) PhpApm.php(C PropagateCoachingFee(©) PurgeConterences.php(©) PurgeSoftDeletedOppol© PurgeSyncBatchesCom(e Recalculatebealkisksco(c) Removebe eremarkersc(e) Remove-xoiredNudoes(C) RemoveUnusedParticio:C ResetElasticSearch.php(C) RestoreActivityCrmProv(C) RestoreActivityTypeCorc) RenortController.ongJiminnybebuecommana.ongAutomaleakeportscommana.ongC) AutomatedReportsSendCommand.phpC AddLayoutEntities.php(©) Team.php= custom.log= laravel.logC AutomatedReportsRepository.phpAulomaleakeporisservice.onoc CrealenelaAcuiviyevent.ono© TrackProviderInstalledEvent.phpC CreateActivityLoggedEvent.php4 SF [iiminny@localhostl© UserPilotActivityListener.php9 ActivityLogged.php© AutomatedReportsCallbackService.php© RequestGenerateAskJiminnyReportJob.phpC RequestGenerateReportJob.phpc HS_local Jiminny@localhost)(©) AutomatedReportResult.phpc) Automatedkeport.onee console (PROD]¿ console (EU]srongA console [STAGINGAskJiminnyReportActivityService.php Xdeclare(strict_types=1):C RequestGenerateAskJiminnyReportJobTesnamespace Jiminny Console\commands Reports:MLAI^class AskJLmennykeporcAct1V1use cardon cardon;uuse uumnare console conmanoruunnare conuracus bus usparcher as bususoatcher.luse Illuminate Support Collection:use sainny oos Auronareckeoors reoues.cenerareask...mnnvreoortJoo.use Jiminny Jobs AutomatedReports RequestGenerateReportJob:use Jiminny Models AutomatedReport:use Jiminny Models Team:use Jiminny Repositories AutomatedReportsrepos1tory:use Jiminny Services K1OSK AutomatedReports AutomatedReportsserviceuse Psr\LogLoggerinterface:class Autonaredredor scommano extenos connano/***/* Loa prefix for all loa messages33private const string LOG_PREFIX ='lautomated-reports.':/*** The name and signature of the console command.*ovar string*/Cascade 88 LCommand &1316protected $signature = 'automated-reports {--report-id= : Process a specific report by ID or UUID (bypasses frequency scheduling)}':33* The console command description.* dvar strincprotected $description = 'Process automated reports based on their frequency (weekly, monthly, quarterly)';AcceptReject38 6protected $description = 'Process automated reports based on their frequency (weekly, monthly, quarterly). Use --report-id to danually trigger i5141©)public function __construct(private readonly LoggerInterface $logger,private readonly BusDispatcher Sdispatcher.private readonly AutomatedReportsRepository SreportRepositoryparent::__constructh* Execure mne console conmena.** dreturn int*/T 1 of 6 edits JAccept File &+3X Reject File t3@+ 2 of 2 files →nuhl ic function handlel. intWinasurt changelog 2.12.21: A new version is avallable. | View Changelog (today 10:33)private const int DEFAULprivate const array DATEActivityActualDate:ActivityActualDate:ActivityUpdatedDate:ActivityUpdatedDate:ClosingPer1odrilter:ClosingPeriodFilter:public function __constrprivate readonly Actprivate readonly Elaprivate readonly Log)4...3* Fetch activity IDs fo* Date filters stored* no dace constraint* @return stringl] Act:*/public function getActivSearch SsavedSearchUser suser): array {srequestParams = sthnenrera s untuerarray_mergelsrecnuser->certnezoSfilterSet = $this->SactivityIds = $thissthis->logger->infol'saved_search_10'User_1d'= SUSactvt counte1);return Sactivitvids, 0labl: Support Daily • in 2h 58 m100% [2Tue 14 Apr 12:02:50• RequestGenerateAskJiminnyReportJobTest-CascadeFixing ReportControlleAutomated Report MaAutomated Report1n7 211 and adc valication with loas insideGAutomatedRenortscommand. 0hn1 209-210et me read the current state of the command tile firstkead Automateakeportscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports.Ineed to implement getReportByld properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycoLlection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucoma ceakepo rtscommand.ohoRead AutomatecRenortscommand.onoThe file is now only 140 lines - the user removed the processSingleReport/warnlfNotApp Licab leForSchedu lemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:1 Aulomalecreoorsreroslorv.onoAlso tix the import order (Collection should be before the models alphabetically):• AutomatedReportsCommand.php+1-1• AutomatedReportsCommand.php+1 -1Done. Summary of changes:AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric string → find() bv int ID•Non-numenc → Uu d ookuo via tooptimizedoBoth use withTrashed() so soft-deleted reports are findable manuallygetReportByld() (AutomatedReportsCommand.php: 135-194) - checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violationbut sull rerurns the repor so processing continues.chockBehaviour on failINot Tounewarhina loe + terminal warn, returns emoty collection skips processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + ternnal warn, continuesExoiredwarning log + terminal warn, continuesFrequency wouldn't run todayinfo lod + terminal warn. continuesWC1l -2 files +78 -4 >Ask anything (&+L)+ < CodeClaude Sennet 4.6Reject allAccept allwinasun leams14:2uir-oia 4 spaces...
|
10890
|
|
10893
|
215
|
64
|
2026-04-14T09:02:53.772170+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157373772_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
PhpStormFileEditViewFV faVsco.js vNavigateCodeLara PhpStormFileEditViewFV faVsco.js vNavigateCodeLaravelRefactor#11894 on JY-18909-automated-reports-ask-iminny K vToolsWindowHelpProject vProphetAiv D Reports© AutomatedReportsCl© AutomatedReportsRe© AutomatedReportsSt© CreateMockAskJimir© DeleteReportComma© GenerateMarketingR© Team.php© Usage.phpD Slack• TeamsD TracksO TranscriptionO TwilioD UsersVocabulary@Zoom© CoachingFeedbacksUpr© Command.phpo Cearevaroaseusers.oc Daraoase oecountoi© DeleteOldAiCrmNotesC:© DeleteS3LeftoversComiDevPostmanCommand./© DiarizeViaAiParticipantk© EncryptTokensComman© EngagementStatsRegen© FeatureFlagsHelper.php© FixCrossTenantlssues.p(c) -ushro espermissionsa(e) Generatelnterna wepho• GroupSetDefaultLangua© HelperTruncateCoachin© HubspotJournalPollingC© HubspotWebhookServic©ImportRecording.php© ImportUsersFromCsvFil© IterateUsersCommand.p© JiminnyCacheClearCom© JiminnyDebugCommanc© JiminnySetEncryptedTo(c) Jiminny okenintocommMakeslackLvecoaching(c Manacescimror eam.oc мarkbranchrorenvironh© MuteOrganizerChannel.© PhpApm.php© PropagateCoachingFeer© PurgeConferences.php© PurgeSoftDeletedOppor© PurgeSyncBatchesCom(e Recalculatebealkisksco(c) Removebe eremarkersc(e) Remove-xoiredNudoesc removeunusecrarclo© ResetElasticSearch.php© RestoreActivityCrmProv© RestoreActivityTypeCor© ReportController.phpJiminnybeouecommana.ong© AutomatedReportsCommand.php x|© AutomatedReportsSendCommand.phpC AutomatedReportsRepository.phpC AutomatedReportsService.phpCreateHeldActivityEvent.php• TrackProviderInstalledEvent.php© UserPilotActivityListener.php© ActivityLogged.php© AutomatedReportsCallbackService.php© RequestGenerateAskJiminnyReportJob.php© AutomatedReportResult.phpclass AutomatedReportsCommand extends Commandpublic function handle(): intD):© AddLayoutEntities.php© Team.phpCreateActivityLoggedEvent.php© RequestGenerateReportJob.php899099100101102103104105106108109110111112113115116117118119120// Process daily reportspuh1s->processkeporus trequency: AUtomacedкeportsservice: :FREQUENCY_DALLY)HProcess veekty recors on monoaysif ($isMonday) €$this->processReports( frequency: AutomatedReportsService: :FREQUENCY_WEEKLY);// Process monthly reports on the first day of the monthif ($isFirstDay0fMonth) €$this->processReports( frequency: AutomatedReportsService::FREQUENCY_MONTHLY);// Process quarterly reports on the first day of January, April, July, and Octoberif ($isFirstDay0fMonth && $isQuarterZyMonth) &$this->processReports( frequency: AutomatedReportsService::FREQUENCY_QUARTERLY);$this->logger->info(self::LOG_PREFIXCompleted');return 0;* Process reports for a spec:Cascade & YICommand Sel* @param string $frequency* Oreturn void*/private function processReports(string $frequency): void$this->logger-›info(self::L0G_PREFIX . " Processing $frequency reports");// Get all enabled, not deleted reports with active teams for the specified frequency$reports = $this->reportRepository->getActiveReportsByFrequency ($frequency);$reports = collect([AutomatedReport: :find (68)]);$reportId = $this->option( key: 'report-id');if ($reportid !== nulU) k$reports = $this->getReportById($reportId);felse {// Get all enabled, not deleted reports with active teams for the specified frequency$reports = $this-›reportRepository->getActiveReportsByFrequency($frequency);AcceptReject$this->logger→>info(self::L0G_PREFIX• " Found ($reports->count()} $frequency reports to process");/** @var AutomatedReport $report */foreach ($reports as $report) {$this->logger->info(self::LOG_PREFIX'reportUuid'=> $report-›getuuidoWindsurf changelog 2.12.21: A new version is available. // View Changelog (today 10:33)= custom.log= laravel.logA SF [jiminny@localhost]A HS_local [jiminny@localhost]A console (PROD]Al console [EU]4 console [STAGING)) AskJiminnyReportActivityService.php x© RequestGenerateAskJiminnyReportJobTest×2 21 ^class AskJiminnyReportActivi3334ДДAAд57private const int DEFAULprivate const array DATEActivityActualDate:ActivityActualDate::ActivityUpdatedDate:ActivityUpdatedDate:ClosingPeriodFilter:ClosingPeriodFilter:public function __constrprivate readonly Actprivate readonly Elaprivate readonly LogDf..F* Fetch activity IDs fo* Date filters stored* no date constraint .* Creturn string[] Acti*/public function getActivSearch $savedSearchUser $user,): array {$requestParams = $th$criteria = Criteriaarray_merge($reqnuser->certnezo$filterSet = $this->$activityIds = $this$this->logger->info(' saved_search_id'user_id'= Sus'activity_count'1);return $activityIds;, 0lablSupport Daily - in 2h 58mA100% C•Tue 14 Apr 12:02:53• RequestGenerateAskJiminnyReportJobTest -CascadeFixing ReportControlleAutomated Report MarAutomated Report Lp#L211 and add validation with logs [EMAIL]#L209-213wLet me read the current state of the command file first.kead Automateakeportscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports. I need to implement getReportById properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycoLlection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucomaceakepo rtscommand.onpRead AutomatecRenortscommand.onoThe file is now only 140 lines — the user removed the processSingleReport/warnIfNotApplicableForSchedulemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:• AutomatedReportsRepository.phpAlso tix the import order (Collection should be before the models alphabetically):• AutomatedReportsCommand.php+1 -1AutomatedReportsCommand.php+1 -1Done. Summary of changes:AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric string → find() bv int ID• Non-numeric → UUID lookup via toOptimized()Both use withTrashed() so soft-deleted reports are findable manuallygetReportById() (AutomatedReportsCommand. php:135-194) - checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violation,but sull rerurns the repor so processing continues.CheckBehaviour on failINot Tounewarhina loe + terminal wam, rerurns empty collection sklos processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + ternnal warn, continuesExoiredFrequency wouldn't run todaywarning log + terminal warn, continuesinfo log + terminal warn, continuesC1l -2 files +77 -3 >Ask anything (&AL)+ <> CodeClaude Sonnet 4.6Reject allAccept allwinasun leams14:2uir-o( 4 spaces...
|
NULL
|
3583820075929564160
|
NULL
|
visual_change
|
ocr
|
NULL
|
PhpStormFileEditViewFV faVsco.js vNavigateCodeLara PhpStormFileEditViewFV faVsco.js vNavigateCodeLaravelRefactor#11894 on JY-18909-automated-reports-ask-iminny K vToolsWindowHelpProject vProphetAiv D Reports© AutomatedReportsCl© AutomatedReportsRe© AutomatedReportsSt© CreateMockAskJimir© DeleteReportComma© GenerateMarketingR© Team.php© Usage.phpD Slack• TeamsD TracksO TranscriptionO TwilioD UsersVocabulary@Zoom© CoachingFeedbacksUpr© Command.phpo Cearevaroaseusers.oc Daraoase oecountoi© DeleteOldAiCrmNotesC:© DeleteS3LeftoversComiDevPostmanCommand./© DiarizeViaAiParticipantk© EncryptTokensComman© EngagementStatsRegen© FeatureFlagsHelper.php© FixCrossTenantlssues.p(c) -ushro espermissionsa(e) Generatelnterna wepho• GroupSetDefaultLangua© HelperTruncateCoachin© HubspotJournalPollingC© HubspotWebhookServic©ImportRecording.php© ImportUsersFromCsvFil© IterateUsersCommand.p© JiminnyCacheClearCom© JiminnyDebugCommanc© JiminnySetEncryptedTo(c) Jiminny okenintocommMakeslackLvecoaching(c Manacescimror eam.oc мarkbranchrorenvironh© MuteOrganizerChannel.© PhpApm.php© PropagateCoachingFeer© PurgeConferences.php© PurgeSoftDeletedOppor© PurgeSyncBatchesCom(e Recalculatebealkisksco(c) Removebe eremarkersc(e) Remove-xoiredNudoesc removeunusecrarclo© ResetElasticSearch.php© RestoreActivityCrmProv© RestoreActivityTypeCor© ReportController.phpJiminnybeouecommana.ong© AutomatedReportsCommand.php x|© AutomatedReportsSendCommand.phpC AutomatedReportsRepository.phpC AutomatedReportsService.phpCreateHeldActivityEvent.php• TrackProviderInstalledEvent.php© UserPilotActivityListener.php© ActivityLogged.php© AutomatedReportsCallbackService.php© RequestGenerateAskJiminnyReportJob.php© AutomatedReportResult.phpclass AutomatedReportsCommand extends Commandpublic function handle(): intD):© AddLayoutEntities.php© Team.phpCreateActivityLoggedEvent.php© RequestGenerateReportJob.php899099100101102103104105106108109110111112113115116117118119120// Process daily reportspuh1s->processkeporus trequency: AUtomacedкeportsservice: :FREQUENCY_DALLY)HProcess veekty recors on monoaysif ($isMonday) €$this->processReports( frequency: AutomatedReportsService: :FREQUENCY_WEEKLY);// Process monthly reports on the first day of the monthif ($isFirstDay0fMonth) €$this->processReports( frequency: AutomatedReportsService::FREQUENCY_MONTHLY);// Process quarterly reports on the first day of January, April, July, and Octoberif ($isFirstDay0fMonth && $isQuarterZyMonth) &$this->processReports( frequency: AutomatedReportsService::FREQUENCY_QUARTERLY);$this->logger->info(self::LOG_PREFIXCompleted');return 0;* Process reports for a spec:Cascade & YICommand Sel* @param string $frequency* Oreturn void*/private function processReports(string $frequency): void$this->logger-›info(self::L0G_PREFIX . " Processing $frequency reports");// Get all enabled, not deleted reports with active teams for the specified frequency$reports = $this->reportRepository->getActiveReportsByFrequency ($frequency);$reports = collect([AutomatedReport: :find (68)]);$reportId = $this->option( key: 'report-id');if ($reportid !== nulU) k$reports = $this->getReportById($reportId);felse {// Get all enabled, not deleted reports with active teams for the specified frequency$reports = $this-›reportRepository->getActiveReportsByFrequency($frequency);AcceptReject$this->logger→>info(self::L0G_PREFIX• " Found ($reports->count()} $frequency reports to process");/** @var AutomatedReport $report */foreach ($reports as $report) {$this->logger->info(self::LOG_PREFIX'reportUuid'=> $report-›getuuidoWindsurf changelog 2.12.21: A new version is available. // View Changelog (today 10:33)= custom.log= laravel.logA SF [jiminny@localhost]A HS_local [jiminny@localhost]A console (PROD]Al console [EU]4 console [STAGING)) AskJiminnyReportActivityService.php x© RequestGenerateAskJiminnyReportJobTest×2 21 ^class AskJiminnyReportActivi3334ДДAAд57private const int DEFAULprivate const array DATEActivityActualDate:ActivityActualDate::ActivityUpdatedDate:ActivityUpdatedDate:ClosingPeriodFilter:ClosingPeriodFilter:public function __constrprivate readonly Actprivate readonly Elaprivate readonly LogDf..F* Fetch activity IDs fo* Date filters stored* no date constraint .* Creturn string[] Acti*/public function getActivSearch $savedSearchUser $user,): array {$requestParams = $th$criteria = Criteriaarray_merge($reqnuser->certnezo$filterSet = $this->$activityIds = $this$this->logger->info(' saved_search_id'user_id'= Sus'activity_count'1);return $activityIds;, 0lablSupport Daily - in 2h 58mA100% C•Tue 14 Apr 12:02:53• RequestGenerateAskJiminnyReportJobTest -CascadeFixing ReportControlleAutomated Report MarAutomated Report Lp#L211 and add validation with logs [EMAIL]#L209-213wLet me read the current state of the command file first.kead Automateakeportscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports. I need to implement getReportById properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycoLlection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucomaceakepo rtscommand.onpRead AutomatecRenortscommand.onoThe file is now only 140 lines — the user removed the processSingleReport/warnIfNotApplicableForSchedulemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:• AutomatedReportsRepository.phpAlso tix the import order (Collection should be before the models alphabetically):• AutomatedReportsCommand.php+1 -1AutomatedReportsCommand.php+1 -1Done. Summary of changes:AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric string → find() bv int ID• Non-numeric → UUID lookup via toOptimized()Both use withTrashed() so soft-deleted reports are findable manuallygetReportById() (AutomatedReportsCommand. php:135-194) - checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violation,but sull rerurns the repor so processing continues.CheckBehaviour on failINot Tounewarhina loe + terminal wam, rerurns empty collection sklos processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + ternnal warn, continuesExoiredFrequency wouldn't run todaywarning log + terminal warn, continuesinfo log + terminal warn, continuesC1l -2 files +77 -3 >Ask anything (&AL)+ <> CodeClaude Sonnet 4.6Reject allAccept allwinasun leams14:2uir-o( 4 spaces...
|
NULL
|
|
10895
|
215
|
65
|
2026-04-14T09:02:56.821118+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157376821_m2.jpg...
|
PhpStorm
|
faVsco.js – AutomatedReportsCommand.php
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
Project: faVsco.js, menu
#11894 on JY-18909-automa Project: faVsco.js, menu
#11894 on JY-18909-automated-reports-ask-jiminny, menu
Start Listening for PHP Debug Connections
RequestGenerateAskJiminnyReportJobTest
Run 'RequestGenerateAskJiminnyReportJobTest'
Debug 'RequestGenerateAskJiminnyReportJobTest'
More Actions
JetBrains AI
Search Everywhere
IDE and Project Settings
Sync Changes
Hide This Notification
Code changed:
Hide
2
1
Previous Highlighted Error
Next Highlighted Error
<?php
declare(strict_types=1);
namespace Jiminny\Services\Kiosk\AutomatedReports;
use Jiminny\Component\ActivitySearch\FilterDefinition\ActivityActualDate;
use Jiminny\Component\ActivitySearch\FilterDefinition\ActivityUpdatedDate;
use Jiminny\Component\ActivitySearch\FilterDefinition\DealInsights\ClosingPeriodFilter;
use Jiminny\Component\ActivitySearch\Service\ActivitySearch;
use Jiminny\Models\Activity\Search;
use Jiminny\Models\User;
use Jiminny\Repositories\ElasticActivityRepository;
use Jiminny\VO\Repository\OnDemandActivitySearch\Criteria;
use Psr\Log\LoggerInterface;
class AskJiminnyReportActivityService
{
private const int DEFAULT_TOP_ACTIVITIES_COUNT = 100;
private const array DATE_FILTER_KEYS = [
ActivityActualDate::PARAM_START_DATE,
ActivityActualDate::PARAM_END_DATE,
ActivityUpdatedDate::PARAM_UPDATED_FROM,
ActivityUpdatedDate::PARAM_UPDATED_TO,
ClosingPeriodFilter::KEY_START_DATE,
ClosingPeriodFilter::KEY_END_DATE,
];
public function __construct(
private readonly ActivitySearch $activitySearch,
private readonly ElasticActivityRepository $elasticRepository,
private readonly LoggerInterface $logger,
) {
}
/**
* Fetch activity IDs for a saved search, passing its filters as-is to Criteria.
* Date filters stored on the saved search are excluded; if no other filters exist,
* no date constraint is applied — matching the behaviour of getContextForAskAnythingByFilter.
*
* @return string[] Activity IDs
*/
public function getActivityIdsForSavedSearch(
Search $savedSearch,
User $user,
): array {
$requestParams = $this->buildRequestParamsFromSearch($savedSearch, $user);
$criteria = Criteria::createFromRequest(
array_merge($requestParams, ['limit' => self::DEFAULT_TOP_ACTIVITIES_COUNT, 'page' => 1]),
$user->getTimezone()
);
$filterSet = $this->activitySearch->getOnDemandPageFilterSet($criteria, $user);
$activityIds = $this->elasticRepository->onDemandSearchIdsOnly($user, $criteria, $filterSet);
$this->logger->info('[AskJiminnyReport] Fetched activity IDs for saved search', [
'saved_search_id' => $savedSearch->getId(),
'user_id' => $user->getId(),
'activity_count' => count($activityIds),
]);
return $activityIds;
}
private function buildRequestParamsFromSearch(Search $savedSearch, User $user): array
{
$params = [];
$arrayFilterKeys = $this->activitySearch->getArrayFilterKeys($user);
foreach ($savedSearch->getFilters() as $filter) {
$key = $filter->getFilterProperty();
$value = $filter->getFilterValue();
if (in_array($key, self::DATE_FILTER_KEYS, true)) {
continue;
}
if (isset($params[$key])) {
$params[$key][] = $value;
} elseif (in_array($key, $arrayFilterKeys, true)) {
$params[$key] = [$value];
} else {
$params[$key] = $value;
}
}
return $params;
}
}
Code changed:
Hide
Sync Changes
Hide This Notification
4
Previous Highlighted Error
Next Highlighted Error
<?php
declare(strict_types=1);
namespace Jiminny\Console\Commands\Reports;
use Carbon\Carbon;
use Illuminate\Console\Command;
use Illuminate\Contracts\Bus\Dispatcher as BusDispatcher;
use Illuminate\Support\Collection;
use Jiminny\Jobs\AutomatedReports\RequestGenerateAskJiminnyReportJob;
use Jiminny\Jobs\AutomatedReports\RequestGenerateReportJob;
use Jiminny\Models\AutomatedReport;
use Jiminny\Models\Team;
use Jiminny\Repositories\AutomatedReportsRepository;
use Jiminny\Services\Kiosk\AutomatedReports\AutomatedReportsService;
use Psr\Log\LoggerInterface;
class AutomatedReportsCommand extends Command
{
/**
* Log prefix for all log messages
*/
private const string LOG_PREFIX = '[automated-reports]';
/**
* The name and signature of the console command.
*
* @var string
*/
protected $signature = 'automated-reports {--report-id= : Process a specific report by ID or UUID (bypasses frequency scheduling)}';
/**
* The console command description.
*
* @var string
*/
protected $description = 'Process automated reports based on their frequency (weekly, monthly, quarterly). Use --report-id to manually trigger a specific report by ID or UUID.';
public function __construct(
private readonly LoggerInterface $logger,
private readonly BusDispatcher $dispatcher,
private readonly AutomatedReportsRepository $reportRepository
) {
parent::__construct();
}
/**
* Execute the console command.
*
* @return int
*/
public function handle(): int
{
$this->logger->info(self::LOG_PREFIX . ' Started');
$now = Carbon::now();
$isMonday = $now->isMonday();
$isFirstDayOfMonth = $now->day === 1;
$currentMonth = $now->month;
// Check if the current month is a quarterly month (January, April, July, October)
$isQuarterlyMonth = in_array($currentMonth, [1, 4, 7, 10], true);
$this->logger->info(self::LOG_PREFIX . ' Checking conditions', [
'isMonday' => $isMonday,
'isFirstDayOfMonth' => $isFirstDayOfMonth,
'currentMonth' => $currentMonth,
'isQuarterlyMonth' => $isQuarterlyMonth,
]);
// Process daily reports
$this->processReports(AutomatedReportsService::FREQUENCY_DAILY);
// Process weekly reports on Mondays
if ($isMonday) {
$this->processReports(AutomatedReportsService::FREQUENCY_WEEKLY);
}
// Process monthly reports on the first day of the month
if ($isFirstDayOfMonth) {
$this->processReports(AutomatedReportsService::FREQUENCY_MONTHLY);
}
// Process quarterly reports on the first day of January, April, July, and October
if ($isFirstDayOfMonth && $isQuarterlyMonth) {
$this->processReports(AutomatedReportsService::FREQUENCY_QUARTERLY);
}
$this->logger->info(self::LOG_PREFIX . ' Completed');
return 0;
}
/**
* Process reports for a specific frequency.
*
* @param string $frequency
*
* @return void
*/
private function processReports(string $frequency): void
{
$this->logger->info(self::LOG_PREFIX . " Processing $frequency reports");
$reportId = $this->option('report-id');
if ($reportId !== null) {
$reports = $this->getReportById($reportId);
} else {
// Get all enabled, not deleted reports with active teams for the specified frequency
$reports = $this->reportRepository->getActiveReportsByFrequency($frequency);
}
$this->logger->info(self::LOG_PREFIX . " Found {$reports->count()} $frequency reports to process");
/** @var AutomatedReport $report */
foreach ($reports as $report) {
$this->logger->info(self::LOG_PREFIX . ' Dispatching Generate Report job for report', [
'reportUuid' => $report->getUuid(),
'teamId' => $report->getTeamId(),
'frequency' => $report->getFrequency(),
'type' => $report->getType(),
]);
$job = $report->isAskJiminnyReport()
? new RequestGenerateAskJiminnyReportJob($report->getUuid())
: new RequestGenerateReportJob($report->getUuid());
// $this->dispatcher->dispatch($job);
$this->dispatcher->dispatchSync($job);
}
}
private function getReportById(string $reportId): Collection
{
$report = $this->reportRepository->findByIdOrUuid($reportId);
if ($report === null) {
$this->logger->warning(self::LOG_PREFIX . ' Report not found for --report-id', ['reportId' => $reportId]);
$this->warn("Report not found: {$reportId}");
return collect();
}
if (! $report->getStatus()) {
$this->logger->warning(self::LOG_PREFIX . ' Report is inactive, processing anyway (manual override)', [
'reportId' => $reportId,
'reportUuid' => $report->getUuid(),
]);
$this->warn('Report is inactive — processing anyway (manual override).');
}
$team = $report->getTeam();
if ($team->getStatus() !== Team::STATUS_ACTIVE) {
$this->logger->warning(self::LOG_PREFIX . ' Team is not active, processing anyway (manual override)', [
'reportId' => $reportId,
'reportUuid' => $report->getUuid(),
'teamId' => $report->getTeamId(),
'teamStatus' => $team->getStatus(),
]);
$this->warn("Team #{$report->getTeamId()} is not active — processing anyway (manual override).");
}
if ($report->isExpired()) {
$this->logger->warning(self::LOG_PREFIX . ' Report is expired, processing anyway (manual override)', [
'reportId' => $reportId,
'reportUuid' => $report->getUuid(),
'expiresAt' => $report->getExpiresAt()?->toDateString(),
]);
$this->warn('Report is expired (expires_at: ' . $report->getExpiresAt()?->toDateString() . ') — processing anyway (manual override).');
}
$now = Carbon::now();
$frequency = $report->getFrequency();
$wouldRunToday = match ($frequency) {
AutomatedReportsService::FREQUENCY_DAILY => true,
AutomatedReportsService::FREQUENCY_WEEKLY => $now->isMonday(),
AutomatedReportsService::FREQUENCY_MONTHLY => $now->day === 1,
AutomatedReportsService::FREQUENCY_QUARTERLY => $now->day === 1 && in_array($now->month, [1, 4, 7, 10], true),
default => false,
};
if (! $wouldRunToday) {
$this->logger->info(self::LOG_PREFIX . ' Report frequency would not run today, processing anyway (manual override)', [
'reportId' => $reportId,
'reportUuid' => $report->getUuid(),
'frequency' => $frequency,
]);
$this->warn("Report frequency is '{$frequency}' — would NOT run today, processing anyway (manual override).");
}
return collect([$report]);
}
}
Project
Project
New File or Directory…
Expand Selected
Collapse All
Options
Hide...
|
[{"role":"AXButton","text" [{"role":"AXButton","text":"Project: faVsco.js, menu","depth":5,"bounds":{"left":0.03046875,"top":0.017361112,"width":0.0453125,"height":0.022222223},"help_text":"~/jiminny/app","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"#11894 on JY-18909-automated-reports-ask-jiminny, menu","depth":5,"bounds":{"left":0.07578125,"top":0.017361112,"width":0.14960937,"height":0.022222223},"help_text":"Pull request #11894 exists for current branch JY-18909-automated-reports-ask-jiminny, but local branch is out of sync with remote","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Start Listening for PHP Debug Connections","depth":5,"bounds":{"left":0.76171875,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"RequestGenerateAskJiminnyReportJobTest","depth":6,"bounds":{"left":0.7796875,"top":0.017361112,"width":0.12109375,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Run 'RequestGenerateAskJiminnyReportJobTest'","depth":6,"bounds":{"left":0.9007813,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Debug 'RequestGenerateAskJiminnyReportJobTest'","depth":6,"bounds":{"left":0.9140625,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"More Actions","depth":6,"bounds":{"left":0.9273437,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"JetBrains AI","depth":5,"bounds":{"left":0.96015626,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Search Everywhere","depth":5,"bounds":{"left":0.9734375,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"IDE and Project Settings","depth":5,"bounds":{"left":0.9867188,"top":0.017361112,"width":0.013281226,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Sync Changes","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide This Notification","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Code changed:","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.049609374,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"2","depth":4,"bounds":{"left":0.6699219,"top":0.19513889,"width":0.009375,"height":0.013194445},"role_description":"text"},{"role":"AXStaticText","text":"1","depth":4,"bounds":{"left":0.6816406,"top":0.19513889,"width":0.00859375,"height":0.013194445},"role_description":"text"},{"role":"AXButton","text":"Previous Highlighted Error","depth":4,"bounds":{"left":0.6921875,"top":0.19375,"width":0.00859375,"height":0.015972223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Next Highlighted Error","depth":4,"bounds":{"left":0.7007812,"top":0.19375,"width":0.008203125,"height":0.015972223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"<?php\n\ndeclare(strict_types=1);\n\nnamespace Jiminny\\Services\\Kiosk\\AutomatedReports;\n\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinition\\ActivityActualDate;\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinition\\ActivityUpdatedDate;\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinition\\DealInsights\\ClosingPeriodFilter;\nuse Jiminny\\Component\\ActivitySearch\\Service\\ActivitySearch;\nuse Jiminny\\Models\\Activity\\Search;\nuse Jiminny\\Models\\User;\nuse Jiminny\\Repositories\\ElasticActivityRepository;\nuse Jiminny\\VO\\Repository\\OnDemandActivitySearch\\Criteria;\nuse Psr\\Log\\LoggerInterface;\n\nclass AskJiminnyReportActivityService\n{\n private const int DEFAULT_TOP_ACTIVITIES_COUNT = 100;\n\n private const array DATE_FILTER_KEYS = [\n ActivityActualDate::PARAM_START_DATE,\n ActivityActualDate::PARAM_END_DATE,\n ActivityUpdatedDate::PARAM_UPDATED_FROM,\n ActivityUpdatedDate::PARAM_UPDATED_TO,\n ClosingPeriodFilter::KEY_START_DATE,\n ClosingPeriodFilter::KEY_END_DATE,\n ];\n\n public function __construct(\n private readonly ActivitySearch $activitySearch,\n private readonly ElasticActivityRepository $elasticRepository,\n private readonly LoggerInterface $logger,\n ) {\n }\n\n /**\n * Fetch activity IDs for a saved search, passing its filters as-is to Criteria.\n * Date filters stored on the saved search are excluded; if no other filters exist,\n * no date constraint is applied — matching the behaviour of getContextForAskAnythingByFilter.\n *\n * @return string[] Activity IDs\n */\n public function getActivityIdsForSavedSearch(\n Search $savedSearch,\n User $user,\n ): array {\n $requestParams = $this->buildRequestParamsFromSearch($savedSearch, $user);\n\n $criteria = Criteria::createFromRequest(\n array_merge($requestParams, ['limit' => self::DEFAULT_TOP_ACTIVITIES_COUNT, 'page' => 1]),\n $user->getTimezone()\n );\n\n $filterSet = $this->activitySearch->getOnDemandPageFilterSet($criteria, $user);\n\n $activityIds = $this->elasticRepository->onDemandSearchIdsOnly($user, $criteria, $filterSet);\n\n $this->logger->info('[AskJiminnyReport] Fetched activity IDs for saved search', [\n 'saved_search_id' => $savedSearch->getId(),\n 'user_id' => $user->getId(),\n 'activity_count' => count($activityIds),\n ]);\n\n return $activityIds;\n }\n\n private function buildRequestParamsFromSearch(Search $savedSearch, User $user): array\n {\n $params = [];\n $arrayFilterKeys = $this->activitySearch->getArrayFilterKeys($user);\n\n foreach ($savedSearch->getFilters() as $filter) {\n $key = $filter->getFilterProperty();\n $value = $filter->getFilterValue();\n\n if (in_array($key, self::DATE_FILTER_KEYS, true)) {\n continue;\n }\n\n if (isset($params[$key])) {\n $params[$key][] = $value;\n } elseif (in_array($key, $arrayFilterKeys, true)) {\n $params[$key] = [$value];\n } else {\n $params[$key] = $value;\n }\n }\n\n return $params;\n }\n}","depth":4,"bounds":{"left":0.6238281,"top":0.0,"width":0.31953126,"height":1.0},"value":"<?php\n\ndeclare(strict_types=1);\n\nnamespace Jiminny\\Services\\Kiosk\\AutomatedReports;\n\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinition\\ActivityActualDate;\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinition\\ActivityUpdatedDate;\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinition\\DealInsights\\ClosingPeriodFilter;\nuse Jiminny\\Component\\ActivitySearch\\Service\\ActivitySearch;\nuse Jiminny\\Models\\Activity\\Search;\nuse Jiminny\\Models\\User;\nuse Jiminny\\Repositories\\ElasticActivityRepository;\nuse Jiminny\\VO\\Repository\\OnDemandActivitySearch\\Criteria;\nuse Psr\\Log\\LoggerInterface;\n\nclass AskJiminnyReportActivityService\n{\n private const int DEFAULT_TOP_ACTIVITIES_COUNT = 100;\n\n private const array DATE_FILTER_KEYS = [\n ActivityActualDate::PARAM_START_DATE,\n ActivityActualDate::PARAM_END_DATE,\n ActivityUpdatedDate::PARAM_UPDATED_FROM,\n ActivityUpdatedDate::PARAM_UPDATED_TO,\n ClosingPeriodFilter::KEY_START_DATE,\n ClosingPeriodFilter::KEY_END_DATE,\n ];\n\n public function __construct(\n private readonly ActivitySearch $activitySearch,\n private readonly ElasticActivityRepository $elasticRepository,\n private readonly LoggerInterface $logger,\n ) {\n }\n\n /**\n * Fetch activity IDs for a saved search, passing its filters as-is to Criteria.\n * Date filters stored on the saved search are excluded; if no other filters exist,\n * no date constraint is applied — matching the behaviour of getContextForAskAnythingByFilter.\n *\n * @return string[] Activity IDs\n */\n public function getActivityIdsForSavedSearch(\n Search $savedSearch,\n User $user,\n ): array {\n $requestParams = $this->buildRequestParamsFromSearch($savedSearch, $user);\n\n $criteria = Criteria::createFromRequest(\n array_merge($requestParams, ['limit' => self::DEFAULT_TOP_ACTIVITIES_COUNT, 'page' => 1]),\n $user->getTimezone()\n );\n\n $filterSet = $this->activitySearch->getOnDemandPageFilterSet($criteria, $user);\n\n $activityIds = $this->elasticRepository->onDemandSearchIdsOnly($user, $criteria, $filterSet);\n\n $this->logger->info('[AskJiminnyReport] Fetched activity IDs for saved search', [\n 'saved_search_id' => $savedSearch->getId(),\n 'user_id' => $user->getId(),\n 'activity_count' => count($activityIds),\n ]);\n\n return $activityIds;\n }\n\n private function buildRequestParamsFromSearch(Search $savedSearch, User $user): array\n {\n $params = [];\n $arrayFilterKeys = $this->activitySearch->getArrayFilterKeys($user);\n\n foreach ($savedSearch->getFilters() as $filter) {\n $key = $filter->getFilterProperty();\n $value = $filter->getFilterValue();\n\n if (in_array($key, self::DATE_FILTER_KEYS, true)) {\n continue;\n }\n\n if (isset($params[$key])) {\n $params[$key][] = $value;\n } elseif (in_array($key, $arrayFilterKeys, true)) {\n $params[$key] = [$value];\n } else {\n $params[$key] = $value;\n }\n }\n\n return $params;\n }\n}","role_description":"text entry area","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Code changed:","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.049609374,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Sync Changes","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide This Notification","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"4","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.009375,"height":0.0},"role_description":"text"},{"role":"AXButton","text":"Previous Highlighted Error","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.00859375,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Next Highlighted Error","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.008203125,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"<?php\n\ndeclare(strict_types=1);\n\nnamespace Jiminny\\Console\\Commands\\Reports;\n\nuse Carbon\\Carbon;\nuse Illuminate\\Console\\Command;\nuse Illuminate\\Contracts\\Bus\\Dispatcher as BusDispatcher;\nuse Illuminate\\Support\\Collection;\nuse Jiminny\\Jobs\\AutomatedReports\\RequestGenerateAskJiminnyReportJob;\nuse Jiminny\\Jobs\\AutomatedReports\\RequestGenerateReportJob;\nuse Jiminny\\Models\\AutomatedReport;\nuse Jiminny\\Models\\Team;\nuse Jiminny\\Repositories\\AutomatedReportsRepository;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AutomatedReportsService;\nuse Psr\\Log\\LoggerInterface;\n\nclass AutomatedReportsCommand extends Command\n{\n /**\n * Log prefix for all log messages\n */\n private const string LOG_PREFIX = '[automated-reports]';\n\n /**\n * The name and signature of the console command.\n *\n * @var string\n */\n protected $signature = 'automated-reports {--report-id= : Process a specific report by ID or UUID (bypasses frequency scheduling)}';\n\n /**\n * The console command description.\n *\n * @var string\n */\n protected $description = 'Process automated reports based on their frequency (weekly, monthly, quarterly). Use --report-id to manually trigger a specific report by ID or UUID.';\n\n\n public function __construct(\n private readonly LoggerInterface $logger,\n private readonly BusDispatcher $dispatcher,\n private readonly AutomatedReportsRepository $reportRepository\n ) {\n parent::__construct();\n }\n\n /**\n * Execute the console command.\n *\n * @return int\n */\n public function handle(): int\n {\n $this->logger->info(self::LOG_PREFIX . ' Started');\n\n $now = Carbon::now();\n $isMonday = $now->isMonday();\n $isFirstDayOfMonth = $now->day === 1;\n $currentMonth = $now->month;\n\n // Check if the current month is a quarterly month (January, April, July, October)\n $isQuarterlyMonth = in_array($currentMonth, [1, 4, 7, 10], true);\n\n $this->logger->info(self::LOG_PREFIX . ' Checking conditions', [\n 'isMonday' => $isMonday,\n 'isFirstDayOfMonth' => $isFirstDayOfMonth,\n 'currentMonth' => $currentMonth,\n 'isQuarterlyMonth' => $isQuarterlyMonth,\n ]);\n\n // Process daily reports\n $this->processReports(AutomatedReportsService::FREQUENCY_DAILY);\n\n // Process weekly reports on Mondays\n if ($isMonday) {\n $this->processReports(AutomatedReportsService::FREQUENCY_WEEKLY);\n }\n\n // Process monthly reports on the first day of the month\n if ($isFirstDayOfMonth) {\n $this->processReports(AutomatedReportsService::FREQUENCY_MONTHLY);\n }\n\n // Process quarterly reports on the first day of January, April, July, and October\n if ($isFirstDayOfMonth && $isQuarterlyMonth) {\n $this->processReports(AutomatedReportsService::FREQUENCY_QUARTERLY);\n }\n\n $this->logger->info(self::LOG_PREFIX . ' Completed');\n\n return 0;\n }\n\n /**\n * Process reports for a specific frequency.\n *\n * @param string $frequency\n *\n * @return void\n */\n private function processReports(string $frequency): void\n {\n $this->logger->info(self::LOG_PREFIX . \" Processing $frequency reports\");\n\n $reportId = $this->option('report-id');\n if ($reportId !== null) {\n $reports = $this->getReportById($reportId);\n } else {\n // Get all enabled, not deleted reports with active teams for the specified frequency\n $reports = $this->reportRepository->getActiveReportsByFrequency($frequency);\n }\n\n $this->logger->info(self::LOG_PREFIX . \" Found {$reports->count()} $frequency reports to process\");\n\n /** @var AutomatedReport $report */\n foreach ($reports as $report) {\n $this->logger->info(self::LOG_PREFIX . ' Dispatching Generate Report job for report', [\n 'reportUuid' => $report->getUuid(),\n 'teamId' => $report->getTeamId(),\n 'frequency' => $report->getFrequency(),\n 'type' => $report->getType(),\n ]);\n\n $job = $report->isAskJiminnyReport()\n ? new RequestGenerateAskJiminnyReportJob($report->getUuid())\n : new RequestGenerateReportJob($report->getUuid());\n\n // $this->dispatcher->dispatch($job);\n $this->dispatcher->dispatchSync($job);\n }\n }\n\n private function getReportById(string $reportId): Collection\n {\n $report = $this->reportRepository->findByIdOrUuid($reportId);\n\n if ($report === null) {\n $this->logger->warning(self::LOG_PREFIX . ' Report not found for --report-id', ['reportId' => $reportId]);\n $this->warn(\"Report not found: {$reportId}\");\n\n return collect();\n }\n\n if (! $report->getStatus()) {\n $this->logger->warning(self::LOG_PREFIX . ' Report is inactive, processing anyway (manual override)', [\n 'reportId' => $reportId,\n 'reportUuid' => $report->getUuid(),\n ]);\n $this->warn('Report is inactive — processing anyway (manual override).');\n }\n\n $team = $report->getTeam();\n if ($team->getStatus() !== Team::STATUS_ACTIVE) {\n $this->logger->warning(self::LOG_PREFIX . ' Team is not active, processing anyway (manual override)', [\n 'reportId' => $reportId,\n 'reportUuid' => $report->getUuid(),\n 'teamId' => $report->getTeamId(),\n 'teamStatus' => $team->getStatus(),\n ]);\n $this->warn(\"Team #{$report->getTeamId()} is not active — processing anyway (manual override).\");\n }\n\n if ($report->isExpired()) {\n $this->logger->warning(self::LOG_PREFIX . ' Report is expired, processing anyway (manual override)', [\n 'reportId' => $reportId,\n 'reportUuid' => $report->getUuid(),\n 'expiresAt' => $report->getExpiresAt()?->toDateString(),\n ]);\n $this->warn('Report is expired (expires_at: ' . $report->getExpiresAt()?->toDateString() . ') — processing anyway (manual override).');\n }\n\n $now = Carbon::now();\n $frequency = $report->getFrequency();\n $wouldRunToday = match ($frequency) {\n AutomatedReportsService::FREQUENCY_DAILY => true,\n AutomatedReportsService::FREQUENCY_WEEKLY => $now->isMonday(),\n AutomatedReportsService::FREQUENCY_MONTHLY => $now->day === 1,\n AutomatedReportsService::FREQUENCY_QUARTERLY => $now->day === 1 && in_array($now->month, [1, 4, 7, 10], true),\n default => false,\n };\n\n if (! $wouldRunToday) {\n $this->logger->info(self::LOG_PREFIX . ' Report frequency would not run today, processing anyway (manual override)', [\n 'reportId' => $reportId,\n 'reportUuid' => $report->getUuid(),\n 'frequency' => $frequency,\n ]);\n $this->warn(\"Report frequency is '{$frequency}' — would NOT run today, processing anyway (manual override).\");\n }\n\n return collect([$report]);\n }\n}","depth":4,"value":"<?php\n\ndeclare(strict_types=1);\n\nnamespace Jiminny\\Console\\Commands\\Reports;\n\nuse Carbon\\Carbon;\nuse Illuminate\\Console\\Command;\nuse Illuminate\\Contracts\\Bus\\Dispatcher as BusDispatcher;\nuse Illuminate\\Support\\Collection;\nuse Jiminny\\Jobs\\AutomatedReports\\RequestGenerateAskJiminnyReportJob;\nuse Jiminny\\Jobs\\AutomatedReports\\RequestGenerateReportJob;\nuse Jiminny\\Models\\AutomatedReport;\nuse Jiminny\\Models\\Team;\nuse Jiminny\\Repositories\\AutomatedReportsRepository;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AutomatedReportsService;\nuse Psr\\Log\\LoggerInterface;\n\nclass AutomatedReportsCommand extends Command\n{\n /**\n * Log prefix for all log messages\n */\n private const string LOG_PREFIX = '[automated-reports]';\n\n /**\n * The name and signature of the console command.\n *\n * @var string\n */\n protected $signature = 'automated-reports {--report-id= : Process a specific report by ID or UUID (bypasses frequency scheduling)}';\n\n /**\n * The console command description.\n *\n * @var string\n */\n protected $description = 'Process automated reports based on their frequency (weekly, monthly, quarterly). Use --report-id to manually trigger a specific report by ID or UUID.';\n\n\n public function __construct(\n private readonly LoggerInterface $logger,\n private readonly BusDispatcher $dispatcher,\n private readonly AutomatedReportsRepository $reportRepository\n ) {\n parent::__construct();\n }\n\n /**\n * Execute the console command.\n *\n * @return int\n */\n public function handle(): int\n {\n $this->logger->info(self::LOG_PREFIX . ' Started');\n\n $now = Carbon::now();\n $isMonday = $now->isMonday();\n $isFirstDayOfMonth = $now->day === 1;\n $currentMonth = $now->month;\n\n // Check if the current month is a quarterly month (January, April, July, October)\n $isQuarterlyMonth = in_array($currentMonth, [1, 4, 7, 10], true);\n\n $this->logger->info(self::LOG_PREFIX . ' Checking conditions', [\n 'isMonday' => $isMonday,\n 'isFirstDayOfMonth' => $isFirstDayOfMonth,\n 'currentMonth' => $currentMonth,\n 'isQuarterlyMonth' => $isQuarterlyMonth,\n ]);\n\n // Process daily reports\n $this->processReports(AutomatedReportsService::FREQUENCY_DAILY);\n\n // Process weekly reports on Mondays\n if ($isMonday) {\n $this->processReports(AutomatedReportsService::FREQUENCY_WEEKLY);\n }\n\n // Process monthly reports on the first day of the month\n if ($isFirstDayOfMonth) {\n $this->processReports(AutomatedReportsService::FREQUENCY_MONTHLY);\n }\n\n // Process quarterly reports on the first day of January, April, July, and October\n if ($isFirstDayOfMonth && $isQuarterlyMonth) {\n $this->processReports(AutomatedReportsService::FREQUENCY_QUARTERLY);\n }\n\n $this->logger->info(self::LOG_PREFIX . ' Completed');\n\n return 0;\n }\n\n /**\n * Process reports for a specific frequency.\n *\n * @param string $frequency\n *\n * @return void\n */\n private function processReports(string $frequency): void\n {\n $this->logger->info(self::LOG_PREFIX . \" Processing $frequency reports\");\n\n $reportId = $this->option('report-id');\n if ($reportId !== null) {\n $reports = $this->getReportById($reportId);\n } else {\n // Get all enabled, not deleted reports with active teams for the specified frequency\n $reports = $this->reportRepository->getActiveReportsByFrequency($frequency);\n }\n\n $this->logger->info(self::LOG_PREFIX . \" Found {$reports->count()} $frequency reports to process\");\n\n /** @var AutomatedReport $report */\n foreach ($reports as $report) {\n $this->logger->info(self::LOG_PREFIX . ' Dispatching Generate Report job for report', [\n 'reportUuid' => $report->getUuid(),\n 'teamId' => $report->getTeamId(),\n 'frequency' => $report->getFrequency(),\n 'type' => $report->getType(),\n ]);\n\n $job = $report->isAskJiminnyReport()\n ? new RequestGenerateAskJiminnyReportJob($report->getUuid())\n : new RequestGenerateReportJob($report->getUuid());\n\n // $this->dispatcher->dispatch($job);\n $this->dispatcher->dispatchSync($job);\n }\n }\n\n private function getReportById(string $reportId): Collection\n {\n $report = $this->reportRepository->findByIdOrUuid($reportId);\n\n if ($report === null) {\n $this->logger->warning(self::LOG_PREFIX . ' Report not found for --report-id', ['reportId' => $reportId]);\n $this->warn(\"Report not found: {$reportId}\");\n\n return collect();\n }\n\n if (! $report->getStatus()) {\n $this->logger->warning(self::LOG_PREFIX . ' Report is inactive, processing anyway (manual override)', [\n 'reportId' => $reportId,\n 'reportUuid' => $report->getUuid(),\n ]);\n $this->warn('Report is inactive — processing anyway (manual override).');\n }\n\n $team = $report->getTeam();\n if ($team->getStatus() !== Team::STATUS_ACTIVE) {\n $this->logger->warning(self::LOG_PREFIX . ' Team is not active, processing anyway (manual override)', [\n 'reportId' => $reportId,\n 'reportUuid' => $report->getUuid(),\n 'teamId' => $report->getTeamId(),\n 'teamStatus' => $team->getStatus(),\n ]);\n $this->warn(\"Team #{$report->getTeamId()} is not active — processing anyway (manual override).\");\n }\n\n if ($report->isExpired()) {\n $this->logger->warning(self::LOG_PREFIX . ' Report is expired, processing anyway (manual override)', [\n 'reportId' => $reportId,\n 'reportUuid' => $report->getUuid(),\n 'expiresAt' => $report->getExpiresAt()?->toDateString(),\n ]);\n $this->warn('Report is expired (expires_at: ' . $report->getExpiresAt()?->toDateString() . ') — processing anyway (manual override).');\n }\n\n $now = Carbon::now();\n $frequency = $report->getFrequency();\n $wouldRunToday = match ($frequency) {\n AutomatedReportsService::FREQUENCY_DAILY => true,\n AutomatedReportsService::FREQUENCY_WEEKLY => $now->isMonday(),\n AutomatedReportsService::FREQUENCY_MONTHLY => $now->day === 1,\n AutomatedReportsService::FREQUENCY_QUARTERLY => $now->day === 1 && in_array($now->month, [1, 4, 7, 10], true),\n default => false,\n };\n\n if (! $wouldRunToday) {\n $this->logger->info(self::LOG_PREFIX . ' Report frequency would not run today, processing anyway (manual override)', [\n 'reportId' => $reportId,\n 'reportUuid' => $report->getUuid(),\n 'frequency' => $frequency,\n ]);\n $this->warn(\"Report frequency is '{$frequency}' — would NOT run today, processing anyway (manual override).\");\n }\n\n return collect([$report]);\n }\n}","role_description":"text entry area","is_enabled":true,"is_focused":true,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Project","depth":3,"role_description":"text"},{"role":"AXButton","text":"Project","depth":3,"bounds":{"left":0.0140625,"top":0.041666668,"width":0.028515626,"height":0.021527778},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"New File or Directory…","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Expand Selected","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Collapse All","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Options","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false}]...
|
-4164496969910098014
|
7004952196924009268
|
visual_change
|
accessibility
|
NULL
|
Project: faVsco.js, menu
#11894 on JY-18909-automa Project: faVsco.js, menu
#11894 on JY-18909-automated-reports-ask-jiminny, menu
Start Listening for PHP Debug Connections
RequestGenerateAskJiminnyReportJobTest
Run 'RequestGenerateAskJiminnyReportJobTest'
Debug 'RequestGenerateAskJiminnyReportJobTest'
More Actions
JetBrains AI
Search Everywhere
IDE and Project Settings
Sync Changes
Hide This Notification
Code changed:
Hide
2
1
Previous Highlighted Error
Next Highlighted Error
<?php
declare(strict_types=1);
namespace Jiminny\Services\Kiosk\AutomatedReports;
use Jiminny\Component\ActivitySearch\FilterDefinition\ActivityActualDate;
use Jiminny\Component\ActivitySearch\FilterDefinition\ActivityUpdatedDate;
use Jiminny\Component\ActivitySearch\FilterDefinition\DealInsights\ClosingPeriodFilter;
use Jiminny\Component\ActivitySearch\Service\ActivitySearch;
use Jiminny\Models\Activity\Search;
use Jiminny\Models\User;
use Jiminny\Repositories\ElasticActivityRepository;
use Jiminny\VO\Repository\OnDemandActivitySearch\Criteria;
use Psr\Log\LoggerInterface;
class AskJiminnyReportActivityService
{
private const int DEFAULT_TOP_ACTIVITIES_COUNT = 100;
private const array DATE_FILTER_KEYS = [
ActivityActualDate::PARAM_START_DATE,
ActivityActualDate::PARAM_END_DATE,
ActivityUpdatedDate::PARAM_UPDATED_FROM,
ActivityUpdatedDate::PARAM_UPDATED_TO,
ClosingPeriodFilter::KEY_START_DATE,
ClosingPeriodFilter::KEY_END_DATE,
];
public function __construct(
private readonly ActivitySearch $activitySearch,
private readonly ElasticActivityRepository $elasticRepository,
private readonly LoggerInterface $logger,
) {
}
/**
* Fetch activity IDs for a saved search, passing its filters as-is to Criteria.
* Date filters stored on the saved search are excluded; if no other filters exist,
* no date constraint is applied — matching the behaviour of getContextForAskAnythingByFilter.
*
* @return string[] Activity IDs
*/
public function getActivityIdsForSavedSearch(
Search $savedSearch,
User $user,
): array {
$requestParams = $this->buildRequestParamsFromSearch($savedSearch, $user);
$criteria = Criteria::createFromRequest(
array_merge($requestParams, ['limit' => self::DEFAULT_TOP_ACTIVITIES_COUNT, 'page' => 1]),
$user->getTimezone()
);
$filterSet = $this->activitySearch->getOnDemandPageFilterSet($criteria, $user);
$activityIds = $this->elasticRepository->onDemandSearchIdsOnly($user, $criteria, $filterSet);
$this->logger->info('[AskJiminnyReport] Fetched activity IDs for saved search', [
'saved_search_id' => $savedSearch->getId(),
'user_id' => $user->getId(),
'activity_count' => count($activityIds),
]);
return $activityIds;
}
private function buildRequestParamsFromSearch(Search $savedSearch, User $user): array
{
$params = [];
$arrayFilterKeys = $this->activitySearch->getArrayFilterKeys($user);
foreach ($savedSearch->getFilters() as $filter) {
$key = $filter->getFilterProperty();
$value = $filter->getFilterValue();
if (in_array($key, self::DATE_FILTER_KEYS, true)) {
continue;
}
if (isset($params[$key])) {
$params[$key][] = $value;
} elseif (in_array($key, $arrayFilterKeys, true)) {
$params[$key] = [$value];
} else {
$params[$key] = $value;
}
}
return $params;
}
}
Code changed:
Hide
Sync Changes
Hide This Notification
4
Previous Highlighted Error
Next Highlighted Error
<?php
declare(strict_types=1);
namespace Jiminny\Console\Commands\Reports;
use Carbon\Carbon;
use Illuminate\Console\Command;
use Illuminate\Contracts\Bus\Dispatcher as BusDispatcher;
use Illuminate\Support\Collection;
use Jiminny\Jobs\AutomatedReports\RequestGenerateAskJiminnyReportJob;
use Jiminny\Jobs\AutomatedReports\RequestGenerateReportJob;
use Jiminny\Models\AutomatedReport;
use Jiminny\Models\Team;
use Jiminny\Repositories\AutomatedReportsRepository;
use Jiminny\Services\Kiosk\AutomatedReports\AutomatedReportsService;
use Psr\Log\LoggerInterface;
class AutomatedReportsCommand extends Command
{
/**
* Log prefix for all log messages
*/
private const string LOG_PREFIX = '[automated-reports]';
/**
* The name and signature of the console command.
*
* @var string
*/
protected $signature = 'automated-reports {--report-id= : Process a specific report by ID or UUID (bypasses frequency scheduling)}';
/**
* The console command description.
*
* @var string
*/
protected $description = 'Process automated reports based on their frequency (weekly, monthly, quarterly). Use --report-id to manually trigger a specific report by ID or UUID.';
public function __construct(
private readonly LoggerInterface $logger,
private readonly BusDispatcher $dispatcher,
private readonly AutomatedReportsRepository $reportRepository
) {
parent::__construct();
}
/**
* Execute the console command.
*
* @return int
*/
public function handle(): int
{
$this->logger->info(self::LOG_PREFIX . ' Started');
$now = Carbon::now();
$isMonday = $now->isMonday();
$isFirstDayOfMonth = $now->day === 1;
$currentMonth = $now->month;
// Check if the current month is a quarterly month (January, April, July, October)
$isQuarterlyMonth = in_array($currentMonth, [1, 4, 7, 10], true);
$this->logger->info(self::LOG_PREFIX . ' Checking conditions', [
'isMonday' => $isMonday,
'isFirstDayOfMonth' => $isFirstDayOfMonth,
'currentMonth' => $currentMonth,
'isQuarterlyMonth' => $isQuarterlyMonth,
]);
// Process daily reports
$this->processReports(AutomatedReportsService::FREQUENCY_DAILY);
// Process weekly reports on Mondays
if ($isMonday) {
$this->processReports(AutomatedReportsService::FREQUENCY_WEEKLY);
}
// Process monthly reports on the first day of the month
if ($isFirstDayOfMonth) {
$this->processReports(AutomatedReportsService::FREQUENCY_MONTHLY);
}
// Process quarterly reports on the first day of January, April, July, and October
if ($isFirstDayOfMonth && $isQuarterlyMonth) {
$this->processReports(AutomatedReportsService::FREQUENCY_QUARTERLY);
}
$this->logger->info(self::LOG_PREFIX . ' Completed');
return 0;
}
/**
* Process reports for a specific frequency.
*
* @param string $frequency
*
* @return void
*/
private function processReports(string $frequency): void
{
$this->logger->info(self::LOG_PREFIX . " Processing $frequency reports");
$reportId = $this->option('report-id');
if ($reportId !== null) {
$reports = $this->getReportById($reportId);
} else {
// Get all enabled, not deleted reports with active teams for the specified frequency
$reports = $this->reportRepository->getActiveReportsByFrequency($frequency);
}
$this->logger->info(self::LOG_PREFIX . " Found {$reports->count()} $frequency reports to process");
/** @var AutomatedReport $report */
foreach ($reports as $report) {
$this->logger->info(self::LOG_PREFIX . ' Dispatching Generate Report job for report', [
'reportUuid' => $report->getUuid(),
'teamId' => $report->getTeamId(),
'frequency' => $report->getFrequency(),
'type' => $report->getType(),
]);
$job = $report->isAskJiminnyReport()
? new RequestGenerateAskJiminnyReportJob($report->getUuid())
: new RequestGenerateReportJob($report->getUuid());
// $this->dispatcher->dispatch($job);
$this->dispatcher->dispatchSync($job);
}
}
private function getReportById(string $reportId): Collection
{
$report = $this->reportRepository->findByIdOrUuid($reportId);
if ($report === null) {
$this->logger->warning(self::LOG_PREFIX . ' Report not found for --report-id', ['reportId' => $reportId]);
$this->warn("Report not found: {$reportId}");
return collect();
}
if (! $report->getStatus()) {
$this->logger->warning(self::LOG_PREFIX . ' Report is inactive, processing anyway (manual override)', [
'reportId' => $reportId,
'reportUuid' => $report->getUuid(),
]);
$this->warn('Report is inactive — processing anyway (manual override).');
}
$team = $report->getTeam();
if ($team->getStatus() !== Team::STATUS_ACTIVE) {
$this->logger->warning(self::LOG_PREFIX . ' Team is not active, processing anyway (manual override)', [
'reportId' => $reportId,
'reportUuid' => $report->getUuid(),
'teamId' => $report->getTeamId(),
'teamStatus' => $team->getStatus(),
]);
$this->warn("Team #{$report->getTeamId()} is not active — processing anyway (manual override).");
}
if ($report->isExpired()) {
$this->logger->warning(self::LOG_PREFIX . ' Report is expired, processing anyway (manual override)', [
'reportId' => $reportId,
'reportUuid' => $report->getUuid(),
'expiresAt' => $report->getExpiresAt()?->toDateString(),
]);
$this->warn('Report is expired (expires_at: ' . $report->getExpiresAt()?->toDateString() . ') — processing anyway (manual override).');
}
$now = Carbon::now();
$frequency = $report->getFrequency();
$wouldRunToday = match ($frequency) {
AutomatedReportsService::FREQUENCY_DAILY => true,
AutomatedReportsService::FREQUENCY_WEEKLY => $now->isMonday(),
AutomatedReportsService::FREQUENCY_MONTHLY => $now->day === 1,
AutomatedReportsService::FREQUENCY_QUARTERLY => $now->day === 1 && in_array($now->month, [1, 4, 7, 10], true),
default => false,
};
if (! $wouldRunToday) {
$this->logger->info(self::LOG_PREFIX . ' Report frequency would not run today, processing anyway (manual override)', [
'reportId' => $reportId,
'reportUuid' => $report->getUuid(),
'frequency' => $frequency,
]);
$this->warn("Report frequency is '{$frequency}' — would NOT run today, processing anyway (manual override).");
}
return collect([$report]);
}
}
Project
Project
New File or Directory…
Expand Selected
Collapse All
Options
Hide...
|
10893
|
|
10898
|
215
|
66
|
2026-04-14T09:02:59.769929+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157379769_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
PhpStormFileEditViewFV faVsco.js vNavigateCodeLara PhpStormFileEditViewFV faVsco.js vNavigateCodeLaravelRefactor#11894 on JY-18909-automated-reports-ask-iminny K vToolsWindowHelpProject vProphetAiv D Reports© AutomatedReportsCl© AutomatedReportsRe© AutomatedReportsSt© CreateMockAskJimir© DeleteReportComma© GenerateMarketingR© Team.php© Usage.phpD Slack_leamsD TracksO TranscriptionO TwilioD UsersVocabularyDZoom© CoachingFeedbacksUpr© Command.php© CreateDatabaseUsers.pc Daraoase oecountoi© DeleteOldAiCrmNotesC:© DeleteS3LeftoversComiDevPostmanCommand./© DiarizeViaAiParticipantk© EncryptTokensComman© EngagementStatsRegen©FeatureFlagsHelper.php© FixCrossTenantlssues.p(c) -ushro espermissionsa(e) Generatelnterna wepho• GroupSetDefaultLangua© HelperTruncateCoachin© HubspotJournalPollingC© HubspotWebhookServic©ImportRecording.php© ImportUsersFromCsvFil© IterateUsersCommand.f© JiminnyCacheClearCom© JiminnyDebugCommanc© JiminnySetEncryptedTo© JiminnyTokenInfoCommMakeslackLvecoaching(c Manacescimror eam.o© MarkBranchForEnvironn© MuteOrganizerChannel.© PhpApm.php© PropagateCoachingFeer© PurgeConferences.php© PurgeSoftDeletedOppor© PurgeSyncBatchesCom(e Recalculatebealkisksco© RemoveDeleteMarkersC(e) Remove-xoiredNudoesc removeunusecrarclo© ResetElasticSearch.php© RestoreActivityCrmProv© RestoreActivityTypeCor© ReportController.phpJiminnybebuecommana.ong© AutomatedReportsCommand.php xC AutomatedReportsRepository.phpC AutomatedReportsService.php(c CrealenelaAcuiviyevent.ono© AutomatedReportsCallbackService.php© AutomatedReportsSendCommand.php• TrackProviderInstalledEvent.php© RequestGenerateAskJiminnyReportJob.php© AddLayoutEntities.php© Team.phpCreateActivityLoggedEvent.php© RequestGenerateReportJob.php© UserPilotActivityListener.php© ActivityLogged.php© AutomatedReportResult.phpc) Automatedkeport.oneclass AutomatedReportsCommand extends Command11541351361371381391401411421431441114511401471481491501511521531541551561571581591601611621631641651l00ACCepTReTeCCprivate function getReportById(string $reportId): Collectionl1100110%170172173174175176177178179180181182183184185186187$report = $this->reportRepository->findById0rUuid($reportId);if ($report === null) €$this->logger->warning(self::LOG_PREFIX' Report not found for --report-id', ['reportid' => SreportId]);l$this->warn( string: "Report not found: [$reportId)");return coulecturif (! $report->getStatusOD €$this->Logger->warning(self::LOG_PREFIX' Report is inactive, processing anyway (manual override)'. ['reportid' => $reportId,'reportuvid' => $report-›getUvid(),1D:$this->warn( string: 'Report is inactive - processing anyway (manual override).');$team = $report->getTeam();if ($team->getStatus() !== Team::STATUS_ACTIVE) ($this->Logger->warning(self::LOG_PREFIXTeam is not active, processing anyway (manual override).ldl'reportId' => $reportId,'reportuvid' => $report->getUvid(),'teamId' => $report->getTeamId(),'teamStatus'→>$*ID:Cascade & VlCommand &1$this->warn( string: "Team #{$report->getTeamId(} is not active - processing anyway (manual override).");if ($report->isExpired() €$this->logger->warning(self::LOG_PREFIX' Report is expired, processing anyway(manual override)'. [redorelon→ reooreLon"reрorcuula"=> $report->getUvidD,'expiresAt'=> $report->getExpiresAt()?->toDateStringO,1D:$this->warn( string: 'Report is expired (expires_at:' Sreport->getExpiresAt()?->toDateString() .') - processing anyway (manual overrSfequenar e Srepory-s getFrequeney 0):)$wouldRunToday = match ($frequency) {Automatedkeportsservice::FREQUENCY_bALLy p> crue,AutomatedReportsService::FREQUENCY_WEEKLY => $now->isMondayO),AutomatedReportsService::FREQUENCY_MONTHLY => $now->day === 1,AutomatedReportsService::FREQUENCY_QUARTERLY => $now->day === 1 && in_array($now->month, [1, 4, 7, 10].| strict: true),default => false,lif C! $wouLdRunToday) l$this->Logger->info(self::LOG_PREFIX. Report frequency would not run today, processing anyway (manual override)'. ['reportId' => SreportId,reportuuid'l => Sreport-Sgeeu&do,+v Accept File %+X Reject File 1 9 €+ 2 of 2 files →Windsurf changelog 2.12.21: A new version is available. // View Changelog (today 10:33)= custom.log= laravel.logs Sr iminny@localnosuiA HS_local [jiminny@localhost]A console (PROD]4 console [EU]4 console [STAGING)) AskJiminnyReportActivityService.php x© RequestGenerateAskJiminnyReportJobTest×2 21 ^class AskJiminnyReportActiviprivate const int DEFAULprivate const array DATEActivityActualDate:ActivityActualDate::ActivityUpdatedDate:ActivityUpdatedDate:ClosingPeriodFilter:ClosingPeriodFilter:public function _constrprivate readonly Actprivate readonly Elaprivate readonly LogDf..F* Fetch activity IDs fo* Date filters stored* no date constraint .43* Creturn string[] Acti*/public function getActivSearch $savedSearchUser $user,): array {$requestParams = $th$criteria = Criteriaarray_merge($req$user->getTimezo);$filterSet = $this->$activityIds = $this$this->logger->info('saved_search_id'user_id'= Sus'activity_count'1);return $activityIds;, 0lablSupport Daily - in 2h 58mA100% C•Tue 14 Apr 12:02:59• RequestGenerateAskJiminnyReportJobTest-CascadeFixing ReportControlleAutomated Report Ma• Automated Report Lp#L211 and add validation with logs [EMAIL]#L209-213wLet me read the current state of the command file first.kead Automateakeportscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports. I need to implement getReportById properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycoLlection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucoma ceakepo rtscommand.ohoRead AutomatecRenortscommand.onoThe file is now only 140 lines — the user removed the processSingleReport/warnIfNotApplicableForSchedulemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:1 Aulomalecreoorsreroslorv.onoAlso tix the import order (Collection should be betore the models alphabetically):• AutomatedReportsCommand.php+1 -1AutomatedReportsCommand.php+1 -1vone. oummary or changes.AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric string → find() bv int ID• Non-numeric → UUID lookup via toOptimized()Both use withTrashed() so soft-deleted reports are findable manuallygetReportById() (AutomatedReportsCommand. php:135-194) - checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violation,but sull rerurns the repor so processing continues.CheckBehaviour on failINot Tounewarhina loe + terminal wam, rerurns empty collection sklos processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + terninal warn, continuesExoiredFrequency wouldn't run todaywarning log + terminal warn, continuesinfo log + terminal warn, continuesC1l -2 files +70 ›Ask anything (XAL)+ <> CodeClaude Sonnet 4.6Reject allAccept allWinasun leams135:05uir-o( 4 spaces...
|
NULL
|
8001592529400317771
|
NULL
|
click
|
ocr
|
NULL
|
PhpStormFileEditViewFV faVsco.js vNavigateCodeLara PhpStormFileEditViewFV faVsco.js vNavigateCodeLaravelRefactor#11894 on JY-18909-automated-reports-ask-iminny K vToolsWindowHelpProject vProphetAiv D Reports© AutomatedReportsCl© AutomatedReportsRe© AutomatedReportsSt© CreateMockAskJimir© DeleteReportComma© GenerateMarketingR© Team.php© Usage.phpD Slack_leamsD TracksO TranscriptionO TwilioD UsersVocabularyDZoom© CoachingFeedbacksUpr© Command.php© CreateDatabaseUsers.pc Daraoase oecountoi© DeleteOldAiCrmNotesC:© DeleteS3LeftoversComiDevPostmanCommand./© DiarizeViaAiParticipantk© EncryptTokensComman© EngagementStatsRegen©FeatureFlagsHelper.php© FixCrossTenantlssues.p(c) -ushro espermissionsa(e) Generatelnterna wepho• GroupSetDefaultLangua© HelperTruncateCoachin© HubspotJournalPollingC© HubspotWebhookServic©ImportRecording.php© ImportUsersFromCsvFil© IterateUsersCommand.f© JiminnyCacheClearCom© JiminnyDebugCommanc© JiminnySetEncryptedTo© JiminnyTokenInfoCommMakeslackLvecoaching(c Manacescimror eam.o© MarkBranchForEnvironn© MuteOrganizerChannel.© PhpApm.php© PropagateCoachingFeer© PurgeConferences.php© PurgeSoftDeletedOppor© PurgeSyncBatchesCom(e Recalculatebealkisksco© RemoveDeleteMarkersC(e) Remove-xoiredNudoesc removeunusecrarclo© ResetElasticSearch.php© RestoreActivityCrmProv© RestoreActivityTypeCor© ReportController.phpJiminnybebuecommana.ong© AutomatedReportsCommand.php xC AutomatedReportsRepository.phpC AutomatedReportsService.php(c CrealenelaAcuiviyevent.ono© AutomatedReportsCallbackService.php© AutomatedReportsSendCommand.php• TrackProviderInstalledEvent.php© RequestGenerateAskJiminnyReportJob.php© AddLayoutEntities.php© Team.phpCreateActivityLoggedEvent.php© RequestGenerateReportJob.php© UserPilotActivityListener.php© ActivityLogged.php© AutomatedReportResult.phpc) Automatedkeport.oneclass AutomatedReportsCommand extends Command11541351361371381391401411421431441114511401471481491501511521531541551561571581591601611621631641651l00ACCepTReTeCCprivate function getReportById(string $reportId): Collectionl1100110%170172173174175176177178179180181182183184185186187$report = $this->reportRepository->findById0rUuid($reportId);if ($report === null) €$this->logger->warning(self::LOG_PREFIX' Report not found for --report-id', ['reportid' => SreportId]);l$this->warn( string: "Report not found: [$reportId)");return coulecturif (! $report->getStatusOD €$this->Logger->warning(self::LOG_PREFIX' Report is inactive, processing anyway (manual override)'. ['reportid' => $reportId,'reportuvid' => $report-›getUvid(),1D:$this->warn( string: 'Report is inactive - processing anyway (manual override).');$team = $report->getTeam();if ($team->getStatus() !== Team::STATUS_ACTIVE) ($this->Logger->warning(self::LOG_PREFIXTeam is not active, processing anyway (manual override).ldl'reportId' => $reportId,'reportuvid' => $report->getUvid(),'teamId' => $report->getTeamId(),'teamStatus'→>$*ID:Cascade & VlCommand &1$this->warn( string: "Team #{$report->getTeamId(} is not active - processing anyway (manual override).");if ($report->isExpired() €$this->logger->warning(self::LOG_PREFIX' Report is expired, processing anyway(manual override)'. [redorelon→ reooreLon"reрorcuula"=> $report->getUvidD,'expiresAt'=> $report->getExpiresAt()?->toDateStringO,1D:$this->warn( string: 'Report is expired (expires_at:' Sreport->getExpiresAt()?->toDateString() .') - processing anyway (manual overrSfequenar e Srepory-s getFrequeney 0):)$wouldRunToday = match ($frequency) {Automatedkeportsservice::FREQUENCY_bALLy p> crue,AutomatedReportsService::FREQUENCY_WEEKLY => $now->isMondayO),AutomatedReportsService::FREQUENCY_MONTHLY => $now->day === 1,AutomatedReportsService::FREQUENCY_QUARTERLY => $now->day === 1 && in_array($now->month, [1, 4, 7, 10].| strict: true),default => false,lif C! $wouLdRunToday) l$this->Logger->info(self::LOG_PREFIX. Report frequency would not run today, processing anyway (manual override)'. ['reportId' => SreportId,reportuuid'l => Sreport-Sgeeu&do,+v Accept File %+X Reject File 1 9 €+ 2 of 2 files →Windsurf changelog 2.12.21: A new version is available. // View Changelog (today 10:33)= custom.log= laravel.logs Sr iminny@localnosuiA HS_local [jiminny@localhost]A console (PROD]4 console [EU]4 console [STAGING)) AskJiminnyReportActivityService.php x© RequestGenerateAskJiminnyReportJobTest×2 21 ^class AskJiminnyReportActiviprivate const int DEFAULprivate const array DATEActivityActualDate:ActivityActualDate::ActivityUpdatedDate:ActivityUpdatedDate:ClosingPeriodFilter:ClosingPeriodFilter:public function _constrprivate readonly Actprivate readonly Elaprivate readonly LogDf..F* Fetch activity IDs fo* Date filters stored* no date constraint .43* Creturn string[] Acti*/public function getActivSearch $savedSearchUser $user,): array {$requestParams = $th$criteria = Criteriaarray_merge($req$user->getTimezo);$filterSet = $this->$activityIds = $this$this->logger->info('saved_search_id'user_id'= Sus'activity_count'1);return $activityIds;, 0lablSupport Daily - in 2h 58mA100% C•Tue 14 Apr 12:02:59• RequestGenerateAskJiminnyReportJobTest-CascadeFixing ReportControlleAutomated Report Ma• Automated Report Lp#L211 and add validation with logs [EMAIL]#L209-213wLet me read the current state of the command file first.kead Automateakeportscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports. I need to implement getReportById properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycoLlection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucoma ceakepo rtscommand.ohoRead AutomatecRenortscommand.onoThe file is now only 140 lines — the user removed the processSingleReport/warnIfNotApplicableForSchedulemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:1 Aulomalecreoorsreroslorv.onoAlso tix the import order (Collection should be betore the models alphabetically):• AutomatedReportsCommand.php+1 -1AutomatedReportsCommand.php+1 -1vone. oummary or changes.AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric string → find() bv int ID• Non-numeric → UUID lookup via toOptimized()Both use withTrashed() so soft-deleted reports are findable manuallygetReportById() (AutomatedReportsCommand. php:135-194) - checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violation,but sull rerurns the repor so processing continues.CheckBehaviour on failINot Tounewarhina loe + terminal wam, rerurns empty collection sklos processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + terninal warn, continuesExoiredFrequency wouldn't run todaywarning log + terminal warn, continuesinfo log + terminal warn, continuesC1l -2 files +70 ›Ask anything (XAL)+ <> CodeClaude Sonnet 4.6Reject allAccept allWinasun leams135:05uir-o( 4 spaces...
|
NULL
|
|
10899
|
215
|
67
|
2026-04-14T09:03:02.379123+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157382379_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
PhpStormFileEditFV faVsco.js vViewNavigateCodeLara PhpStormFileEditFV faVsco.js vViewNavigateCodeLaravelRefactor#11894 on JY-18909-automated-reports-ask-liminny k vToolsWindowHelpProject vProphetAiv D Reports© AutomatedReportsCl© AutomatedReportsRe© AutomatedReportsSt© CreateMockAskJimir© DeleteReportComma© GenerateMarketingR© Team.php© Usage.phpD Slack_leamsD TracksO TranscriptionO TwilioD UsersVocabularyDZoom© CoachingFeedbacksUpr© Command.php© CreateDatabaseUsers.pc Daraoase oecountoi© DeleteOldAiCrmNotesC:© DeleteS3LeftoversComiDevPostmanCommand./© DiarizeViaAiParticipantk© EncryptTokensComman© EngagementStatsRegen©FeatureFlagsHelper.php© FixCrossTenantlssues.p© FlushRolesPermissionsC© GeneratelnternalWebho• GroupSetDefaultLangua© HelperTruncateCoachin© HubspotJournalPollingC© HubspotWebhookServic©ImportRecording.php© ImportUsersFromCsvFil© IterateUsersCommand.p(©) JiminnyCacheClearCom(c) minnv Deouacommanc(c)Jminnvser-ncrvotedio(c) Jiminny okenintocomm© MakeSlackLiveCoaching© ManageScimForTeam.p© MarkBranchForEnvironn© MuteOrganizerChannel.© PhpApm.php© PropagateCoachingFeer© PurgeConferences.php© PurgeSoftDeletedOppor© PurgeSyncBatchesCom(e RecalculatebealkiskscoC) RemoveDeleteMarkersd(C) RemoveExpiredNudaes© RemoveUnusedParticip:© ResetElasticSearch.php© RestoreActivityCrmProv© RestoreActivityTypeCor© ReportController.phpJiminnyDeouecommana.ongAutomaleakeportscommana.ong© AutomatedReportsSendCommand.phpC AutomatedReportsRepository.phpC AutomatedReportsService.php(c CrealenelaAcuiviyevent.ono• TrackProviderInstalledEvent.php© RequestGenerateAskJiminnyReportJob.php© UserPilotActivityListener.php© ActivityLogged.php© AutomatedReportsCallbackService.php© AutomatedReportResult.php© AutomatedReport.phpclass AutomatedReportsCommand extends Commandprivate function getReportById(string $reportId): Collection146147148if (! $report->getStatus()) €$this->Logger->warning(self::LOG_PREFIX*' Report is inactive, processing anyway (manual override)'. Eireoorclo so oreoorcro.redorcuuo"=> $report->getUuid(),© AddLayoutEntities.php© Team.phpCreateActivityLoggedEvent.php• RequestGenerateReportJob.php1501511521531541551561571581591601611621631641651661671681691701711721175174175176177179181183184185186187188189190191192193194195196I):$this->warn( string: |'Report is inactive - processing anyway (manual override).*P:$team = $report->getTeam();if ($team->getStatus() !== Team: :STATUS_ACTIVE) €$this->logger->warning(self::LOG_PREFIXTeam is not active, processing anyway (manual override)','reportId' => SreportId,'reportuvid' => $report->getUvid(),"Leamid" => preport-›gecleamta.Leallbtatus"→preall->getstacus.I):$this->warn( string: "Team #[$report->getTeamId()} is not active - processing anyway (manual override)."P:lif ($report->isExpired() €$this->logger->warning(self::LOG_PREFIX|!||' Report is expired, processing anyway (manual override)'|.|E|'reportId' => SreportId,"reportUvid'=> $report->getUvid(),'expiresAt'→> $report->getExpiresAt()?->toDateStringQ,ID:$this->warn( string:Cascade & XICommand &1Sreport->getExpiresAt()P→>toDateString() • |'P - processing anyway (manual overrid 40$now = Carbon: : now();$frequency = $report->getFrequency();$wouldRunToday = match ($frequency) {AutomatedReportsService::FREQUENCY_DAILY => true,AutomatedReportsService::FREQUENCY_WEEKLY => $now->isMonday() ,AutomatedReportsService: : FREQUENCY_MONTHLY => $now->day === 1,AutomatedReportsService: :FREQUENCY_QUARTERLY => $now->day === 1 && in_array($now->month, [1, 4, 7, 10],stict wruen.default = false,if (! $wouLdRunToday) €$this->logger->info(self::LOG_PREFIX . ' Report frequency would not run today, processing anyway (manual override)', ['reportId' => $reportId,'reportUuid' => $report->getUuid(),$frequency,1):$this->warp ( string: "Report frequency is '($frequency}' - would NOT run today, processing anyway (manval override).");return collect([$report]):T 1 of 6 edits +v Accept File % +X Reject File 0*€+ 2 of 2 files →Windsurf changelog 2.12.21: A new version is available. // View Changelog (today 10:33)= custom.log= laravel.logs Sr iminny@localnosuiA HS_local [jiminny@localhost]s console ProDI4 console [EU]console [STAGING) AskJiminnyReportActivityService.php x© RequestGenerateAskJiminnyReportJobTestX281лclass AskJiminnyReportActiviprivate const int DEFAULprivate const array DATEActivityActualDate:ActivityActualDate::ActivityUpdatedDate:ActivityUpdatedDate:ClosingPeriodFilter:ClosingPeriodFilter:public function __constrprivate readonly Actprivate readonly Elaprivate readonly LogDf..F* Fetch activity IDs fo* Date filters stored o* no date constraint .* Creturn string[] Acti*/public function getActivSearch $savedSearchUser $user,): array {$requestParams = $th$criteria = Criteriaarray_merge($reqnuser->certnezo);$filterSet = $this->$activityIds = $this$this->logger->info('saved_search_id'user_id'= Sus'activity_count'1);return $activityIds;Support Daily - in 2 h 57mA100% C•Tue 14 Apr 12:03:02RequestGenerateAskJiminnyReportJobTestCascadeFixing ReportControlleAutomated Report MarAutomated Report Lip#L211 and add validation with logs [EMAIL]#L209-213wLet me read the current state of the command file first.kead Automateakeportscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports. I need to implement getReportById properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycoLlection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucomaceakepo rtscommand.onpRead AutomatecRenortscommand.onoThe file is now only 140 lines — the user removed the processSingleReport/warnIfNotApplicableForSchedulemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:• AutomatedReportsRepository.phpAlso tix the import order (Collection should be before the models alphabetically):• AutomatedReportsCommand.php+1 -1AutomatedReportsCommand.php+1 -1vone. oummary or changes.AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric string → find() bv int ID• Non-numeric → UUID lookup via toOptimized()Both use withTrashed() so soft-deleted reports are findable manuallygetReportById() (AutomatedReportsCommand. php:135-194) - checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violation,but sull rerurns the repor so processing continues.CheckBehaviour on failINot Tounewarhina loe + terminal wam, rerurns empty collection sklos processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino loo + terminal warn, continuesExoiredFrequency wouldn't run todaywarning log + terminal warn, continuesinfo log + terminal warn, continuesC1l -2 files +70 ›Ask anything (XAL)+ <> CodeClaude Sonnet 4.6Reject allAccept allwinasun leams19b:lgol chars, 22 line breaksuir-o( 4 spaces...
|
NULL
|
-6394312236682759465
|
NULL
|
visual_change
|
ocr
|
NULL
|
PhpStormFileEditFV faVsco.js vViewNavigateCodeLara PhpStormFileEditFV faVsco.js vViewNavigateCodeLaravelRefactor#11894 on JY-18909-automated-reports-ask-liminny k vToolsWindowHelpProject vProphetAiv D Reports© AutomatedReportsCl© AutomatedReportsRe© AutomatedReportsSt© CreateMockAskJimir© DeleteReportComma© GenerateMarketingR© Team.php© Usage.phpD Slack_leamsD TracksO TranscriptionO TwilioD UsersVocabularyDZoom© CoachingFeedbacksUpr© Command.php© CreateDatabaseUsers.pc Daraoase oecountoi© DeleteOldAiCrmNotesC:© DeleteS3LeftoversComiDevPostmanCommand./© DiarizeViaAiParticipantk© EncryptTokensComman© EngagementStatsRegen©FeatureFlagsHelper.php© FixCrossTenantlssues.p© FlushRolesPermissionsC© GeneratelnternalWebho• GroupSetDefaultLangua© HelperTruncateCoachin© HubspotJournalPollingC© HubspotWebhookServic©ImportRecording.php© ImportUsersFromCsvFil© IterateUsersCommand.p(©) JiminnyCacheClearCom(c) minnv Deouacommanc(c)Jminnvser-ncrvotedio(c) Jiminny okenintocomm© MakeSlackLiveCoaching© ManageScimForTeam.p© MarkBranchForEnvironn© MuteOrganizerChannel.© PhpApm.php© PropagateCoachingFeer© PurgeConferences.php© PurgeSoftDeletedOppor© PurgeSyncBatchesCom(e RecalculatebealkiskscoC) RemoveDeleteMarkersd(C) RemoveExpiredNudaes© RemoveUnusedParticip:© ResetElasticSearch.php© RestoreActivityCrmProv© RestoreActivityTypeCor© ReportController.phpJiminnyDeouecommana.ongAutomaleakeportscommana.ong© AutomatedReportsSendCommand.phpC AutomatedReportsRepository.phpC AutomatedReportsService.php(c CrealenelaAcuiviyevent.ono• TrackProviderInstalledEvent.php© RequestGenerateAskJiminnyReportJob.php© UserPilotActivityListener.php© ActivityLogged.php© AutomatedReportsCallbackService.php© AutomatedReportResult.php© AutomatedReport.phpclass AutomatedReportsCommand extends Commandprivate function getReportById(string $reportId): Collection146147148if (! $report->getStatus()) €$this->Logger->warning(self::LOG_PREFIX*' Report is inactive, processing anyway (manual override)'. Eireoorclo so oreoorcro.redorcuuo"=> $report->getUuid(),© AddLayoutEntities.php© Team.phpCreateActivityLoggedEvent.php• RequestGenerateReportJob.php1501511521531541551561571581591601611621631641651661671681691701711721175174175176177179181183184185186187188189190191192193194195196I):$this->warn( string: |'Report is inactive - processing anyway (manual override).*P:$team = $report->getTeam();if ($team->getStatus() !== Team: :STATUS_ACTIVE) €$this->logger->warning(self::LOG_PREFIXTeam is not active, processing anyway (manual override)','reportId' => SreportId,'reportuvid' => $report->getUvid(),"Leamid" => preport-›gecleamta.Leallbtatus"→preall->getstacus.I):$this->warn( string: "Team #[$report->getTeamId()} is not active - processing anyway (manual override)."P:lif ($report->isExpired() €$this->logger->warning(self::LOG_PREFIX|!||' Report is expired, processing anyway (manual override)'|.|E|'reportId' => SreportId,"reportUvid'=> $report->getUvid(),'expiresAt'→> $report->getExpiresAt()?->toDateStringQ,ID:$this->warn( string:Cascade & XICommand &1Sreport->getExpiresAt()P→>toDateString() • |'P - processing anyway (manual overrid 40$now = Carbon: : now();$frequency = $report->getFrequency();$wouldRunToday = match ($frequency) {AutomatedReportsService::FREQUENCY_DAILY => true,AutomatedReportsService::FREQUENCY_WEEKLY => $now->isMonday() ,AutomatedReportsService: : FREQUENCY_MONTHLY => $now->day === 1,AutomatedReportsService: :FREQUENCY_QUARTERLY => $now->day === 1 && in_array($now->month, [1, 4, 7, 10],stict wruen.default = false,if (! $wouLdRunToday) €$this->logger->info(self::LOG_PREFIX . ' Report frequency would not run today, processing anyway (manual override)', ['reportId' => $reportId,'reportUuid' => $report->getUuid(),$frequency,1):$this->warp ( string: "Report frequency is '($frequency}' - would NOT run today, processing anyway (manval override).");return collect([$report]):T 1 of 6 edits +v Accept File % +X Reject File 0*€+ 2 of 2 files →Windsurf changelog 2.12.21: A new version is available. // View Changelog (today 10:33)= custom.log= laravel.logs Sr iminny@localnosuiA HS_local [jiminny@localhost]s console ProDI4 console [EU]console [STAGING) AskJiminnyReportActivityService.php x© RequestGenerateAskJiminnyReportJobTestX281лclass AskJiminnyReportActiviprivate const int DEFAULprivate const array DATEActivityActualDate:ActivityActualDate::ActivityUpdatedDate:ActivityUpdatedDate:ClosingPeriodFilter:ClosingPeriodFilter:public function __constrprivate readonly Actprivate readonly Elaprivate readonly LogDf..F* Fetch activity IDs fo* Date filters stored o* no date constraint .* Creturn string[] Acti*/public function getActivSearch $savedSearchUser $user,): array {$requestParams = $th$criteria = Criteriaarray_merge($reqnuser->certnezo);$filterSet = $this->$activityIds = $this$this->logger->info('saved_search_id'user_id'= Sus'activity_count'1);return $activityIds;Support Daily - in 2 h 57mA100% C•Tue 14 Apr 12:03:02RequestGenerateAskJiminnyReportJobTestCascadeFixing ReportControlleAutomated Report MarAutomated Report Lip#L211 and add validation with logs [EMAIL]#L209-213wLet me read the current state of the command file first.kead Automateakeportscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports. I need to implement getReportById properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycoLlection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucomaceakepo rtscommand.onpRead AutomatecRenortscommand.onoThe file is now only 140 lines — the user removed the processSingleReport/warnIfNotApplicableForSchedulemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:• AutomatedReportsRepository.phpAlso tix the import order (Collection should be before the models alphabetically):• AutomatedReportsCommand.php+1 -1AutomatedReportsCommand.php+1 -1vone. oummary or changes.AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric string → find() bv int ID• Non-numeric → UUID lookup via toOptimized()Both use withTrashed() so soft-deleted reports are findable manuallygetReportById() (AutomatedReportsCommand. php:135-194) - checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violation,but sull rerurns the repor so processing continues.CheckBehaviour on failINot Tounewarhina loe + terminal wam, rerurns empty collection sklos processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino loo + terminal warn, continuesExoiredFrequency wouldn't run todaywarning log + terminal warn, continuesinfo log + terminal warn, continuesC1l -2 files +70 ›Ask anything (XAL)+ <> CodeClaude Sonnet 4.6Reject allAccept allwinasun leams19b:lgol chars, 22 line breaksuir-o( 4 spaces...
|
10898
|
|
10900
|
215
|
68
|
2026-04-14T09:03:05.438317+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157385438_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
PhpStormFileEditViewFV faVsco.js vNavigateCodeLara PhpStormFileEditViewFV faVsco.js vNavigateCodeLaravelRefactor#11894 on JY-18909-automated-reports-ask-iminny K vToolsWindowHelpProject vProphetAiv D Reports© AutomatedReportsCl© AutomatedReportsRe© AutomatedReportsSt© CreateMockAskJimir© DeleteReportComma© GenerateMarketingR© Team.php© Usage.phpD Slack_leamsD TracksO TranscriptionO TwilioD UsersVocabularyDZoom© CoachingFeedbacksUpr© Command.php© CreateDatabaseUsers.pc Daraoase oecountoi© DeleteOldAiCrmNotesC:© DeleteS3LeftoversComiDevPostmanCommand./© DiarizeViaAiParticipantk© EncryptTokensComman© EngagementStatsRegen©FeatureFlagsHelper.php© FixCrossTenantissues.p© FlushRolesPermissionsC© GeneratelnternalWebho• GroupSetDefaultLangua© HelperTruncateCoachin© HubspotJournalPollingC© HubspotWebhookServic©ImportRecording.php@ Imnortli|sercFromCcvEil© IterateUsersCommand.c)Jiminnvcacheclearcom(c) minnv Deouacommanc(c)Jminnvser-ncrvotedio(c) Jiminny okenintocomm© MakeSlackLiveCoaching© ManageScimForTeam.p© MarkBranchForEnvironn© MuteOrganizerChannel.© PhpApm.php© PropagateCoachingFeer© PurgeConferences.php© PurgeSoftDeletedOppor© PurgeSyncBatchesCom(e RecalculatebealkiskscoC) RemoveDeleteMarkersd(e) Remove-xoiredNudoes© RemoveUnusedParticip:© ResetElasticSearch.php© RestoreActivityCrmProv© RestoreActivityTypeCor© ReportController.phpJiminnyDeouecommana.ongAutomaleakeportscommana.ong© AutomatedReportsSendCommand.phpAutomatedReportsRepository.phpC AutomatedReportsService.php© UserPilotActivityListener.php© ActivityLogged.phpc CrealenelaAcuiviyevent.ono© AutomatedReportsCallbackService.php• TrackProviderInstalledEvent.php© RequestGenerateAskJiminnyReportJob.php© AutomatedReportResult.phpc) Automatedkeport.oneclass AutomatedReportsCommand extends Commandprivate function processReports(string $frequency): void© AddLayoutEntities.php© Team.phpCreateActivityLoggedEvent.php• RequestGenerateReportJob.php1321331154Rejectprivate function getReportById(string $reportId): Collection1150137138139140142143144145146147148149150151152153154155156158159160161162163164165166167168169170171172173174117511178$report = $this->reportRepository->findById0rUuid($reportId);if ($report === null) €$this->logger->warning(self::LOG_PREFIX .' Report not found for --report-id'. ['reportid' => $reportId]);$this->warn( string: "Report not found: {$reportId}");return collect():if C! $report->getStatus()) k$this->Logger->warning(self::LOG_PREFIX •' Report is inactive, processing anyway (manual override)'" ['reportId' = SreportId,'reportUvid' => $report->getUvid(),1):$this->warn( string: 'Report is inactive - processing anyway (manual override).'):$team = $report->getTeam();if ($team->getStatus() !== Team::STATUS_ACTIVE)$this->logger->warning(self::LOG_PREFIX'reportId' => $rep'reportuuid' => $1Cascade & XICommand Sel'teamId' => $report->getTeamIdO).'teamstatus'' => $team->getstatus(),Team is not active, processing anyway (manual override)'.[I);$this->warn( string: "Team #{$report->getTeamId(} is not active - processing anyway (manual override) .");|if ($report->isExpiredO) {$this->Logger->warning(self::LOG_PREFIX." Report is expired, processing anyway (manual override)". ['reportId' => $reportId,'reportUuid' => $report->getUuidO,'expiresAt'| => $report->getExpiresAt()?->toDateString().|I):$this->warn( string: |'Report is expired (expires_at: |' • Sreport->getExpiresAt(?->toDateString( •') - processing anyway (manual overridreturn collect([$report]);1 eal+ v Accept File %=X Reject File t3€+ 2 of 2 files →Windsurf changelog 2.12.21: A new version is available. // View Changelog (today 10:33)= custom.log= laravel.logA SF [jiminny@localhost]A HS_local [jiminny@localhost]A console (PROD]Al console [EU]4 console [STAGING)) AskJiminnyReportActivityService.php x© RequestGenerateAskJiminnyReportJobTest×2 21 ^class AskJiminnyReportActiviprivate const int DEFAULprivate const array DATEActivityActualDate:ActivityActualDate::ActivityUpdatedDate:ActivityUpdatedDate:ClosingPeriodFilter:ClosingPeriodFilter:public function __constrprivate readonly Actprivate readonly Elaprivate readonly Log)4...3* Fetch activity IDs fo* Date filters stored* no date constraint .* Creturn string[] Acti*/public function getActivSearch $savedSearchUser $user,): array {$requestParams = $th$criteria = Criteriaarray_merge($reqnuser->certnezo$filterSet = $this->$activityIds = $this$this->logger->info(' saved_search_id'user_id'= Sus'activity_count'1);return $activityIds;Support Daily - in 2 h 57mA100% C•Tue 14 Apr 12:03:05RequestGenerateAskJiminnyReportJobTestCascadeFixing ReportControlleAutomated Report Mar• Automated Report Lip#L211 and add validation with logs [EMAIL]#L209-213wLet me read the current state of the command file first.kead Automaleakeporscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports. I need to implement getReportById properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycoLlection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucoma ceakepo rtscommand.ohoRead AutomatecRenortscommand.onoThe file is now only 140 lines — the user removed the processSingleReport/warnIfNotApplicableForSchedulemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:• AutomatedReportsRepository.phpAlso tix the import order (Collection should be betore the models alphabetically):• AutomatedReportsCommand.php+1 -1AutomatedReportsCommand.php+1 -1Done. Summary of changes:AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric string → find() bv int ID• Non-numeric → UUID lookup via toOptimized()Both use withTrashed() so soft-deleted reports are findable manuallygetReportById() (AutomatedReportsCommand. php:135-194) - checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violation,but sull rerurns the repor so processing continues.CheckBehaviour on failINot Tounewarhina loe + terminal wam, rerurns empty collection sklos processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + ternnal warn, continuesExoiredFrequency wouldn't run todaywarning log + terminal warn, continuesinfo log + terminal warn, continuesC1l -2 files +52 ›Ask anything (XAL)+ <> CodeClaude Sonnet 4.6Reject allAccept allWinasun leams1/4.uir-o( 4 spaces...
|
NULL
|
8326474074468691993
|
NULL
|
visual_change
|
ocr
|
NULL
|
PhpStormFileEditViewFV faVsco.js vNavigateCodeLara PhpStormFileEditViewFV faVsco.js vNavigateCodeLaravelRefactor#11894 on JY-18909-automated-reports-ask-iminny K vToolsWindowHelpProject vProphetAiv D Reports© AutomatedReportsCl© AutomatedReportsRe© AutomatedReportsSt© CreateMockAskJimir© DeleteReportComma© GenerateMarketingR© Team.php© Usage.phpD Slack_leamsD TracksO TranscriptionO TwilioD UsersVocabularyDZoom© CoachingFeedbacksUpr© Command.php© CreateDatabaseUsers.pc Daraoase oecountoi© DeleteOldAiCrmNotesC:© DeleteS3LeftoversComiDevPostmanCommand./© DiarizeViaAiParticipantk© EncryptTokensComman© EngagementStatsRegen©FeatureFlagsHelper.php© FixCrossTenantissues.p© FlushRolesPermissionsC© GeneratelnternalWebho• GroupSetDefaultLangua© HelperTruncateCoachin© HubspotJournalPollingC© HubspotWebhookServic©ImportRecording.php@ Imnortli|sercFromCcvEil© IterateUsersCommand.c)Jiminnvcacheclearcom(c) minnv Deouacommanc(c)Jminnvser-ncrvotedio(c) Jiminny okenintocomm© MakeSlackLiveCoaching© ManageScimForTeam.p© MarkBranchForEnvironn© MuteOrganizerChannel.© PhpApm.php© PropagateCoachingFeer© PurgeConferences.php© PurgeSoftDeletedOppor© PurgeSyncBatchesCom(e RecalculatebealkiskscoC) RemoveDeleteMarkersd(e) Remove-xoiredNudoes© RemoveUnusedParticip:© ResetElasticSearch.php© RestoreActivityCrmProv© RestoreActivityTypeCor© ReportController.phpJiminnyDeouecommana.ongAutomaleakeportscommana.ong© AutomatedReportsSendCommand.phpAutomatedReportsRepository.phpC AutomatedReportsService.php© UserPilotActivityListener.php© ActivityLogged.phpc CrealenelaAcuiviyevent.ono© AutomatedReportsCallbackService.php• TrackProviderInstalledEvent.php© RequestGenerateAskJiminnyReportJob.php© AutomatedReportResult.phpc) Automatedkeport.oneclass AutomatedReportsCommand extends Commandprivate function processReports(string $frequency): void© AddLayoutEntities.php© Team.phpCreateActivityLoggedEvent.php• RequestGenerateReportJob.php1321331154Rejectprivate function getReportById(string $reportId): Collection1150137138139140142143144145146147148149150151152153154155156158159160161162163164165166167168169170171172173174117511178$report = $this->reportRepository->findById0rUuid($reportId);if ($report === null) €$this->logger->warning(self::LOG_PREFIX .' Report not found for --report-id'. ['reportid' => $reportId]);$this->warn( string: "Report not found: {$reportId}");return collect():if C! $report->getStatus()) k$this->Logger->warning(self::LOG_PREFIX •' Report is inactive, processing anyway (manual override)'" ['reportId' = SreportId,'reportUvid' => $report->getUvid(),1):$this->warn( string: 'Report is inactive - processing anyway (manual override).'):$team = $report->getTeam();if ($team->getStatus() !== Team::STATUS_ACTIVE)$this->logger->warning(self::LOG_PREFIX'reportId' => $rep'reportuuid' => $1Cascade & XICommand Sel'teamId' => $report->getTeamIdO).'teamstatus'' => $team->getstatus(),Team is not active, processing anyway (manual override)'.[I);$this->warn( string: "Team #{$report->getTeamId(} is not active - processing anyway (manual override) .");|if ($report->isExpiredO) {$this->Logger->warning(self::LOG_PREFIX." Report is expired, processing anyway (manual override)". ['reportId' => $reportId,'reportUuid' => $report->getUuidO,'expiresAt'| => $report->getExpiresAt()?->toDateString().|I):$this->warn( string: |'Report is expired (expires_at: |' • Sreport->getExpiresAt(?->toDateString( •') - processing anyway (manual overridreturn collect([$report]);1 eal+ v Accept File %=X Reject File t3€+ 2 of 2 files →Windsurf changelog 2.12.21: A new version is available. // View Changelog (today 10:33)= custom.log= laravel.logA SF [jiminny@localhost]A HS_local [jiminny@localhost]A console (PROD]Al console [EU]4 console [STAGING)) AskJiminnyReportActivityService.php x© RequestGenerateAskJiminnyReportJobTest×2 21 ^class AskJiminnyReportActiviprivate const int DEFAULprivate const array DATEActivityActualDate:ActivityActualDate::ActivityUpdatedDate:ActivityUpdatedDate:ClosingPeriodFilter:ClosingPeriodFilter:public function __constrprivate readonly Actprivate readonly Elaprivate readonly Log)4...3* Fetch activity IDs fo* Date filters stored* no date constraint .* Creturn string[] Acti*/public function getActivSearch $savedSearchUser $user,): array {$requestParams = $th$criteria = Criteriaarray_merge($reqnuser->certnezo$filterSet = $this->$activityIds = $this$this->logger->info(' saved_search_id'user_id'= Sus'activity_count'1);return $activityIds;Support Daily - in 2 h 57mA100% C•Tue 14 Apr 12:03:05RequestGenerateAskJiminnyReportJobTestCascadeFixing ReportControlleAutomated Report Mar• Automated Report Lip#L211 and add validation with logs [EMAIL]#L209-213wLet me read the current state of the command file first.kead Automaleakeporscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports. I need to implement getReportById properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycoLlection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucoma ceakepo rtscommand.ohoRead AutomatecRenortscommand.onoThe file is now only 140 lines — the user removed the processSingleReport/warnIfNotApplicableForSchedulemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:• AutomatedReportsRepository.phpAlso tix the import order (Collection should be betore the models alphabetically):• AutomatedReportsCommand.php+1 -1AutomatedReportsCommand.php+1 -1Done. Summary of changes:AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric string → find() bv int ID• Non-numeric → UUID lookup via toOptimized()Both use withTrashed() so soft-deleted reports are findable manuallygetReportById() (AutomatedReportsCommand. php:135-194) - checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violation,but sull rerurns the repor so processing continues.CheckBehaviour on failINot Tounewarhina loe + terminal wam, rerurns empty collection sklos processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + ternnal warn, continuesExoiredFrequency wouldn't run todaywarning log + terminal warn, continuesinfo log + terminal warn, continuesC1l -2 files +52 ›Ask anything (XAL)+ <> CodeClaude Sonnet 4.6Reject allAccept allWinasun leams1/4.uir-o( 4 spaces...
|
NULL
|
|
10902
|
215
|
69
|
2026-04-14T09:03:09.788963+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157389788_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
PhpStormFileEditFV faVsco.js vViewNavigateCodeLara PhpStormFileEditFV faVsco.js vViewNavigateCodeLaravelRefactor#11894 on JY-18909-automated-reports-ask-iminny K vToolsWindowHelpProject vProphetAiv D Reports© AutomatedReportsCl© AutomatedReportsRe© AutomatedReportsSt© CreateMockAskJimir© DeleteReportComma© GenerateMarketingR© Team.php© Usage.phpD Slack• TeamsD TracksO TranscriptionO TwilioD Users• VocabularyDZoom© CoachingFeedbacksUpr© Command.php© CreateDatabaseUsers.pc Daraoase oecountoi© DeleteOldAiCrmNotesC:© DeleteS3LeftoversComiDevPostmanCommand./© DiarizeViaAiParticipantk© EncryptTokensComman© EngagementStatsRegen©FeatureFlagsHelper.php© FixCrossTenantlssues.p© FlushRolesPermissionsC(e) Generatelnterna wepho• GroupSetDefaultLangua© HelperTruncateCoachin© HubspotJournalPollingC© HubspotWebhookServic©ImportRecording.php© ImportUsersFromCsvFil© IterateUsersCommand.p© JiminnyCacheClearCom© JiminnyDebugCommanc© JiminnySetEncryptedTo(c) Jiminny okenintocommMakeslackLvecoaching(c Manacescimror eam.o© MarkBranchForEnvironn© MuteOrganizerChannel.© PhpApm.php© PropagateCoachingFeer© PurgeConferences.php© PurgeSoftDeletedOppor© PurgeSyncBatchesCom(e Recalculatebealkisksco(c) Removebe eremarkersc(e) Remove-xoiredNudoes© RemoveUnusedParticip:© ResetElasticSearch.php© RestoreActivityCrmProv© RestoreActivityTypeCor© ReportController.phpJiminnybeouecommana.ong© AutomatedReportsCommand.php xAutomatedReportsRepository.phpC AutomatedReportsService.phpCreateHeldActivityEvent.php© UserPilotActivityListener.php© ActivityLogged.php© AutomatedReportsCallbackService.php© AutomatedReportResult.php© AutomatedReport.phpclass AutomatedReportsCommand extends Commandprivate function processReports(string $frequency): void$this->dispatcher->dispatchSync($job):© AutomatedReportsSendCommand.php• TrackProviderInstalledEvent.php© RequestGenerateAskJiminnyReportJob.php© AddLayoutEntities.php© Team.phpCreateActivityLoggedEvent.php• RequestGenerateReportJob.php13113211541351361371381391401411421431144145Achgptrenectprivate function getReportById(string $reportId): Collection1471481491501511521531541551158159160161162163164165166167168169170171172173174175176$report = $this->reportRepository->findById0rUuid($reportId);if ($report === null) €$this->logger->warning(self::LOG_PREFIX .' Report not found for --report-id'. ['reportid' => $reportId]);$this->warn( string: "Report not found: {$reportId}");return collect():if (! Sreport->getstatus()) €$this->Logger->warning(self::LOG_PREFIX •' Report is inactive, processing anyway (manual override)'"L'reportId' => $reportId,'reportuuid' => $report->getUvid(),1):$this->warn( string: "Report is inactive - processing anyway (manual override).'):$team = $report->getTeam();if ($team->getStatus() !== Team::STATUS_ACTIVE) knunuseoloocereowariano'reportId' => $relCascade & XICommand Sel'reportUvid' => $report->getUvid,'teamId' => $report->getTeamId(),→> $team->getStatus(),* is not active, processing anyway (manual override)'. [1):$this->warn( string: "Team #[$report->getTeamId(} is not active - processing anyway (manual override)."):if ($report->isExpiredO) {$this->logger->warning(self::LOG_PREFIX' Report is expired, processing anyway (manual override)". I'reportId' => $reportId,"reportUvid'=> $report->getUuid),'expiresAt' => $report->getExpiresAt()?->toDateStringQ.|1D:$this-›warn( string: |'Report is expired (expires_at: || | |$report->getExpiresAt()?-›toDateString@ |||'b - processing anyway (manual overridreturn collect([$report]);1 ealv Accept File &-X Reject File t3€+ 2 of 2 files →Windsurf changelog 2.12.21: A new version is available. // View Changelog (today 10:33)= custom.log= laravel.logs Sr iminny@localnosuiA HS_local [jiminny@localhost]A console (PROD]Al console [EU]I console [STAGING)AskJiminnyReportActivityService.php x© RequestGenerateAskJiminnyReportJobTest×2 21 ^class AskJiminnyReportActiviprivate const int DEFAULprivate const array DATEActivityActualDate:ActivityActualDate::ActivityUpdatedDate:ActivityUpdatedDate:ClosingPeriodFilter:ClosingPeriodFilter:public function __constrprivate readonly Actprivate readonly Elaprivate readonly LogDf..F/*** Fetch activity IDs fo* Date filters stored* no date constraint .* Creturn string[] Acti*/public function getActivSearch $savedSearchUser $user,): array {$requestParams = $th$criteria = Criteriaarray_merge($reqnuser->certnezo$filterSet = $this->$activityIds = $this$this->logger->info(' saved_search_id'user_id'= Sus'activity_count'1);return Sactivitvids:Support Daily - in 2 h 57mA100% C•Tue 14 Apr 12:03:09RequestGenerateAskJiminnyReportJobTestCascadeFixing ReportControlleAutomated Report MarAutomated Report Lip#L211 and add validation with logs [EMAIL]#L209-213wLet me read the current state of the command file first.kead Automaleakeporscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports. I need to implement getReportById properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycoLlection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucoma ceakepo rtscommand.ohoRead AutomatecRenortscommand.onoThe file is now only 140 lines — the user removed the processSingleReport/warnIfNotApplicableForSchedulemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:• AutomatedReportsRepository.phpAlso tix the import order (Collection should be betore the models alphabetically):• AutomatedReportsCommand.php+1 -1AutomatedReportsCommand.php+1 -1Done. Summary of changes:AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric string → find() bv int ID• Non-numeric → UUID lookup via toOptimized()Both use withTrashed() so soft-deleted reports are findable manuallygetReportById() (AutomatedReportsCommand. php:135-194) - checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violation,but sull rerurns the repor so processing continues.CheckBehaviour on failINot Tounewarhina loe + terminal wam, rerurns empty collection sklos processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + ternnal warn, continuesExoiredFrequency wouldn't run todaywarning log + terminal warn, continuesinfo log + terminal warn, continuesC1l -2 files +51 ›Ask anything (&AL)+ <> CodeClaude Sonnet 4.6Reject allAccept allwinasun leams1/3:9uir-o( 4 spaces...
|
NULL
|
8543559602004275972
|
NULL
|
click
|
ocr
|
NULL
|
PhpStormFileEditFV faVsco.js vViewNavigateCodeLara PhpStormFileEditFV faVsco.js vViewNavigateCodeLaravelRefactor#11894 on JY-18909-automated-reports-ask-iminny K vToolsWindowHelpProject vProphetAiv D Reports© AutomatedReportsCl© AutomatedReportsRe© AutomatedReportsSt© CreateMockAskJimir© DeleteReportComma© GenerateMarketingR© Team.php© Usage.phpD Slack• TeamsD TracksO TranscriptionO TwilioD Users• VocabularyDZoom© CoachingFeedbacksUpr© Command.php© CreateDatabaseUsers.pc Daraoase oecountoi© DeleteOldAiCrmNotesC:© DeleteS3LeftoversComiDevPostmanCommand./© DiarizeViaAiParticipantk© EncryptTokensComman© EngagementStatsRegen©FeatureFlagsHelper.php© FixCrossTenantlssues.p© FlushRolesPermissionsC(e) Generatelnterna wepho• GroupSetDefaultLangua© HelperTruncateCoachin© HubspotJournalPollingC© HubspotWebhookServic©ImportRecording.php© ImportUsersFromCsvFil© IterateUsersCommand.p© JiminnyCacheClearCom© JiminnyDebugCommanc© JiminnySetEncryptedTo(c) Jiminny okenintocommMakeslackLvecoaching(c Manacescimror eam.o© MarkBranchForEnvironn© MuteOrganizerChannel.© PhpApm.php© PropagateCoachingFeer© PurgeConferences.php© PurgeSoftDeletedOppor© PurgeSyncBatchesCom(e Recalculatebealkisksco(c) Removebe eremarkersc(e) Remove-xoiredNudoes© RemoveUnusedParticip:© ResetElasticSearch.php© RestoreActivityCrmProv© RestoreActivityTypeCor© ReportController.phpJiminnybeouecommana.ong© AutomatedReportsCommand.php xAutomatedReportsRepository.phpC AutomatedReportsService.phpCreateHeldActivityEvent.php© UserPilotActivityListener.php© ActivityLogged.php© AutomatedReportsCallbackService.php© AutomatedReportResult.php© AutomatedReport.phpclass AutomatedReportsCommand extends Commandprivate function processReports(string $frequency): void$this->dispatcher->dispatchSync($job):© AutomatedReportsSendCommand.php• TrackProviderInstalledEvent.php© RequestGenerateAskJiminnyReportJob.php© AddLayoutEntities.php© Team.phpCreateActivityLoggedEvent.php• RequestGenerateReportJob.php13113211541351361371381391401411421431144145Achgptrenectprivate function getReportById(string $reportId): Collection1471481491501511521531541551158159160161162163164165166167168169170171172173174175176$report = $this->reportRepository->findById0rUuid($reportId);if ($report === null) €$this->logger->warning(self::LOG_PREFIX .' Report not found for --report-id'. ['reportid' => $reportId]);$this->warn( string: "Report not found: {$reportId}");return collect():if (! Sreport->getstatus()) €$this->Logger->warning(self::LOG_PREFIX •' Report is inactive, processing anyway (manual override)'"L'reportId' => $reportId,'reportuuid' => $report->getUvid(),1):$this->warn( string: "Report is inactive - processing anyway (manual override).'):$team = $report->getTeam();if ($team->getStatus() !== Team::STATUS_ACTIVE) knunuseoloocereowariano'reportId' => $relCascade & XICommand Sel'reportUvid' => $report->getUvid,'teamId' => $report->getTeamId(),→> $team->getStatus(),* is not active, processing anyway (manual override)'. [1):$this->warn( string: "Team #[$report->getTeamId(} is not active - processing anyway (manual override)."):if ($report->isExpiredO) {$this->logger->warning(self::LOG_PREFIX' Report is expired, processing anyway (manual override)". I'reportId' => $reportId,"reportUvid'=> $report->getUuid),'expiresAt' => $report->getExpiresAt()?->toDateStringQ.|1D:$this-›warn( string: |'Report is expired (expires_at: || | |$report->getExpiresAt()?-›toDateString@ |||'b - processing anyway (manual overridreturn collect([$report]);1 ealv Accept File &-X Reject File t3€+ 2 of 2 files →Windsurf changelog 2.12.21: A new version is available. // View Changelog (today 10:33)= custom.log= laravel.logs Sr iminny@localnosuiA HS_local [jiminny@localhost]A console (PROD]Al console [EU]I console [STAGING)AskJiminnyReportActivityService.php x© RequestGenerateAskJiminnyReportJobTest×2 21 ^class AskJiminnyReportActiviprivate const int DEFAULprivate const array DATEActivityActualDate:ActivityActualDate::ActivityUpdatedDate:ActivityUpdatedDate:ClosingPeriodFilter:ClosingPeriodFilter:public function __constrprivate readonly Actprivate readonly Elaprivate readonly LogDf..F/*** Fetch activity IDs fo* Date filters stored* no date constraint .* Creturn string[] Acti*/public function getActivSearch $savedSearchUser $user,): array {$requestParams = $th$criteria = Criteriaarray_merge($reqnuser->certnezo$filterSet = $this->$activityIds = $this$this->logger->info(' saved_search_id'user_id'= Sus'activity_count'1);return Sactivitvids:Support Daily - in 2 h 57mA100% C•Tue 14 Apr 12:03:09RequestGenerateAskJiminnyReportJobTestCascadeFixing ReportControlleAutomated Report MarAutomated Report Lip#L211 and add validation with logs [EMAIL]#L209-213wLet me read the current state of the command file first.kead Automaleakeporscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports. I need to implement getReportById properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycoLlection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucoma ceakepo rtscommand.ohoRead AutomatecRenortscommand.onoThe file is now only 140 lines — the user removed the processSingleReport/warnIfNotApplicableForSchedulemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:• AutomatedReportsRepository.phpAlso tix the import order (Collection should be betore the models alphabetically):• AutomatedReportsCommand.php+1 -1AutomatedReportsCommand.php+1 -1Done. Summary of changes:AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric string → find() bv int ID• Non-numeric → UUID lookup via toOptimized()Both use withTrashed() so soft-deleted reports are findable manuallygetReportById() (AutomatedReportsCommand. php:135-194) - checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violation,but sull rerurns the repor so processing continues.CheckBehaviour on failINot Tounewarhina loe + terminal wam, rerurns empty collection sklos processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + ternnal warn, continuesExoiredFrequency wouldn't run todaywarning log + terminal warn, continuesinfo log + terminal warn, continuesC1l -2 files +51 ›Ask anything (&AL)+ <> CodeClaude Sonnet 4.6Reject allAccept allwinasun leams1/3:9uir-o( 4 spaces...
|
10900
|
|
10903
|
215
|
70
|
2026-04-14T09:03:13.236891+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157393236_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
PhpStormFileFV faVsco.js vViewNavigateCodeLaravelR PhpStormFileFV faVsco.js vViewNavigateCodeLaravelRefactor#11894 on JY-18909-automated-reports-ask-iminny K vToolsWindowHelpProject vProphetAiv D Reports© AutomatedReportsCl© AutomatedReportsRe© AutomatedReportsSt© CreateMockAskJimir© DeleteReportComma© GenerateMarketingR© Team.php© Usage.phpD Slack• TeamsD TracksO TranscriptionO TwilioD UsersVocabularyDZoom© CoachingFeedbacksUpr© Command.phpc Crearevaroaseusers.oc Daraoase oecountoi© DeleteOldAiCrmNotesC:© DeleteS3LeftoversComiDevPostmanCommand./© DiarizeViaAiParticipantk© EncryptTokensComman© EngagementStatsRegen© FeatureFlagsHelper.php© FixCrossTenantlssues.p©FlushRolesPermissionsC(e) Generatelnterna wepho• GroupSetDefaultLangua© HelperTruncateCoachin© HubspotJournalPollingC© HubspotWebhookServic©ImportRecording.php© ImportUsersFromCsvFil© IterateUsersCommand.p© JiminnyCacheClearCom© JiminnyDebugCommanc© JiminnySetEncryptedTo(c) Jiminny okenintocommMakeslackLvecoaching(c Manacescimror eam.o© MarkBranchForEnvironn© MuteOrganizerChannel.© PhpApm.php© PropagateCoachingFeer© PurgeConferences.php© PurgeSoftDeletedOppor© PurgeSyncBatchesCom(e RecalculatebealkiskscoC) RemoveDeleteMarkersd(e) Remove-xoiredNudoes© RemoveUnusedParticip:© ResetElasticSearch.php© RestoreActivityCrmProv© RestoreActivityTypeCor© ReportController.phpC AutomatedReportsRepository.phpC AutomatedReportsService.php© UserPilotActivityListener.phpJiminnybeouecommana.ong© AutomatedReportsCommand.php xCreateHeldActivityEvent.php© AutomatedReportsCallbackService.php© ActivityLogged.php© AutomatedReportResult.phpclass AutomatedReportsCommand extends Commandpublic function handle(): intscurrencmonch = snow->month;© AutomatedReportsSendCommand.php• TrackProviderInstalledEvent.php© RequestGenerateAskJiminnyReportJob.php© AddLayoutEntities.php© Team.phpCreateActivityLoggedEvent.php• RequestGenerateReportJob.php// Cneck It the current monch is a quarterly monch (vanuary, April, July, uccoder)SisOuarterlvMonth = in array($currentMonth. 11. 4. 7. 101.1sulel. Truen$this->logger->info(self::LOG_PREFIX . ' Checking conditions', ['isMonday' => $isMonday,'isFirstDay0fMonth' => $isFirstDay0fMonth,'currentMonth' => $currentMonth,'isQuarterLyMonth' => $isQuarterlyMonth,I);// Process daily reportsфuh1s->processkeporus( trequency: AUtomacedкeportsservice:.FREQUENCY_DALLY)HProcess weekly reports on Mondavsif ($isMonday) {$this->processReports( frequency: AutomatedReportsService: :FREQUENCY_WEEKLY);// Process monthly reports on the first day of the monthif ($isFirstDay0fMonth) {$this->processReports( frequency: AutomatedReportsService::FREQUENCY_MONTHLY);// Process quarterly reports on the first day of January, April, July, and Octoberif ($isFirstDay0fMonth &&Cascade 8e XICommand &1$this->processReports(-service::FREQUENCY_QUARTERLY);$this->logger->info(self::LOG_PREFIX .'Completed');return 0;/*** Process reports for a specific frequency.991100101102103104105106107108109110111112113114* @param string $frequency* Oreturn voidprivate function processReports(string $frequency): void$this->logger-›info(self::L0G_PREFIX . " Processing $frequency reports");$reportId = Sthis->option( key: 'report-id');if ($reportId !== null) {$reports = $this->getReportById($reportId);felse {// Get all enabled, not deleted reports with active teams for the specified frequency$reports = $this->reportRepository->getActiveReportsByFrequency($frequency);Windsurf changelog 2.12.21: A new version is available. // View Changelog (today 10:33)43= custom.log= laravel.logA SF [jiminny@localhost]A HS_local [jiminny@localhost]A console (PROD]Al console [EU]I console [STAGING)AskJiminnyReportActivityService.php x© RequestGenerateAskJiminnyReportJobTest×2 21 ^class AskJiminnyReportActiviprivate const int DEFAULprivate const array DATEActivityActualDate:ActivityActualDate::ActivityUpdatedDate:ActivityUpdatedDate:ClosingPeriodFilter:ClosingPeriodFilter:public function __constrprivate readonly Actprivate readonly Elaprivate readonly LogDf..F/*** Fetch activity IDs fo* Date filters stored* no date constraint .* Creturn string[] Acti*/public function getActivSearch $savedSearchUser $user,): array {$requestParams = $th$criteria = Criteriaarray_merge($reqnuser->certnezo);$filterSet = $this->$activityIds = $this$this->logger->info('saved_search_id'user_id'= Sus'activity_count'1);return SactivitvidsSupport Daily - in 2 h 57mA100% C•Tue 14 Apr 12:03:13RequestGenerateAskJiminnyReportJobTestCascadeFixing ReportControlleAutomated Report MarAutomated Report Lip#L211 and add validation with logs [EMAIL]#L209-213wLet me read the current state of the command file first.kead Automaleakeporscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports. I need to implement getReportById properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycoLlection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucoma ceakepo rtscommand.ohoRead AutomatecRenortscommand.onoThe file is now only 140 lines — the user removed the processSingleReport/warnIfNotApplicableForSchedulemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:• AutomatedReportsRepository.phpAlso tix the import order (Collection should be betore the models alphabetically):• AutomatedReportsCommand.php+1 -1AutomatedReportsCommand.php+1 -1Done. Summary of changes:AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric string → find() bv int ID• Non-numeric → UUID lookup via toOptimized()Both use withTrashed() so soft-deleted reports are findable manuallygetReportById() (AutomatedReportsCommand. php:135-194) - checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violation,but sull rerurns the repor so processing continues.CheckBehaviour on failINot Tounewarhina loe + terminal wam, rerurns empty collection sklos processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + ternnal warn, continuesExoiredFrequency wouldn't run todaywarning log + terminal warn, continuesinfo log + terminal warn, continuesC1l -2 files +51 ›Ask anything (&AL)+ <> CodeClaude Sonnet 4.6Reject allAccept allwinasun leams134:1uir-o( 4 spaces...
|
NULL
|
-3191793147998243425
|
NULL
|
visual_change
|
ocr
|
NULL
|
PhpStormFileFV faVsco.js vViewNavigateCodeLaravelR PhpStormFileFV faVsco.js vViewNavigateCodeLaravelRefactor#11894 on JY-18909-automated-reports-ask-iminny K vToolsWindowHelpProject vProphetAiv D Reports© AutomatedReportsCl© AutomatedReportsRe© AutomatedReportsSt© CreateMockAskJimir© DeleteReportComma© GenerateMarketingR© Team.php© Usage.phpD Slack• TeamsD TracksO TranscriptionO TwilioD UsersVocabularyDZoom© CoachingFeedbacksUpr© Command.phpc Crearevaroaseusers.oc Daraoase oecountoi© DeleteOldAiCrmNotesC:© DeleteS3LeftoversComiDevPostmanCommand./© DiarizeViaAiParticipantk© EncryptTokensComman© EngagementStatsRegen© FeatureFlagsHelper.php© FixCrossTenantlssues.p©FlushRolesPermissionsC(e) Generatelnterna wepho• GroupSetDefaultLangua© HelperTruncateCoachin© HubspotJournalPollingC© HubspotWebhookServic©ImportRecording.php© ImportUsersFromCsvFil© IterateUsersCommand.p© JiminnyCacheClearCom© JiminnyDebugCommanc© JiminnySetEncryptedTo(c) Jiminny okenintocommMakeslackLvecoaching(c Manacescimror eam.o© MarkBranchForEnvironn© MuteOrganizerChannel.© PhpApm.php© PropagateCoachingFeer© PurgeConferences.php© PurgeSoftDeletedOppor© PurgeSyncBatchesCom(e RecalculatebealkiskscoC) RemoveDeleteMarkersd(e) Remove-xoiredNudoes© RemoveUnusedParticip:© ResetElasticSearch.php© RestoreActivityCrmProv© RestoreActivityTypeCor© ReportController.phpC AutomatedReportsRepository.phpC AutomatedReportsService.php© UserPilotActivityListener.phpJiminnybeouecommana.ong© AutomatedReportsCommand.php xCreateHeldActivityEvent.php© AutomatedReportsCallbackService.php© ActivityLogged.php© AutomatedReportResult.phpclass AutomatedReportsCommand extends Commandpublic function handle(): intscurrencmonch = snow->month;© AutomatedReportsSendCommand.php• TrackProviderInstalledEvent.php© RequestGenerateAskJiminnyReportJob.php© AddLayoutEntities.php© Team.phpCreateActivityLoggedEvent.php• RequestGenerateReportJob.php// Cneck It the current monch is a quarterly monch (vanuary, April, July, uccoder)SisOuarterlvMonth = in array($currentMonth. 11. 4. 7. 101.1sulel. Truen$this->logger->info(self::LOG_PREFIX . ' Checking conditions', ['isMonday' => $isMonday,'isFirstDay0fMonth' => $isFirstDay0fMonth,'currentMonth' => $currentMonth,'isQuarterLyMonth' => $isQuarterlyMonth,I);// Process daily reportsфuh1s->processkeporus( trequency: AUtomacedкeportsservice:.FREQUENCY_DALLY)HProcess weekly reports on Mondavsif ($isMonday) {$this->processReports( frequency: AutomatedReportsService: :FREQUENCY_WEEKLY);// Process monthly reports on the first day of the monthif ($isFirstDay0fMonth) {$this->processReports( frequency: AutomatedReportsService::FREQUENCY_MONTHLY);// Process quarterly reports on the first day of January, April, July, and Octoberif ($isFirstDay0fMonth &&Cascade 8e XICommand &1$this->processReports(-service::FREQUENCY_QUARTERLY);$this->logger->info(self::LOG_PREFIX .'Completed');return 0;/*** Process reports for a specific frequency.991100101102103104105106107108109110111112113114* @param string $frequency* Oreturn voidprivate function processReports(string $frequency): void$this->logger-›info(self::L0G_PREFIX . " Processing $frequency reports");$reportId = Sthis->option( key: 'report-id');if ($reportId !== null) {$reports = $this->getReportById($reportId);felse {// Get all enabled, not deleted reports with active teams for the specified frequency$reports = $this->reportRepository->getActiveReportsByFrequency($frequency);Windsurf changelog 2.12.21: A new version is available. // View Changelog (today 10:33)43= custom.log= laravel.logA SF [jiminny@localhost]A HS_local [jiminny@localhost]A console (PROD]Al console [EU]I console [STAGING)AskJiminnyReportActivityService.php x© RequestGenerateAskJiminnyReportJobTest×2 21 ^class AskJiminnyReportActiviprivate const int DEFAULprivate const array DATEActivityActualDate:ActivityActualDate::ActivityUpdatedDate:ActivityUpdatedDate:ClosingPeriodFilter:ClosingPeriodFilter:public function __constrprivate readonly Actprivate readonly Elaprivate readonly LogDf..F/*** Fetch activity IDs fo* Date filters stored* no date constraint .* Creturn string[] Acti*/public function getActivSearch $savedSearchUser $user,): array {$requestParams = $th$criteria = Criteriaarray_merge($reqnuser->certnezo);$filterSet = $this->$activityIds = $this$this->logger->info('saved_search_id'user_id'= Sus'activity_count'1);return SactivitvidsSupport Daily - in 2 h 57mA100% C•Tue 14 Apr 12:03:13RequestGenerateAskJiminnyReportJobTestCascadeFixing ReportControlleAutomated Report MarAutomated Report Lip#L211 and add validation with logs [EMAIL]#L209-213wLet me read the current state of the command file first.kead Automaleakeporscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports. I need to implement getReportById properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycoLlection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucoma ceakepo rtscommand.ohoRead AutomatecRenortscommand.onoThe file is now only 140 lines — the user removed the processSingleReport/warnIfNotApplicableForSchedulemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:• AutomatedReportsRepository.phpAlso tix the import order (Collection should be betore the models alphabetically):• AutomatedReportsCommand.php+1 -1AutomatedReportsCommand.php+1 -1Done. Summary of changes:AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric string → find() bv int ID• Non-numeric → UUID lookup via toOptimized()Both use withTrashed() so soft-deleted reports are findable manuallygetReportById() (AutomatedReportsCommand. php:135-194) - checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violation,but sull rerurns the repor so processing continues.CheckBehaviour on failINot Tounewarhina loe + terminal wam, rerurns empty collection sklos processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + ternnal warn, continuesExoiredFrequency wouldn't run todaywarning log + terminal warn, continuesinfo log + terminal warn, continuesC1l -2 files +51 ›Ask anything (&AL)+ <> CodeClaude Sonnet 4.6Reject allAccept allwinasun leams134:1uir-o( 4 spaces...
|
NULL
|
|
10905
|
215
|
71
|
2026-04-14T09:03:19.478066+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157399478_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
PhpStormFileFditViewNavigateCodelaravelRefactonRun PhpStormFileFditViewNavigateCodelaravelRefactonRunToolsWindowHelpFV faVsco.s v#11894 on JY-18909-automated-reports-ask-jiminny k ~Project v© Partner.phpC Permission.php© PhoneNumber.phpg Playback lheme.phpC Playbook.phpPlaybookcategory.phpC) Plavlist.phoC RateLimit.phpC) Region.pho(C) Role.phpC RoleChangeEvent.phpC) ScopeGroup.php(C) Session.phpg SlackBot.phpsocialAccount.php© Stage.phpC Task.php© Team.phpC) TeamAiContext.phpC) TeamDomain.phpC) TeamFeature.php©) TeamSettings.phpC TextRelay.php© Track.phpC) TranscriptionModel.php© TranscriptionModelLocale.|© TranscriptionProvider.phpC User. ohp© UserSettings.phpc) Vocabularv.ohp© VocabularyPronunciation.pC) VoiceAccess.php(C) VoiceConsentPrefix.php> _ Notifications• _ Observers> _ Policies>D Providers>D Queuev | Repositories> MAi> AutoScoring> Calendar>DCrm> → Geography© ActiveStreamsRepository.p(C) ActivityCommentRepositor(©) ActivityLogRepository.phpC) ActivityMessageRepository© ActivityMomentRepository.© ActivityProviderRepositoryC) ActivitvRepositorv.phpC) ActivitvSearchFilterReposil(C) ActivitvShareRepositorv.ohC) ActivityUploadSettingRepo(C) AiPromptRepository.phpC) AskAnythingRepository.phC AutomatedReportsReposit©) CallimportRepository.phpC) CoachingFeedbackReposit(©) ReportController.php© JiminnyDebugCommand.phpC AutomatedReportsCommand.phpC) AutomatedReportsSendCommand.phpC) AddLayoutEntities.php(C) Team.php© AutomatedReportsRepository.php xC AutomatedReportsService.php© CreateHeldActivityEvent.php© TrackProviderInstalledEvent.phpC CreateActivityLoggedEvent.php© UserPilotActivityListener.php© ActivityLogged.php© AutomatedReportsCallbackService.php© RequestGenerateAskJiminnyReportJob.phpC RequestGenerateReportJob.php(©) AutomatedReportResult.phpc) Automatedkeport.oneclass Aucomaceareporcskepostcory477280* Oreturn AutomatedReport*/pubLic tunccion createlarray paata). Аuсопасеакероrиr. . .л/**|* Find an automated report bu UUID* @param string Suuid* dreturn Automatedkeport/nullpubLic tunccion tindbyuu1d(scring suuld): :Automaсedкерогиre atomеероt.ee, оmерrcoupamizealoouna atmetTusagepublic function findByld0rUuid(string Sid0rUuid): ?AutomatedReportAccesmReiectlif (is_numeric($idorUuid)) €return AutomatedReport::w1thlrashed(->f1nd((1nt) s1d0rUu1d);recurn Automacedkeport::Wichlrasnedt-›wherel column: "Ju1d, Automatedкeporu:. couptimized slauruula-tirstun* Retrieve all standard (non-Ask Jiminny) automated reports.* @param string $sortColumnThe column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to "created_at'.* aparam string SsortDirection The sort direction. Allowed values:'asc', 'desc'. Defaults to 'desc'.* dreturn collection<Automatedreport>12 usagespubLic tunccion gecALLscandardkeportslstring ssortcolumn = "created_at",string SsortDirection = 'desc': Collection (...l* Retrieve all Ask Jiminny reports created by the given user.* dparam UsersuserThe user whose reports to retrieve.* dparam string ssortcolumnThe column to sort by. Allowed values: 'created_by', "created_at'. Defaults to 'created_at".* @param string $sortDirection The sort direction. Allowed values:"asc", "desc". veraults to "desc".* drerurn couuectonsaurondredredor14 usadespublic function getAskJiminnyReportsByUserdUser Suser.string SsortColumn = created at'1 eait+Y Accept File &+X Reject File 1 38 €Windsurf changelog 2.12.21: A new version is available. // View Changelog (today 10:33)= custom.log= laravel.logs Sr iminny@localnosuic HS_local Jiminny@localhost)e console (PROD]e console (EU]I console [STAGING)AskJiminnyReportActivityService.php XC RequestGenerateAskJiminnyReportJobTesMLAI^class AskJiminnyReportActivigg лнg9 gnprivate const int DEFAULprivate const array DATEActivityActualDate:ActivityActualDate:ActivityUpdatedDate:ActivityUpdatedDate:ClosingPer1odrilter:ClosingPeriodFilter:public function __constrprivate readonly Actprivate readonly Elaprivate readonly Log)4.}* Fetch activity IDs fo* Date filters stored* no dace constraint* @return stringl] Act:*/public function getActivSearch SsavedSearchUser suser): array {srequestParams = sthnenrera s untuerarray_mergelsrecnuser->certnezo);SfilterSet = $this->SactivityIds = $thissthis->logger->infol'saved_search_10'User_1d'= SUSactvt counte1);return Sactivitvids:Support Daily • in 2h 57 m100% |45]Tue 14 Apr 12:03:19RequestGenerateAskJiminnyReportJobTestCascadeFixing ReportControlleAutomated Report Ma•Automated Report !ip#L211 and add validation with logs insideGAutomatedRenortscommand.0ho11209-710et me read the current state of the command tile firstkead Automateakeportscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports.Ineed to implement getReportByld properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycollection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucomaceakepo rtscommand.onpRead AutomatecRenortscommand.onoThe file is now only 140 lines - the user removed the processSing leReport/warnlfNotApp Licab leForSchedu Lemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:1 Aulomalecreoorsreroslorv.onoAlso tix the import order (Collection should be betore the models alphabetically):AutomatedReportsCommand.php+1-1• AutomatedReportsCommand.php+1 -1Done. Summary of changes:AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric string → find() bv int ID•Non-numenc → Uu d ookuo via tooptimizedoBoth use withTrashed() so soft-deleted reports are findable manuallygetReportByld() (AutomatedReportsCommand.php: 135-194) — checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violationbut sull rerurns the repor so processing continues.chockBehaviour on failINot Tounewarhina loe + terminal warn, returns emoty collection skips processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + ternnal warn, continuesExoiredwarning log + terminal warn, continuesFrequency wouldn't run todayinfo lod + terminal warn. continuesWC1l -2 files +51 >Ask anything (&+L)+ & CodeClaude Sennet 4.6Reject allAccept allwinasun leams4/:21uir-oia 4 spaces...
|
NULL
|
4016787003287284930
|
NULL
|
visual_change
|
ocr
|
NULL
|
PhpStormFileFditViewNavigateCodelaravelRefactonRun PhpStormFileFditViewNavigateCodelaravelRefactonRunToolsWindowHelpFV faVsco.s v#11894 on JY-18909-automated-reports-ask-jiminny k ~Project v© Partner.phpC Permission.php© PhoneNumber.phpg Playback lheme.phpC Playbook.phpPlaybookcategory.phpC) Plavlist.phoC RateLimit.phpC) Region.pho(C) Role.phpC RoleChangeEvent.phpC) ScopeGroup.php(C) Session.phpg SlackBot.phpsocialAccount.php© Stage.phpC Task.php© Team.phpC) TeamAiContext.phpC) TeamDomain.phpC) TeamFeature.php©) TeamSettings.phpC TextRelay.php© Track.phpC) TranscriptionModel.php© TranscriptionModelLocale.|© TranscriptionProvider.phpC User. ohp© UserSettings.phpc) Vocabularv.ohp© VocabularyPronunciation.pC) VoiceAccess.php(C) VoiceConsentPrefix.php> _ Notifications• _ Observers> _ Policies>D Providers>D Queuev | Repositories> MAi> AutoScoring> Calendar>DCrm> → Geography© ActiveStreamsRepository.p(C) ActivityCommentRepositor(©) ActivityLogRepository.phpC) ActivityMessageRepository© ActivityMomentRepository.© ActivityProviderRepositoryC) ActivitvRepositorv.phpC) ActivitvSearchFilterReposil(C) ActivitvShareRepositorv.ohC) ActivityUploadSettingRepo(C) AiPromptRepository.phpC) AskAnythingRepository.phC AutomatedReportsReposit©) CallimportRepository.phpC) CoachingFeedbackReposit(©) ReportController.php© JiminnyDebugCommand.phpC AutomatedReportsCommand.phpC) AutomatedReportsSendCommand.phpC) AddLayoutEntities.php(C) Team.php© AutomatedReportsRepository.php xC AutomatedReportsService.php© CreateHeldActivityEvent.php© TrackProviderInstalledEvent.phpC CreateActivityLoggedEvent.php© UserPilotActivityListener.php© ActivityLogged.php© AutomatedReportsCallbackService.php© RequestGenerateAskJiminnyReportJob.phpC RequestGenerateReportJob.php(©) AutomatedReportResult.phpc) Automatedkeport.oneclass Aucomaceareporcskepostcory477280* Oreturn AutomatedReport*/pubLic tunccion createlarray paata). Аuсопасеакероrиr. . .л/**|* Find an automated report bu UUID* @param string Suuid* dreturn Automatedkeport/nullpubLic tunccion tindbyuu1d(scring suuld): :Automaсedкерогиre atomеероt.ee, оmерrcoupamizealoouna atmetTusagepublic function findByld0rUuid(string Sid0rUuid): ?AutomatedReportAccesmReiectlif (is_numeric($idorUuid)) €return AutomatedReport::w1thlrashed(->f1nd((1nt) s1d0rUu1d);recurn Automacedkeport::Wichlrasnedt-›wherel column: "Ju1d, Automatedкeporu:. couptimized slauruula-tirstun* Retrieve all standard (non-Ask Jiminny) automated reports.* @param string $sortColumnThe column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to "created_at'.* aparam string SsortDirection The sort direction. Allowed values:'asc', 'desc'. Defaults to 'desc'.* dreturn collection<Automatedreport>12 usagespubLic tunccion gecALLscandardkeportslstring ssortcolumn = "created_at",string SsortDirection = 'desc': Collection (...l* Retrieve all Ask Jiminny reports created by the given user.* dparam UsersuserThe user whose reports to retrieve.* dparam string ssortcolumnThe column to sort by. Allowed values: 'created_by', "created_at'. Defaults to 'created_at".* @param string $sortDirection The sort direction. Allowed values:"asc", "desc". veraults to "desc".* drerurn couuectonsaurondredredor14 usadespublic function getAskJiminnyReportsByUserdUser Suser.string SsortColumn = created at'1 eait+Y Accept File &+X Reject File 1 38 €Windsurf changelog 2.12.21: A new version is available. // View Changelog (today 10:33)= custom.log= laravel.logs Sr iminny@localnosuic HS_local Jiminny@localhost)e console (PROD]e console (EU]I console [STAGING)AskJiminnyReportActivityService.php XC RequestGenerateAskJiminnyReportJobTesMLAI^class AskJiminnyReportActivigg лнg9 gnprivate const int DEFAULprivate const array DATEActivityActualDate:ActivityActualDate:ActivityUpdatedDate:ActivityUpdatedDate:ClosingPer1odrilter:ClosingPeriodFilter:public function __constrprivate readonly Actprivate readonly Elaprivate readonly Log)4.}* Fetch activity IDs fo* Date filters stored* no dace constraint* @return stringl] Act:*/public function getActivSearch SsavedSearchUser suser): array {srequestParams = sthnenrera s untuerarray_mergelsrecnuser->certnezo);SfilterSet = $this->SactivityIds = $thissthis->logger->infol'saved_search_10'User_1d'= SUSactvt counte1);return Sactivitvids:Support Daily • in 2h 57 m100% |45]Tue 14 Apr 12:03:19RequestGenerateAskJiminnyReportJobTestCascadeFixing ReportControlleAutomated Report Ma•Automated Report !ip#L211 and add validation with logs insideGAutomatedRenortscommand.0ho11209-710et me read the current state of the command tile firstkead Automateakeportscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports.Ineed to implement getReportByld properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycollection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucomaceakepo rtscommand.onpRead AutomatecRenortscommand.onoThe file is now only 140 lines - the user removed the processSing leReport/warnlfNotApp Licab leForSchedu Lemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:1 Aulomalecreoorsreroslorv.onoAlso tix the import order (Collection should be betore the models alphabetically):AutomatedReportsCommand.php+1-1• AutomatedReportsCommand.php+1 -1Done. Summary of changes:AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric string → find() bv int ID•Non-numenc → Uu d ookuo via tooptimizedoBoth use withTrashed() so soft-deleted reports are findable manuallygetReportByld() (AutomatedReportsCommand.php: 135-194) — checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violationbut sull rerurns the repor so processing continues.chockBehaviour on failINot Tounewarhina loe + terminal warn, returns emoty collection skips processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + ternnal warn, continuesExoiredwarning log + terminal warn, continuesFrequency wouldn't run todayinfo lod + terminal warn. continuesWC1l -2 files +51 >Ask anything (&+L)+ & CodeClaude Sennet 4.6Reject allAccept allwinasun leams4/:21uir-oia 4 spaces...
|
10903
|
|
10906
|
215
|
72
|
2026-04-14T09:03:22.610600+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157402610_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
PhpStormFileFditViewNavigateCodelaraveRefactonRunT PhpStormFileFditViewNavigateCodelaraveRefactonRunToolsWindowHelpFV faVsco.s v#11894 on JY-18909-automated-reports-ask-jiminny k ~Project v(©) ReportController.php© JiminnyDebugCommand.phpC AutomatedReportsCommand.phpC) AutomatedReportsSendCommand.phpC) AddLayoutEntities.php(©) Team.php© DeviceRepository.php© AutomatedReportsRepository.php xAulomaleakeporisservice.onpc CrealenelaAcuiviyevent.ono© TrackProviderInstalledEvent.phpC CreateActivityLoggedEvent.phpC ElasticActivityRepository.p© EmailMessageRepository.p© GenericAiPromptRepositor© GroupRepository.php(C InboxEmailBatchRepositon)© UserPilotActivityListener.php© ActivityLogged.php© AutomatedReportsCallbackService.php© RequestGenerateAskJiminnyReportJob.phpC RequestGenerateReportJob.php(©) AutomatedReportResult.phpc) Automatedkeport.oneclass AucomaceareporcskepostcoryC InboxRepository.pnp© InvitationRepository.phpC) JobRepository.phpC) LanquageRepository.php© MomentRepository.phpNotificationRepository.phpC ParticipantRepository.php© ParticipantSpeechReposito© ParticipantStatsRepository© PlaybookCategoryRepositc© PlaybookRepository.phpC PlavlistActivityRepository.p(© PlaylistRepository.png(C PlaylistShareRepository.phC) QuestionRepository.php(C) RoleChangeEventRepositolC RoleRepository.php© SearchRepository.phpC SnapshotRepository.phpC) SocialAccountRepository.p© StageRepository.php© SubscriptionSetRepository.(C) TaskRepository.pho© TeamAiContextRepository.©) TeamDomainsRepository.p(©) TeaminsightsRepository.phC) TeamRepository.phpC ThemeRepository.phpC TimezoneRepository.php© TopicRepository.php© TopicTriggerRepository.ph© TrackRepository.phpC) TranscriptionModelLocaleF© TranscriptionRepository.prC) TranscriptionSummarvRepC UserRepository.php© VocabularyRepository.pnp› Rulesv D Services>D Activity>D AReports>D AvatarcalendarM ConferenceM Crm>MImport> MInternallv → Kioskv _ AutomatedReports(C) ActivityTypeService.(©) AskJiminnyReportAc(C) AutomatedReportse(C) AutomatedReportsS* Oreturn AutomatedReportpubLic tunccion createlarray paata). Аuсопасеакероrиr. . .л* Find an automated report bu UUID* Oparam string Suuid* dreturn Automatedkeport/nullpubLic tunccion tindbyuu1d(scring suuld): :Automaсedкерогиre atomеероt.ee, оmерrcoupamizealoouna atmetTusagepublic function findByld0rUuid(string Sid0rUuid): ?AutomatedReportAcceamReiectif (is_numeric($id0rUuid)) (return AutomatedReport::w1thlrashed(->f1nd((1nt) s1d0rUu1d);recurn Automacedkeport::Wichlrasnedt-›wherel column: "Ju1d, Automatedкeporu:. couptimized slauruula-tirstun* Retrieve all standard (non-Ask Jiminny) automated reports.* @param string $sortColumnThe column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to "created_at'.* aparam string SsortDirection The sort direction. Allowed values:'asc', 'desc'. Defaults to 'desc'.* dreturn collection<Automatedreport>12 usagespubLic tunction gecALLstandardkeportsstring ssortcolumn = "created_at",scring ssortbirection = 'desc': Collection (...l* Retrieve all Ask Jiminny reports created by the given user.* dparam UsersuserThe user whose reports to retrieve.* dparam string ssortcolumnThe column to sort by. Allowed values: 'created_by', "created_at'. Defaults to 'created_at".* @param string $sortDirection The sort direction. Allowed values:"asc, "desc". veraults to "desc".* drerurn couuectonsaurondredredor14 usagespublic function getAskJiminnyReportsByUserdUser Suser.1 eallstring SsortColumn = created at'Windsurf changelog 2.12.21: A new version is available. // View Changelog (today 10:33)\ Sa= custom.log= laravel.logs Sr iminny@localnosuic HS_local Liminny@localhost)e console (PROD]¿ console (EU]A console [STAGINGAskJiminnyReportActivityService.php xC RequestGenerateAskJiminnyReportJobTestclass ASkJiminnyReportActiviClosingPeriodFilter:public function __constrprivate readonly Actprivate readonly Elaprivate readonly Log) {...}* Fetch activity IDs fo* Date filters stored o* no dque conscrouns* dreturn stringl Actipublic function getActivSearch SsavedSearchUser suser,0: array {srequestParams = sthnenrera s urtueraAcceptmarcetsreqarray merge (Srecsuser->getTimez):btulterset = sthis-MacuVVOS =109Sthis->loqger->infod'saved search id'user id' => Sus'activity_countID:return sactivityidsprivate tuncuion bullakeJ v Accept File &+X Reject File 1 38&Support Daily • in 2h 57 m100% |45]Tue 14 Apr 12:03:22RequestGenerateAskJiminnyReportJobTestCascadeFixing ReportControlleAutomated Report MaAutomated Reportip#L211 and add validation with logs insideGAutomatedRenortscommand. 0ho.5 209-710et me read the current state of the command tile firstkead Automateakeportscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports.Ineed to implement getReportByld properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycollection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucomaceakepo rtscommand.onpRead AutomatecRenortscommand.onoThe file is now only 140 lines - the user removed the processSing leReport/warnlfNotApp Licab leForSchedu Lemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:1 Aulomalecreoorsreroslorv.onoAlso tix the import order (Collection should be betore the models alphabetically):• AutomatedReportsCommand.php+1 -1• AutomatedReportsCommand.php+1 -1vone. oummary or changes.AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric strine→ tindovinubNon-numenc → Uud ookuo via tooptimizedoBoth use withTrashed() so soft-deleted reports are findable manuallygetReportByld() (AutomatedReportsCommand.php: 135-194) — checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violationbut sull rerurns the repor so processing continues.chockBehaviour on failINot Tounewarhina loe + terminal warn, returns emoty collection skips processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + terminal warn, continuesExoiredwarning log + terminal warn, continuesFrequency wouldn't run todayinfo lod + terminal warn. continuesWC1l -2 files +51 >Ask anything (&+L)401 auesde Claude Sonnet 46Reject allAccept allwinasun leams51:1uir-oia 4 spaces...
|
NULL
|
-3311114688567086906
|
NULL
|
visual_change
|
ocr
|
NULL
|
PhpStormFileFditViewNavigateCodelaraveRefactonRunT PhpStormFileFditViewNavigateCodelaraveRefactonRunToolsWindowHelpFV faVsco.s v#11894 on JY-18909-automated-reports-ask-jiminny k ~Project v(©) ReportController.php© JiminnyDebugCommand.phpC AutomatedReportsCommand.phpC) AutomatedReportsSendCommand.phpC) AddLayoutEntities.php(©) Team.php© DeviceRepository.php© AutomatedReportsRepository.php xAulomaleakeporisservice.onpc CrealenelaAcuiviyevent.ono© TrackProviderInstalledEvent.phpC CreateActivityLoggedEvent.phpC ElasticActivityRepository.p© EmailMessageRepository.p© GenericAiPromptRepositor© GroupRepository.php(C InboxEmailBatchRepositon)© UserPilotActivityListener.php© ActivityLogged.php© AutomatedReportsCallbackService.php© RequestGenerateAskJiminnyReportJob.phpC RequestGenerateReportJob.php(©) AutomatedReportResult.phpc) Automatedkeport.oneclass AucomaceareporcskepostcoryC InboxRepository.pnp© InvitationRepository.phpC) JobRepository.phpC) LanquageRepository.php© MomentRepository.phpNotificationRepository.phpC ParticipantRepository.php© ParticipantSpeechReposito© ParticipantStatsRepository© PlaybookCategoryRepositc© PlaybookRepository.phpC PlavlistActivityRepository.p(© PlaylistRepository.png(C PlaylistShareRepository.phC) QuestionRepository.php(C) RoleChangeEventRepositolC RoleRepository.php© SearchRepository.phpC SnapshotRepository.phpC) SocialAccountRepository.p© StageRepository.php© SubscriptionSetRepository.(C) TaskRepository.pho© TeamAiContextRepository.©) TeamDomainsRepository.p(©) TeaminsightsRepository.phC) TeamRepository.phpC ThemeRepository.phpC TimezoneRepository.php© TopicRepository.php© TopicTriggerRepository.ph© TrackRepository.phpC) TranscriptionModelLocaleF© TranscriptionRepository.prC) TranscriptionSummarvRepC UserRepository.php© VocabularyRepository.pnp› Rulesv D Services>D Activity>D AReports>D AvatarcalendarM ConferenceM Crm>MImport> MInternallv → Kioskv _ AutomatedReports(C) ActivityTypeService.(©) AskJiminnyReportAc(C) AutomatedReportse(C) AutomatedReportsS* Oreturn AutomatedReportpubLic tunccion createlarray paata). Аuсопасеакероrиr. . .л* Find an automated report bu UUID* Oparam string Suuid* dreturn Automatedkeport/nullpubLic tunccion tindbyuu1d(scring suuld): :Automaсedкерогиre atomеероt.ee, оmерrcoupamizealoouna atmetTusagepublic function findByld0rUuid(string Sid0rUuid): ?AutomatedReportAcceamReiectif (is_numeric($id0rUuid)) (return AutomatedReport::w1thlrashed(->f1nd((1nt) s1d0rUu1d);recurn Automacedkeport::Wichlrasnedt-›wherel column: "Ju1d, Automatedкeporu:. couptimized slauruula-tirstun* Retrieve all standard (non-Ask Jiminny) automated reports.* @param string $sortColumnThe column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to "created_at'.* aparam string SsortDirection The sort direction. Allowed values:'asc', 'desc'. Defaults to 'desc'.* dreturn collection<Automatedreport>12 usagespubLic tunction gecALLstandardkeportsstring ssortcolumn = "created_at",scring ssortbirection = 'desc': Collection (...l* Retrieve all Ask Jiminny reports created by the given user.* dparam UsersuserThe user whose reports to retrieve.* dparam string ssortcolumnThe column to sort by. Allowed values: 'created_by', "created_at'. Defaults to 'created_at".* @param string $sortDirection The sort direction. Allowed values:"asc, "desc". veraults to "desc".* drerurn couuectonsaurondredredor14 usagespublic function getAskJiminnyReportsByUserdUser Suser.1 eallstring SsortColumn = created at'Windsurf changelog 2.12.21: A new version is available. // View Changelog (today 10:33)\ Sa= custom.log= laravel.logs Sr iminny@localnosuic HS_local Liminny@localhost)e console (PROD]¿ console (EU]A console [STAGINGAskJiminnyReportActivityService.php xC RequestGenerateAskJiminnyReportJobTestclass ASkJiminnyReportActiviClosingPeriodFilter:public function __constrprivate readonly Actprivate readonly Elaprivate readonly Log) {...}* Fetch activity IDs fo* Date filters stored o* no dque conscrouns* dreturn stringl Actipublic function getActivSearch SsavedSearchUser suser,0: array {srequestParams = sthnenrera s urtueraAcceptmarcetsreqarray merge (Srecsuser->getTimez):btulterset = sthis-MacuVVOS =109Sthis->loqger->infod'saved search id'user id' => Sus'activity_countID:return sactivityidsprivate tuncuion bullakeJ v Accept File &+X Reject File 1 38&Support Daily • in 2h 57 m100% |45]Tue 14 Apr 12:03:22RequestGenerateAskJiminnyReportJobTestCascadeFixing ReportControlleAutomated Report MaAutomated Reportip#L211 and add validation with logs insideGAutomatedRenortscommand. 0ho.5 209-710et me read the current state of the command tile firstkead Automateakeportscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports.Ineed to implement getReportByld properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycollection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucomaceakepo rtscommand.onpRead AutomatecRenortscommand.onoThe file is now only 140 lines - the user removed the processSing leReport/warnlfNotApp Licab leForSchedu Lemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:1 Aulomalecreoorsreroslorv.onoAlso tix the import order (Collection should be betore the models alphabetically):• AutomatedReportsCommand.php+1 -1• AutomatedReportsCommand.php+1 -1vone. oummary or changes.AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric strine→ tindovinubNon-numenc → Uud ookuo via tooptimizedoBoth use withTrashed() so soft-deleted reports are findable manuallygetReportByld() (AutomatedReportsCommand.php: 135-194) — checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violationbut sull rerurns the repor so processing continues.chockBehaviour on failINot Tounewarhina loe + terminal warn, returns emoty collection skips processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + terminal warn, continuesExoiredwarning log + terminal warn, continuesFrequency wouldn't run todayinfo lod + terminal warn. continuesWC1l -2 files +51 >Ask anything (&+L)401 auesde Claude Sonnet 46Reject allAccept allwinasun leams51:1uir-oia 4 spaces...
|
NULL
|
|
10908
|
NULL
|
0
|
2026-04-14T09:03:33.327245+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157413327_m2.jpg...
|
PhpStorm
|
faVsco.js – AskJiminnyReportActivityService.php
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
Project: faVsco.js, menu
#11894 on JY-18909-automa Project: faVsco.js, menu
#11894 on JY-18909-automated-reports-ask-jiminny, menu...
|
[{"role":"AXButton","text" [{"role":"AXButton","text":"Project: faVsco.js, menu","depth":5,"bounds":{"left":0.03046875,"top":0.017361112,"width":0.0453125,"height":0.022222223},"help_text":"~/jiminny/app","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"#11894 on JY-18909-automated-reports-ask-jiminny, menu","depth":5,"bounds":{"left":0.07578125,"top":0.017361112,"width":0.14960937,"height":0.022222223},"help_text":"Pull request #11894 exists for current branch JY-18909-automated-reports-ask-jiminny, but local branch is out of sync with remote","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false}]...
|
-5081751640215339021
|
-4009658842534132447
|
click
|
hybrid
|
NULL
|
Project: faVsco.js, menu
#11894 on JY-18909-automa Project: faVsco.js, menu
#11894 on JY-18909-automated-reports-ask-jiminny, menu
PhpStormFileFditViewNavigateCodelaraveRefactonRunToolsWindowHelpFV faVsco.s v#11894 on JY-18909-automated-reports-ask-jiminny k ~Project v(©) ReportController.php© JiminnyDebugCommand.phpC AutomatedReportsCommand.phpC) AutomatedReportsSendCommand.phpC) AddLayoutEntities.php(©) Team.php© DeviceRepository.php© AutomatedReportsRepository.php xAulomaleakeporisservice.onpc CrealenelaAcuiviyevent.ono© TrackProviderInstalledEvent.phpC CreateActivityLoggedEvent.phpC ElasticActivityRepository.p© EmailMessageRepository.p© GenericAiPromptRepositor© GroupRepository.php(C InboxEmailBatchRepositon)© UserPilotActivityListener.php© ActivityLogged.php© AutomatedReportsCallbackService.php© RequestGenerateAskJiminnyReportJob.phpC RequestGenerateReportJob.php(©) AutomatedReportResult.phpc) Automatedkeport.oneclass AucomaceareporcskepostcoryC InboxRepository.pnp© InvitationRepository.phpC) JobRepository.phpC) LanquageRepository.php© MomentRepository.phpNotificationRepository.phpC ParticipantRepository.php© ParticipantSpeechReposito© ParticipantStatsRepository© PlaybookCategoryRepositc© PlaybookRepository.phpC PlavlistActivityRepository.p(© PlaylistRepository.png(C PlaylistShareRepository.phC) QuestionRepository.php(C) RoleChangeEventRepositolC RoleRepository.php© SearchRepository.phpC SnapshotRepository.phpC) SocialAccountRepository.p© StageRepository.php© SubscriptionSetRepository.(C) TaskRepository.pho© TeamAiContextRepository.C TeamDomainsRepository.p(©) TeaminsightsRepository.phC) TeamRepository.phpC ThemeRepository.phpC TimezoneRepository.php© TopicRepository.php© TopicTriggerRepository.ph© TrackRepository.phpC) TranscriptionModelLocaleF© TranscriptionRepository.prC) TranscriptionSummarvRepC UserRepository.php© VocabularyRepository.pnp› Rulesv D Services>D Activity>D AReports>D AvatarM CalendarM ConferenceM Crm>MImport> MInternallv → Kioskv _ AutomatedReports(C) ActivityTypeService.(©) AskJiminnyReportAc(C) AutomatedReportse(C) AutomatedReportsS* areturn AutomatedRenortpubLic tunccion createlarray paata). Аuсопасеакероrиr. . .л* Find an automated report bu UUID* Oparam string Suuid* dreturn Automatedkeport/nullpubLic tuncclon tindbyuu1d(string puu1d): :Automatedкeрoгиre atomеероt.ee, оmерrcoupamizealoouna atmetTusagepublic function findByld0rUuid(string Sid0rUuid): ?AutomatedReportAcceotif (is_numeric($id0rUuid)) (return AutomatedReport::w1thlrashed(->f1nd((1nt) s1d0rUu1d);return AutomatedReport: :wit&Trashed()-›where( column: |'uuid', AutomatedReport:: to0ptimized(SidOrUvid))->firstO);* Retrieve all standard (non-Ask Jiminny) automated reports.* @param string $sortColumnThe column to sort by. Allowed values: 'created_by', "created_at'. Defaults to "created_at'.* aparam string $sortDirection The sort direction. Allowed values:'asc', 'desc'. Defaults to 'desc'.* dreturn collection<Automatedreport>12 usagespubLic tunction gecALLstandardkeportsstring ssortcolumn = "created_at",scring ssortbirection = 'desc': Collection (...l* Retrieve all Ask Jiminny reports created by the given user.* dparam UsersuserThe user whose reports to retrieve.* dparam string ssortcolumnThe column to sort by. Allowed values: 'created_by', "created_at'. Defaults to 'created_at'.* @param string $sortDirection The sort direction. Allowed values:"asc", desc". veraults to "desc".* drerurn couuectonsaurondredredor14 usagespublic function getAskJiminnyReportsByUserdUser Suser.string SsortColumn =created atWindsurf changelog 2.12.21: A new version is available. // View Changelog (today 10:33)Reiect1 eall\ Sa= custom.log= laravel.logs Sr iminny@localnosuic HS_local Liminny@localhost)e console (PROD]¿ console (EU]A console [STAGINGAskJiminnyReportActivityService.php xC RequestGenerateAskJiminnyReportJobTestclass ASkJiminnyReportActiviClosingPeriodFilter:public function __constrprivate readonly Actprivate readonly Elaprivate readonly Log) {...}* Fetch activity IDs fo* Date filters stored o* no dque conscrouns* dreturn stringl Actipublic function getActivSearch SsavedSearchUser suser,0: array {srequestParams = sthnenrera s urtueraAcceptmarcetsreqarray merge (Srecsuser->getTimez):btulterset = sthis-MacuVVOS =109Sthis->loqger->infod'saved search id'user id' => Sus'activity_countID:return sactivityidsprivate tuncuion bullakeJ v Accept File &+X Reject File 1 38&Support Daily • in 2h 57 m100% |45]Tue 14 Apr 12:03:33RequestGenerateAskJiminnyReportJobTestCascadeFixing ReportControlleAutomated Report MaAutomated Report !ip#L211 and add validation with logs insideGAutomatedRenortscommand. 0ho.5 209-710et me read the current state of the command tile firstkead Automateakeportscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports.Ineed to implement getReportByld properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycoLlection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucomaceakepo rtscommand.onpRead AutomatecRenortscommand.onoThe file is now only 140 lines - the user removed the processSing leReport/warnlfNotApp Licab leForSchedu lemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:1 Aulomalecreoorsreroslorv.onoAlso tix the import order (Collection should be betore the models alphabetically):• AutomatedReportsCommand.php+1 -1• AutomatedReportsCommand.php+1 -1vone. oummary or changes.AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric strine→ tindovinubNon-numenc → Uud ookuo via tooptimizedoBoth use withTrashed() so soft-deleted reports are findable manuallygetReportByld() (AutomatedReportsCommand.php: 135-194) — checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violationbut sull rerurns the repor so processing continues.chockBehaviour on failINot Tounewarhina loe + terminal wam, rerurns empty collection sklos processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + terminal warn, continuesExoiredwarning log + terminal warn, continuesFrequency wouldn't run todayinfo lod + terminal warn. continuesWC1l -2 files +51 >Ask anything (&+L)401 auesde Claude Sonnet 46Reject allAccept allwinasun leams51:1uir-oia 4 spaces...
|
10906
|
|
10910
|
217
|
0
|
2026-04-14T09:03:41.077023+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157421077_m2.jpg...
|
PhpStorm
|
faVsco.js – AskJiminnyReportActivityService.php
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
PhpStormFileFditViewNavigateCodelaraveRefactonTool PhpStormFileFditViewNavigateCodelaraveRefactonToolsWindowHelpFV faVsco.s v#11894 on JY-18909-automated-reports-ask-jiminny k ~Project v© DeviceRepository.phpC ElasticActivityRepository.p© EmailMessageRepository.p© GenericAiPromptRepositor© GroupRepository.php(C InboxEmailBatchRepositon)C InboxRepository.pnp© InvitationRepository.phpC) JobRepository.phpC) LanquageRepository.php© MomentRepository.phpNotificationRepository.phpC ParticipantRepository.php© ParticipantSpeechReposito© ParticipantStatsRepository© PlaybookCategoryRepositc© PlaybookRepository.phpC PlavlistActivityRepository.p(© PlaylistRepository.png(C PlaylistShareRepository.phC) QuestionRepository.php(C) RoleChangeEventRepositolC RoleRepository.php© SearchRepository.phpC SnapshotRepository.phpC) SocialAccountRepository.pg stageRepository.php© SubscriptionSetRepository.(C) TaskRepository.pho© TeamAiContextRepository.©) TeamDomainsRepository.p(©) TeaminsightsRepository.phC) TeamRepository.phpC ThemeRepository.phpC TimezoneRepository.php© TopicRepository.php© TopicTriggerRepository.ph© TrackRepository.phpC) TranscriptionModelLocaleF© TranscriptionRepository.prC) TranscriptionSummarvRepC UserRepository.php© VocabularyRepository.pnp› Rulesv D Services> _ Activity>D AReports>D AvatarcalendarM ConferenceM Crm>MImport> MInternallv → Kioskv _ AutomatedReports(C) ActivityTypeService.(©) AskJiminnyReportAc(C) AutomatedReportse(C) AutomatedReportsS(©) ReportController.php© JiminnyDebugCommand.phpC AutomatedReportsCommand.phpC) AutomatedReportsSendCommand.phpC) AddLayoutEntities.php(©) Team.php© AutomatedReportsRepository.php xAulomaleakeporisservice.onp(c CrealenelaAcuiviyevent.ono© TrackProviderInstalledEvent.phpC CreateActivityLoggedEvent.php© UserPilotActivityListener.php© ActivityLogged.php© AutomatedReportsCallbackService.php© RequestGenerateAskJiminnyReportJob.phpC RequestGenerateReportJob.php(©) AutomatedReportResult.phpc) Automatedkeport.oneclass Aucomaceareporcskepostcory53* Oreturn AutomatedReportpubLic tunccion createlarray paata). Аuсопасеакероrиr. . .л* Find an automated report bu UUID* Oparam string Suuid* dreturn Automatedkeport/nullpubLic tuncclon tindbyuu1d(string puu1d): :Automatedкeрoгиre atomеероt.ee, оmерrcoupamizealoouna atmetTusagepublic function findByld0rUuid(string Sid0rUuid): ?AutomatedReportAcceotif (is_numeric($id0rUuid)) (return AutomateaReport: wathlrasned(->rzn antp szdoruuza)l;recurn Automacedkeport::Wichlrasnecu-›wherel column: "Ju1d, Automatedкeporu:. couptimized slauruula-tirstunCascade & l* Retrieve all standard (non-Ask Jiminny) automated reports.* @param string $sortColumnThe column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to "created_at'.* aparam string SsortDirection The sort direction. Allowed values:'asc', 'desc'. Defaults to 'desc'.* dreturn collection<Automatedreport>12 usagespubLic tunction gecALLstandardkeportsstring ssortcolumn = "created_at",scring ssortbirection = 'desc': Collection (...l* Retrieve all Ask Jiminny reports created by the given user.* dparam UsersuserThe user whose reports to retrieve.* dparam string ssortcolumnThe column to sort by. Allowed values: 'created_by', "created_at'. Defaults to 'created_at".* @param string $sortDirection The sort direction. Allowed values:"asc, "desc". veraults to "desc".* drerurn couuectonsaurondredredor14 usagespublic function getAskJiminnyReportsByUserdUser Suser.string SsortColumn =created atWindsurf changelog 2.12.21: A new version is available. // View Changelog (today 10:33)KenecuCommand*_51= custom.log= laravel.log4 SF [iiminny@localhostlc HS_local Jiminny@localhost)e console (PROD]¿ console (EU]A console [STAGINGAskJiminnyReportActivityService.php xC RequestGenerateAskJiminnyReportJobTestclass ASkJiminnyReportActiviClosingPeriodFilter:public function __constrprivate readonly Actprivate readonly Elaprivate readonly Log) {...}* Fetch activity IDs fo* Date filters stored o* no dque conscrouns* dreturn stringl Actipublic function getActivSearch SsavedSearchUser suser,D: arraysrequestParams = sthnenrera s urtueraAcceptmarcetsreqarray merge (Srecsuser->getTimez):btulterset = sthis-MacuVVOS =109Sthis->loqger->infod'saved search id'user id' => Sus'activity_countID:return sactivityidsprivate runcuion bulake1 eallJ v Accept File &+X Reject File 1 38&Support Daily • in 2h 57 m100% |45]Tue 14 Apr 12:03:40RequestGenerateAskJiminnyReportJobTestCascadeFixing ReportControlleAutomated Report Ma• Automated Report !ip#L211 and add validation with logs insideGAutomatedRenortscommand. 0ho.5 209-710et me read the current state of the command tile firstkead Automateakeportscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports.Ineed to implement getReportByld properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycollection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucomaceakepo rtscommand.onpRead AutomatecRenortscommand.onoThe file is now only 140 lines - the user removed the processSing leReport/warnlfNotApp Licab leForSchedu Lemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:1 Aulomalecreoorsreroslorv.onoAlso tix the import order (Collection should be betore the models alphabetically):AutomatedReportsCommand.php+1 -1• AutomatedReportsCommand.php+1 -1vone. oummary or changes.AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric strine→ tindovinubNon-numenc → Uud ookuo via tooptimizedoBoth use withTrashed() so soft-deleted reports are findable manuallygetReportByld() (AutomatedReportsCommand.php: 135-194) — checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violationbut sull rerurns the repor so processing continues.chockBehaviour on failINot Tounewarhina loe + terminal warn, returns emoty collection skips processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + terminal warn, continuesExoiredwarning log + terminal warn, continuesFrequency wouldn't run todayinfo lod + terminal warn. continuesWC1l -2 files +51 >Ask anything (&+L)401 auesde Claude Sonnet 46Reject allAccept allwinasur leams51:1uir-oia 4 spaces...
|
NULL
|
5012723601940443684
|
NULL
|
click
|
ocr
|
NULL
|
PhpStormFileFditViewNavigateCodelaraveRefactonTool PhpStormFileFditViewNavigateCodelaraveRefactonToolsWindowHelpFV faVsco.s v#11894 on JY-18909-automated-reports-ask-jiminny k ~Project v© DeviceRepository.phpC ElasticActivityRepository.p© EmailMessageRepository.p© GenericAiPromptRepositor© GroupRepository.php(C InboxEmailBatchRepositon)C InboxRepository.pnp© InvitationRepository.phpC) JobRepository.phpC) LanquageRepository.php© MomentRepository.phpNotificationRepository.phpC ParticipantRepository.php© ParticipantSpeechReposito© ParticipantStatsRepository© PlaybookCategoryRepositc© PlaybookRepository.phpC PlavlistActivityRepository.p(© PlaylistRepository.png(C PlaylistShareRepository.phC) QuestionRepository.php(C) RoleChangeEventRepositolC RoleRepository.php© SearchRepository.phpC SnapshotRepository.phpC) SocialAccountRepository.pg stageRepository.php© SubscriptionSetRepository.(C) TaskRepository.pho© TeamAiContextRepository.©) TeamDomainsRepository.p(©) TeaminsightsRepository.phC) TeamRepository.phpC ThemeRepository.phpC TimezoneRepository.php© TopicRepository.php© TopicTriggerRepository.ph© TrackRepository.phpC) TranscriptionModelLocaleF© TranscriptionRepository.prC) TranscriptionSummarvRepC UserRepository.php© VocabularyRepository.pnp› Rulesv D Services> _ Activity>D AReports>D AvatarcalendarM ConferenceM Crm>MImport> MInternallv → Kioskv _ AutomatedReports(C) ActivityTypeService.(©) AskJiminnyReportAc(C) AutomatedReportse(C) AutomatedReportsS(©) ReportController.php© JiminnyDebugCommand.phpC AutomatedReportsCommand.phpC) AutomatedReportsSendCommand.phpC) AddLayoutEntities.php(©) Team.php© AutomatedReportsRepository.php xAulomaleakeporisservice.onp(c CrealenelaAcuiviyevent.ono© TrackProviderInstalledEvent.phpC CreateActivityLoggedEvent.php© UserPilotActivityListener.php© ActivityLogged.php© AutomatedReportsCallbackService.php© RequestGenerateAskJiminnyReportJob.phpC RequestGenerateReportJob.php(©) AutomatedReportResult.phpc) Automatedkeport.oneclass Aucomaceareporcskepostcory53* Oreturn AutomatedReportpubLic tunccion createlarray paata). Аuсопасеакероrиr. . .л* Find an automated report bu UUID* Oparam string Suuid* dreturn Automatedkeport/nullpubLic tuncclon tindbyuu1d(string puu1d): :Automatedкeрoгиre atomеероt.ee, оmерrcoupamizealoouna atmetTusagepublic function findByld0rUuid(string Sid0rUuid): ?AutomatedReportAcceotif (is_numeric($id0rUuid)) (return AutomateaReport: wathlrasned(->rzn antp szdoruuza)l;recurn Automacedkeport::Wichlrasnecu-›wherel column: "Ju1d, Automatedкeporu:. couptimized slauruula-tirstunCascade & l* Retrieve all standard (non-Ask Jiminny) automated reports.* @param string $sortColumnThe column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to "created_at'.* aparam string SsortDirection The sort direction. Allowed values:'asc', 'desc'. Defaults to 'desc'.* dreturn collection<Automatedreport>12 usagespubLic tunction gecALLstandardkeportsstring ssortcolumn = "created_at",scring ssortbirection = 'desc': Collection (...l* Retrieve all Ask Jiminny reports created by the given user.* dparam UsersuserThe user whose reports to retrieve.* dparam string ssortcolumnThe column to sort by. Allowed values: 'created_by', "created_at'. Defaults to 'created_at".* @param string $sortDirection The sort direction. Allowed values:"asc, "desc". veraults to "desc".* drerurn couuectonsaurondredredor14 usagespublic function getAskJiminnyReportsByUserdUser Suser.string SsortColumn =created atWindsurf changelog 2.12.21: A new version is available. // View Changelog (today 10:33)KenecuCommand*_51= custom.log= laravel.log4 SF [iiminny@localhostlc HS_local Jiminny@localhost)e console (PROD]¿ console (EU]A console [STAGINGAskJiminnyReportActivityService.php xC RequestGenerateAskJiminnyReportJobTestclass ASkJiminnyReportActiviClosingPeriodFilter:public function __constrprivate readonly Actprivate readonly Elaprivate readonly Log) {...}* Fetch activity IDs fo* Date filters stored o* no dque conscrouns* dreturn stringl Actipublic function getActivSearch SsavedSearchUser suser,D: arraysrequestParams = sthnenrera s urtueraAcceptmarcetsreqarray merge (Srecsuser->getTimez):btulterset = sthis-MacuVVOS =109Sthis->loqger->infod'saved search id'user id' => Sus'activity_countID:return sactivityidsprivate runcuion bulake1 eallJ v Accept File &+X Reject File 1 38&Support Daily • in 2h 57 m100% |45]Tue 14 Apr 12:03:40RequestGenerateAskJiminnyReportJobTestCascadeFixing ReportControlleAutomated Report Ma• Automated Report !ip#L211 and add validation with logs insideGAutomatedRenortscommand. 0ho.5 209-710et me read the current state of the command tile firstkead Automateakeportscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports.Ineed to implement getReportByld properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycollection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucomaceakepo rtscommand.onpRead AutomatecRenortscommand.onoThe file is now only 140 lines - the user removed the processSing leReport/warnlfNotApp Licab leForSchedu Lemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:1 Aulomalecreoorsreroslorv.onoAlso tix the import order (Collection should be betore the models alphabetically):AutomatedReportsCommand.php+1 -1• AutomatedReportsCommand.php+1 -1vone. oummary or changes.AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric strine→ tindovinubNon-numenc → Uud ookuo via tooptimizedoBoth use withTrashed() so soft-deleted reports are findable manuallygetReportByld() (AutomatedReportsCommand.php: 135-194) — checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violationbut sull rerurns the repor so processing continues.chockBehaviour on failINot Tounewarhina loe + terminal warn, returns emoty collection skips processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + terminal warn, continuesExoiredwarning log + terminal warn, continuesFrequency wouldn't run todayinfo lod + terminal warn. continuesWC1l -2 files +51 >Ask anything (&+L)401 auesde Claude Sonnet 46Reject allAccept allwinasur leams51:1uir-oia 4 spaces...
|
NULL
|
|
10911
|
217
|
1
|
2026-04-14T09:03:44.009370+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157424009_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
PhpStormFileFditViewNavigateCodelaravelPetactonToo PhpStormFileFditViewNavigateCodelaravelPetactonToolsWindowHelpFV faVsco.s v#11894 on JY-18909-automated-reports-ask-iminny K vProject vD UnitActionsComponent› Configuration> MConsole> M ContractsM DomainD DTO• Enums_ Events_ Exceptions→ fixturesHelpersD Http>_Integrations> Minteractions• D Jobs> M Activitv> M AiAutomation>_ Audiov _ AutomatedReports©) CreateResultsTest.pl(C) RequestGenerateAs'© RequestGenerateRerC SendReportJobTest.(ch SendRenortMailJobtcallendar!1CrmDeaksksM Mailbox_ Streaming→ Team_ TelephonyD User(c) ImportRecallAlRecordins(c) SqsVisibilityControlTest→I Listeners→]Mal> MModelsM Notifications› M Observers› D PoliciesProvidersRepositories> D Rulesv Services_ Activity_ ActivityProvidersI IAvatarcallendarConference! CinmiM InternallKioskv _ AutomatedReports©) ActivityTypeServi(c) AskJiminnyRepor(c) AskJiminnyRepor(c AutomatedRenor(©) ReportController.phpJiminnybeouecommana.ongc) Automatedreoonscommane.oneutomatedRevor ssendCommane.onoC AddLayoutEntities.php(©) Team.php© AutomatedReportsRepository.php XC AutomatedReportsService.php© CreateHeldActivityEvent.php© TrackProviderInstalledEvent.phpC CreateActivityLoggedEvent.php© UserPilotActivityListener.php© ActivityLogged.php© AutomatedReportsCallbackService.php(0) RequestGenerate.sk.liminnvRenor.oh.ohn© RequestGenerateReportJob.php(©) AutomatedReportResult.phpc) Automatedkeport.oneclass Aucomaceareporcskepostcory56 E72* Oreturn AutomatedReportpubLic tunccion createlarray paata). Аuсопасеакероrиr. . .л/**|* Find an automated report bu UUID* @param string Suuid* dreturn Automatedkeport/nullpubLic tuncclon tindbyuu1d(string puu1d): :Automatedкeрoгиre atomеероt.ee, оmерrcoupamizealoouna atmetTusagepublic function findByld0rUuid(string Sid0rUuid): ?AutomatedReportAcceotlif (is_numeric($idorUuid)) €return AutomatedReport::w1thlrashed->f1nd((1nt) s1d0rUu1d)*recurn Automacedkeport::Wichlrasned()-›wherel column: "Ju1d, Automatedкeporu:. couptimized slauruula-tirstun* Retrieve all standard (non-Ask Jiminny) automated reports.* @param string $sortColumnThe column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to "created_at'.* aparam string SsortDirection The sort direction. Allowed values:'asc','desc'. Defaults to 'desc'.* dreturn collection<Automatedreport>12 usagespubLic tunction gecALLstandardkeportsstring ssortcolumn = "created_at",scring ssortbirection = 'desc: Collection (...* Retrieve all Ask Jiminny reports created by the given user.* dparam UsersuserThe user whose reports to retrieve.* dparam string ssortcolumnThe column to sort by. Allowed values: 'created_by', "created_at'. Defaults to 'created_at".* dparam string ssortuireccion ine sorc aireccion. ALlowed values:"asc","desc' etalus to 'dese'* drerurn couuectonsaurondredredor14 usagespublic function getAskJiminnyReportsByUserdUser Suser.string SsortColumn =created atwinasurt change0g 2.12.21: A new version is available. // View Changelog (today 10:33)Reiect1 eall= custom.log= laravel.logL SF [jiminny@localhost]c HS_local Liminny@localhost)console PRob)¿ console (EU]A console [STAGINGAskJiminnyReportActivityService.php© AskJiminnyReportActivityServiceTest.phpC RequestGenerateAskJiminnyReportJobTesclass AskJiminnyReportActiv100117157—184185205—206224231275orivate tunccion makeusprivate function makesapublic function testbetouo uc runction testhenpublic function testGetpublic function testGetpublic function testGetpublic function testfetpubuic tunction testbet$user = $this->makeSsavedSearch = Sthi$filterSet = Sthissthis->activitySearscapturedcriteria%thas->actvitvsaar->method( con=>WalLLke turnite"unus-›elasclckedosSthis->loqger->methsthis->service->qetsthis->assertNotllu$this->assertFalse(pubuic tunction tescuetV Accept File &+X Reject File 1 38 @Support Daily • in 2h 57 m100% |45]Tue 14 Apr 12:03:43RequestGenerateAskJiminnyReportJobTestCascadeFixing ReportControlleAutomated Report MaAutomated Report1n7 211 and adc valication with loas insideGAutomatedRenortscommand. 0hn1 209-210et me read the current state of the command tile firstkead Automateakeportscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports.Ineed to implement getReportByld properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycollection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucoma ceakepo rtscommand.ohoRead AutomatecRenortscommand.onoThe file is now only 140 lines - the user removed the processSing leReport/warnlfNotApp Licab leForSchedu Lemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:1 Aulomalecreoorsre.oslorv.oneAlso tix the import order (Collection should be before the models alphabetically):AutomatedReportsCommand.php+1-1• AutomatedReportsCommand.php+1 -1Done. Summary of changes:AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric string → find() bv int IDNon-numenc → Uu d ookuo via tooptimizedoBoth use withTrashed() so soft-deleted reports are findable manuallygetReportByld() (AutomatedReportsCommand.php: 135-194) — checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violationbut sull rerurns the repor so processing continues.chockBehaviour on failINot Tounewarhina loe + terminal warn, returns emoty collection skips processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + terminal warn, continuesExoiredwarning log + terminal warn, continuesFrequency wouldn't run todayinfo lod + terminal warn. continuesWC1l -2 files +51>Ask anything (&+L)3,0l &uesde Claude Sonnet 46Reject allAccept allwinasun leamsuir-oia 4 spaces...
|
NULL
|
5919062211770618231
|
NULL
|
visual_change
|
ocr
|
NULL
|
PhpStormFileFditViewNavigateCodelaravelPetactonToo PhpStormFileFditViewNavigateCodelaravelPetactonToolsWindowHelpFV faVsco.s v#11894 on JY-18909-automated-reports-ask-iminny K vProject vD UnitActionsComponent› Configuration> MConsole> M ContractsM DomainD DTO• Enums_ Events_ Exceptions→ fixturesHelpersD Http>_Integrations> Minteractions• D Jobs> M Activitv> M AiAutomation>_ Audiov _ AutomatedReports©) CreateResultsTest.pl(C) RequestGenerateAs'© RequestGenerateRerC SendReportJobTest.(ch SendRenortMailJobtcallendar!1CrmDeaksksM Mailbox_ Streaming→ Team_ TelephonyD User(c) ImportRecallAlRecordins(c) SqsVisibilityControlTest→I Listeners→]Mal> MModelsM Notifications› M Observers› D PoliciesProvidersRepositories> D Rulesv Services_ Activity_ ActivityProvidersI IAvatarcallendarConference! CinmiM InternallKioskv _ AutomatedReports©) ActivityTypeServi(c) AskJiminnyRepor(c) AskJiminnyRepor(c AutomatedRenor(©) ReportController.phpJiminnybeouecommana.ongc) Automatedreoonscommane.oneutomatedRevor ssendCommane.onoC AddLayoutEntities.php(©) Team.php© AutomatedReportsRepository.php XC AutomatedReportsService.php© CreateHeldActivityEvent.php© TrackProviderInstalledEvent.phpC CreateActivityLoggedEvent.php© UserPilotActivityListener.php© ActivityLogged.php© AutomatedReportsCallbackService.php(0) RequestGenerate.sk.liminnvRenor.oh.ohn© RequestGenerateReportJob.php(©) AutomatedReportResult.phpc) Automatedkeport.oneclass Aucomaceareporcskepostcory56 E72* Oreturn AutomatedReportpubLic tunccion createlarray paata). Аuсопасеакероrиr. . .л/**|* Find an automated report bu UUID* @param string Suuid* dreturn Automatedkeport/nullpubLic tuncclon tindbyuu1d(string puu1d): :Automatedкeрoгиre atomеероt.ee, оmерrcoupamizealoouna atmetTusagepublic function findByld0rUuid(string Sid0rUuid): ?AutomatedReportAcceotlif (is_numeric($idorUuid)) €return AutomatedReport::w1thlrashed->f1nd((1nt) s1d0rUu1d)*recurn Automacedkeport::Wichlrasned()-›wherel column: "Ju1d, Automatedкeporu:. couptimized slauruula-tirstun* Retrieve all standard (non-Ask Jiminny) automated reports.* @param string $sortColumnThe column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to "created_at'.* aparam string SsortDirection The sort direction. Allowed values:'asc','desc'. Defaults to 'desc'.* dreturn collection<Automatedreport>12 usagespubLic tunction gecALLstandardkeportsstring ssortcolumn = "created_at",scring ssortbirection = 'desc: Collection (...* Retrieve all Ask Jiminny reports created by the given user.* dparam UsersuserThe user whose reports to retrieve.* dparam string ssortcolumnThe column to sort by. Allowed values: 'created_by', "created_at'. Defaults to 'created_at".* dparam string ssortuireccion ine sorc aireccion. ALlowed values:"asc","desc' etalus to 'dese'* drerurn couuectonsaurondredredor14 usagespublic function getAskJiminnyReportsByUserdUser Suser.string SsortColumn =created atwinasurt change0g 2.12.21: A new version is available. // View Changelog (today 10:33)Reiect1 eall= custom.log= laravel.logL SF [jiminny@localhost]c HS_local Liminny@localhost)console PRob)¿ console (EU]A console [STAGINGAskJiminnyReportActivityService.php© AskJiminnyReportActivityServiceTest.phpC RequestGenerateAskJiminnyReportJobTesclass AskJiminnyReportActiv100117157—184185205—206224231275orivate tunccion makeusprivate function makesapublic function testbetouo uc runction testhenpublic function testGetpublic function testGetpublic function testGetpublic function testfetpubuic tunction testbet$user = $this->makeSsavedSearch = Sthi$filterSet = Sthissthis->activitySearscapturedcriteria%thas->actvitvsaar->method( con=>WalLLke turnite"unus-›elasclckedosSthis->loqger->methsthis->service->qetsthis->assertNotllu$this->assertFalse(pubuic tunction tescuetV Accept File &+X Reject File 1 38 @Support Daily • in 2h 57 m100% |45]Tue 14 Apr 12:03:43RequestGenerateAskJiminnyReportJobTestCascadeFixing ReportControlleAutomated Report MaAutomated Report1n7 211 and adc valication with loas insideGAutomatedRenortscommand. 0hn1 209-210et me read the current state of the command tile firstkead Automateakeportscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports.Ineed to implement getReportByld properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycollection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucoma ceakepo rtscommand.ohoRead AutomatecRenortscommand.onoThe file is now only 140 lines - the user removed the processSing leReport/warnlfNotApp Licab leForSchedu Lemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:1 Aulomalecreoorsre.oslorv.oneAlso tix the import order (Collection should be before the models alphabetically):AutomatedReportsCommand.php+1-1• AutomatedReportsCommand.php+1 -1Done. Summary of changes:AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric string → find() bv int IDNon-numenc → Uu d ookuo via tooptimizedoBoth use withTrashed() so soft-deleted reports are findable manuallygetReportByld() (AutomatedReportsCommand.php: 135-194) — checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violationbut sull rerurns the repor so processing continues.chockBehaviour on failINot Tounewarhina loe + terminal warn, returns emoty collection skips processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + terminal warn, continuesExoiredwarning log + terminal warn, continuesFrequency wouldn't run todayinfo lod + terminal warn. continuesWC1l -2 files +51>Ask anything (&+L)3,0l &uesde Claude Sonnet 46Reject allAccept allwinasun leamsuir-oia 4 spaces...
|
10910
|
|
10913
|
217
|
2
|
2026-04-14T09:03:48.928563+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157428928_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
PhpStormFileFditViewNavigateCodelaraveRetactonTool PhpStormFileFditViewNavigateCodelaraveRetactonToolsWindowHelpFV faVsco.s v#11894 on JY-18909-automated-reports-ask-iminny K vProject v(©) ReportController.phpJiminnybeouecommana.ongC AutomatedReportsCommand.phpl/utomatecRenorissenoCommana.ongC AddLayoutEntities.php(C) Team.phpD UnitActionsComponent› Configuration› M Console© AutomatedReportsRepository.php XC AutomatedReportsService.php© CreateHeldActivityEvent.php© TrackProviderInstalledEvent.phpC CreateActivityLoggedEvent.php© UserPilotActivityListener.php© ActivityLogged.php© AutomatedReportsCallbackService.php© RequestGenerateAskJiminnyReportJob.phpC RequestGenerateReportJob.php(©) AutomatedReportResult.phpc) Automatedkeport.oneclass AucomaceareporcskepostcoryM ContractsM DomainD DTO• Enums_ Events_ Exceptions→ fixturesHelpersD Http>_Integrations> Minteractions• D Jobs> M ActivitvM AiAutomation>_ Audiov _ AutomatedReports©) CreateResultsTest.pl(C) RequestGenerateAs'© RequestGenerateRerC SendReportJobTest.(ch SendRenortMailJobtcallendar!1CrmDeaksksM Mailbox_ Streaming→ Team_ TelephonyD User(c) ImportRecallAlRecordins(c) SqsVisibilityControlTestMListeners> MModelsM Notifications› M ObserversPoliciesProvidersRepositories> D Rulesv Services_ Activity_ ActivityProvidersI IAvatarcallendarConference! CinmiM InternallKioskv _ AutomatedReports©) ActivityTypeServi(c) AskJiminnyRepor(c) AskJiminnyRepor(c AutomatedRenor* Oreturn AutomatedReportpubLic tunccion createlarray paata). Аuсопасеакероrиr. . .л/**|* Find an automated report bu UUID* @param string Suuid* dreturn Automatedkeport/nullpubLic tunccion tindbyuu1d(scring suuld): :Automaсedкерогиre atomеероt.ee, оmерrcoupamizealoouna atmetTusagepublic function findByld0rUuid(string Sid0rUuid): ?AutomatedReportAcceotlif (is_numeric($idorUuid)) €return AutomatedReport:ende(int $idoruuld:recurn Automacedkeport:: where vuld, Automacedreporu:. couptimized(slauruula-stirsti* Retrieve all standard (non-Ask Jiminny) automated reports.* @param string $sortColumnThe column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to "created_at'.* aparam string SsortDirection The sort direction. Allowed values:'asc','desc'. Defaults to 'desc'.* dreturn collection<Automatedreport>12 usagespubLic tunction gecALLstandardkeportsstring ssortcolumn ="creaced_at",scring ssortbirection = 'desc: Collection (...* Retrieve all Ask Jiminny reports created by the given user.* dparam UsersuserThe user whose reports to retrieve.* dparam string ssortcolumnThe column to sort by. Allowed values: 'created_by', "created_at'. Defaults to 'created_at'.* dparam string ssortuireccion ine sorc aireccion. ALlowed values:"asc", desc". veraults to "desc".* drerurn couuectonsaurondredredor14 usadespublic function getAskJiminnyReportsByUserdUser Suser.string SsortColumn =created atwinasurt changelog 2.12.21: A new version is available. // View Changelog (today 10:33)Kenecu1 eall= custom.log= laravel.logL SF [jiminny@localhost]c HS_local Jiminny@localhost)e console (PROD]¿ console (EU]4 console [STAGINGAskJiminnyReportActivityService.php© AskJiminnyReportActivityServiceTest.phpC RequestGenerateAskJiminnyReportJobTesclass AskJiminnyReportActiv71 >1A0 C>118 M >157 >— 184185 V >205DAVAS2242252220228229230249250— 251252 D>274_275orivate tunccion makeusprivate function makesapublic function testbetpubuic tunction testbetpublic function testGetpublic function testGetpublic function testGetpublic function testfetpubuic tunction testbet$user = schis->makeSsavedSearch = Sthi$filterSet = Sthis-sthis->activitySearscapturedcriteria"thns->activitvsas->methodl cor=>WalLlke turnitanunus-›elasu ickenps$this->loager->methsthis->service->qetsthis->assertNotllu$this->assertFalse(pubuic tunction tescuetAccept File &+X Reject File 1%g: Support Daily • in 2h 57 m100% |45]Tue 14 Apr 12:03:48RequestGenerateAskJiminnyReportJobTest vCascadeFixing ReportControlleAutomated Report Mar© Automated Report !1n7 211 and adc valication with loas insideGAutomatedRenortscommand. 0ho.5 209-710et me read the current state of the command tile firstkead Automateakeportscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports.Ineed to implement getReportByld properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycoLlection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucomaceakepo rtscommand.onpRead AutomatecRenortscommand.onoThe file is now only 140 lines - the user removed the processSing leReport/warnlfNotApp Licab leForSchedu Lemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:1 Aulomalecreoorsreroslorv.onoAlso tix the import order (Collection should be before the models alphabetically):AutomatedReportsCommand.php+1 -1• AutomatedReportsCommand.php+1 -1Done. Summary of changes:AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric string → find() bv int IDNon-numenc → Uud ookuo via tooptimizedoBoth use withTrashed() so soft-deleted reports are findable manuallygetReportByld() (AutomatedReportsCommand.php: 135-194) — checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violationbut sull rerurns the repor so processing continues.chockBehaviour on failINot Tounewarhina loe + terminal warn, returns emoty collection skips processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + terminal warn, continuesExoiredwarning log + terminal warn, continuesFrequency wouldn't run todayinfo lod + terminal warn. continuesWC1l -2 files +51 >Ask anything (&+L)3,0l &uesde Claude Sonnet 46Reject allAccept allwinasun leamsuir-oia 4 spaces...
|
NULL
|
-2731937510118527180
|
NULL
|
click
|
ocr
|
NULL
|
PhpStormFileFditViewNavigateCodelaraveRetactonTool PhpStormFileFditViewNavigateCodelaraveRetactonToolsWindowHelpFV faVsco.s v#11894 on JY-18909-automated-reports-ask-iminny K vProject v(©) ReportController.phpJiminnybeouecommana.ongC AutomatedReportsCommand.phpl/utomatecRenorissenoCommana.ongC AddLayoutEntities.php(C) Team.phpD UnitActionsComponent› Configuration› M Console© AutomatedReportsRepository.php XC AutomatedReportsService.php© CreateHeldActivityEvent.php© TrackProviderInstalledEvent.phpC CreateActivityLoggedEvent.php© UserPilotActivityListener.php© ActivityLogged.php© AutomatedReportsCallbackService.php© RequestGenerateAskJiminnyReportJob.phpC RequestGenerateReportJob.php(©) AutomatedReportResult.phpc) Automatedkeport.oneclass AucomaceareporcskepostcoryM ContractsM DomainD DTO• Enums_ Events_ Exceptions→ fixturesHelpersD Http>_Integrations> Minteractions• D Jobs> M ActivitvM AiAutomation>_ Audiov _ AutomatedReports©) CreateResultsTest.pl(C) RequestGenerateAs'© RequestGenerateRerC SendReportJobTest.(ch SendRenortMailJobtcallendar!1CrmDeaksksM Mailbox_ Streaming→ Team_ TelephonyD User(c) ImportRecallAlRecordins(c) SqsVisibilityControlTestMListeners> MModelsM Notifications› M ObserversPoliciesProvidersRepositories> D Rulesv Services_ Activity_ ActivityProvidersI IAvatarcallendarConference! CinmiM InternallKioskv _ AutomatedReports©) ActivityTypeServi(c) AskJiminnyRepor(c) AskJiminnyRepor(c AutomatedRenor* Oreturn AutomatedReportpubLic tunccion createlarray paata). Аuсопасеакероrиr. . .л/**|* Find an automated report bu UUID* @param string Suuid* dreturn Automatedkeport/nullpubLic tunccion tindbyuu1d(scring suuld): :Automaсedкерогиre atomеероt.ee, оmерrcoupamizealoouna atmetTusagepublic function findByld0rUuid(string Sid0rUuid): ?AutomatedReportAcceotlif (is_numeric($idorUuid)) €return AutomatedReport:ende(int $idoruuld:recurn Automacedkeport:: where vuld, Automacedreporu:. couptimized(slauruula-stirsti* Retrieve all standard (non-Ask Jiminny) automated reports.* @param string $sortColumnThe column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to "created_at'.* aparam string SsortDirection The sort direction. Allowed values:'asc','desc'. Defaults to 'desc'.* dreturn collection<Automatedreport>12 usagespubLic tunction gecALLstandardkeportsstring ssortcolumn ="creaced_at",scring ssortbirection = 'desc: Collection (...* Retrieve all Ask Jiminny reports created by the given user.* dparam UsersuserThe user whose reports to retrieve.* dparam string ssortcolumnThe column to sort by. Allowed values: 'created_by', "created_at'. Defaults to 'created_at'.* dparam string ssortuireccion ine sorc aireccion. ALlowed values:"asc", desc". veraults to "desc".* drerurn couuectonsaurondredredor14 usadespublic function getAskJiminnyReportsByUserdUser Suser.string SsortColumn =created atwinasurt changelog 2.12.21: A new version is available. // View Changelog (today 10:33)Kenecu1 eall= custom.log= laravel.logL SF [jiminny@localhost]c HS_local Jiminny@localhost)e console (PROD]¿ console (EU]4 console [STAGINGAskJiminnyReportActivityService.php© AskJiminnyReportActivityServiceTest.phpC RequestGenerateAskJiminnyReportJobTesclass AskJiminnyReportActiv71 >1A0 C>118 M >157 >— 184185 V >205DAVAS2242252220228229230249250— 251252 D>274_275orivate tunccion makeusprivate function makesapublic function testbetpubuic tunction testbetpublic function testGetpublic function testGetpublic function testGetpublic function testfetpubuic tunction testbet$user = schis->makeSsavedSearch = Sthi$filterSet = Sthis-sthis->activitySearscapturedcriteria"thns->activitvsas->methodl cor=>WalLlke turnitanunus-›elasu ickenps$this->loager->methsthis->service->qetsthis->assertNotllu$this->assertFalse(pubuic tunction tescuetAccept File &+X Reject File 1%g: Support Daily • in 2h 57 m100% |45]Tue 14 Apr 12:03:48RequestGenerateAskJiminnyReportJobTest vCascadeFixing ReportControlleAutomated Report Mar© Automated Report !1n7 211 and adc valication with loas insideGAutomatedRenortscommand. 0ho.5 209-710et me read the current state of the command tile firstkead Automateakeportscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports.Ineed to implement getReportByld properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycoLlection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucomaceakepo rtscommand.onpRead AutomatecRenortscommand.onoThe file is now only 140 lines - the user removed the processSing leReport/warnlfNotApp Licab leForSchedu Lemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:1 Aulomalecreoorsreroslorv.onoAlso tix the import order (Collection should be before the models alphabetically):AutomatedReportsCommand.php+1 -1• AutomatedReportsCommand.php+1 -1Done. Summary of changes:AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric string → find() bv int IDNon-numenc → Uud ookuo via tooptimizedoBoth use withTrashed() so soft-deleted reports are findable manuallygetReportByld() (AutomatedReportsCommand.php: 135-194) — checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violationbut sull rerurns the repor so processing continues.chockBehaviour on failINot Tounewarhina loe + terminal warn, returns emoty collection skips processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + terminal warn, continuesExoiredwarning log + terminal warn, continuesFrequency wouldn't run todayinfo lod + terminal warn. continuesWC1l -2 files +51 >Ask anything (&+L)3,0l &uesde Claude Sonnet 46Reject allAccept allwinasun leamsuir-oia 4 spaces...
|
NULL
|
|
10915
|
217
|
3
|
2026-04-14T09:03:52.064201+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157432064_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
PhpStormFileFditViewNavigateCodelaraveRefactonTool PhpStormFileFditViewNavigateCodelaraveRefactonToolsWindowHelpFV faVsco.s v#11894 on JY-18909-automated-reports-ask-iminny K vProject v(©) ReportController.phpJiminnybeouecommana.ongC AutomatedReportsCommand.phpl/utomatecRenorissenoCommana.ongC AddLayoutEntities.php(C) Team.phpD Unit_ ActionsComponentConfiguration› M Console© AutomatedReportsRepository.php XC AutomatedReportsService.php© CreateHeldActivityEvent.php© TrackProviderInstalledEvent.phpC CreateActivityLoggedEvent.php© UserPilotActivityListener.php© ActivityLogged.php© AutomatedReportsCallbackService.php© RequestGenerateAskJiminnyReportJob.php(©) RequestGenerateReportJob.php(©) AutomatedReportResult.phpc) Automatedkeport.oneclass AucomaceareporcskepostcoryM ContractsM DomainD DTO• Enums_ Events_ Exceptions→ fixturesHelpersD Http>_Integrations> Minteractions• D Jobs> M ActivitvM AiAutomation>_ Audiov _ AutomatedReports©) CreateResultsTest.pl(C) RequestGenerateAs'© RequestGenerateRerC SendReportJobTest.(ch SendRenortMailJobtcallendar!1CrmDeaksksM Mailbox_ Streaming→ Team_ TelephonyD User(c) ImportRecallAlRecordins(c) SqsVisibilityControlTestMListeners→]Mal> MModelsM Notifications› M ObserversD PoliciesProvidersRepositories> D Rulesv Services_ Activity_ ActivityProvidersI IAvatarcallendarConference! CinmiM InternallKioskv _ AutomatedReports©) ActivityTypeServi(c) AskJiminnyRepor(c) AskJiminnyRepor(c) AutomatedRenon* Oreturn AutomatedReportpubLic tunccion createlarray paata). Аuсопасеакероrиr. . .л/**|* Find an automated report bu UUID* @param string Suuid* dreturn Automatedkeport/nullpubLic tunccion tindbyuu1d(scring suuld): :Automaсedкерогиre atomеероt.ee, оmерrcoupamizealoouna atmetTusagepublic function findByld0rUuid(string Sid0rUuid): ?AutomatedReportAcceotlif (is_numeric($idorUuid)) €return AutomatedReport: :find((int) sidoruuid):recurn Automacedkeport::where vuld, Automacedreporu:. couptimized(slauruula-stirsti* Retrieve all standard (non-Ask Jiminny) automated reports.* @param string $sortColumnThe column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to "created_at'.* aparam string SsortDirection The sort direction. Allowed values:'asc','desc'. Defaults to 'desc'.* dreturn collection<Automatedreport>12 usagespubLic tunction gecALLstandardkeportsstring ssortcolumn = "created_at",scring ssortbirection = 'desc': Collection (...* Retrieve all Ask Jiminny reports created by the given user.* dparam UsersuserThe user whose reports to retrieve.* dparam string ssortcolumnThe column to sort by. Allowed values: 'created_by', "created_at'. Defaults to 'created_at'.* dparam string ssortuireccion ine sorc aireccion. ALlowed values:"asc","desc". beraults to "desc"* drerurn couuectonsaurondredredor14 usadespublic function getAskJiminnyReportsByUserdUser Suser.string SsortColumn =created atwinasurt changelog 2.12.21: A new version is available. // View Changelog (today 10:33)Kenecu1 eall= custom.log= laravel.logL SF [jiminny@localhost]c HS_local Jiminny@localhost)e console (PROD]¿ console (EU]4 console [STAGING)AskJiminnyReportActivityService.php© AskJiminnyReportActivityServiceTest.phpC RequestGenerateAskJiminnyReportJobTesclass AskJiminnyReportActiv71 >1A0 C>118 M >157 >185 V >205DAVAS224225227228229230231249250— 251252 D>274_275orivate tunccion makeusprivate function makesapublic function testbetpubuic tunction testbetpublic function testGetpublic function testGetpublic function testGetpublic function testfetpubuic tunction testbet$user = schis->makeSsavedSearch = Sthi$filterSet = Sthis-sthis->activitySearscapturedcriteria"thns->activitvsas->methodl cor=>WalLLke turnitenunus-›elasu ickenps$this->logger->methsthis->service->qetsthis->assertNotllu$this->assertFalse(pubuic tunction tescuetAccept File &+X Reject File 1 38&: Support Daily • in 2h 57 m100% |45]Tue 14 Apr 12:03:51RequestGenerateAskJiminnyReportJobTest vCascadeFixing ReportControlleAutomated Report Mar© Automated Report !1n7 211 and adc valication with loas insideGAutomatedRenortscommand. 0ho.5 209-710et me read the current state of the command tile firstkead Automateakeportscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports.Ineed to implement getReportByld properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycoLlection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucomaceakepo rtscommand.onpRead AutomatecRenortscommand.onoThe file is now only 140 lines - the user removed the processSing leReport/warnlfNotApp Licab leForSchedu Lemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:1 Aulomalecreoorsreroslorv.onoAlso tix the import order (Collection should be before the models alphabetically):AutomatedReportsCommand.php+1 -1• AutomatedReportsCommand.php+1 -1Done. Summary of changes:AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric string → find() bv int IDNon-numenc → Uud ookuo via tooptimizedoBoth use withTrashed() so soft-deleted reports are findable manuallygetReportByld() (AutomatedReportsCommand.php: 135-194) — checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violationbut sull rerurns the repor so processing continues.chockBehaviour on failINot Tounewarhina loe + terminal warn, returns emoty collection skips processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + terminal warn, continuesExoiredwarning log + terminal warn, continuesFrequency wouldn't run todayinfo lod + terminal warn. continuesWC1l -2 files +51 >Reject allAccept allAsk anything (&+L)30l &uesde Claude Sonnet 46Saving TaVsco.js settingswinasun leamsuir-oia 4 spaces...
|
NULL
|
-1446524370036857908
|
NULL
|
click
|
ocr
|
NULL
|
PhpStormFileFditViewNavigateCodelaraveRefactonTool PhpStormFileFditViewNavigateCodelaraveRefactonToolsWindowHelpFV faVsco.s v#11894 on JY-18909-automated-reports-ask-iminny K vProject v(©) ReportController.phpJiminnybeouecommana.ongC AutomatedReportsCommand.phpl/utomatecRenorissenoCommana.ongC AddLayoutEntities.php(C) Team.phpD Unit_ ActionsComponentConfiguration› M Console© AutomatedReportsRepository.php XC AutomatedReportsService.php© CreateHeldActivityEvent.php© TrackProviderInstalledEvent.phpC CreateActivityLoggedEvent.php© UserPilotActivityListener.php© ActivityLogged.php© AutomatedReportsCallbackService.php© RequestGenerateAskJiminnyReportJob.php(©) RequestGenerateReportJob.php(©) AutomatedReportResult.phpc) Automatedkeport.oneclass AucomaceareporcskepostcoryM ContractsM DomainD DTO• Enums_ Events_ Exceptions→ fixturesHelpersD Http>_Integrations> Minteractions• D Jobs> M ActivitvM AiAutomation>_ Audiov _ AutomatedReports©) CreateResultsTest.pl(C) RequestGenerateAs'© RequestGenerateRerC SendReportJobTest.(ch SendRenortMailJobtcallendar!1CrmDeaksksM Mailbox_ Streaming→ Team_ TelephonyD User(c) ImportRecallAlRecordins(c) SqsVisibilityControlTestMListeners→]Mal> MModelsM Notifications› M ObserversD PoliciesProvidersRepositories> D Rulesv Services_ Activity_ ActivityProvidersI IAvatarcallendarConference! CinmiM InternallKioskv _ AutomatedReports©) ActivityTypeServi(c) AskJiminnyRepor(c) AskJiminnyRepor(c) AutomatedRenon* Oreturn AutomatedReportpubLic tunccion createlarray paata). Аuсопасеакероrиr. . .л/**|* Find an automated report bu UUID* @param string Suuid* dreturn Automatedkeport/nullpubLic tunccion tindbyuu1d(scring suuld): :Automaсedкерогиre atomеероt.ee, оmерrcoupamizealoouna atmetTusagepublic function findByld0rUuid(string Sid0rUuid): ?AutomatedReportAcceotlif (is_numeric($idorUuid)) €return AutomatedReport: :find((int) sidoruuid):recurn Automacedkeport::where vuld, Automacedreporu:. couptimized(slauruula-stirsti* Retrieve all standard (non-Ask Jiminny) automated reports.* @param string $sortColumnThe column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to "created_at'.* aparam string SsortDirection The sort direction. Allowed values:'asc','desc'. Defaults to 'desc'.* dreturn collection<Automatedreport>12 usagespubLic tunction gecALLstandardkeportsstring ssortcolumn = "created_at",scring ssortbirection = 'desc': Collection (...* Retrieve all Ask Jiminny reports created by the given user.* dparam UsersuserThe user whose reports to retrieve.* dparam string ssortcolumnThe column to sort by. Allowed values: 'created_by', "created_at'. Defaults to 'created_at'.* dparam string ssortuireccion ine sorc aireccion. ALlowed values:"asc","desc". beraults to "desc"* drerurn couuectonsaurondredredor14 usadespublic function getAskJiminnyReportsByUserdUser Suser.string SsortColumn =created atwinasurt changelog 2.12.21: A new version is available. // View Changelog (today 10:33)Kenecu1 eall= custom.log= laravel.logL SF [jiminny@localhost]c HS_local Jiminny@localhost)e console (PROD]¿ console (EU]4 console [STAGING)AskJiminnyReportActivityService.php© AskJiminnyReportActivityServiceTest.phpC RequestGenerateAskJiminnyReportJobTesclass AskJiminnyReportActiv71 >1A0 C>118 M >157 >185 V >205DAVAS224225227228229230231249250— 251252 D>274_275orivate tunccion makeusprivate function makesapublic function testbetpubuic tunction testbetpublic function testGetpublic function testGetpublic function testGetpublic function testfetpubuic tunction testbet$user = schis->makeSsavedSearch = Sthi$filterSet = Sthis-sthis->activitySearscapturedcriteria"thns->activitvsas->methodl cor=>WalLLke turnitenunus-›elasu ickenps$this->logger->methsthis->service->qetsthis->assertNotllu$this->assertFalse(pubuic tunction tescuetAccept File &+X Reject File 1 38&: Support Daily • in 2h 57 m100% |45]Tue 14 Apr 12:03:51RequestGenerateAskJiminnyReportJobTest vCascadeFixing ReportControlleAutomated Report Mar© Automated Report !1n7 211 and adc valication with loas insideGAutomatedRenortscommand. 0ho.5 209-710et me read the current state of the command tile firstkead Automateakeportscommana.ongIcan see the user's approach— processsing lekeport already exists trom my earlier work dut qetkeporcbyla iswhat's being used in processReports.Ineed to implement getReportByld properly with validation + logs, and addine reposttory metnoo. Leume also check the eutumtnare supportycoLlection impon stuatlon:Searched use luminate Suooort Colectionin apo/Console/Commands/Renorts/AutomatedRenortsCommand.oh...Now implement both changes - the repository method and the getReportByld method with proper validation:Error whlle ealting Aucomaceakepo rtscommand.onpRead AutomatecRenortscommand.onoThe file is now only 140 lines - the user removed the processSing leReport/warnlfNotApp Licab leForSchedu Lemetnoas. Now limplementcom changes.• AutomatedReportsCommand.php+o -1Now add tindbyldoruuld to the repository:1 Aulomalecreoorsreroslorv.onoAlso tix the import order (Collection should be before the models alphabetically):AutomatedReportsCommand.php+1 -1• AutomatedReportsCommand.php+1 -1Done. Summary of changes:AUromareckedor skenos1rorv:: Tndbylouruu1o lautonarecrenorSkedos1t0rv.0no:4/—5492Numeric string → find() bv int IDNon-numenc → Uud ookuo via tooptimizedoBoth use withTrashed() so soft-deleted reports are findable manuallygetReportByld() (AutomatedReportsCommand.php: 135-194) — checks all conditions that getActiveReportsByFrequency enforces, logging a warning to the log channel and printing a warn() to the terminal for each violationbut sull rerurns the repor so processing continues.chockBehaviour on failINot Tounewarhina loe + terminal warn, returns emoty collection skips processine)Inactive statuswarnino loe + terminal warn, continueseam not activewarnino lloo + terminal warn, continuesExoiredwarning log + terminal warn, continuesFrequency wouldn't run todayinfo lod + terminal warn. continuesWC1l -2 files +51 >Reject allAccept allAsk anything (&+L)30l &uesde Claude Sonnet 46Saving TaVsco.js settingswinasun leamsuir-oia 4 spaces...
|
10913
|
|
10917
|
217
|
4
|
2026-04-14T09:03:54.543327+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157434543_m2.jpg...
|
Firefox
|
Jiminny — Work
|
1
|
app.staging.jiminny.com/ondemand?topic_id[]=e02f09 app.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4...
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
JY-20543 add AJ reports User pilot tracking by Lak JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira
Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Configure SSH access to multiple environment - Engineering - Confluence
Configure SSH access to multiple environment - Engineering - Confluence
Console Home | Console Home | us-east-2
Console Home | Console Home | us-east-2
SecurityGroup | EC2 | us-east-2
SecurityGroup | EC2 | us-east-2
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app
SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app
Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet
Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet
Jiminny
Jiminny
Close tab
Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf
Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf
Service-Desk - Queues - Platform team - Service space - Jira
Service-Desk - Queues - Platform team - Service space - Jira
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Configure SSH access to multiple environment - Engineering - Confluence
Configure SSH access to multiple environment - Engineering - Confluence
CloudWatch | us-east-2
CloudWatch | us-east-2
New Tab
New Tab
CloudWatch | us-east-2
CloudWatch | us-east-2
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
JY-18909-automated-reports-ask-jiminny ■ 869720
28
28
14
activities
Get Notified
Sort by Sort by: Most recent
Sort by
Sort by:
Most recent
Add Recording
common.ai-icon-alt
Topics:
Competitors
Show internal and external activities:
Show internal only
Save Search
Clear all
Saved searches Saved searches
Saved searches
Saved searches
Team
Search teams Search teams
Search teams
Search teams
Host
Search team members Search team members
Search team members
Search team members
Also search as participant...
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":4,"bounds":{"left":0.00234375,"top":0.045138888,"width":0.0890625,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira","depth":4,"bounds":{"left":0.0,"top":0.08263889,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira","depth":5,"bounds":{"left":0.015625,"top":0.09236111,"width":0.11796875,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":4,"bounds":{"left":0.0,"top":0.11111111,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":5,"bounds":{"left":0.015625,"top":0.12083333,"width":0.18710938,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Configure SSH access to multiple environment - Engineering - Confluence","depth":4,"bounds":{"left":0.0,"top":0.13958333,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Configure SSH access to multiple environment - Engineering - Confluence","depth":5,"bounds":{"left":0.015625,"top":0.14930555,"width":0.1515625,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Console Home | Console Home | us-east-2","depth":4,"bounds":{"left":0.0,"top":0.16805555,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Console Home | Console Home | us-east-2","depth":5,"bounds":{"left":0.015625,"top":0.17777778,"width":0.08671875,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"SecurityGroup | EC2 | us-east-2","depth":4,"bounds":{"left":0.0,"top":0.19652778,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"SecurityGroup | EC2 | us-east-2","depth":5,"bounds":{"left":0.015625,"top":0.20625,"width":0.06484375,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":4,"bounds":{"left":0.0,"top":0.225,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":5,"bounds":{"left":0.015625,"top":0.23472223,"width":0.18710938,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app","depth":4,"bounds":{"left":0.0,"top":0.2534722,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app","depth":5,"bounds":{"left":0.015625,"top":0.26319444,"width":0.23476562,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet","depth":4,"bounds":{"left":0.0,"top":0.28194445,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet","depth":5,"bounds":{"left":0.015625,"top":0.29166666,"width":0.1984375,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Jiminny","depth":4,"bounds":{"left":0.0,"top":0.31041667,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"Jiminny","depth":5,"bounds":{"left":0.015625,"top":0.3201389,"width":0.015625,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close tab","depth":5,"bounds":{"left":0.07890625,"top":0.31666666,"width":0.009375,"height":0.016666668},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf","depth":4,"bounds":{"left":0.0,"top":0.33888888,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf","depth":5,"bounds":{"left":0.015625,"top":0.34861112,"width":0.1640625,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Service-Desk - Queues - Platform team - Service space - Jira","depth":4,"bounds":{"left":0.0,"top":0.3673611,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Service-Desk - Queues - Platform team - Service space - Jira","depth":5,"bounds":{"left":0.015625,"top":0.37708333,"width":0.12617187,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":4,"bounds":{"left":0.0,"top":0.39583334,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":5,"bounds":{"left":0.015625,"top":0.40555555,"width":0.18710938,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Configure SSH access to multiple environment - Engineering - Confluence","depth":4,"bounds":{"left":0.0,"top":0.42430556,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Configure SSH access to multiple environment - Engineering - Confluence","depth":5,"bounds":{"left":0.015625,"top":0.4340278,"width":0.1515625,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"CloudWatch | us-east-2","depth":4,"bounds":{"left":0.0,"top":0.45277777,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"CloudWatch | us-east-2","depth":5,"bounds":{"left":0.015625,"top":0.4625,"width":0.0484375,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"New Tab","depth":4,"bounds":{"left":0.0,"top":0.48125,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"New Tab","depth":5,"bounds":{"left":0.015625,"top":0.49097222,"width":0.017578125,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"CloudWatch | us-east-2","depth":4,"bounds":{"left":0.0,"top":0.50972223,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"CloudWatch | us-east-2","depth":5,"bounds":{"left":0.015625,"top":0.51944447,"width":0.0484375,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"New Tab","depth":4,"bounds":{"left":0.003125,"top":0.5395833,"width":0.08710937,"height":0.022222223},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"bounds":{"left":0.003125,"top":0.97430557,"width":0.0125,"height":0.022222223},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"bounds":{"left":0.01640625,"top":0.97430557,"width":0.0125,"height":0.022222223},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Tabs from other devices","depth":6,"bounds":{"left":0.029296875,"top":0.97430557,"width":0.0125,"height":0.022222223},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"bounds":{"left":0.0421875,"top":0.97430557,"width":0.0125,"height":0.022222223},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"bounds":{"left":0.05546875,"top":0.97430557,"width":0.0125,"height":0.022222223},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-18909-automated-reports-ask-jiminny ■ 869720","depth":9,"bounds":{"left":0.09453125,"top":0.9875,"width":0.11796875,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"28","depth":12,"bounds":{"left":0.096875,"top":0.925,"width":0.01875,"height":0.030555556},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"28","depth":14,"bounds":{"left":0.10664062,"top":0.9284722,"width":0.00546875,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"14","depth":14,"bounds":{"left":0.2421875,"top":0.061805554,"width":0.0109375,"height":0.017361112},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"activities","depth":14,"bounds":{"left":0.253125,"top":0.061805554,"width":0.031640626,"height":0.017361112},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Get Notified","depth":13,"bounds":{"left":0.55078125,"top":0.058333334,"width":0.051171876,"height":0.025},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXComboBox","text":"Sort by Sort by: Most recent","depth":13,"bounds":{"left":0.36171874,"top":0.057638887,"width":0.091796875,"height":0.025694445},"value":"Sort by Sort by: Most recent","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Sort by","depth":14,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Sort by:","depth":15,"bounds":{"left":0.3660156,"top":0.06458333,"width":0.019921875,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Most recent","depth":15,"bounds":{"left":0.3859375,"top":0.06458333,"width":0.030078124,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Add Recording","depth":13,"bounds":{"left":0.4910156,"top":0.058333334,"width":0.056640625,"height":0.025},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"common.ai-icon-alt","depth":14,"bounds":{"left":0.6050781,"top":0.05625,"width":0.0140625,"height":0.025},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Topics:","depth":15,"bounds":{"left":0.24570313,"top":0.10069445,"width":0.014453125,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Competitors","depth":15,"bounds":{"left":0.26210937,"top":0.10069445,"width":0.0265625,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Show internal and external activities:","depth":15,"bounds":{"left":0.30546874,"top":0.10069445,"width":0.07695313,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Show internal only","depth":15,"bounds":{"left":0.384375,"top":0.10069445,"width":0.0390625,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Save Search","depth":14,"bounds":{"left":0.440625,"top":0.09861111,"width":0.0390625,"height":0.013888889},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Clear all","depth":14,"bounds":{"left":0.48359376,"top":0.09861111,"width":0.030078124,"height":0.013888889},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXComboBox","text":"Saved searches Saved searches","depth":13,"bounds":{"left":0.1265625,"top":0.05486111,"width":0.095703125,"height":0.025},"value":"Saved searches Saved searches","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Saved searches","depth":15,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Saved searches","depth":16,"bounds":{"left":0.13085938,"top":0.06111111,"width":0.037109375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Team","depth":13,"bounds":{"left":0.1265625,"top":0.099305555,"width":0.012890625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search teams Search teams","depth":12,"bounds":{"left":0.1265625,"top":0.115277775,"width":0.095703125,"height":0.025},"value":"Search teams Search teams","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search teams","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search teams","depth":14,"bounds":{"left":0.13085938,"top":0.12222222,"width":0.032421876,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Host","depth":13,"bounds":{"left":0.1265625,"top":0.15,"width":0.01171875,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search team members Search team members","depth":12,"bounds":{"left":0.1265625,"top":0.16944444,"width":0.095703125,"height":0.025},"value":"Search team members Search team members","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search team members","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search team members","depth":14,"bounds":{"left":0.13085938,"top":0.17638889,"width":0.05390625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Also search as participant","depth":13,"bounds":{"left":0.1265625,"top":0.19930555,"width":0.062109374,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
8876423618644228424
|
1230984233880253134
|
visual_change
|
accessibility
|
NULL
|
JY-20543 add AJ reports User pilot tracking by Lak JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira
Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Configure SSH access to multiple environment - Engineering - Confluence
Configure SSH access to multiple environment - Engineering - Confluence
Console Home | Console Home | us-east-2
Console Home | Console Home | us-east-2
SecurityGroup | EC2 | us-east-2
SecurityGroup | EC2 | us-east-2
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app
SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app
Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet
Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet
Jiminny
Jiminny
Close tab
Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf
Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf
Service-Desk - Queues - Platform team - Service space - Jira
Service-Desk - Queues - Platform team - Service space - Jira
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Configure SSH access to multiple environment - Engineering - Confluence
Configure SSH access to multiple environment - Engineering - Confluence
CloudWatch | us-east-2
CloudWatch | us-east-2
New Tab
New Tab
CloudWatch | us-east-2
CloudWatch | us-east-2
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
JY-18909-automated-reports-ask-jiminny ■ 869720
28
28
14
activities
Get Notified
Sort by Sort by: Most recent
Sort by
Sort by:
Most recent
Add Recording
common.ai-icon-alt
Topics:
Competitors
Show internal and external activities:
Show internal only
Save Search
Clear all
Saved searches Saved searches
Saved searches
Saved searches
Team
Search teams Search teams
Search teams
Search teams
Host
Search team members Search team members
Search team members
Search team members
Also search as participant...
|
NULL
|
|
10918
|
217
|
5
|
2026-04-14T09:03:57.556446+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157437556_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEoitViewHistoryBookmarksProfilesToolsWi FirefoxFileEoitViewHistoryBookmarksProfilesToolsWindowHelpSaved searchesapp.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4You are currently impersonating Nikolay Yankov <)14 activitiesSort by: Most recentPlatform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloleamSearch teamsiZ Configure SSH access to multipleHost@ Console Home | Console Home | usSearch team membersiSecurityGroup | EC2 |us-east-210niso searen as DarticloanuJY-20543 add AJ reports User pilcParuicipantSearch team members5 SRD-6779 | JY-20632 | Unable to$Jy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc& Configure SSH access to multiple eCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabCustomer ©Customer or SubjectTranscript ©• Search transcript |Said byMnyonePeriodAll timeTopicsCompetiActivity typlSearch activity typesDuration ©Min (minutes)Max (minutes)Al call scoreselect Ai call scoreMulomalea call scoreSelect automated calliCoaching scoreSelect coaching scoreCoach ®Search coaches.Stage at callSearch stagesCurrent stageSearch stages+ Add RecordingTopics: Competitors XShow internal and external activities: Show internal only X)( Save SearchClear allHostIActivityPSPhpStormJY-18909-automated-reports-ask-iiminny = 869720ContactActivityCurrent StagestatsTypeJiminny MSalestorce App IrainingJiminny WBekkie/ Jules - renewals and Contract..Jiminny MHandover training part 1Unknown Customer Md 6 Deal Insights playbook d $Exclaimer MExclaimer handoverAll -hands Jan 9thUnknown Customer MNotetaker added on 11-28-23 @04:01Unknown Customer (played MTraining * - Jiminny App for Salesfor…Unknown Customer MAll-hands - Thank Yous, What Went, L...Unknown Customer (played MAll-hands - Nov 1thiUnknown Customer 1All Hands - October 31st ©Unknown Customer MDeal Insights Referesher/Training w/T...Unlikelv ToRenew$42,126$I00 D 4D300D 2$0 228.ĐO DO0D6$0 922 1D7{0 83DUD3$082Đ0 D490 D 11 c2D 11Duration4/m44m34m17m43m28m51m25m39m41mA Get NotifiedDate11/0/2024.2:28 PMI25/06/2024, 3:09 PM10/06/2024, 12:02 PM28/05/2024, 12:56 PM13/03/2024, 11:28 AM09/01/2024, 11:45 AM28/11/2023, 11:30 AM22/11/2023, 11:56 AM14/11/2023, 11:27 AM0/119O/3.11:42 AMI31/10/2023, 11:35 AM25/10/2023, 11:46 AMQ InspectorP Filter URLsConsoleD DebuggerFllMLeSSMe Domain1206P.Mrlo.200 P...A8...206 P.A9...200 P...AD...200 P...A0...200 G..A aр....asoonxat o atrorm-stac xhn/api/5627310/envelope/2: fetch/api/5627310/envelope/?: fetch/api/5627310/envelope/?: fetch/api/5627310/envelope/?; fetchsearch?status[]=com200 G.A apр...200 G.A app...saved-search200 G.A ap...integrations•A xhr1206 G.A app...on-demand?topic_id200 P...A app...authenticate•A xhr200 G..A find...200 P...A r.lo...200 P...r.lo.200 P...Ar.lo..i?a=ponxaf/platform-stag xhr"a=oonxar olatromi?a=ponxaf/platform-stag xhr200 P..A r.lo...200 P...A r.lo...i?a=ponxaf/platform-stag xhr200 P...r rlo..i?a=ponxaf/platform-stag xhr200 P... A r.lo...i?a=ponxaf/platform-stag xhrN1711U.TEa-pONAaIMIaLIUIISLa pEl200 P...A r.lo...i?a=ponxaf/platform-stag xhr200 P...A r.lo...i?a=ponxaf/platform-stag xhr200) P...Ar.lo..iPa=ponxaf/plaWorm-stag xhr200 P...A r.lo...i?a=ponxaf/platform-stag xhr200 P...r.lo..ra=ponxat plattorm-stac xhr200 P...A r.lo..i?a=ponxaf/platform-stag xhr200 P...A r.lo...i?a=ponxaf/platform-stag xhr200 P...A r.o...i?a=ponxaf/platform-stag xhr200 P..r.lo.i?a=ponxaf/platform-stag xhr200 P...A r.o..i?a=ponxaf/platform-stag xhr200 P...A r.lo.i?a=ponxaf/platform-stag xhr200 P...A r.lo..i?a=ponxaf/platform-stag xhr200 P...A r.lo...i?a=ponxaf/platform-stag xhr200 P...A r.lo...i?a=ponxaf/platform-stag xhr41 requests243.45 KB 2.22 MB transterredSupport Daily • in 2h 57 mA100% C•Tue 14 Apr 12:03:57N Network{) Style Editor( PerformanceO: MemoryE Storage0 99+_ Disable Cache No Throttling 50.HeadersCookiesRequestResponseTimingsSecurity5,59 KB0.Block Resend500 B 2 BGET nttos:aoostacing.lminnv.com/aoi/v/oage/on-cemanortooic 1c=e021093-co/0-4706003 286-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4500 B 2 B200500 B 2BHTTP/36.28 kB 2...55.54 kB (196.87 kB size)5.65 kB 1no-referrer-when-downgradesystem362kB 13.83 kB 5..55.54 .3.11 kB 9..slalusVersionTransferredReferrer PolicyDNS Resolutionkesponse Headers (2.900 Kb)alt-svc: h3=":443"; ma=86400cache-control: no-cache, onivatecontent-encoalng: ozlocontent-language: encontent-secuntv-policy-report-onv: scriot-src 'self 'unsate-inine 'unsate-eval" o oo: hitkawe307.70..1.74 Mb U.2.47 kB 0...4.91 kB 0.10.11 kB O...2.48 kB 0...24S KB 0.ucncio, slyto sie soll unsare mme mepencuttslasmebmimamcon mapedlonto yooMeaois.com nuos.cons.clouallare.com.mmg-sre sellmuos.con.stagmg.uminy.com/nuea.aoo.staging.liminnv.com [URL_WITH_CREDENTIALS]...
|
NULL
|
-8349689174085376944
|
NULL
|
visual_change
|
ocr
|
NULL
|
FirefoxFileEoitViewHistoryBookmarksProfilesToolsWi FirefoxFileEoitViewHistoryBookmarksProfilesToolsWindowHelpSaved searchesapp.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4You are currently impersonating Nikolay Yankov <)14 activitiesSort by: Most recentPlatform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloleamSearch teamsiZ Configure SSH access to multipleHost@ Console Home | Console Home | usSearch team membersiSecurityGroup | EC2 |us-east-210niso searen as DarticloanuJY-20543 add AJ reports User pilcParuicipantSearch team members5 SRD-6779 | JY-20632 | Unable to$Jy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc& Configure SSH access to multiple eCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabCustomer ©Customer or SubjectTranscript ©• Search transcript |Said byMnyonePeriodAll timeTopicsCompetiActivity typlSearch activity typesDuration ©Min (minutes)Max (minutes)Al call scoreselect Ai call scoreMulomalea call scoreSelect automated calliCoaching scoreSelect coaching scoreCoach ®Search coaches.Stage at callSearch stagesCurrent stageSearch stages+ Add RecordingTopics: Competitors XShow internal and external activities: Show internal only X)( Save SearchClear allHostIActivityPSPhpStormJY-18909-automated-reports-ask-iiminny = 869720ContactActivityCurrent StagestatsTypeJiminny MSalestorce App IrainingJiminny WBekkie/ Jules - renewals and Contract..Jiminny MHandover training part 1Unknown Customer Md 6 Deal Insights playbook d $Exclaimer MExclaimer handoverAll -hands Jan 9thUnknown Customer MNotetaker added on 11-28-23 @04:01Unknown Customer (played MTraining * - Jiminny App for Salesfor…Unknown Customer MAll-hands - Thank Yous, What Went, L...Unknown Customer (played MAll-hands - Nov 1thiUnknown Customer 1All Hands - October 31st ©Unknown Customer MDeal Insights Referesher/Training w/T...Unlikelv ToRenew$42,126$I00 D 4D300D 2$0 228.ĐO DO0D6$0 922 1D7{0 83DUD3$082Đ0 D490 D 11 c2D 11Duration4/m44m34m17m43m28m51m25m39m41mA Get NotifiedDate11/0/2024.2:28 PMI25/06/2024, 3:09 PM10/06/2024, 12:02 PM28/05/2024, 12:56 PM13/03/2024, 11:28 AM09/01/2024, 11:45 AM28/11/2023, 11:30 AM22/11/2023, 11:56 AM14/11/2023, 11:27 AM0/119O/3.11:42 AMI31/10/2023, 11:35 AM25/10/2023, 11:46 AMQ InspectorP Filter URLsConsoleD DebuggerFllMLeSSMe Domain1206P.Mrlo.200 P...A8...206 P.A9...200 P...AD...200 P...A0...200 G..A aр....asoonxat o atrorm-stac xhn/api/5627310/envelope/2: fetch/api/5627310/envelope/?: fetch/api/5627310/envelope/?: fetch/api/5627310/envelope/?; fetchsearch?status[]=com200 G.A apр...200 G.A app...saved-search200 G.A ap...integrations•A xhr1206 G.A app...on-demand?topic_id200 P...A app...authenticate•A xhr200 G..A find...200 P...A r.lo...200 P...r.lo.200 P...Ar.lo..i?a=ponxaf/platform-stag xhr"a=oonxar olatromi?a=ponxaf/platform-stag xhr200 P..A r.lo...200 P...A r.lo...i?a=ponxaf/platform-stag xhr200 P...r rlo..i?a=ponxaf/platform-stag xhr200 P... A r.lo...i?a=ponxaf/platform-stag xhrN1711U.TEa-pONAaIMIaLIUIISLa pEl200 P...A r.lo...i?a=ponxaf/platform-stag xhr200 P...A r.lo...i?a=ponxaf/platform-stag xhr200) P...Ar.lo..iPa=ponxaf/plaWorm-stag xhr200 P...A r.lo...i?a=ponxaf/platform-stag xhr200 P...r.lo..ra=ponxat plattorm-stac xhr200 P...A r.lo..i?a=ponxaf/platform-stag xhr200 P...A r.lo...i?a=ponxaf/platform-stag xhr200 P...A r.o...i?a=ponxaf/platform-stag xhr200 P..r.lo.i?a=ponxaf/platform-stag xhr200 P...A r.o..i?a=ponxaf/platform-stag xhr200 P...A r.lo.i?a=ponxaf/platform-stag xhr200 P...A r.lo..i?a=ponxaf/platform-stag xhr200 P...A r.lo...i?a=ponxaf/platform-stag xhr200 P...A r.lo...i?a=ponxaf/platform-stag xhr41 requests243.45 KB 2.22 MB transterredSupport Daily • in 2h 57 mA100% C•Tue 14 Apr 12:03:57N Network{) Style Editor( PerformanceO: MemoryE Storage0 99+_ Disable Cache No Throttling 50.HeadersCookiesRequestResponseTimingsSecurity5,59 KB0.Block Resend500 B 2 BGET nttos:aoostacing.lminnv.com/aoi/v/oage/on-cemanortooic 1c=e021093-co/0-4706003 286-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4500 B 2 B200500 B 2BHTTP/36.28 kB 2...55.54 kB (196.87 kB size)5.65 kB 1no-referrer-when-downgradesystem362kB 13.83 kB 5..55.54 .3.11 kB 9..slalusVersionTransferredReferrer PolicyDNS Resolutionkesponse Headers (2.900 Kb)alt-svc: h3=":443"; ma=86400cache-control: no-cache, onivatecontent-encoalng: ozlocontent-language: encontent-secuntv-policy-report-onv: scriot-src 'self 'unsate-inine 'unsate-eval" o oo: hitkawe307.70..1.74 Mb U.2.47 kB 0...4.91 kB 0.10.11 kB O...2.48 kB 0...24S KB 0.ucncio, slyto sie soll unsare mme mepencuttslasmebmimamcon mapedlonto yooMeaois.com nuos.cons.clouallare.com.mmg-sre sellmuos.con.stagmg.uminy.com/nuea.aoo.staging.liminnv.com [URL_WITH_CREDENTIALS]...
|
10917
|
|
10919
|
217
|
6
|
2026-04-14T09:04:00.584545+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157440584_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
PhpStormFileFditViewNavigateCodelaraveRetactonTool PhpStormFileFditViewNavigateCodelaraveRetactonToolsWindowHelpFV faVsco.s v#11894 on JY-18909-automated-reports-ask-iminny K vProject vD Unit_ ActionsComponent› Configuration> MConsoleM ContractsM DomainD DTO• Enums_ Events_ Exceptions→ fixtures_ HelpersD Http>_Integrations> Minteractions• D Jobs> M Activitv> M AiAutomation>_ Audiov _ AutomatedReports©) CreateResultsTest.pl(C) RequestGenerateAs'© RequestGenerateRerC SendReportJobTest.(ch SendRenortMailJobtcallendar!1CrmDeaksksM Mailbox_ Streaming→ Team_ TelephonyD User(c) ImportRecallAlRecordins(c) SqsVisibilityControlTest→I Listeners→]Mal> MModelsM Notifications› M ObserversPoliciesProvidersRepositories> D Rules• _ Services_ Activity_ ActivityProvidersI IAvatarcallendarConference! CinmiM InternallKioskv _ AutomatedReports©) ActivityTypeServi(c) AskJiminnyRepor(c) AskJiminnyRepor(c AutomatedRenorWinasun ch(©) ReportController.phpJiminnybeouecommana.ongC AutomatedReportsCommand.phpC) AutomatedReportsSendCommand.phpC AddLayoutEntities.php(C) Team.php© AutomatedReportsRepository.php XAulomaleakeporisservice.onp© CreateHeldActivityEvent.php© TrackProviderInstalledEvent.phpC CreateActivityLoggedEvent.php© UserPilotActivityListener.php© ActivityLogged.php© AutomatedReportsCallbackService.php© RequestGenerateAskJiminnyReportJob.php©) RequestGenerateReportJob.php(©) AutomatedReportResult.phpc) Automatedkeport.oneclass Aucomaceareporcskepostcory52#15 V4A* dreturh AutomaredreporypubLic tunccion createlarray paata). Аuсопасеакероrиr. . .л/*** Find an automated report bu UUID* @param string suuid* dreturn Automatedreport/nullpubLic tuncclon tindbyuu1d(string puuld): :Automatedкeрoгиret atomaеероt.ee, оmеерrcouptamizeaoounaateetTusagepublic function findByld0rUuid(string $id0rUuid): ?AutomatedReportif (is_numeric($id0rUuid)) {return AutomatedReport::find((int) $1doruuid):recurn Automacedkeport.:where vuld", Automacedкeport.. couptimized(slauruula->tirstn/*** Retrieve all standard (non-Ask Jiminny) automated reports.* @param string $sortColumnThe column to sort by. Allowed values: "created_by','created_at'. Defaults to 'created_at'* @param string $sortDirection The sort direction. Allowed values:'asc','desc'. Defaults to 'desc'.* dreturn collection<Automatedreport>12 usagespubLic tunction gecALLstandardkeportsstring ssortcolumn="created_at",scring ssortbirection = 'desc: Collection (...*** Retrieve all Ask Jiminny reports created by the given user.* dparam UsersuserThe user whose reports to retrieve.* dparam string ssortcolumnThe column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to 'created_at".* @param string $sortDirection The sort direction. Allowed values:"asc", "desc". veraults to "desc".* drerurn couuectonsaurondredredor"4 usadespublic function getAskJiminnyReportsByUserdUser suser.string SsortColumn = 'created at',stoind contiinection = "decc'ancelod loday 10:33.= custom.log= laravel.logL SF [jiminny@localhost]c HS_local Liminny@localhost)console PRob)¿ console (EU]4 console [STAGING)© AsKJiminnyReportActivityService.php© AskJiminnyReportActivityServiceTest.phpC RequestGenerateAskJiminnyReportJobTesclass AskJiminnyReportActiv71 >1A0 C>118 M >157 % >— 185 % >2052A6 VA S2251220250231—2322332342362452462501251252 D>275orivate tunccion makeusprivate function makesapublic function testbetpubuic tunction testbetpublic function testGetpublic function testGetpublic function testGetpublic function testfetpubuic tunction testbet$user = schis->makeSsavedSearch = Sthi$filterSet = Sthis-sthis-Yactivitysascapturedcriteria"thns->activitvsas->methodl cor- VaLLketurnlanunus-›elasu ickenps$this->logger->methsthis->service->qetsthis->assertNotllu$this->assertFalse(pubuic tunction tescuetAccept File &+X Reject File 1%gSupport Daily • in 2h 57 m100% |45]Tue 14 Apr 12:04:00RequestGenerateAskJiminnyReportJobTest vCascadeFixing ReportControlleAutomated Report Ma© Automated Report !nand.php#L211 and add validation with logs insideohu Lolla Leunevot tscomiallus pnowL405-419Let me read the current state of the command file first.kead Automareakeporscommand.ongIcan see the user's approach - processsing LeReport already exists trom my earlier work but getReportByld iswhat's being used in processReports.Ineed to implement getReportById properly with validation + logs, and addthe reposilory method. Let me also check the Illuminate Support collection impon situation:Searched use Illuminate (Support Collection in app/Console/Commands/Reports/AutomatedReportsCommand.ph.Now implement both changes - the repository method and the getReportByld method with proper validation:trror while editing automacedkeportscommand. ppkead Automateakeportscommana.ongThe file is now only 140 lines - the user removed the processSingleReport/warnIfNotApplicableForSchedulemetnoas. Now "l implement oot changes:AutomatedReportsCommand.php+57 -1Now add findByldorUuid to the repository:• AutomatedReportsRepository.phpAlso fix the import order Collection should be before the models alphabetically):• AutomatedReportsCommand.php+1 -1• AutomatedReportsCommand.php+1-1Done. summary or changes:AutomatedReportsRepository::findByld0rUuid() (AutomatedReportsRepository-php:47-54):• Numeric string → find() by int ID• Non-numeric → UUID lookup via toOptimized()Both use withTrashed() so soft-deleted reports are findable manuallygetReportById() (AutomatedReportsCommand.php:135-194) - checks all conditions that getActiveReportsByFrequency entorces, loceine a warnine to the loe channel ane orintne a warn lo the terminal tor eaeh violation,out stlll returns the revort so orocessina continuesCheckBehaviour on failNot toundwarnino loo + terminal warn. returns emory collection skios processino))nactive statuswarning log + terminal warn, continuesTeam not activewarnind llod + terminal warn. continuesExoiredwarning log + terminal warn, continuesFrequency wouldn't run todayinfo log + terminal warn, continuesWGAl mAsk anything (&+L)401 &uesde Claude Sonnet 46Winasun leams50:8uir-oia 4 spaces...
|
NULL
|
-7192952862747346748
|
NULL
|
visual_change
|
ocr
|
NULL
|
PhpStormFileFditViewNavigateCodelaraveRetactonTool PhpStormFileFditViewNavigateCodelaraveRetactonToolsWindowHelpFV faVsco.s v#11894 on JY-18909-automated-reports-ask-iminny K vProject vD Unit_ ActionsComponent› Configuration> MConsoleM ContractsM DomainD DTO• Enums_ Events_ Exceptions→ fixtures_ HelpersD Http>_Integrations> Minteractions• D Jobs> M Activitv> M AiAutomation>_ Audiov _ AutomatedReports©) CreateResultsTest.pl(C) RequestGenerateAs'© RequestGenerateRerC SendReportJobTest.(ch SendRenortMailJobtcallendar!1CrmDeaksksM Mailbox_ Streaming→ Team_ TelephonyD User(c) ImportRecallAlRecordins(c) SqsVisibilityControlTest→I Listeners→]Mal> MModelsM Notifications› M ObserversPoliciesProvidersRepositories> D Rules• _ Services_ Activity_ ActivityProvidersI IAvatarcallendarConference! CinmiM InternallKioskv _ AutomatedReports©) ActivityTypeServi(c) AskJiminnyRepor(c) AskJiminnyRepor(c AutomatedRenorWinasun ch(©) ReportController.phpJiminnybeouecommana.ongC AutomatedReportsCommand.phpC) AutomatedReportsSendCommand.phpC AddLayoutEntities.php(C) Team.php© AutomatedReportsRepository.php XAulomaleakeporisservice.onp© CreateHeldActivityEvent.php© TrackProviderInstalledEvent.phpC CreateActivityLoggedEvent.php© UserPilotActivityListener.php© ActivityLogged.php© AutomatedReportsCallbackService.php© RequestGenerateAskJiminnyReportJob.php©) RequestGenerateReportJob.php(©) AutomatedReportResult.phpc) Automatedkeport.oneclass Aucomaceareporcskepostcory52#15 V4A* dreturh AutomaredreporypubLic tunccion createlarray paata). Аuсопасеакероrиr. . .л/*** Find an automated report bu UUID* @param string suuid* dreturn Automatedreport/nullpubLic tuncclon tindbyuu1d(string puuld): :Automatedкeрoгиret atomaеероt.ee, оmеерrcouptamizeaoounaateetTusagepublic function findByld0rUuid(string $id0rUuid): ?AutomatedReportif (is_numeric($id0rUuid)) {return AutomatedReport::find((int) $1doruuid):recurn Automacedkeport.:where vuld", Automacedкeport.. couptimized(slauruula->tirstn/*** Retrieve all standard (non-Ask Jiminny) automated reports.* @param string $sortColumnThe column to sort by. Allowed values: "created_by','created_at'. Defaults to 'created_at'* @param string $sortDirection The sort direction. Allowed values:'asc','desc'. Defaults to 'desc'.* dreturn collection<Automatedreport>12 usagespubLic tunction gecALLstandardkeportsstring ssortcolumn="created_at",scring ssortbirection = 'desc: Collection (...*** Retrieve all Ask Jiminny reports created by the given user.* dparam UsersuserThe user whose reports to retrieve.* dparam string ssortcolumnThe column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to 'created_at".* @param string $sortDirection The sort direction. Allowed values:"asc", "desc". veraults to "desc".* drerurn couuectonsaurondredredor"4 usadespublic function getAskJiminnyReportsByUserdUser suser.string SsortColumn = 'created at',stoind contiinection = "decc'ancelod loday 10:33.= custom.log= laravel.logL SF [jiminny@localhost]c HS_local Liminny@localhost)console PRob)¿ console (EU]4 console [STAGING)© AsKJiminnyReportActivityService.php© AskJiminnyReportActivityServiceTest.phpC RequestGenerateAskJiminnyReportJobTesclass AskJiminnyReportActiv71 >1A0 C>118 M >157 % >— 185 % >2052A6 VA S2251220250231—2322332342362452462501251252 D>275orivate tunccion makeusprivate function makesapublic function testbetpubuic tunction testbetpublic function testGetpublic function testGetpublic function testGetpublic function testfetpubuic tunction testbet$user = schis->makeSsavedSearch = Sthi$filterSet = Sthis-sthis-Yactivitysascapturedcriteria"thns->activitvsas->methodl cor- VaLLketurnlanunus-›elasu ickenps$this->logger->methsthis->service->qetsthis->assertNotllu$this->assertFalse(pubuic tunction tescuetAccept File &+X Reject File 1%gSupport Daily • in 2h 57 m100% |45]Tue 14 Apr 12:04:00RequestGenerateAskJiminnyReportJobTest vCascadeFixing ReportControlleAutomated Report Ma© Automated Report !nand.php#L211 and add validation with logs insideohu Lolla Leunevot tscomiallus pnowL405-419Let me read the current state of the command file first.kead Automareakeporscommand.ongIcan see the user's approach - processsing LeReport already exists trom my earlier work but getReportByld iswhat's being used in processReports.Ineed to implement getReportById properly with validation + logs, and addthe reposilory method. Let me also check the Illuminate Support collection impon situation:Searched use Illuminate (Support Collection in app/Console/Commands/Reports/AutomatedReportsCommand.ph.Now implement both changes - the repository method and the getReportByld method with proper validation:trror while editing automacedkeportscommand. ppkead Automateakeportscommana.ongThe file is now only 140 lines - the user removed the processSingleReport/warnIfNotApplicableForSchedulemetnoas. Now "l implement oot changes:AutomatedReportsCommand.php+57 -1Now add findByldorUuid to the repository:• AutomatedReportsRepository.phpAlso fix the import order Collection should be before the models alphabetically):• AutomatedReportsCommand.php+1 -1• AutomatedReportsCommand.php+1-1Done. summary or changes:AutomatedReportsRepository::findByld0rUuid() (AutomatedReportsRepository-php:47-54):• Numeric string → find() by int ID• Non-numeric → UUID lookup via toOptimized()Both use withTrashed() so soft-deleted reports are findable manuallygetReportById() (AutomatedReportsCommand.php:135-194) - checks all conditions that getActiveReportsByFrequency entorces, loceine a warnine to the loe channel ane orintne a warn lo the terminal tor eaeh violation,out stlll returns the revort so orocessina continuesCheckBehaviour on failNot toundwarnino loo + terminal warn. returns emory collection skios processino))nactive statuswarning log + terminal warn, continuesTeam not activewarnind llod + terminal warn. continuesExoiredwarning log + terminal warn, continuesFrequency wouldn't run todayinfo log + terminal warn, continuesWGAl mAsk anything (&+L)401 &uesde Claude Sonnet 46Winasun leams50:8uir-oia 4 spaces...
|
NULL
|
|
10921
|
217
|
7
|
2026-04-14T09:04:03.816186+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157443816_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
PhpStormFileEditFV faVsco.js vViewNavigateCodeLara PhpStormFileEditFV faVsco.js vViewNavigateCodeLaravelRefactor#11894 on JY-18909-automated-reports-ask-iminny K vToolsWindowHelpProjectv© AiPromptRepository.php© AskAnythingRepository.phj© AutomatedReportsReposits© CallImportRepository.php© CoachingFeedbackReposit© CrmTemplateFilterRepositc© CrmTemplateRepository.pt© CrmTemplateRunRepositor© DeviceRepository.php© ElasticActivityRepository.plC EmailMessageRepository.p© GenericAiPromptRepositorC) GroupRepository.phpInboxEmailBatchRepositoryInboxRepository.php© InvitationRepository.php© JobRepository.php© LanguageRepository.php© MomentRepository.php© NotificationRepository.php© ParticipantRepository.phpC) ParticipantSpeechReposito© ParticipantStatsRepository© PlaybookCategoryRepositc© PlaybookRepository.php© PlaylistActivityRepository.f©PlaylistRepository.php© PlaylistShareRepository.ph©QuestionRepository.php© RoleChangeEventRepositor© RoleRepository.php©SearchRepository.php© SnapshotRepository.phpC) SocialAccountRepository.p© StageRepository.php© SubscriptionSetRepository.TaskRepository.php© TeamAiContextRepository.© TeamDomainsRepository.p© TeamInsightsRepository.pr© TeamRepository.php© ThemeRepository.php© TimezoneRepository.php© TopicRepository.php© TopicTriggerRepository.ph© TrackRepository.php© TranscriptionModelLocaleF© TranscriptionRepository.ph© TranscriptionSummaryRepr© UserRepository.php© VocabularyRepository.php> DRulesv D Services> D Activity> M AiReports> Avatar> CalendarConference>DCrm© ReportController.phpC AutomatedReportsSendCommand.php) AutomatedReportsService.php© JiminnyDebugCommand.php© AddLayoutEntities.php© CreateHeldActivityEvent.phpAutomatedReportsCommand.phpC) Team.php© AutomatedReportsRepository.phpx© TrackProviderInstalledEvent.php© ActivityLogged.phpC RequestGenerateAskJiminnyReportJob.phpC RequestGenerateReportJob.php© AutomatedReportResult.php© AutomatedReport.phpclass AutomatedReportsRepositoryB1 M41* @return AutomatedReportpublic function create(array $data): AutomatedReportf..}* Find an automated report by UUID* @param string $uvid71 % >* @return AutomatedReport/nullpublic function findByUuid(string $uvid): ?AutomatedReport118 % >return AutomatedReport: :Where('uvid', AutomatedReport::to0ptimized(Suvid))->first();157 % >Tusdyepublic function findById0rUuid(string $id0rUvid): ?AutomatedReportif (is_numeric($idOrUuid)) {return AutomatedReport: :where('uvid', AutomatedReport:: toOptimized(SidOrUuid))->first();206 г >224225 D22622722856/*** Retrieve all standard (non-Ask Jiminny) automated reports.250LOL232-233234* @param string $sortColumnThe column to sort by. Allowed values: 'created_by', 'created 235* Oparam string $sortDirection The sort direction. Allowed values: 'asc', 'desc'. Defaults t 236* drerurn couuectonsaurondredredor*/12 usagespublic function getAllStandardReports(string $sortColumn ='created_at',string $sortDirection = 'desc'): Collection {...}243/*** Retrieve all Ask Ziminny reports created by the given user.247248249250251252 >* Oparam User$userThe user whose reports to retrieve.*oparan scring esortho lunnIne cocumn co sorc oy. ALcowed vacues. creaced_oy , "creaced 275)* Oparam string $sortDirection The sort direction. Allowed values: 'asc', 'desc'. DefaultsT* Oreturn Collection<AutomatedReport>14 usagesWindsurf changelog 2.12.21: A new version is available. // View Changelog (today 10:33)= custom.logconsole PRODE laravel.log4 console [EUlA SF [jiminny@localhost]A HS_local [iminny@localhost]A console [STAGING]© AskJiminnyReportActivityService.php© AskJiminnyReportActivityServiceTest.php x© RequestGenerateAskJiminnyReportJobTest.phpclass AskuLminnyreporcActIviLyservicelest extenas lescuase29 6t >protected function setUp(): voidf...}11 usagesprivate function makeFilter(string $key, ?string $value): SearchFilter&Mo8 usagesprivate function makeUser(): User&Mock0bjectf.}8 usagesprivate function makeSavedSearch(array $filters): Search&Mock0bjectf...}public function testGetActivityIdsForSavedSearchReturnsIds(): voidf...}pubLic tunctlon testbecAcuivitylasrorsavedsearchreturnsempcywnennoresuluspublic function testGetActivityIdsFilters0utDateFilters(): void{...}public function testGetActivityIdsFilters0utClosingPeriodDateFilters():.vpublic function testGetActivityIdsHandLesArrayFilters(): voidf...}public function testGetActivityIdsHandLesScalarFilters(): voidf...}public function testGetActivityIdsPassesNonZeroSequenceNumberToDisableFir:$user = $this->makeUserO:lnsaveobearcn = ounsezllakesaveosearco.uiur$filterSet = $this->createMock( originalClassName: FilterDefinitionCollect$this-›activitySearch->method( constraint: 'getArrayFilterKeys')->willRet$capturedCriteria = null;$this-›activitySearch->expects($this->onceO))->method( constraint:"getOnDemandPageFilterSet')->willReturnCallback(function (Criteria $criteria) use ($filterse$this->elasticRepository->method( constraint: 'onDemandSearchIdsOnLy'D+>u$this->Logger->method ( constraint: "info'):$this->service->getActivityIdsForSavedSearch($savedSearch, $user);$this->assertNotNull($capturedCriteria);$this-›assertFalse($capturedCriteria->isFirstRequestO);public function testGetActivityIdsLogsWithCorrectContext(): voidf...3, 0lablSupport Daily - in 2h 56 mA• RequestGenerateAskJiminnyReportJobTest v100% C•Tue 14 Apr 12:04:03CascadeFixing ReportControlleAutomated Report Mar© Automated Report !nand. php#L211 and add validation with logs insideohu Lolla Leunevot tscomlahus pnorL409-419wLet me read the current state of the command file first.kead Automareakeporscommand.ongI can see the user's approach - processSingleReport already exists from my earlier work but getReportById iswhat's being used in processReports. I need to implement getReportById properly with validation + logs, and addthe reposilory method. Let me also check the Illuminate Support collection impon situation:Searched use Illuminate (Support Collection in app/Console/Commands/Reports/AutomatedReportsCommand.ph.Now implement both changes - the repository method and the getReportById method with proper validation:trror while editing automacedkeportscommand. pnpkead Automateakeporscommana.ongThe file is now only 140 lines — the user removed the processSingleReport/warnIfNotApplicableForSchedulemetnoas. Now "l implement oot changes:• AutomatedReportsCommand.phpNow add findByIdOrUuid to the repository:• AutomatedReportsRepository.phpAlso fix the import order (Collection should be before the models alphabetically):• AutomatedReportsCommand.php• AutomatedReportsCommand.php+57 -1+1-1+I-1Done. summary or changes:AutomatedReportsRepository::findById0rUuid() (AutomatedReportsRepository-php: 47-54):• Numeric string → find() by int ID• Non-numeric → UUID lookup via toOptimized()• Both use withTrashed() so soft-deleted reports are findable manuallygetReportById() (AutomatedReportsCommand. php:135-194) - checks all conditions that getActiveReportsByFrequency entorces, loceine a warnine to the loe channel ane orintne a warn lo the terminal tor eaeh violation,but still returns the report so processing continues:CheckBehaviour on failNot toundwarnino oo + terminal warn. returns emory collection skios processino))nactive statusTeam not activeExpiredwarning log + terminal warn, continueswarning log + terminal warn, continueswarning log + terminal warn, continuesrrecuency woulentrun toodyinfo log + terminal warn, continuesGAl mAsk anything (2*L)+ <> CodeClaude Sonnet 4.6Winasun leams50:8uir-o( 4 spaces...
|
NULL
|
4147674210703858553
|
NULL
|
visual_change
|
ocr
|
NULL
|
PhpStormFileEditFV faVsco.js vViewNavigateCodeLara PhpStormFileEditFV faVsco.js vViewNavigateCodeLaravelRefactor#11894 on JY-18909-automated-reports-ask-iminny K vToolsWindowHelpProjectv© AiPromptRepository.php© AskAnythingRepository.phj© AutomatedReportsReposits© CallImportRepository.php© CoachingFeedbackReposit© CrmTemplateFilterRepositc© CrmTemplateRepository.pt© CrmTemplateRunRepositor© DeviceRepository.php© ElasticActivityRepository.plC EmailMessageRepository.p© GenericAiPromptRepositorC) GroupRepository.phpInboxEmailBatchRepositoryInboxRepository.php© InvitationRepository.php© JobRepository.php© LanguageRepository.php© MomentRepository.php© NotificationRepository.php© ParticipantRepository.phpC) ParticipantSpeechReposito© ParticipantStatsRepository© PlaybookCategoryRepositc© PlaybookRepository.php© PlaylistActivityRepository.f©PlaylistRepository.php© PlaylistShareRepository.ph©QuestionRepository.php© RoleChangeEventRepositor© RoleRepository.php©SearchRepository.php© SnapshotRepository.phpC) SocialAccountRepository.p© StageRepository.php© SubscriptionSetRepository.TaskRepository.php© TeamAiContextRepository.© TeamDomainsRepository.p© TeamInsightsRepository.pr© TeamRepository.php© ThemeRepository.php© TimezoneRepository.php© TopicRepository.php© TopicTriggerRepository.ph© TrackRepository.php© TranscriptionModelLocaleF© TranscriptionRepository.ph© TranscriptionSummaryRepr© UserRepository.php© VocabularyRepository.php> DRulesv D Services> D Activity> M AiReports> Avatar> CalendarConference>DCrm© ReportController.phpC AutomatedReportsSendCommand.php) AutomatedReportsService.php© JiminnyDebugCommand.php© AddLayoutEntities.php© CreateHeldActivityEvent.phpAutomatedReportsCommand.phpC) Team.php© AutomatedReportsRepository.phpx© TrackProviderInstalledEvent.php© ActivityLogged.phpC RequestGenerateAskJiminnyReportJob.phpC RequestGenerateReportJob.php© AutomatedReportResult.php© AutomatedReport.phpclass AutomatedReportsRepositoryB1 M41* @return AutomatedReportpublic function create(array $data): AutomatedReportf..}* Find an automated report by UUID* @param string $uvid71 % >* @return AutomatedReport/nullpublic function findByUuid(string $uvid): ?AutomatedReport118 % >return AutomatedReport: :Where('uvid', AutomatedReport::to0ptimized(Suvid))->first();157 % >Tusdyepublic function findById0rUuid(string $id0rUvid): ?AutomatedReportif (is_numeric($idOrUuid)) {return AutomatedReport: :where('uvid', AutomatedReport:: toOptimized(SidOrUuid))->first();206 г >224225 D22622722856/*** Retrieve all standard (non-Ask Jiminny) automated reports.250LOL232-233234* @param string $sortColumnThe column to sort by. Allowed values: 'created_by', 'created 235* Oparam string $sortDirection The sort direction. Allowed values: 'asc', 'desc'. Defaults t 236* drerurn couuectonsaurondredredor*/12 usagespublic function getAllStandardReports(string $sortColumn ='created_at',string $sortDirection = 'desc'): Collection {...}243/*** Retrieve all Ask Ziminny reports created by the given user.247248249250251252 >* Oparam User$userThe user whose reports to retrieve.*oparan scring esortho lunnIne cocumn co sorc oy. ALcowed vacues. creaced_oy , "creaced 275)* Oparam string $sortDirection The sort direction. Allowed values: 'asc', 'desc'. DefaultsT* Oreturn Collection<AutomatedReport>14 usagesWindsurf changelog 2.12.21: A new version is available. // View Changelog (today 10:33)= custom.logconsole PRODE laravel.log4 console [EUlA SF [jiminny@localhost]A HS_local [iminny@localhost]A console [STAGING]© AskJiminnyReportActivityService.php© AskJiminnyReportActivityServiceTest.php x© RequestGenerateAskJiminnyReportJobTest.phpclass AskuLminnyreporcActIviLyservicelest extenas lescuase29 6t >protected function setUp(): voidf...}11 usagesprivate function makeFilter(string $key, ?string $value): SearchFilter&Mo8 usagesprivate function makeUser(): User&Mock0bjectf.}8 usagesprivate function makeSavedSearch(array $filters): Search&Mock0bjectf...}public function testGetActivityIdsForSavedSearchReturnsIds(): voidf...}pubLic tunctlon testbecAcuivitylasrorsavedsearchreturnsempcywnennoresuluspublic function testGetActivityIdsFilters0utDateFilters(): void{...}public function testGetActivityIdsFilters0utClosingPeriodDateFilters():.vpublic function testGetActivityIdsHandLesArrayFilters(): voidf...}public function testGetActivityIdsHandLesScalarFilters(): voidf...}public function testGetActivityIdsPassesNonZeroSequenceNumberToDisableFir:$user = $this->makeUserO:lnsaveobearcn = ounsezllakesaveosearco.uiur$filterSet = $this->createMock( originalClassName: FilterDefinitionCollect$this-›activitySearch->method( constraint: 'getArrayFilterKeys')->willRet$capturedCriteria = null;$this-›activitySearch->expects($this->onceO))->method( constraint:"getOnDemandPageFilterSet')->willReturnCallback(function (Criteria $criteria) use ($filterse$this->elasticRepository->method( constraint: 'onDemandSearchIdsOnLy'D+>u$this->Logger->method ( constraint: "info'):$this->service->getActivityIdsForSavedSearch($savedSearch, $user);$this->assertNotNull($capturedCriteria);$this-›assertFalse($capturedCriteria->isFirstRequestO);public function testGetActivityIdsLogsWithCorrectContext(): voidf...3, 0lablSupport Daily - in 2h 56 mA• RequestGenerateAskJiminnyReportJobTest v100% C•Tue 14 Apr 12:04:03CascadeFixing ReportControlleAutomated Report Mar© Automated Report !nand. php#L211 and add validation with logs insideohu Lolla Leunevot tscomlahus pnorL409-419wLet me read the current state of the command file first.kead Automareakeporscommand.ongI can see the user's approach - processSingleReport already exists from my earlier work but getReportById iswhat's being used in processReports. I need to implement getReportById properly with validation + logs, and addthe reposilory method. Let me also check the Illuminate Support collection impon situation:Searched use Illuminate (Support Collection in app/Console/Commands/Reports/AutomatedReportsCommand.ph.Now implement both changes - the repository method and the getReportById method with proper validation:trror while editing automacedkeportscommand. pnpkead Automateakeporscommana.ongThe file is now only 140 lines — the user removed the processSingleReport/warnIfNotApplicableForSchedulemetnoas. Now "l implement oot changes:• AutomatedReportsCommand.phpNow add findByIdOrUuid to the repository:• AutomatedReportsRepository.phpAlso fix the import order (Collection should be before the models alphabetically):• AutomatedReportsCommand.php• AutomatedReportsCommand.php+57 -1+1-1+I-1Done. summary or changes:AutomatedReportsRepository::findById0rUuid() (AutomatedReportsRepository-php: 47-54):• Numeric string → find() by int ID• Non-numeric → UUID lookup via toOptimized()• Both use withTrashed() so soft-deleted reports are findable manuallygetReportById() (AutomatedReportsCommand. php:135-194) - checks all conditions that getActiveReportsByFrequency entorces, loceine a warnine to the loe channel ane orintne a warn lo the terminal tor eaeh violation,but still returns the report so processing continues:CheckBehaviour on failNot toundwarnino oo + terminal warn. returns emory collection skios processino))nactive statusTeam not activeExpiredwarning log + terminal warn, continueswarning log + terminal warn, continueswarning log + terminal warn, continuesrrecuency woulentrun toodyinfo log + terminal warn, continuesGAl mAsk anything (2*L)+ <> CodeClaude Sonnet 4.6Winasun leams50:8uir-o( 4 spaces...
|
10919
|
|
10923
|
217
|
8
|
2026-04-14T09:04:09.503236+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157449503_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
PhpStormFileFV faVsco.js vProjectvEditViewNavigate PhpStormFileFV faVsco.js vProjectvEditViewNavigateCodeLaravelRefactor#11894 on JY-18909-automated-reports-ask-iminny K vToolsWindowHelp© AiPromptRepository.php© AskAnythingRepository.phj© AutomatedReportsReposits© CallImportRepository.php© CoachingFeedbackReposit© CrmTemplateFilterRepositc© CrmTemplateRepository.pt© CrmTemplateRunRepositor© DeviceRepository.php© ElasticActivityRepository.plC EmailMessageRepository.p© GenericAiPromptRepositorC) GroupRepository.phpInboxEmailBatchRepositoryInboxRepository.php© InvitationRepository.php© JobRepository.php© LanguageRepository.php© MomentRepository.php© NotificationRepository.php© ParticipantRepository.phpC) ParticipantSpeechReposito© ParticipantStatsRepository© PlaybookCategoryRepositc© PlaybookRepository.php© PlaylistActivityRepository.f©PlaylistRepository.php© PlaylistShareRepository.ph©QuestionRepository.php© RoleChangeEventRepositor© RoleRepository.php©SearchRepository.php© SnapshotRepository.phpC) SocialAccountRepository.p© StageRepository.php© SubscriptionSetRepository.TaskRepository.php© TeamAiContextRepository.© TeamDomainsRepository.p© TeamInsightsRepository.pr© TeamRepository.php© ThemeRepository.php© TimezoneRepository.php© TopicRepository.php© TopicTriggerRepository.ph© TrackRepository.php© TranscriptionModelLocaleF© TranscriptionRepository.ph© TranscriptionSummaryRepr© UserRepository.php© VocabularyRepository.php> DRulesv D Services> D Activity> M AiReports> Avatar> CalendarConference>DCrm© ReportController.php© JiminnyDebugCommand.php© AutomatedReportsSendCommand.php© AddLayoutEntities.php) AutomatedReportsService.php© CreateHeldActivityEvent.phpAutomatedReportsCommand.phpC) Team.php© AutomatedReportsRepository.phpx© TrackProviderInstalledEvent.php© ActivityLogged.phpC RequestGenerateAskJiminnyReportJob.phpC RequestGenerateReportJob.phpE custom.log= laravel.logA SF [jiminny@localhost]Hs local liminnyalocalnostconsole PRODAl console (EU]¿ consoe STAGINGI© AskJiminnyReportActivityService.php© AskJiminnyReportActivityServiceTest.php x© RequestGenerateAskJiminnyReportJobTest.phpsrong© AutomatedReportResult.php© AutomatedReport.phpclass AutomatedReportsRepositorydeclare(strict_types=1);56A15 X41namespace Tests\Unit\Services\Kiosk\AutomatedReports;* @return AutomatedReportuse...public function create(array $data): AutomatedReport{..}class AskJiminnyReportActivityServiceTest extends TestCase* Find an automated report by UUID* @param string $uvid25* @return AutomatedReport/nullpublic function findByUuid(string $uvid): ?AutomatedReportreturn AutomatedReport: :Where('uvid', AutomatedReport::to0ptimized(Suvid))->first();29 6t >Tusdyepublic function findById0rUuid(string $id0rUvid): ?AutomatedReportif (is_numeric($idOrUuid)) {return AutomatedReport: :where('uvid', AutomatedReport:: toOptimized(SidOrUvid))->first();71 % >/*** Retrieve all standard (non-Ask Jiminny) automated reports.100 % >* @param string $sortColumnThe column to sort by. Allowed values: 'created_by', 'created_at'. 118 >* Oparam string $sortDirection The sort direction. Allowed values:'asc', 'desc'. Defaults to 'des156157 %>* drerurn couuectonsaurondredredor*/12 usagespublic function getAllStandardReports(string $sortColumn ='created_at',string $sortDirection = 'desc'): Collection {...}185 ₽ >206 0 >-224225 v/*** Retrieve all Ask Ziminny reports created by the given user.* Oparam User$userThe user whose reports to retrieve.*oparan scring esortho lunnThe column to sort by. Allowed values: 'created_by', 'created_at'. 232* Oparam string $sortDirection The sort direction. Allowed values: 'asc', 'desc'. Defaults to 'des233* Oreturn Collection<AutomatedReport>22923023123514 usages1242Windsurf changelog 2.12.21: A new version is available. // View Changelog (today 10:33)18 usageslo usaces1o usages9 usagesprivate ActivitySearch&Mock0bject $activitySearch;private ElasticActivityRepository&Mock0bject $elasticRepository;private LoggerInterface&Mock0bject $logger;private AskJiminnyReportActivityService $service;protected function setUp(): voidf...}11 usagesprivate function makeFilter(string $key, ?string $value): SearchFilto usaeesprivate function makeUser(): User&Mock0bject{...}8 usagesprivate function makeSavedSearch(array $filters): Search&Mock0bject)pubLic tunction tescbecAculvityLasrorsavedsearchkecurnstas: voldtpublic function testGetActivityIdsForSavedSearchReturnsEmptyWhenNoRepublic function testGetActivityIdsFilters0utDateFilters(): voidf.public function testGetActivityIdsFilters0utClosingPeriodDateFilterspublic function testGetActivityIdsHandlesArrayFilters(): voidf..public function testGetActivityIdsHandlesScalarFilters(): voidf..pustzo frunctzon-testGetActivityIdsPassesNonZeroSequenceNumberToDisalpuser - ochis->makeusert,$savedSearch = $this->makeSavedSearch([]);$filterSet = $this->createMock( originalClassName: FilterDefinitionc$this->activitySearch->method( constraint: 'getArrayFilterKeys')->w$capturedCriteria = null;$this->activitySearch->expects($this->once@)|=>neuno constrain'getOnDemandPageFilterSet')->willReturnCallback(function (Criteria $criteria) use ($f1], 0lablSupport Daily - in 2h 56 mARequestGenerateAskJiminnyReportJobTest v100% C•Tue 14 Apr 12:04:09CascadeFixing ReportControlleAutomated Report Mar© Automated Report !+D..nand. php#L211 and add validation with logs insideohu Lolla Leunevot tscomlahus pnorL409-419wLet me read the current state of the command file first.kead Automareakeporscommand.ongI can see the user's approach - processSingleReport already exists from my earlier work but getReportById iswhat's being used in processReports. I need to implement getReportById properly with validation + logs, and addthe reposilory method. Let me also check the Illuminate Support collection impon situation:Searched use Illuminate (Support Collection in app/Console/Commands/Reports/AutomatedReportsCommand.ph.Now implement both changes - the repository method and the getReportById method with proper validation:trror while editing automacedkeportscommand.pnpkead Automateakeporscommana.ongThe file is now only 140 lines — the user removed the processSingleReport/warnIfNotApplicableForSchedulemetnoas. Now "l implement oot changes:• AutomatedReportsCommand.phpNow add findByIdOrUuid to the repository:• AutomatedReportsRepository.phpAlso fix the import order (Collection should be before the models alphabetically):• AutomatedReportsCommand.php• AutomatedReportsCommand.php+57 -1+1-1+I-1Done. summary or changes:AutomatedReportsRepository::findById0rUuid() (AutomatedReportsRepository-php: 47-54):• Numeric string → find() by int ID• Non-numeric → UUID lookup via toOptimized()Both use withTrashed() so soft-deleted reports are findable manuallygetReportById() (AutomatedReportsCommand. php:135-194) - checks all conditions that getActiveReportsByFrequency entorces, loceine a warnine to the loe channel ane orintne a warn lo the terminal tor eaeh violation,out stlll returns the revort so orocessina continuesCheckNot toundBehaviour on failwarnino loo + termina warn. returns emory collection sxios processino))nactive statusTeam not activeExpiredwarning log + terminal warn, continueswarning log + terminal warn, continueswarning log + terminal warn, continuesrrequency woulen trun toodyinfo log + terminal warn, continuesGAl mAsk anything (2*L)+ <> CodeClaude Sonnet 4.6Winasun leams50:8uir-o( 4 spaces...
|
NULL
|
8178170432464236121
|
NULL
|
click
|
ocr
|
NULL
|
PhpStormFileFV faVsco.js vProjectvEditViewNavigate PhpStormFileFV faVsco.js vProjectvEditViewNavigateCodeLaravelRefactor#11894 on JY-18909-automated-reports-ask-iminny K vToolsWindowHelp© AiPromptRepository.php© AskAnythingRepository.phj© AutomatedReportsReposits© CallImportRepository.php© CoachingFeedbackReposit© CrmTemplateFilterRepositc© CrmTemplateRepository.pt© CrmTemplateRunRepositor© DeviceRepository.php© ElasticActivityRepository.plC EmailMessageRepository.p© GenericAiPromptRepositorC) GroupRepository.phpInboxEmailBatchRepositoryInboxRepository.php© InvitationRepository.php© JobRepository.php© LanguageRepository.php© MomentRepository.php© NotificationRepository.php© ParticipantRepository.phpC) ParticipantSpeechReposito© ParticipantStatsRepository© PlaybookCategoryRepositc© PlaybookRepository.php© PlaylistActivityRepository.f©PlaylistRepository.php© PlaylistShareRepository.ph©QuestionRepository.php© RoleChangeEventRepositor© RoleRepository.php©SearchRepository.php© SnapshotRepository.phpC) SocialAccountRepository.p© StageRepository.php© SubscriptionSetRepository.TaskRepository.php© TeamAiContextRepository.© TeamDomainsRepository.p© TeamInsightsRepository.pr© TeamRepository.php© ThemeRepository.php© TimezoneRepository.php© TopicRepository.php© TopicTriggerRepository.ph© TrackRepository.php© TranscriptionModelLocaleF© TranscriptionRepository.ph© TranscriptionSummaryRepr© UserRepository.php© VocabularyRepository.php> DRulesv D Services> D Activity> M AiReports> Avatar> CalendarConference>DCrm© ReportController.php© JiminnyDebugCommand.php© AutomatedReportsSendCommand.php© AddLayoutEntities.php) AutomatedReportsService.php© CreateHeldActivityEvent.phpAutomatedReportsCommand.phpC) Team.php© AutomatedReportsRepository.phpx© TrackProviderInstalledEvent.php© ActivityLogged.phpC RequestGenerateAskJiminnyReportJob.phpC RequestGenerateReportJob.phpE custom.log= laravel.logA SF [jiminny@localhost]Hs local liminnyalocalnostconsole PRODAl console (EU]¿ consoe STAGINGI© AskJiminnyReportActivityService.php© AskJiminnyReportActivityServiceTest.php x© RequestGenerateAskJiminnyReportJobTest.phpsrong© AutomatedReportResult.php© AutomatedReport.phpclass AutomatedReportsRepositorydeclare(strict_types=1);56A15 X41namespace Tests\Unit\Services\Kiosk\AutomatedReports;* @return AutomatedReportuse...public function create(array $data): AutomatedReport{..}class AskJiminnyReportActivityServiceTest extends TestCase* Find an automated report by UUID* @param string $uvid25* @return AutomatedReport/nullpublic function findByUuid(string $uvid): ?AutomatedReportreturn AutomatedReport: :Where('uvid', AutomatedReport::to0ptimized(Suvid))->first();29 6t >Tusdyepublic function findById0rUuid(string $id0rUvid): ?AutomatedReportif (is_numeric($idOrUuid)) {return AutomatedReport: :where('uvid', AutomatedReport:: toOptimized(SidOrUvid))->first();71 % >/*** Retrieve all standard (non-Ask Jiminny) automated reports.100 % >* @param string $sortColumnThe column to sort by. Allowed values: 'created_by', 'created_at'. 118 >* Oparam string $sortDirection The sort direction. Allowed values:'asc', 'desc'. Defaults to 'des156157 %>* drerurn couuectonsaurondredredor*/12 usagespublic function getAllStandardReports(string $sortColumn ='created_at',string $sortDirection = 'desc'): Collection {...}185 ₽ >206 0 >-224225 v/*** Retrieve all Ask Ziminny reports created by the given user.* Oparam User$userThe user whose reports to retrieve.*oparan scring esortho lunnThe column to sort by. Allowed values: 'created_by', 'created_at'. 232* Oparam string $sortDirection The sort direction. Allowed values: 'asc', 'desc'. Defaults to 'des233* Oreturn Collection<AutomatedReport>22923023123514 usages1242Windsurf changelog 2.12.21: A new version is available. // View Changelog (today 10:33)18 usageslo usaces1o usages9 usagesprivate ActivitySearch&Mock0bject $activitySearch;private ElasticActivityRepository&Mock0bject $elasticRepository;private LoggerInterface&Mock0bject $logger;private AskJiminnyReportActivityService $service;protected function setUp(): voidf...}11 usagesprivate function makeFilter(string $key, ?string $value): SearchFilto usaeesprivate function makeUser(): User&Mock0bject{...}8 usagesprivate function makeSavedSearch(array $filters): Search&Mock0bject)pubLic tunction tescbecAculvityLasrorsavedsearchkecurnstas: voldtpublic function testGetActivityIdsForSavedSearchReturnsEmptyWhenNoRepublic function testGetActivityIdsFilters0utDateFilters(): voidf.public function testGetActivityIdsFilters0utClosingPeriodDateFilterspublic function testGetActivityIdsHandlesArrayFilters(): voidf..public function testGetActivityIdsHandlesScalarFilters(): voidf..pustzo frunctzon-testGetActivityIdsPassesNonZeroSequenceNumberToDisalpuser - ochis->makeusert,$savedSearch = $this->makeSavedSearch([]);$filterSet = $this->createMock( originalClassName: FilterDefinitionc$this->activitySearch->method( constraint: 'getArrayFilterKeys')->w$capturedCriteria = null;$this->activitySearch->expects($this->once@)|=>neuno constrain'getOnDemandPageFilterSet')->willReturnCallback(function (Criteria $criteria) use ($f1], 0lablSupport Daily - in 2h 56 mARequestGenerateAskJiminnyReportJobTest v100% C•Tue 14 Apr 12:04:09CascadeFixing ReportControlleAutomated Report Mar© Automated Report !+D..nand. php#L211 and add validation with logs insideohu Lolla Leunevot tscomlahus pnorL409-419wLet me read the current state of the command file first.kead Automareakeporscommand.ongI can see the user's approach - processSingleReport already exists from my earlier work but getReportById iswhat's being used in processReports. I need to implement getReportById properly with validation + logs, and addthe reposilory method. Let me also check the Illuminate Support collection impon situation:Searched use Illuminate (Support Collection in app/Console/Commands/Reports/AutomatedReportsCommand.ph.Now implement both changes - the repository method and the getReportById method with proper validation:trror while editing automacedkeportscommand.pnpkead Automateakeporscommana.ongThe file is now only 140 lines — the user removed the processSingleReport/warnIfNotApplicableForSchedulemetnoas. Now "l implement oot changes:• AutomatedReportsCommand.phpNow add findByIdOrUuid to the repository:• AutomatedReportsRepository.phpAlso fix the import order (Collection should be before the models alphabetically):• AutomatedReportsCommand.php• AutomatedReportsCommand.php+57 -1+1-1+I-1Done. summary or changes:AutomatedReportsRepository::findById0rUuid() (AutomatedReportsRepository-php: 47-54):• Numeric string → find() by int ID• Non-numeric → UUID lookup via toOptimized()Both use withTrashed() so soft-deleted reports are findable manuallygetReportById() (AutomatedReportsCommand. php:135-194) - checks all conditions that getActiveReportsByFrequency entorces, loceine a warnine to the loe channel ane orintne a warn lo the terminal tor eaeh violation,out stlll returns the revort so orocessina continuesCheckNot toundBehaviour on failwarnino loo + termina warn. returns emory collection sxios processino))nactive statusTeam not activeExpiredwarning log + terminal warn, continueswarning log + terminal warn, continueswarning log + terminal warn, continuesrrequency woulen trun toodyinfo log + terminal warn, continuesGAl mAsk anything (2*L)+ <> CodeClaude Sonnet 4.6Winasun leams50:8uir-o( 4 spaces...
|
NULL
|
|
10924
|
217
|
9
|
2026-04-14T09:04:11.570224+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157451570_m2.jpg...
|
PhpStorm
|
faVsco.js – AskJiminnyReportActivityServiceTest.ph faVsco.js – AskJiminnyReportActivityServiceTest.php...
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
Project: faVsco.js, menu
#11894 on JY-18909-automa Project: faVsco.js, menu
#11894 on JY-18909-automated-reports-ask-jiminny, menu
Start Listening for PHP Debug Connections
RequestGenerateAskJiminnyReportJobTest
Run 'RequestGenerateAskJiminnyReportJobTest'
Debug 'RequestGenerateAskJiminnyReportJobTest'
More Actions
JetBrains AI
Search Everywhere
IDE and Project Settings
Sync Changes
Hide This Notification
Code changed:
Hide
2
3
Previous Highlighted Error
Next Highlighted Error
<?php
declare(strict_types=1);
namespace Tests\Unit\Services\Kiosk\AutomatedReports;
use Jiminny\Component\ActivitySearch\FilterDefinition\ActivityActualDate;
use Jiminny\Component\ActivitySearch\FilterDefinition\ActivityUpdatedDate;
use Jiminny\Component\ActivitySearch\FilterDefinition\DealInsights\ClosingPeriodFilter;
use Jiminny\Component\ActivitySearch\FilterDefinitionCollection;
use Jiminny\Component\ActivitySearch\Service\ActivitySearch;
use Jiminny\Models\Activity\Search;
use Jiminny\Models\Activity\SearchFilter;
use Jiminny\Models\User;
use Jiminny\Repositories\ElasticActivityRepository;
use Jiminny\Services\Kiosk\AutomatedReports\AskJiminnyReportActivityService;
use Jiminny\VO\Repository\OnDemandActivitySearch\Criteria;
use PHPUnit\Framework\MockObject\MockObject;
use PHPUnit\Framework\TestCase;
use Psr\Log\LoggerInterface;
class AskJiminnyReportActivityServiceTest extends TestCase
{
private ActivitySearch&MockObject $activitySearch;
private ElasticActivityRepository&MockObject $elasticRepository;
private LoggerInterface&MockObject $logger;
private AskJiminnyReportActivityService $service;
protected function setUp(): void
{
$this->activitySearch = $this->createMock(ActivitySearch::class);
$this->elasticRepository = $this->createMock(ElasticActivityRepository::class);
$this->logger = $this->createMock(LoggerInterface::class);
$this->service = new AskJiminnyReportActivityService(
$this->activitySearch,
$this->elasticRepository,
$this->logger,
);
}
private function makeFilter(string $key, ?string $value): SearchFilter&MockObject
{
$filter = $this->createMock(SearchFilter::class);
$filter->method('getFilterProperty')->willReturn($key);
$filter->method('getFilterValue')->willReturn($value);
return $filter;
}
private function makeUser(): User&MockObject
{
$tz = new \DateTimeZone('UTC');
$user = $this->createMock(User::class);
$user->method('getTimezone')->willReturn($tz);
$user->method('getId')->willReturn(1);
$user->method('getUuid')->willReturn('user-uuid');
return $user;
}
private function makeSavedSearch(array $filters): Search&MockObject
{
$savedSearch = $this->createMock(Search::class);
$savedSearch->method('getId')->willReturn(42);
$savedSearch->method('getFilters')->willReturn(new \Illuminate\Support\LazyCollection($filters));
return $savedSearch;
}
public function testGetActivityIdsForSavedSearchReturnsIds(): void
{
$user = $this->makeUser();
$savedSearch = $this->makeSavedSearch([]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->expects($this->once())
->method('getArrayFilterKeys')
->with($user)
->willReturn([]);
$this->activitySearch->expects($this->once())
->method('getOnDemandPageFilterSet')
->willReturn($filterSet);
$this->elasticRepository->expects($this->once())
->method('onDemandSearchIdsOnly')
->willReturn(['id-1', 'id-2', 'id-3']);
$this->logger->expects($this->once())
->method('info')
->with('[AskJiminnyReport] Fetched activity IDs for saved search');
$result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertEquals(['id-1', 'id-2', 'id-3'], $result);
}
public function testGetActivityIdsForSavedSearchReturnsEmptyWhenNoResults(): void
{
$user = $this->makeUser();
$savedSearch = $this->makeSavedSearch([]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn([]);
$this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn([]);
$this->logger->expects($this->once())->method('info');
$result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertEmpty($result);
}
public function testGetActivityIdsFiltersOutDateFilters(): void
{
$user = $this->makeUser();
$nonDateFilter = $this->makeFilter('owner_id', '123');
$startDateFilter = $this->makeFilter(ActivityActualDate::PARAM_START_DATE, '2025-01-01 00:00:00');
$endDateFilter = $this->makeFilter(ActivityActualDate::PARAM_END_DATE, '2025-01-31 23:59:59');
$updatedFromFilter = $this->makeFilter(ActivityUpdatedDate::PARAM_UPDATED_FROM, '2025-01-01 00:00:00');
$updatedToFilter = $this->makeFilter(ActivityUpdatedDate::PARAM_UPDATED_TO, '2025-01-31 23:59:59');
$savedSearch = $this->makeSavedSearch([
$nonDateFilter,
$startDateFilter,
$endDateFilter,
$updatedFromFilter,
$updatedToFilter,
]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn([]);
$capturedCriteria = null;
$this->activitySearch->expects($this->once())
->method('getOnDemandPageFilterSet')
->willReturnCallback(function (Criteria $criteria) use ($filterSet, &$capturedCriteria) {
$capturedCriteria = $criteria;
return $filterSet;
});
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn([]);
$this->logger->method('info');
$this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertNotNull($capturedCriteria);
}
public function testGetActivityIdsFiltersOutClosingPeriodDateFilters(): void
{
$user = $this->makeUser();
$closingStartFilter = $this->makeFilter(ClosingPeriodFilter::KEY_START_DATE, '2025-01-01');
$closingEndFilter = $this->makeFilter(ClosingPeriodFilter::KEY_END_DATE, '2025-03-31');
$regularFilter = $this->makeFilter('rep_id', '99');
$savedSearch = $this->makeSavedSearch([
$closingStartFilter,
$closingEndFilter,
$regularFilter,
]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn([]);
$this->activitySearch->expects($this->once())
->method('getOnDemandPageFilterSet')
->willReturn($filterSet);
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['id-1']);
$this->logger->method('info');
$result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertEquals(['id-1'], $result);
}
public function testGetActivityIdsHandlesArrayFilters(): void
{
$user = $this->makeUser();
$filter1 = $this->makeFilter('outcome', 'positive');
$filter2 = $this->makeFilter('outcome', 'negative');
$savedSearch = $this->makeSavedSearch([$filter1, $filter2]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn(['outcome']);
$this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['id-1']);
$this->logger->method('info');
$result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertEquals(['id-1'], $result);
}
public function testGetActivityIdsHandlesScalarFilters(): void
{
$user = $this->makeUser();
$filter = $this->makeFilter('direction', 'inbound');
$savedSearch = $this->makeSavedSearch([$filter]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn([]);
$this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['id-5']);
$this->logger->method('info');
$result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertEquals(['id-5'], $result);
}
public function testGetActivityIdsPassesNonZeroSequenceNumberToDisableFirstRequestDefaults(): void
{
$user = $this->makeUser();
$savedSearch = $this->makeSavedSearch([]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn([]);
$capturedCriteria = null;
$this->activitySearch->expects($this->once())
->method('getOnDemandPageFilterSet')
->willReturnCallback(function (Criteria $criteria) use ($filterSet, &$capturedCriteria) {
$capturedCriteria = $criteria;
return $filterSet;
});
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn([]);
$this->logger->method('info');
$this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertNotNull($capturedCriteria);
$this->assertFalse($capturedCriteria->isFirstRequest());
}
public function testGetActivityIdsLogsWithCorrectContext(): void
{
$user = $this->makeUser();
$savedSearch = $this->makeSavedSearch([]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn([]);
$this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['a', 'b']);
$this->logger->expects($this->once())
->method('info')
->with(
'[AskJiminnyReport] Fetched activity IDs for saved search',
$this->callback(fn ($context) => $context['saved_search_id'] === 42
&& $context['user_id'] === 1
&& $context['activity_count'] === 2)
);
$this->service->getActivityIdsForSavedSearch($savedSearch, $user);
}
}
Sync Changes
Hide This Notification
Code changed:
Hide
15
4
Previous Highlighted Error
Next Highlighted Error
<?php
declare(strict_types=1);
namespace Jiminny\Repositories;
use Carbon\CarbonImmutable;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Support\Carbon;
use Illuminate\Database\Eloquent\Collection;
use Illuminate\Pagination\LengthAwarePaginator;
use Illuminate\Support\Facades\DB;
use Jiminny\Models\AutomatedReport;
use Jiminny\Models\AutomatedReportResult;
use Jiminny\Models\Team;
use Jiminny\Models\User;
use Jiminny\Services\Kiosk\AutomatedReports\AutomatedReportsService;
use Jiminny\Services\Kiosk\AutomatedReports\ReportSort;
use Jiminny\Services\Kiosk\AutomatedReports\ReportSortDirection;
class AutomatedReportsRepository
{
/**
* Create a new automated report
*
* @param array $data
*
* @return AutomatedReport
*/
public function create(array $data): AutomatedReport
{
return AutomatedReport::create($data);
}
/**
* Find an automated report by UUID
*
* @param string $uuid
*
* @return AutomatedReport|null
*/
public function findByUuid(string $uuid): ?AutomatedReport
{
return AutomatedReport::where('uuid', AutomatedReport::toOptimized($uuid))->first();
}
public function findByIdOrUuid(string $idOrUuid): ?AutomatedReport
{
if (is_numeric($idOrUuid)) {
return AutomatedReport::find((int) $idOrUuid);
}
return AutomatedReport::where('uuid', AutomatedReport::toOptimized($idOrUuid))->first();
}
/**
* Retrieve all standard (non-Ask Jiminny) automated reports.
*
* @param string $sortColumn The column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to 'created_at'.
* @param string $sortDirection The sort direction. Allowed values: 'asc', 'desc'. Defaults to 'desc'.
*
* @return Collection<AutomatedReport>
*/
public function getAllStandardReports(
string $sortColumn = 'created_at',
string $sortDirection = 'desc'
): Collection {
return $this->buildSortedQuery($sortColumn, $sortDirection)
->whereNot('type', AutomatedReportsService::TYPE_ASK_JIMINNY)
->get();
}
/**
* Retrieve all Ask Jiminny reports created by the given user.
*
* @param User $user The user whose reports to retrieve.
* @param string $sortColumn The column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to 'created_at'.
* @param string $sortDirection The sort direction. Allowed values: 'asc', 'desc'. Defaults to 'desc'.
*
* @return Collection<AutomatedReport>
*/
public function getAskJiminnyReportsByUser(
User $user,
string $sortColumn = 'created_at',
string $sortDirection = 'desc'
): Collection {
return $this->buildSortedQuery($sortColumn, $sortDirection)
->where('type', AutomatedReportsService::TYPE_ASK_JIMINNY)
->where('created_by', $user->getId())
->get();
}
private function buildSortedQuery(string $sortColumn, string $sortDirection): \Illuminate\Database\Eloquent\Builder
{
$allowedColumns = ['created_by', 'created_at'];
if (! in_array($sortColumn, $allowedColumns)) {
$sortColumn = 'created_at';
}
$sortDirection = strtolower($sortDirection) === 'asc' ? 'asc' : 'desc';
$query = AutomatedReport::query()->with(['creator', 'team']);
if ($sortColumn === 'created_by') {
$query->leftJoin('users', 'users.id', '=', 'automated_reports.created_by')
->orderByRaw("users.name COLLATE utf8mb4_unicode_ci {$sortDirection}")
->select('automated_reports.*');
} else {
$query->orderBy($sortColumn, $sortDirection);
}
return $query;
}
/**
* Get all active and enabled reports with active teams for the specified frequency.
*
* @param string $frequency
*
* @return Collection<AutomatedReport>
*/
public function getActiveReportsByFrequency(string $frequency): Collection
{
return AutomatedReport::where('automated_reports.status', true)
->where('automated_reports.frequency', $frequency)
->join('teams', 'automated_reports.team_id', '=', 'teams.id')
->where('teams.status', Team::STATUS_ACTIVE)
->where(function ($query) {
$query->whereNull('automated_reports.expires_at')
->orWhere('automated_reports.expires_at', '>=', now()->toDateString());
})
->select('automated_reports.*')
->get();
}
/**
* Update an automated report
*
* @param AutomatedReport $report
* @param array $data
*
* @return AutomatedReport
*/
public function update(AutomatedReport $report, array $data): AutomatedReport
{
$report->update($data);
return $report;
}
/**
* Create a new automated report result.
*
* @param array $data The data to create the automated report result with.
*
* @return AutomatedReportResult The newly created automated report result.
*/
public function createResult(array $data): AutomatedReportResult
{
return AutomatedReportResult::create($data);
}
/**
* Find an automated report result by UUID.
*
* @param string $uuid The UUID to find the automated report result with.
*
* @return AutomatedReportResult|null The automated report result if found, otherwise null.
*/
public function findResultByUuid(string $uuid): ?AutomatedReportResult
{
return AutomatedReportResult::where('uuid', AutomatedReportResult::toOptimized($uuid))->first();
}
public function findResultByUuidForUser(string $uuid, User $user): ?AutomatedReportResult
{
return AutomatedReportResult::query()
->where('uuid', AutomatedReportResult::toOptimized($uuid))
->whereHas('report', static function ($query) use ($user): void {
$query->where('team_id', $user->getTeamId())
->where('created_by', $user->getId());
})
->first();
}
public function findChildResult(AutomatedReportResult $result, string $type): ?AutomatedReportResult
{
return AutomatedReportResult::query()
->where('parent_id', $result->getId())
->where('media_type', $type)
->first();
}
public function getGeneratedNotSentResults(): Collection
{
return AutomatedReportResult::query()
->whereNotNull('generated_at')
->whereNull('sent_at')
->where('status', AutomatedReportResult::STATUS_GENERATED)
->whereHas('report')
->with('report')
->get();
}
public function getPaginatedUserReports(
User $user,
ReportSort $sort,
ReportSortDirection $sortDirection,
int $resultsPerPage,
int $page,
?Carbon $fromDate,
?Carbon $toDate,
array $teamIds,
array $reportTypes,
?string $name,
): LengthAwarePaginator {
$query = AutomatedReportResult::query()
->whereNotNull('automated_report_results.generated_at')
->join('automated_reports', 'automated_report_results.report_id', '=', 'automated_reports.id')
->where('automated_reports.team_id', $user->getTeamId())
->whereJsonContains('automated_reports.recipients->users', $user->getId())
->orderByRaw("$sort->value COLLATE utf8mb4_unicode_ci {$sortDirection->value}")
->select('automated_report_results.*')
->with('report.team');
if ($fromDate !== null && $toDate !== null) {
$query->whereBetween('generated_at', [$fromDate, $toDate]);
}
if (! empty($teamIds)) {
$query->where(function ($q) use ($teamIds) {
foreach ($teamIds as $id) {
$q->orWhereJsonContains('automated_reports.groups', $id);
}
});
}
if (! empty($reportTypes)) {
$query->whereIn('automated_reports.type', $reportTypes);
}
if (! empty($name)) {
$query->whereLike('name', "%$name%");
}
return $query->paginate($resultsPerPage, ['*'], 'page', $page);
}
public function countUserReports(User $user): int
{
return AutomatedReportResult::query()
->whereNotNull('generated_at')
->whereNotNull('sent_at')
->whereHas('report', function ($q) use ($user) {
$q->where('team_id', $user->getTeamId())
->whereJsonContains('recipients->users', $user->getId());
})
->count();
}
/**
* Get report IDs for a specific team
*
* @param Team $team
*
* @return \Illuminate\Support\Collection
*/
public function getReportIdsByTeam(Team $team): \Illuminate\Support\Collection
{
return AutomatedReport::where('team_id', $team->getId())->pluck('id');
}
/**
* Get all reports for a specific team
*
* @param Team $team
*
* @return Collection
*/
public function getReportsByTeam(Team $team): Collection
{
return AutomatedReport::where('team_id', $team->getId())->get();
}
/**
* Get all report results for a specific report
*
* @param AutomatedReport $report
*
* @return Collection
*/
public function getResultsByReport(AutomatedReport $report): Collection
{
return $this->getResultsByReportQuery($report)->get();
}
public function getResultsByReportQuery(AutomatedReport $report): Builder
{
return AutomatedReportResult::where('report_id', $report->getId());
}
public function getReportResultsQueryForRetention(Team $team, CarbonImmutable $retentionDate): Builder
{
$reportIds = $this->getReportIdsByTeam($team);
return AutomatedReportResult::query()->whereIn('report_id', $reportIds)
->whereRaw('IFNULL(generated_at, created_at) <= ?', [$retentionDate]);
}
/**
* @param int|null $teamId Optional team ID to filter results
*
* @return \Illuminate\Support\Collection<int, int> Collection of team IDs
*/
public function getTeamIdsWithReportsResults(?int $teamId = null): \Illuminate\Support\Collection
{
$query = DB::table('automated_reports')
->join('teams', 'automated_reports.team_id', '=', 'teams.id')
->select('teams.id')
->distinct();
if ($teamId !== null) {
$query->where('teams.id', $teamId);
}
return $query->pluck('teams.id');
}
}
Project
Project
New File or Directory…
Expand Selected
Collapse All
Options
Hide
app ~/jiminny/app
.circleci
.cursor
.github
.sonarlint
.vscode
.windsurf
app, sources root
Actions
Component
Configuration
Console
Commands
Activities
Analytics
Calendars
Crm
Hubspot
IntegrationApp
AddLayoutEntities.php, class
AutologDelayedCommand.php, class
BullhornCommandAbstract.php, abstract class
BullhornPingCommand.php, class
BullhornSearchCommand.php, class
BullhornSessionCommand.php, class
CheckActivityLoggableCommand.php, final class
CleanDuplicateFieldDataCommand.php, class
FullSyncOpportunityCommand.php, class
LogActivitiesCommand.php, final class
ManageSyncStrategyCommand.php, class
MatchCrmObjectsCommand.php, class
MatchOpportunityActivitiesCommand.php, class
MigrateProvider.php, class
ProcessHubspotObjectsSyncBatches.php, class
PurgeDeletedOpportunitiesCommand.php, class
ResetGovernorLimits.php, class
SendNotLogged.php, class
SetupActivityTypeForFollowUp.php, final class
SetupCloseCrm.php, class
SetupCopperCrm.php, class
SetupCrmCommand.php, abstract class
SetupLayouts.php, class
SyncAccount.php, class
SyncContact.php, class
SyncFieldMetadata.php, class
SyncHubspotActiveDeals.php, class
SyncLead.php, class
SyncObjects.php, class
SyncOpportunitiesMissingFieldDataCommand.php, class
SyncOpportunity.php, class
SyncProfileMetadata.php, class
SyncTeamMetadata.php, class
UpdateOpportunitySpecifications.php, class
DealInsights
Dev
Dialers
DTOs
Elasticsearch
EngagementStats
GeckoExport
Livestream
Mailboxes
Migrate
PlaybackThemes
Playbooks
Playlists
Postmark
ProphetAi
Reports
AutomatedReportsCommand.php, class...
|
[{"role":"AXButton","text" [{"role":"AXButton","text":"Project: faVsco.js, menu","depth":5,"bounds":{"left":0.03046875,"top":0.017361112,"width":0.0453125,"height":0.022222223},"help_text":"~/jiminny/app","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"#11894 on JY-18909-automated-reports-ask-jiminny, menu","depth":5,"bounds":{"left":0.07578125,"top":0.017361112,"width":0.14960937,"height":0.022222223},"help_text":"Pull request #11894 exists for current branch JY-18909-automated-reports-ask-jiminny, but local branch is out of sync with remote","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Start Listening for PHP Debug Connections","depth":5,"bounds":{"left":0.76171875,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"RequestGenerateAskJiminnyReportJobTest","depth":6,"bounds":{"left":0.7796875,"top":0.017361112,"width":0.12109375,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Run 'RequestGenerateAskJiminnyReportJobTest'","depth":6,"bounds":{"left":0.9007813,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Debug 'RequestGenerateAskJiminnyReportJobTest'","depth":6,"bounds":{"left":0.9140625,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"More Actions","depth":6,"bounds":{"left":0.9273437,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"JetBrains AI","depth":5,"bounds":{"left":0.96015626,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Search Everywhere","depth":5,"bounds":{"left":0.9734375,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"IDE and Project Settings","depth":5,"bounds":{"left":0.9867188,"top":0.017361112,"width":0.013281226,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Sync Changes","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide This Notification","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Code changed:","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.049609374,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"2","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.009375,"height":0.0},"role_description":"text"},{"role":"AXStaticText","text":"3","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.009375,"height":0.0},"role_description":"text"},{"role":"AXButton","text":"Previous Highlighted Error","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.00859375,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Next Highlighted Error","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.008203125,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"<?php\n\ndeclare(strict_types=1);\n\nnamespace Tests\\Unit\\Services\\Kiosk\\AutomatedReports;\n\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinition\\ActivityActualDate;\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinition\\ActivityUpdatedDate;\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinition\\DealInsights\\ClosingPeriodFilter;\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinitionCollection;\nuse Jiminny\\Component\\ActivitySearch\\Service\\ActivitySearch;\nuse Jiminny\\Models\\Activity\\Search;\nuse Jiminny\\Models\\Activity\\SearchFilter;\nuse Jiminny\\Models\\User;\nuse Jiminny\\Repositories\\ElasticActivityRepository;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AskJiminnyReportActivityService;\nuse Jiminny\\VO\\Repository\\OnDemandActivitySearch\\Criteria;\nuse PHPUnit\\Framework\\MockObject\\MockObject;\nuse PHPUnit\\Framework\\TestCase;\nuse Psr\\Log\\LoggerInterface;\n\nclass AskJiminnyReportActivityServiceTest extends TestCase\n{\n private ActivitySearch&MockObject $activitySearch;\n private ElasticActivityRepository&MockObject $elasticRepository;\n private LoggerInterface&MockObject $logger;\n private AskJiminnyReportActivityService $service;\n\n protected function setUp(): void\n {\n $this->activitySearch = $this->createMock(ActivitySearch::class);\n $this->elasticRepository = $this->createMock(ElasticActivityRepository::class);\n $this->logger = $this->createMock(LoggerInterface::class);\n\n $this->service = new AskJiminnyReportActivityService(\n $this->activitySearch,\n $this->elasticRepository,\n $this->logger,\n );\n }\n\n private function makeFilter(string $key, ?string $value): SearchFilter&MockObject\n {\n $filter = $this->createMock(SearchFilter::class);\n $filter->method('getFilterProperty')->willReturn($key);\n $filter->method('getFilterValue')->willReturn($value);\n\n return $filter;\n }\n\n private function makeUser(): User&MockObject\n {\n $tz = new \\DateTimeZone('UTC');\n $user = $this->createMock(User::class);\n $user->method('getTimezone')->willReturn($tz);\n $user->method('getId')->willReturn(1);\n $user->method('getUuid')->willReturn('user-uuid');\n\n return $user;\n }\n\n private function makeSavedSearch(array $filters): Search&MockObject\n {\n $savedSearch = $this->createMock(Search::class);\n $savedSearch->method('getId')->willReturn(42);\n $savedSearch->method('getFilters')->willReturn(new \\Illuminate\\Support\\LazyCollection($filters));\n\n return $savedSearch;\n }\n\n public function testGetActivityIdsForSavedSearchReturnsIds(): void\n {\n $user = $this->makeUser();\n $savedSearch = $this->makeSavedSearch([]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->expects($this->once())\n ->method('getArrayFilterKeys')\n ->with($user)\n ->willReturn([]);\n\n $this->activitySearch->expects($this->once())\n ->method('getOnDemandPageFilterSet')\n ->willReturn($filterSet);\n\n $this->elasticRepository->expects($this->once())\n ->method('onDemandSearchIdsOnly')\n ->willReturn(['id-1', 'id-2', 'id-3']);\n\n $this->logger->expects($this->once())\n ->method('info')\n ->with('[AskJiminnyReport] Fetched activity IDs for saved search');\n\n $result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertEquals(['id-1', 'id-2', 'id-3'], $result);\n }\n\n public function testGetActivityIdsForSavedSearchReturnsEmptyWhenNoResults(): void\n {\n $user = $this->makeUser();\n $savedSearch = $this->makeSavedSearch([]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn([]);\n $this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn([]);\n\n $this->logger->expects($this->once())->method('info');\n\n $result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertEmpty($result);\n }\n\n public function testGetActivityIdsFiltersOutDateFilters(): void\n {\n $user = $this->makeUser();\n\n $nonDateFilter = $this->makeFilter('owner_id', '123');\n $startDateFilter = $this->makeFilter(ActivityActualDate::PARAM_START_DATE, '2025-01-01 00:00:00');\n $endDateFilter = $this->makeFilter(ActivityActualDate::PARAM_END_DATE, '2025-01-31 23:59:59');\n $updatedFromFilter = $this->makeFilter(ActivityUpdatedDate::PARAM_UPDATED_FROM, '2025-01-01 00:00:00');\n $updatedToFilter = $this->makeFilter(ActivityUpdatedDate::PARAM_UPDATED_TO, '2025-01-31 23:59:59');\n\n $savedSearch = $this->makeSavedSearch([\n $nonDateFilter,\n $startDateFilter,\n $endDateFilter,\n $updatedFromFilter,\n $updatedToFilter,\n ]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn([]);\n\n $capturedCriteria = null;\n $this->activitySearch->expects($this->once())\n ->method('getOnDemandPageFilterSet')\n ->willReturnCallback(function (Criteria $criteria) use ($filterSet, &$capturedCriteria) {\n $capturedCriteria = $criteria;\n\n return $filterSet;\n });\n\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn([]);\n $this->logger->method('info');\n\n $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertNotNull($capturedCriteria);\n }\n\n public function testGetActivityIdsFiltersOutClosingPeriodDateFilters(): void\n {\n $user = $this->makeUser();\n\n $closingStartFilter = $this->makeFilter(ClosingPeriodFilter::KEY_START_DATE, '2025-01-01');\n $closingEndFilter = $this->makeFilter(ClosingPeriodFilter::KEY_END_DATE, '2025-03-31');\n $regularFilter = $this->makeFilter('rep_id', '99');\n\n $savedSearch = $this->makeSavedSearch([\n $closingStartFilter,\n $closingEndFilter,\n $regularFilter,\n ]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn([]);\n $this->activitySearch->expects($this->once())\n ->method('getOnDemandPageFilterSet')\n ->willReturn($filterSet);\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['id-1']);\n $this->logger->method('info');\n\n $result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertEquals(['id-1'], $result);\n }\n\n public function testGetActivityIdsHandlesArrayFilters(): void\n {\n $user = $this->makeUser();\n\n $filter1 = $this->makeFilter('outcome', 'positive');\n $filter2 = $this->makeFilter('outcome', 'negative');\n\n $savedSearch = $this->makeSavedSearch([$filter1, $filter2]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn(['outcome']);\n $this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['id-1']);\n $this->logger->method('info');\n\n $result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertEquals(['id-1'], $result);\n }\n\n public function testGetActivityIdsHandlesScalarFilters(): void\n {\n $user = $this->makeUser();\n\n $filter = $this->makeFilter('direction', 'inbound');\n $savedSearch = $this->makeSavedSearch([$filter]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn([]);\n $this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['id-5']);\n $this->logger->method('info');\n\n $result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertEquals(['id-5'], $result);\n }\n\n public function testGetActivityIdsPassesNonZeroSequenceNumberToDisableFirstRequestDefaults(): void\n {\n $user = $this->makeUser();\n $savedSearch = $this->makeSavedSearch([]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn([]);\n\n $capturedCriteria = null;\n $this->activitySearch->expects($this->once())\n ->method('getOnDemandPageFilterSet')\n ->willReturnCallback(function (Criteria $criteria) use ($filterSet, &$capturedCriteria) {\n $capturedCriteria = $criteria;\n\n return $filterSet;\n });\n\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn([]);\n $this->logger->method('info');\n\n $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertNotNull($capturedCriteria);\n $this->assertFalse($capturedCriteria->isFirstRequest());\n }\n\n public function testGetActivityIdsLogsWithCorrectContext(): void\n {\n $user = $this->makeUser();\n $savedSearch = $this->makeSavedSearch([]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn([]);\n $this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['a', 'b']);\n\n $this->logger->expects($this->once())\n ->method('info')\n ->with(\n '[AskJiminnyReport] Fetched activity IDs for saved search',\n $this->callback(fn ($context) => $context['saved_search_id'] === 42\n && $context['user_id'] === 1\n && $context['activity_count'] === 2)\n );\n\n $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n }\n}","depth":4,"bounds":{"left":0.490625,"top":0.12777779,"width":0.3347656,"height":0.8722222},"value":"<?php\n\ndeclare(strict_types=1);\n\nnamespace Tests\\Unit\\Services\\Kiosk\\AutomatedReports;\n\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinition\\ActivityActualDate;\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinition\\ActivityUpdatedDate;\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinition\\DealInsights\\ClosingPeriodFilter;\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinitionCollection;\nuse Jiminny\\Component\\ActivitySearch\\Service\\ActivitySearch;\nuse Jiminny\\Models\\Activity\\Search;\nuse Jiminny\\Models\\Activity\\SearchFilter;\nuse Jiminny\\Models\\User;\nuse Jiminny\\Repositories\\ElasticActivityRepository;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AskJiminnyReportActivityService;\nuse Jiminny\\VO\\Repository\\OnDemandActivitySearch\\Criteria;\nuse PHPUnit\\Framework\\MockObject\\MockObject;\nuse PHPUnit\\Framework\\TestCase;\nuse Psr\\Log\\LoggerInterface;\n\nclass AskJiminnyReportActivityServiceTest extends TestCase\n{\n private ActivitySearch&MockObject $activitySearch;\n private ElasticActivityRepository&MockObject $elasticRepository;\n private LoggerInterface&MockObject $logger;\n private AskJiminnyReportActivityService $service;\n\n protected function setUp(): void\n {\n $this->activitySearch = $this->createMock(ActivitySearch::class);\n $this->elasticRepository = $this->createMock(ElasticActivityRepository::class);\n $this->logger = $this->createMock(LoggerInterface::class);\n\n $this->service = new AskJiminnyReportActivityService(\n $this->activitySearch,\n $this->elasticRepository,\n $this->logger,\n );\n }\n\n private function makeFilter(string $key, ?string $value): SearchFilter&MockObject\n {\n $filter = $this->createMock(SearchFilter::class);\n $filter->method('getFilterProperty')->willReturn($key);\n $filter->method('getFilterValue')->willReturn($value);\n\n return $filter;\n }\n\n private function makeUser(): User&MockObject\n {\n $tz = new \\DateTimeZone('UTC');\n $user = $this->createMock(User::class);\n $user->method('getTimezone')->willReturn($tz);\n $user->method('getId')->willReturn(1);\n $user->method('getUuid')->willReturn('user-uuid');\n\n return $user;\n }\n\n private function makeSavedSearch(array $filters): Search&MockObject\n {\n $savedSearch = $this->createMock(Search::class);\n $savedSearch->method('getId')->willReturn(42);\n $savedSearch->method('getFilters')->willReturn(new \\Illuminate\\Support\\LazyCollection($filters));\n\n return $savedSearch;\n }\n\n public function testGetActivityIdsForSavedSearchReturnsIds(): void\n {\n $user = $this->makeUser();\n $savedSearch = $this->makeSavedSearch([]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->expects($this->once())\n ->method('getArrayFilterKeys')\n ->with($user)\n ->willReturn([]);\n\n $this->activitySearch->expects($this->once())\n ->method('getOnDemandPageFilterSet')\n ->willReturn($filterSet);\n\n $this->elasticRepository->expects($this->once())\n ->method('onDemandSearchIdsOnly')\n ->willReturn(['id-1', 'id-2', 'id-3']);\n\n $this->logger->expects($this->once())\n ->method('info')\n ->with('[AskJiminnyReport] Fetched activity IDs for saved search');\n\n $result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertEquals(['id-1', 'id-2', 'id-3'], $result);\n }\n\n public function testGetActivityIdsForSavedSearchReturnsEmptyWhenNoResults(): void\n {\n $user = $this->makeUser();\n $savedSearch = $this->makeSavedSearch([]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn([]);\n $this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn([]);\n\n $this->logger->expects($this->once())->method('info');\n\n $result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertEmpty($result);\n }\n\n public function testGetActivityIdsFiltersOutDateFilters(): void\n {\n $user = $this->makeUser();\n\n $nonDateFilter = $this->makeFilter('owner_id', '123');\n $startDateFilter = $this->makeFilter(ActivityActualDate::PARAM_START_DATE, '2025-01-01 00:00:00');\n $endDateFilter = $this->makeFilter(ActivityActualDate::PARAM_END_DATE, '2025-01-31 23:59:59');\n $updatedFromFilter = $this->makeFilter(ActivityUpdatedDate::PARAM_UPDATED_FROM, '2025-01-01 00:00:00');\n $updatedToFilter = $this->makeFilter(ActivityUpdatedDate::PARAM_UPDATED_TO, '2025-01-31 23:59:59');\n\n $savedSearch = $this->makeSavedSearch([\n $nonDateFilter,\n $startDateFilter,\n $endDateFilter,\n $updatedFromFilter,\n $updatedToFilter,\n ]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn([]);\n\n $capturedCriteria = null;\n $this->activitySearch->expects($this->once())\n ->method('getOnDemandPageFilterSet')\n ->willReturnCallback(function (Criteria $criteria) use ($filterSet, &$capturedCriteria) {\n $capturedCriteria = $criteria;\n\n return $filterSet;\n });\n\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn([]);\n $this->logger->method('info');\n\n $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertNotNull($capturedCriteria);\n }\n\n public function testGetActivityIdsFiltersOutClosingPeriodDateFilters(): void\n {\n $user = $this->makeUser();\n\n $closingStartFilter = $this->makeFilter(ClosingPeriodFilter::KEY_START_DATE, '2025-01-01');\n $closingEndFilter = $this->makeFilter(ClosingPeriodFilter::KEY_END_DATE, '2025-03-31');\n $regularFilter = $this->makeFilter('rep_id', '99');\n\n $savedSearch = $this->makeSavedSearch([\n $closingStartFilter,\n $closingEndFilter,\n $regularFilter,\n ]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn([]);\n $this->activitySearch->expects($this->once())\n ->method('getOnDemandPageFilterSet')\n ->willReturn($filterSet);\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['id-1']);\n $this->logger->method('info');\n\n $result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertEquals(['id-1'], $result);\n }\n\n public function testGetActivityIdsHandlesArrayFilters(): void\n {\n $user = $this->makeUser();\n\n $filter1 = $this->makeFilter('outcome', 'positive');\n $filter2 = $this->makeFilter('outcome', 'negative');\n\n $savedSearch = $this->makeSavedSearch([$filter1, $filter2]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn(['outcome']);\n $this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['id-1']);\n $this->logger->method('info');\n\n $result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertEquals(['id-1'], $result);\n }\n\n public function testGetActivityIdsHandlesScalarFilters(): void\n {\n $user = $this->makeUser();\n\n $filter = $this->makeFilter('direction', 'inbound');\n $savedSearch = $this->makeSavedSearch([$filter]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn([]);\n $this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['id-5']);\n $this->logger->method('info');\n\n $result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertEquals(['id-5'], $result);\n }\n\n public function testGetActivityIdsPassesNonZeroSequenceNumberToDisableFirstRequestDefaults(): void\n {\n $user = $this->makeUser();\n $savedSearch = $this->makeSavedSearch([]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn([]);\n\n $capturedCriteria = null;\n $this->activitySearch->expects($this->once())\n ->method('getOnDemandPageFilterSet')\n ->willReturnCallback(function (Criteria $criteria) use ($filterSet, &$capturedCriteria) {\n $capturedCriteria = $criteria;\n\n return $filterSet;\n });\n\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn([]);\n $this->logger->method('info');\n\n $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertNotNull($capturedCriteria);\n $this->assertFalse($capturedCriteria->isFirstRequest());\n }\n\n public function testGetActivityIdsLogsWithCorrectContext(): void\n {\n $user = $this->makeUser();\n $savedSearch = $this->makeSavedSearch([]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn([]);\n $this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['a', 'b']);\n\n $this->logger->expects($this->once())\n ->method('info')\n ->with(\n '[AskJiminnyReport] Fetched activity IDs for saved search',\n $this->callback(fn ($context) => $context['saved_search_id'] === 42\n && $context['user_id'] === 1\n && $context['activity_count'] === 2)\n );\n\n $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n }\n}","role_description":"text entry area","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Sync Changes","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide This Notification","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Code changed:","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.049609374,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"15","depth":4,"bounds":{"left":0.4234375,"top":0.1736111,"width":0.011328125,"height":0.013194445},"role_description":"text"},{"role":"AXStaticText","text":"4","depth":4,"bounds":{"left":0.43710938,"top":0.1736111,"width":0.009375,"height":0.013194445},"role_description":"text"},{"role":"AXButton","text":"Previous Highlighted Error","depth":4,"bounds":{"left":0.4484375,"top":0.17222223,"width":0.00859375,"height":0.015972223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Next Highlighted Error","depth":4,"bounds":{"left":0.45703125,"top":0.17222223,"width":0.008203125,"height":0.015972223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"<?php\n\ndeclare(strict_types=1);\n\nnamespace Jiminny\\Repositories;\n\nuse Carbon\\CarbonImmutable;\nuse Illuminate\\Database\\Eloquent\\Builder;\nuse Illuminate\\Support\\Carbon;\nuse Illuminate\\Database\\Eloquent\\Collection;\nuse Illuminate\\Pagination\\LengthAwarePaginator;\nuse Illuminate\\Support\\Facades\\DB;\nuse Jiminny\\Models\\AutomatedReport;\nuse Jiminny\\Models\\AutomatedReportResult;\nuse Jiminny\\Models\\Team;\nuse Jiminny\\Models\\User;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AutomatedReportsService;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\ReportSort;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\ReportSortDirection;\n\nclass AutomatedReportsRepository\n{\n /**\n * Create a new automated report\n *\n * @param array $data\n *\n * @return AutomatedReport\n */\n public function create(array $data): AutomatedReport\n {\n return AutomatedReport::create($data);\n }\n\n /**\n * Find an automated report by UUID\n *\n * @param string $uuid\n *\n * @return AutomatedReport|null\n */\n public function findByUuid(string $uuid): ?AutomatedReport\n {\n return AutomatedReport::where('uuid', AutomatedReport::toOptimized($uuid))->first();\n }\n\n public function findByIdOrUuid(string $idOrUuid): ?AutomatedReport\n {\n if (is_numeric($idOrUuid)) {\n return AutomatedReport::find((int) $idOrUuid);\n }\n\n return AutomatedReport::where('uuid', AutomatedReport::toOptimized($idOrUuid))->first();\n }\n\n /**\n * Retrieve all standard (non-Ask Jiminny) automated reports.\n *\n * @param string $sortColumn The column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to 'created_at'.\n * @param string $sortDirection The sort direction. Allowed values: 'asc', 'desc'. Defaults to 'desc'.\n *\n * @return Collection<AutomatedReport>\n */\n public function getAllStandardReports(\n string $sortColumn = 'created_at',\n string $sortDirection = 'desc'\n ): Collection {\n return $this->buildSortedQuery($sortColumn, $sortDirection)\n ->whereNot('type', AutomatedReportsService::TYPE_ASK_JIMINNY)\n ->get();\n }\n\n /**\n * Retrieve all Ask Jiminny reports created by the given user.\n *\n * @param User $user The user whose reports to retrieve.\n * @param string $sortColumn The column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to 'created_at'.\n * @param string $sortDirection The sort direction. Allowed values: 'asc', 'desc'. Defaults to 'desc'.\n *\n * @return Collection<AutomatedReport>\n */\n public function getAskJiminnyReportsByUser(\n User $user,\n string $sortColumn = 'created_at',\n string $sortDirection = 'desc'\n ): Collection {\n return $this->buildSortedQuery($sortColumn, $sortDirection)\n ->where('type', AutomatedReportsService::TYPE_ASK_JIMINNY)\n ->where('created_by', $user->getId())\n ->get();\n }\n\n private function buildSortedQuery(string $sortColumn, string $sortDirection): \\Illuminate\\Database\\Eloquent\\Builder\n {\n $allowedColumns = ['created_by', 'created_at'];\n if (! in_array($sortColumn, $allowedColumns)) {\n $sortColumn = 'created_at';\n }\n\n $sortDirection = strtolower($sortDirection) === 'asc' ? 'asc' : 'desc';\n\n $query = AutomatedReport::query()->with(['creator', 'team']);\n\n if ($sortColumn === 'created_by') {\n $query->leftJoin('users', 'users.id', '=', 'automated_reports.created_by')\n ->orderByRaw(\"users.name COLLATE utf8mb4_unicode_ci {$sortDirection}\")\n ->select('automated_reports.*');\n } else {\n $query->orderBy($sortColumn, $sortDirection);\n }\n\n return $query;\n }\n\n /**\n * Get all active and enabled reports with active teams for the specified frequency.\n *\n * @param string $frequency\n *\n * @return Collection<AutomatedReport>\n */\n public function getActiveReportsByFrequency(string $frequency): Collection\n {\n return AutomatedReport::where('automated_reports.status', true)\n ->where('automated_reports.frequency', $frequency)\n ->join('teams', 'automated_reports.team_id', '=', 'teams.id')\n ->where('teams.status', Team::STATUS_ACTIVE)\n ->where(function ($query) {\n $query->whereNull('automated_reports.expires_at')\n ->orWhere('automated_reports.expires_at', '>=', now()->toDateString());\n })\n ->select('automated_reports.*')\n ->get();\n }\n\n /**\n * Update an automated report\n *\n * @param AutomatedReport $report\n * @param array $data\n *\n * @return AutomatedReport\n */\n public function update(AutomatedReport $report, array $data): AutomatedReport\n {\n $report->update($data);\n\n return $report;\n }\n\n /**\n * Create a new automated report result.\n *\n * @param array $data The data to create the automated report result with.\n *\n * @return AutomatedReportResult The newly created automated report result.\n */\n public function createResult(array $data): AutomatedReportResult\n {\n return AutomatedReportResult::create($data);\n }\n\n /**\n * Find an automated report result by UUID.\n *\n * @param string $uuid The UUID to find the automated report result with.\n *\n * @return AutomatedReportResult|null The automated report result if found, otherwise null.\n */\n public function findResultByUuid(string $uuid): ?AutomatedReportResult\n {\n return AutomatedReportResult::where('uuid', AutomatedReportResult::toOptimized($uuid))->first();\n }\n\n public function findResultByUuidForUser(string $uuid, User $user): ?AutomatedReportResult\n {\n return AutomatedReportResult::query()\n ->where('uuid', AutomatedReportResult::toOptimized($uuid))\n ->whereHas('report', static function ($query) use ($user): void {\n $query->where('team_id', $user->getTeamId())\n ->where('created_by', $user->getId());\n })\n ->first();\n }\n\n public function findChildResult(AutomatedReportResult $result, string $type): ?AutomatedReportResult\n {\n return AutomatedReportResult::query()\n ->where('parent_id', $result->getId())\n ->where('media_type', $type)\n ->first();\n }\n\n public function getGeneratedNotSentResults(): Collection\n {\n return AutomatedReportResult::query()\n ->whereNotNull('generated_at')\n ->whereNull('sent_at')\n ->where('status', AutomatedReportResult::STATUS_GENERATED)\n ->whereHas('report')\n ->with('report')\n ->get();\n }\n\n public function getPaginatedUserReports(\n User $user,\n ReportSort $sort,\n ReportSortDirection $sortDirection,\n int $resultsPerPage,\n int $page,\n ?Carbon $fromDate,\n ?Carbon $toDate,\n array $teamIds,\n array $reportTypes,\n ?string $name,\n ): LengthAwarePaginator {\n $query = AutomatedReportResult::query()\n ->whereNotNull('automated_report_results.generated_at')\n ->join('automated_reports', 'automated_report_results.report_id', '=', 'automated_reports.id')\n ->where('automated_reports.team_id', $user->getTeamId())\n ->whereJsonContains('automated_reports.recipients->users', $user->getId())\n ->orderByRaw(\"$sort->value COLLATE utf8mb4_unicode_ci {$sortDirection->value}\")\n ->select('automated_report_results.*')\n ->with('report.team');\n\n if ($fromDate !== null && $toDate !== null) {\n $query->whereBetween('generated_at', [$fromDate, $toDate]);\n }\n\n if (! empty($teamIds)) {\n $query->where(function ($q) use ($teamIds) {\n foreach ($teamIds as $id) {\n $q->orWhereJsonContains('automated_reports.groups', $id);\n }\n });\n }\n\n if (! empty($reportTypes)) {\n $query->whereIn('automated_reports.type', $reportTypes);\n }\n\n if (! empty($name)) {\n $query->whereLike('name', \"%$name%\");\n }\n\n return $query->paginate($resultsPerPage, ['*'], 'page', $page);\n }\n\n public function countUserReports(User $user): int\n {\n return AutomatedReportResult::query()\n ->whereNotNull('generated_at')\n ->whereNotNull('sent_at')\n ->whereHas('report', function ($q) use ($user) {\n $q->where('team_id', $user->getTeamId())\n ->whereJsonContains('recipients->users', $user->getId());\n })\n ->count();\n }\n\n /**\n * Get report IDs for a specific team\n *\n * @param Team $team\n *\n * @return \\Illuminate\\Support\\Collection\n */\n public function getReportIdsByTeam(Team $team): \\Illuminate\\Support\\Collection\n {\n return AutomatedReport::where('team_id', $team->getId())->pluck('id');\n }\n\n /**\n * Get all reports for a specific team\n *\n * @param Team $team\n *\n * @return Collection\n */\n public function getReportsByTeam(Team $team): Collection\n {\n return AutomatedReport::where('team_id', $team->getId())->get();\n }\n\n /**\n * Get all report results for a specific report\n *\n * @param AutomatedReport $report\n *\n * @return Collection\n */\n public function getResultsByReport(AutomatedReport $report): Collection\n {\n return $this->getResultsByReportQuery($report)->get();\n }\n\n public function getResultsByReportQuery(AutomatedReport $report): Builder\n {\n return AutomatedReportResult::where('report_id', $report->getId());\n }\n\n public function getReportResultsQueryForRetention(Team $team, CarbonImmutable $retentionDate): Builder\n {\n $reportIds = $this->getReportIdsByTeam($team);\n\n return AutomatedReportResult::query()->whereIn('report_id', $reportIds)\n ->whereRaw('IFNULL(generated_at, created_at) <= ?', [$retentionDate]);\n }\n\n /**\n * @param int|null $teamId Optional team ID to filter results\n *\n * @return \\Illuminate\\Support\\Collection<int, int> Collection of team IDs\n */\n public function getTeamIdsWithReportsResults(?int $teamId = null): \\Illuminate\\Support\\Collection\n {\n $query = DB::table('automated_reports')\n ->join('teams', 'automated_reports.team_id', '=', 'teams.id')\n ->select('teams.id')\n ->distinct();\n\n if ($teamId !== null) {\n $query->where('teams.id', $teamId);\n }\n\n return $query->pluck('teams.id');\n }\n}","depth":4,"bounds":{"left":0.15234375,"top":0.0,"width":0.39882812,"height":1.0},"value":"<?php\n\ndeclare(strict_types=1);\n\nnamespace Jiminny\\Repositories;\n\nuse Carbon\\CarbonImmutable;\nuse Illuminate\\Database\\Eloquent\\Builder;\nuse Illuminate\\Support\\Carbon;\nuse Illuminate\\Database\\Eloquent\\Collection;\nuse Illuminate\\Pagination\\LengthAwarePaginator;\nuse Illuminate\\Support\\Facades\\DB;\nuse Jiminny\\Models\\AutomatedReport;\nuse Jiminny\\Models\\AutomatedReportResult;\nuse Jiminny\\Models\\Team;\nuse Jiminny\\Models\\User;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AutomatedReportsService;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\ReportSort;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\ReportSortDirection;\n\nclass AutomatedReportsRepository\n{\n /**\n * Create a new automated report\n *\n * @param array $data\n *\n * @return AutomatedReport\n */\n public function create(array $data): AutomatedReport\n {\n return AutomatedReport::create($data);\n }\n\n /**\n * Find an automated report by UUID\n *\n * @param string $uuid\n *\n * @return AutomatedReport|null\n */\n public function findByUuid(string $uuid): ?AutomatedReport\n {\n return AutomatedReport::where('uuid', AutomatedReport::toOptimized($uuid))->first();\n }\n\n public function findByIdOrUuid(string $idOrUuid): ?AutomatedReport\n {\n if (is_numeric($idOrUuid)) {\n return AutomatedReport::find((int) $idOrUuid);\n }\n\n return AutomatedReport::where('uuid', AutomatedReport::toOptimized($idOrUuid))->first();\n }\n\n /**\n * Retrieve all standard (non-Ask Jiminny) automated reports.\n *\n * @param string $sortColumn The column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to 'created_at'.\n * @param string $sortDirection The sort direction. Allowed values: 'asc', 'desc'. Defaults to 'desc'.\n *\n * @return Collection<AutomatedReport>\n */\n public function getAllStandardReports(\n string $sortColumn = 'created_at',\n string $sortDirection = 'desc'\n ): Collection {\n return $this->buildSortedQuery($sortColumn, $sortDirection)\n ->whereNot('type', AutomatedReportsService::TYPE_ASK_JIMINNY)\n ->get();\n }\n\n /**\n * Retrieve all Ask Jiminny reports created by the given user.\n *\n * @param User $user The user whose reports to retrieve.\n * @param string $sortColumn The column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to 'created_at'.\n * @param string $sortDirection The sort direction. Allowed values: 'asc', 'desc'. Defaults to 'desc'.\n *\n * @return Collection<AutomatedReport>\n */\n public function getAskJiminnyReportsByUser(\n User $user,\n string $sortColumn = 'created_at',\n string $sortDirection = 'desc'\n ): Collection {\n return $this->buildSortedQuery($sortColumn, $sortDirection)\n ->where('type', AutomatedReportsService::TYPE_ASK_JIMINNY)\n ->where('created_by', $user->getId())\n ->get();\n }\n\n private function buildSortedQuery(string $sortColumn, string $sortDirection): \\Illuminate\\Database\\Eloquent\\Builder\n {\n $allowedColumns = ['created_by', 'created_at'];\n if (! in_array($sortColumn, $allowedColumns)) {\n $sortColumn = 'created_at';\n }\n\n $sortDirection = strtolower($sortDirection) === 'asc' ? 'asc' : 'desc';\n\n $query = AutomatedReport::query()->with(['creator', 'team']);\n\n if ($sortColumn === 'created_by') {\n $query->leftJoin('users', 'users.id', '=', 'automated_reports.created_by')\n ->orderByRaw(\"users.name COLLATE utf8mb4_unicode_ci {$sortDirection}\")\n ->select('automated_reports.*');\n } else {\n $query->orderBy($sortColumn, $sortDirection);\n }\n\n return $query;\n }\n\n /**\n * Get all active and enabled reports with active teams for the specified frequency.\n *\n * @param string $frequency\n *\n * @return Collection<AutomatedReport>\n */\n public function getActiveReportsByFrequency(string $frequency): Collection\n {\n return AutomatedReport::where('automated_reports.status', true)\n ->where('automated_reports.frequency', $frequency)\n ->join('teams', 'automated_reports.team_id', '=', 'teams.id')\n ->where('teams.status', Team::STATUS_ACTIVE)\n ->where(function ($query) {\n $query->whereNull('automated_reports.expires_at')\n ->orWhere('automated_reports.expires_at', '>=', now()->toDateString());\n })\n ->select('automated_reports.*')\n ->get();\n }\n\n /**\n * Update an automated report\n *\n * @param AutomatedReport $report\n * @param array $data\n *\n * @return AutomatedReport\n */\n public function update(AutomatedReport $report, array $data): AutomatedReport\n {\n $report->update($data);\n\n return $report;\n }\n\n /**\n * Create a new automated report result.\n *\n * @param array $data The data to create the automated report result with.\n *\n * @return AutomatedReportResult The newly created automated report result.\n */\n public function createResult(array $data): AutomatedReportResult\n {\n return AutomatedReportResult::create($data);\n }\n\n /**\n * Find an automated report result by UUID.\n *\n * @param string $uuid The UUID to find the automated report result with.\n *\n * @return AutomatedReportResult|null The automated report result if found, otherwise null.\n */\n public function findResultByUuid(string $uuid): ?AutomatedReportResult\n {\n return AutomatedReportResult::where('uuid', AutomatedReportResult::toOptimized($uuid))->first();\n }\n\n public function findResultByUuidForUser(string $uuid, User $user): ?AutomatedReportResult\n {\n return AutomatedReportResult::query()\n ->where('uuid', AutomatedReportResult::toOptimized($uuid))\n ->whereHas('report', static function ($query) use ($user): void {\n $query->where('team_id', $user->getTeamId())\n ->where('created_by', $user->getId());\n })\n ->first();\n }\n\n public function findChildResult(AutomatedReportResult $result, string $type): ?AutomatedReportResult\n {\n return AutomatedReportResult::query()\n ->where('parent_id', $result->getId())\n ->where('media_type', $type)\n ->first();\n }\n\n public function getGeneratedNotSentResults(): Collection\n {\n return AutomatedReportResult::query()\n ->whereNotNull('generated_at')\n ->whereNull('sent_at')\n ->where('status', AutomatedReportResult::STATUS_GENERATED)\n ->whereHas('report')\n ->with('report')\n ->get();\n }\n\n public function getPaginatedUserReports(\n User $user,\n ReportSort $sort,\n ReportSortDirection $sortDirection,\n int $resultsPerPage,\n int $page,\n ?Carbon $fromDate,\n ?Carbon $toDate,\n array $teamIds,\n array $reportTypes,\n ?string $name,\n ): LengthAwarePaginator {\n $query = AutomatedReportResult::query()\n ->whereNotNull('automated_report_results.generated_at')\n ->join('automated_reports', 'automated_report_results.report_id', '=', 'automated_reports.id')\n ->where('automated_reports.team_id', $user->getTeamId())\n ->whereJsonContains('automated_reports.recipients->users', $user->getId())\n ->orderByRaw(\"$sort->value COLLATE utf8mb4_unicode_ci {$sortDirection->value}\")\n ->select('automated_report_results.*')\n ->with('report.team');\n\n if ($fromDate !== null && $toDate !== null) {\n $query->whereBetween('generated_at', [$fromDate, $toDate]);\n }\n\n if (! empty($teamIds)) {\n $query->where(function ($q) use ($teamIds) {\n foreach ($teamIds as $id) {\n $q->orWhereJsonContains('automated_reports.groups', $id);\n }\n });\n }\n\n if (! empty($reportTypes)) {\n $query->whereIn('automated_reports.type', $reportTypes);\n }\n\n if (! empty($name)) {\n $query->whereLike('name', \"%$name%\");\n }\n\n return $query->paginate($resultsPerPage, ['*'], 'page', $page);\n }\n\n public function countUserReports(User $user): int\n {\n return AutomatedReportResult::query()\n ->whereNotNull('generated_at')\n ->whereNotNull('sent_at')\n ->whereHas('report', function ($q) use ($user) {\n $q->where('team_id', $user->getTeamId())\n ->whereJsonContains('recipients->users', $user->getId());\n })\n ->count();\n }\n\n /**\n * Get report IDs for a specific team\n *\n * @param Team $team\n *\n * @return \\Illuminate\\Support\\Collection\n */\n public function getReportIdsByTeam(Team $team): \\Illuminate\\Support\\Collection\n {\n return AutomatedReport::where('team_id', $team->getId())->pluck('id');\n }\n\n /**\n * Get all reports for a specific team\n *\n * @param Team $team\n *\n * @return Collection\n */\n public function getReportsByTeam(Team $team): Collection\n {\n return AutomatedReport::where('team_id', $team->getId())->get();\n }\n\n /**\n * Get all report results for a specific report\n *\n * @param AutomatedReport $report\n *\n * @return Collection\n */\n public function getResultsByReport(AutomatedReport $report): Collection\n {\n return $this->getResultsByReportQuery($report)->get();\n }\n\n public function getResultsByReportQuery(AutomatedReport $report): Builder\n {\n return AutomatedReportResult::where('report_id', $report->getId());\n }\n\n public function getReportResultsQueryForRetention(Team $team, CarbonImmutable $retentionDate): Builder\n {\n $reportIds = $this->getReportIdsByTeam($team);\n\n return AutomatedReportResult::query()->whereIn('report_id', $reportIds)\n ->whereRaw('IFNULL(generated_at, created_at) <= ?', [$retentionDate]);\n }\n\n /**\n * @param int|null $teamId Optional team ID to filter results\n *\n * @return \\Illuminate\\Support\\Collection<int, int> Collection of team IDs\n */\n public function getTeamIdsWithReportsResults(?int $teamId = null): \\Illuminate\\Support\\Collection\n {\n $query = DB::table('automated_reports')\n ->join('teams', 'automated_reports.team_id', '=', 'teams.id')\n ->select('teams.id')\n ->distinct();\n\n if ($teamId !== null) {\n $query->where('teams.id', $teamId);\n }\n\n return $query->pluck('teams.id');\n }\n}","role_description":"text entry area","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Project","depth":3,"role_description":"text"},{"role":"AXButton","text":"Project","depth":3,"bounds":{"left":0.0140625,"top":0.041666668,"width":0.028515626,"height":0.021527778},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"New File or Directory…","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Expand Selected","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Collapse All","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Options","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"app ~/jiminny/app","depth":6,"role_description":"text"},{"role":"AXStaticText","text":".circleci","depth":7,"role_description":"text"},{"role":"AXStaticText","text":".cursor","depth":7,"role_description":"text"},{"role":"AXStaticText","text":".github","depth":7,"role_description":"text"},{"role":"AXStaticText","text":".sonarlint","depth":7,"role_description":"text"},{"role":"AXStaticText","text":".vscode","depth":7,"role_description":"text"},{"role":"AXStaticText","text":".windsurf","depth":7,"role_description":"text"},{"role":"AXStaticText","text":"app, sources root","depth":7,"role_description":"text"},{"role":"AXStaticText","text":"Actions","depth":8,"role_description":"text"},{"role":"AXStaticText","text":"Component","depth":8,"role_description":"text"},{"role":"AXStaticText","text":"Configuration","depth":8,"role_description":"text"},{"role":"AXStaticText","text":"Console","depth":8,"role_description":"text"},{"role":"AXStaticText","text":"Commands","depth":9,"role_description":"text"},{"role":"AXStaticText","text":"Activities","depth":10,"role_description":"text"},{"role":"AXStaticText","text":"Analytics","depth":10,"role_description":"text"},{"role":"AXStaticText","text":"Calendars","depth":10,"role_description":"text"},{"role":"AXStaticText","text":"Crm","depth":10,"role_description":"text"},{"role":"AXStaticText","text":"Hubspot","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"IntegrationApp","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"AddLayoutEntities.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"AutologDelayedCommand.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"BullhornCommandAbstract.php, abstract class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"BullhornPingCommand.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"BullhornSearchCommand.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"BullhornSessionCommand.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"CheckActivityLoggableCommand.php, final class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"CleanDuplicateFieldDataCommand.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"FullSyncOpportunityCommand.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"LogActivitiesCommand.php, final class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"ManageSyncStrategyCommand.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"MatchCrmObjectsCommand.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"MatchOpportunityActivitiesCommand.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"MigrateProvider.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"ProcessHubspotObjectsSyncBatches.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"PurgeDeletedOpportunitiesCommand.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"ResetGovernorLimits.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"SendNotLogged.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"SetupActivityTypeForFollowUp.php, final class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"SetupCloseCrm.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"SetupCopperCrm.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"SetupCrmCommand.php, abstract class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"SetupLayouts.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"SyncAccount.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"SyncContact.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"SyncFieldMetadata.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"SyncHubspotActiveDeals.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"SyncLead.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"SyncObjects.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"SyncOpportunitiesMissingFieldDataCommand.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"SyncOpportunity.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"SyncProfileMetadata.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"SyncTeamMetadata.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"UpdateOpportunitySpecifications.php, class","depth":11,"role_description":"text"},{"role":"AXStaticText","text":"DealInsights","depth":10,"role_description":"text"},{"role":"AXStaticText","text":"Dev","depth":10,"role_description":"text"},{"role":"AXStaticText","text":"Dialers","depth":10,"role_description":"text"},{"role":"AXStaticText","text":"DTOs","depth":10,"role_description":"text"},{"role":"AXStaticText","text":"Elasticsearch","depth":10,"role_description":"text"},{"role":"AXStaticText","text":"EngagementStats","depth":10,"role_description":"text"},{"role":"AXStaticText","text":"GeckoExport","depth":10,"role_description":"text"},{"role":"AXStaticText","text":"Livestream","depth":10,"role_description":"text"},{"role":"AXStaticText","text":"Mailboxes","depth":10,"role_description":"text"},{"role":"AXStaticText","text":"Migrate","depth":10,"role_description":"text"},{"role":"AXStaticText","text":"PlaybackThemes","depth":10,"role_description":"text"},{"role":"AXStaticText","text":"Playbooks","depth":10,"role_description":"text"},{"role":"AXStaticText","text":"Playlists","depth":10,"role_description":"text"},{"role":"AXStaticText","text":"Postmark","depth":10,"role_description":"text"},{"role":"AXStaticText","text":"ProphetAi","depth":10,"role_description":"text"},{"role":"AXStaticText","text":"Reports","depth":10,"role_description":"text"},{"role":"AXStaticText","text":"AutomatedReportsCommand.php, class","depth":11,"role_description":"text"}]...
|
8105292536523201559
|
-8276794435621667532
|
visual_change
|
accessibility
|
NULL
|
Project: faVsco.js, menu
#11894 on JY-18909-automa Project: faVsco.js, menu
#11894 on JY-18909-automated-reports-ask-jiminny, menu
Start Listening for PHP Debug Connections
RequestGenerateAskJiminnyReportJobTest
Run 'RequestGenerateAskJiminnyReportJobTest'
Debug 'RequestGenerateAskJiminnyReportJobTest'
More Actions
JetBrains AI
Search Everywhere
IDE and Project Settings
Sync Changes
Hide This Notification
Code changed:
Hide
2
3
Previous Highlighted Error
Next Highlighted Error
<?php
declare(strict_types=1);
namespace Tests\Unit\Services\Kiosk\AutomatedReports;
use Jiminny\Component\ActivitySearch\FilterDefinition\ActivityActualDate;
use Jiminny\Component\ActivitySearch\FilterDefinition\ActivityUpdatedDate;
use Jiminny\Component\ActivitySearch\FilterDefinition\DealInsights\ClosingPeriodFilter;
use Jiminny\Component\ActivitySearch\FilterDefinitionCollection;
use Jiminny\Component\ActivitySearch\Service\ActivitySearch;
use Jiminny\Models\Activity\Search;
use Jiminny\Models\Activity\SearchFilter;
use Jiminny\Models\User;
use Jiminny\Repositories\ElasticActivityRepository;
use Jiminny\Services\Kiosk\AutomatedReports\AskJiminnyReportActivityService;
use Jiminny\VO\Repository\OnDemandActivitySearch\Criteria;
use PHPUnit\Framework\MockObject\MockObject;
use PHPUnit\Framework\TestCase;
use Psr\Log\LoggerInterface;
class AskJiminnyReportActivityServiceTest extends TestCase
{
private ActivitySearch&MockObject $activitySearch;
private ElasticActivityRepository&MockObject $elasticRepository;
private LoggerInterface&MockObject $logger;
private AskJiminnyReportActivityService $service;
protected function setUp(): void
{
$this->activitySearch = $this->createMock(ActivitySearch::class);
$this->elasticRepository = $this->createMock(ElasticActivityRepository::class);
$this->logger = $this->createMock(LoggerInterface::class);
$this->service = new AskJiminnyReportActivityService(
$this->activitySearch,
$this->elasticRepository,
$this->logger,
);
}
private function makeFilter(string $key, ?string $value): SearchFilter&MockObject
{
$filter = $this->createMock(SearchFilter::class);
$filter->method('getFilterProperty')->willReturn($key);
$filter->method('getFilterValue')->willReturn($value);
return $filter;
}
private function makeUser(): User&MockObject
{
$tz = new \DateTimeZone('UTC');
$user = $this->createMock(User::class);
$user->method('getTimezone')->willReturn($tz);
$user->method('getId')->willReturn(1);
$user->method('getUuid')->willReturn('user-uuid');
return $user;
}
private function makeSavedSearch(array $filters): Search&MockObject
{
$savedSearch = $this->createMock(Search::class);
$savedSearch->method('getId')->willReturn(42);
$savedSearch->method('getFilters')->willReturn(new \Illuminate\Support\LazyCollection($filters));
return $savedSearch;
}
public function testGetActivityIdsForSavedSearchReturnsIds(): void
{
$user = $this->makeUser();
$savedSearch = $this->makeSavedSearch([]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->expects($this->once())
->method('getArrayFilterKeys')
->with($user)
->willReturn([]);
$this->activitySearch->expects($this->once())
->method('getOnDemandPageFilterSet')
->willReturn($filterSet);
$this->elasticRepository->expects($this->once())
->method('onDemandSearchIdsOnly')
->willReturn(['id-1', 'id-2', 'id-3']);
$this->logger->expects($this->once())
->method('info')
->with('[AskJiminnyReport] Fetched activity IDs for saved search');
$result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertEquals(['id-1', 'id-2', 'id-3'], $result);
}
public function testGetActivityIdsForSavedSearchReturnsEmptyWhenNoResults(): void
{
$user = $this->makeUser();
$savedSearch = $this->makeSavedSearch([]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn([]);
$this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn([]);
$this->logger->expects($this->once())->method('info');
$result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertEmpty($result);
}
public function testGetActivityIdsFiltersOutDateFilters(): void
{
$user = $this->makeUser();
$nonDateFilter = $this->makeFilter('owner_id', '123');
$startDateFilter = $this->makeFilter(ActivityActualDate::PARAM_START_DATE, '2025-01-01 00:00:00');
$endDateFilter = $this->makeFilter(ActivityActualDate::PARAM_END_DATE, '2025-01-31 23:59:59');
$updatedFromFilter = $this->makeFilter(ActivityUpdatedDate::PARAM_UPDATED_FROM, '2025-01-01 00:00:00');
$updatedToFilter = $this->makeFilter(ActivityUpdatedDate::PARAM_UPDATED_TO, '2025-01-31 23:59:59');
$savedSearch = $this->makeSavedSearch([
$nonDateFilter,
$startDateFilter,
$endDateFilter,
$updatedFromFilter,
$updatedToFilter,
]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn([]);
$capturedCriteria = null;
$this->activitySearch->expects($this->once())
->method('getOnDemandPageFilterSet')
->willReturnCallback(function (Criteria $criteria) use ($filterSet, &$capturedCriteria) {
$capturedCriteria = $criteria;
return $filterSet;
});
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn([]);
$this->logger->method('info');
$this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertNotNull($capturedCriteria);
}
public function testGetActivityIdsFiltersOutClosingPeriodDateFilters(): void
{
$user = $this->makeUser();
$closingStartFilter = $this->makeFilter(ClosingPeriodFilter::KEY_START_DATE, '2025-01-01');
$closingEndFilter = $this->makeFilter(ClosingPeriodFilter::KEY_END_DATE, '2025-03-31');
$regularFilter = $this->makeFilter('rep_id', '99');
$savedSearch = $this->makeSavedSearch([
$closingStartFilter,
$closingEndFilter,
$regularFilter,
]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn([]);
$this->activitySearch->expects($this->once())
->method('getOnDemandPageFilterSet')
->willReturn($filterSet);
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['id-1']);
$this->logger->method('info');
$result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertEquals(['id-1'], $result);
}
public function testGetActivityIdsHandlesArrayFilters(): void
{
$user = $this->makeUser();
$filter1 = $this->makeFilter('outcome', 'positive');
$filter2 = $this->makeFilter('outcome', 'negative');
$savedSearch = $this->makeSavedSearch([$filter1, $filter2]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn(['outcome']);
$this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['id-1']);
$this->logger->method('info');
$result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertEquals(['id-1'], $result);
}
public function testGetActivityIdsHandlesScalarFilters(): void
{
$user = $this->makeUser();
$filter = $this->makeFilter('direction', 'inbound');
$savedSearch = $this->makeSavedSearch([$filter]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn([]);
$this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['id-5']);
$this->logger->method('info');
$result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertEquals(['id-5'], $result);
}
public function testGetActivityIdsPassesNonZeroSequenceNumberToDisableFirstRequestDefaults(): void
{
$user = $this->makeUser();
$savedSearch = $this->makeSavedSearch([]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn([]);
$capturedCriteria = null;
$this->activitySearch->expects($this->once())
->method('getOnDemandPageFilterSet')
->willReturnCallback(function (Criteria $criteria) use ($filterSet, &$capturedCriteria) {
$capturedCriteria = $criteria;
return $filterSet;
});
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn([]);
$this->logger->method('info');
$this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertNotNull($capturedCriteria);
$this->assertFalse($capturedCriteria->isFirstRequest());
}
public function testGetActivityIdsLogsWithCorrectContext(): void
{
$user = $this->makeUser();
$savedSearch = $this->makeSavedSearch([]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn([]);
$this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['a', 'b']);
$this->logger->expects($this->once())
->method('info')
->with(
'[AskJiminnyReport] Fetched activity IDs for saved search',
$this->callback(fn ($context) => $context['saved_search_id'] === 42
&& $context['user_id'] === 1
&& $context['activity_count'] === 2)
);
$this->service->getActivityIdsForSavedSearch($savedSearch, $user);
}
}
Sync Changes
Hide This Notification
Code changed:
Hide
15
4
Previous Highlighted Error
Next Highlighted Error
<?php
declare(strict_types=1);
namespace Jiminny\Repositories;
use Carbon\CarbonImmutable;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Support\Carbon;
use Illuminate\Database\Eloquent\Collection;
use Illuminate\Pagination\LengthAwarePaginator;
use Illuminate\Support\Facades\DB;
use Jiminny\Models\AutomatedReport;
use Jiminny\Models\AutomatedReportResult;
use Jiminny\Models\Team;
use Jiminny\Models\User;
use Jiminny\Services\Kiosk\AutomatedReports\AutomatedReportsService;
use Jiminny\Services\Kiosk\AutomatedReports\ReportSort;
use Jiminny\Services\Kiosk\AutomatedReports\ReportSortDirection;
class AutomatedReportsRepository
{
/**
* Create a new automated report
*
* @param array $data
*
* @return AutomatedReport
*/
public function create(array $data): AutomatedReport
{
return AutomatedReport::create($data);
}
/**
* Find an automated report by UUID
*
* @param string $uuid
*
* @return AutomatedReport|null
*/
public function findByUuid(string $uuid): ?AutomatedReport
{
return AutomatedReport::where('uuid', AutomatedReport::toOptimized($uuid))->first();
}
public function findByIdOrUuid(string $idOrUuid): ?AutomatedReport
{
if (is_numeric($idOrUuid)) {
return AutomatedReport::find((int) $idOrUuid);
}
return AutomatedReport::where('uuid', AutomatedReport::toOptimized($idOrUuid))->first();
}
/**
* Retrieve all standard (non-Ask Jiminny) automated reports.
*
* @param string $sortColumn The column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to 'created_at'.
* @param string $sortDirection The sort direction. Allowed values: 'asc', 'desc'. Defaults to 'desc'.
*
* @return Collection<AutomatedReport>
*/
public function getAllStandardReports(
string $sortColumn = 'created_at',
string $sortDirection = 'desc'
): Collection {
return $this->buildSortedQuery($sortColumn, $sortDirection)
->whereNot('type', AutomatedReportsService::TYPE_ASK_JIMINNY)
->get();
}
/**
* Retrieve all Ask Jiminny reports created by the given user.
*
* @param User $user The user whose reports to retrieve.
* @param string $sortColumn The column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to 'created_at'.
* @param string $sortDirection The sort direction. Allowed values: 'asc', 'desc'. Defaults to 'desc'.
*
* @return Collection<AutomatedReport>
*/
public function getAskJiminnyReportsByUser(
User $user,
string $sortColumn = 'created_at',
string $sortDirection = 'desc'
): Collection {
return $this->buildSortedQuery($sortColumn, $sortDirection)
->where('type', AutomatedReportsService::TYPE_ASK_JIMINNY)
->where('created_by', $user->getId())
->get();
}
private function buildSortedQuery(string $sortColumn, string $sortDirection): \Illuminate\Database\Eloquent\Builder
{
$allowedColumns = ['created_by', 'created_at'];
if (! in_array($sortColumn, $allowedColumns)) {
$sortColumn = 'created_at';
}
$sortDirection = strtolower($sortDirection) === 'asc' ? 'asc' : 'desc';
$query = AutomatedReport::query()->with(['creator', 'team']);
if ($sortColumn === 'created_by') {
$query->leftJoin('users', 'users.id', '=', 'automated_reports.created_by')
->orderByRaw("users.name COLLATE utf8mb4_unicode_ci {$sortDirection}")
->select('automated_reports.*');
} else {
$query->orderBy($sortColumn, $sortDirection);
}
return $query;
}
/**
* Get all active and enabled reports with active teams for the specified frequency.
*
* @param string $frequency
*
* @return Collection<AutomatedReport>
*/
public function getActiveReportsByFrequency(string $frequency): Collection
{
return AutomatedReport::where('automated_reports.status', true)
->where('automated_reports.frequency', $frequency)
->join('teams', 'automated_reports.team_id', '=', 'teams.id')
->where('teams.status', Team::STATUS_ACTIVE)
->where(function ($query) {
$query->whereNull('automated_reports.expires_at')
->orWhere('automated_reports.expires_at', '>=', now()->toDateString());
})
->select('automated_reports.*')
->get();
}
/**
* Update an automated report
*
* @param AutomatedReport $report
* @param array $data
*
* @return AutomatedReport
*/
public function update(AutomatedReport $report, array $data): AutomatedReport
{
$report->update($data);
return $report;
}
/**
* Create a new automated report result.
*
* @param array $data The data to create the automated report result with.
*
* @return AutomatedReportResult The newly created automated report result.
*/
public function createResult(array $data): AutomatedReportResult
{
return AutomatedReportResult::create($data);
}
/**
* Find an automated report result by UUID.
*
* @param string $uuid The UUID to find the automated report result with.
*
* @return AutomatedReportResult|null The automated report result if found, otherwise null.
*/
public function findResultByUuid(string $uuid): ?AutomatedReportResult
{
return AutomatedReportResult::where('uuid', AutomatedReportResult::toOptimized($uuid))->first();
}
public function findResultByUuidForUser(string $uuid, User $user): ?AutomatedReportResult
{
return AutomatedReportResult::query()
->where('uuid', AutomatedReportResult::toOptimized($uuid))
->whereHas('report', static function ($query) use ($user): void {
$query->where('team_id', $user->getTeamId())
->where('created_by', $user->getId());
})
->first();
}
public function findChildResult(AutomatedReportResult $result, string $type): ?AutomatedReportResult
{
return AutomatedReportResult::query()
->where('parent_id', $result->getId())
->where('media_type', $type)
->first();
}
public function getGeneratedNotSentResults(): Collection
{
return AutomatedReportResult::query()
->whereNotNull('generated_at')
->whereNull('sent_at')
->where('status', AutomatedReportResult::STATUS_GENERATED)
->whereHas('report')
->with('report')
->get();
}
public function getPaginatedUserReports(
User $user,
ReportSort $sort,
ReportSortDirection $sortDirection,
int $resultsPerPage,
int $page,
?Carbon $fromDate,
?Carbon $toDate,
array $teamIds,
array $reportTypes,
?string $name,
): LengthAwarePaginator {
$query = AutomatedReportResult::query()
->whereNotNull('automated_report_results.generated_at')
->join('automated_reports', 'automated_report_results.report_id', '=', 'automated_reports.id')
->where('automated_reports.team_id', $user->getTeamId())
->whereJsonContains('automated_reports.recipients->users', $user->getId())
->orderByRaw("$sort->value COLLATE utf8mb4_unicode_ci {$sortDirection->value}")
->select('automated_report_results.*')
->with('report.team');
if ($fromDate !== null && $toDate !== null) {
$query->whereBetween('generated_at', [$fromDate, $toDate]);
}
if (! empty($teamIds)) {
$query->where(function ($q) use ($teamIds) {
foreach ($teamIds as $id) {
$q->orWhereJsonContains('automated_reports.groups', $id);
}
});
}
if (! empty($reportTypes)) {
$query->whereIn('automated_reports.type', $reportTypes);
}
if (! empty($name)) {
$query->whereLike('name', "%$name%");
}
return $query->paginate($resultsPerPage, ['*'], 'page', $page);
}
public function countUserReports(User $user): int
{
return AutomatedReportResult::query()
->whereNotNull('generated_at')
->whereNotNull('sent_at')
->whereHas('report', function ($q) use ($user) {
$q->where('team_id', $user->getTeamId())
->whereJsonContains('recipients->users', $user->getId());
})
->count();
}
/**
* Get report IDs for a specific team
*
* @param Team $team
*
* @return \Illuminate\Support\Collection
*/
public function getReportIdsByTeam(Team $team): \Illuminate\Support\Collection
{
return AutomatedReport::where('team_id', $team->getId())->pluck('id');
}
/**
* Get all reports for a specific team
*
* @param Team $team
*
* @return Collection
*/
public function getReportsByTeam(Team $team): Collection
{
return AutomatedReport::where('team_id', $team->getId())->get();
}
/**
* Get all report results for a specific report
*
* @param AutomatedReport $report
*
* @return Collection
*/
public function getResultsByReport(AutomatedReport $report): Collection
{
return $this->getResultsByReportQuery($report)->get();
}
public function getResultsByReportQuery(AutomatedReport $report): Builder
{
return AutomatedReportResult::where('report_id', $report->getId());
}
public function getReportResultsQueryForRetention(Team $team, CarbonImmutable $retentionDate): Builder
{
$reportIds = $this->getReportIdsByTeam($team);
return AutomatedReportResult::query()->whereIn('report_id', $reportIds)
->whereRaw('IFNULL(generated_at, created_at) <= ?', [$retentionDate]);
}
/**
* @param int|null $teamId Optional team ID to filter results
*
* @return \Illuminate\Support\Collection<int, int> Collection of team IDs
*/
public function getTeamIdsWithReportsResults(?int $teamId = null): \Illuminate\Support\Collection
{
$query = DB::table('automated_reports')
->join('teams', 'automated_reports.team_id', '=', 'teams.id')
->select('teams.id')
->distinct();
if ($teamId !== null) {
$query->where('teams.id', $teamId);
}
return $query->pluck('teams.id');
}
}
Project
Project
New File or Directory…
Expand Selected
Collapse All
Options
Hide
app ~/jiminny/app
.circleci
.cursor
.github
.sonarlint
.vscode
.windsurf
app, sources root
Actions
Component
Configuration
Console
Commands
Activities
Analytics
Calendars
Crm
Hubspot
IntegrationApp
AddLayoutEntities.php, class
AutologDelayedCommand.php, class
BullhornCommandAbstract.php, abstract class
BullhornPingCommand.php, class
BullhornSearchCommand.php, class
BullhornSessionCommand.php, class
CheckActivityLoggableCommand.php, final class
CleanDuplicateFieldDataCommand.php, class
FullSyncOpportunityCommand.php, class
LogActivitiesCommand.php, final class
ManageSyncStrategyCommand.php, class
MatchCrmObjectsCommand.php, class
MatchOpportunityActivitiesCommand.php, class
MigrateProvider.php, class
ProcessHubspotObjectsSyncBatches.php, class
PurgeDeletedOpportunitiesCommand.php, class
ResetGovernorLimits.php, class
SendNotLogged.php, class
SetupActivityTypeForFollowUp.php, final class
SetupCloseCrm.php, class
SetupCopperCrm.php, class
SetupCrmCommand.php, abstract class
SetupLayouts.php, class
SyncAccount.php, class
SyncContact.php, class
SyncFieldMetadata.php, class
SyncHubspotActiveDeals.php, class
SyncLead.php, class
SyncObjects.php, class
SyncOpportunitiesMissingFieldDataCommand.php, class
SyncOpportunity.php, class
SyncProfileMetadata.php, class
SyncTeamMetadata.php, class
UpdateOpportunitySpecifications.php, class
DealInsights
Dev
Dialers
DTOs
Elasticsearch
EngagementStats
GeckoExport
Livestream
Mailboxes
Migrate
PlaybackThemes
Playbooks
Playlists
Postmark
ProphetAi
Reports
AutomatedReportsCommand.php, class...
|
10923
|
|
10926
|
217
|
10
|
2026-04-14T09:04:16.081290+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157456081_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
PhpStormFileFditViewNavigateCodelaraveRetactonTool PhpStormFileFditViewNavigateCodelaraveRetactonToolsWindowHelpFV faVsco.s v#11894 on JY-18909-automated-reports-ask-iminny K vProject v(©) ReportController.phpJiminnybeouecommana.ongAutomatedReportsCommand.php= custom.lo9= laravel.logL SF (iminny@localhostD Unit_ ActionsComponentConfigurationM ConsoleM ContractsM7 DomainD DTO• Enums_ Events_ Exceptions→ fixtures_ HelpersD Http>_Integrations> Minteractions• D Jobs> M Activitv> M AiAutomation>_ Audiov _ AutomatedReports©) CreateResultsTest.pl(C) RequestGenerateAs'© RequestGenerateRerC SendReportJobTest.(ch SendRenortMailJobTcallendar!1CrmDeaksksM Mailbox_ Streaming→ Team_ TelephonyD User(c) ImportRecallAlRecordins(c) SqsVisibilityControlTest→I Listeners→]Mal> MModelsM Notifications› M ObserversPoliciesProvidersRepositories> D Rules• _ Services_ Activity_ ActivityProvidersI IAvatarcallendarConference! CinmiM InternallKioskv _ AutomatedReports©) ActivityTypeServi(c) AskJiminnyRepor(c) AskJiminnyRepor(c) AutomatedRenonAulomaleakeporissendcommand.ongC AddLayoutEntities.phpC Team.phpC) AutomatedReportsRepository.php XHs local liminnyalocalnostconsole PRODL console [EUl© AutomatedReportsService.php© CreateHeldActivityEvent.phpe) Track?roviderinstalled-vent.ono¿ consoe STAGINGI© AskJiminnyReportActivityService.phpC ActivityLogged.php© AskJiminnyReportActivityServiceTest.php XC) RequestGenerateAskJiminnyReportJobTest.phpC RequestGenerateAskJiminnyReportJob.phpC RequestGenerateReportJob.phpsrong© AutomatedReportResult.php© AutomatedReport.phpdeclare(strict_types=1);class AutomatedReportsrepos1toryA15 V4namespace Tests Unit\Services K1OSK\AutomatedReports:* dreturn AutomatedReportuse...public function create(array $data): AutomatedReport...1s estuase• Run 'AskJiminnyReportActi... (PHPUnit)":8: Debua 'AskJiminnvReportActi... (PHPUnit)'* Find an automated report by UUID* dparam string suuld* drecurn Aurondredkeoorcnuupublic function findByUuid(string Suuid): ?AutomatedReportRun 'AskJiminnyReportActi... (PHPUnit) with Coverageiearch;Modify Run Configuration..private ElasticActivityRepository&Mock0bject SelasticRepository:1o usagesprivate LoggerinterfacexMock0bject slogger9 usagesprivate AskJ1minnykeporcAculVityservice sservice;return AutomatedReport::where('uuid', AutomatedReport:: to0ptimized(Suuid))->firstO:29 GT>protected function setUp: voidt...hTusdyeIl usagespublic function findByldorUu1d(string s1d0rUu1d): ?AutomatedReportprivate function makeFilter(string $key. ?string $value): SearchFiltif (is numeric(sidorluid)) "o usaeesprivate function makeUserO: User&Mock0bjecti...h8 usagesreturn AutomatedReport::where('uvid', AutomatedReport::to0ptimized(Sid0rUuid))->firstO;private function makesavedsearch(array sf1lters): SearchxMockobjectpubLic tunction tescbecAculvityLasrorsavedsearchkecurnstas: voldt* Retrieve all standard (non-Ask Jaminny) automated reports.100 M ›public function testGetActivityIdsForSavedSearchReturnsEmptyWhenNoRd* dparam string ssortcolumnThe column to sort by. Allowed values: 'created_by', 'created_at'. 118 % >* dparam string SsortDirection The sort direction. Allowed values:"asc, "desc". veraults to "des-oe157 % >public function testGetActivityldsFilters0utDateFiltersO: void..public function testGetActivityldsFilters0utClosingPeriodDateFilter.* drerurn couuectonsaurondredredor*/12 usagespublic function getAllStandardReportsstring SsortColumn ="created at',string SsortDirection = 'desc': Collection 1...185 VA Npublic function testGetActiv1tyldsHandLesArrayr1lters: vo1di.206 D >-224225puDLic tunction tescbecAculvltylashandlesscalarrilters: voldt.**pubtao runctaontestGetActivitvIdsPassesNonZeroSequenceNumberToDisarpuser - ochis->makeusert,SsavedSearch = sthis->makeSavedSearch(u.D:* Recrieve aLL Ask Jaminny reporus created Dy the given user.* dparam usersuserIne user wnose reporus to retrieve.*oparan scring esortho lunnThe column to sort by. Allowed values: 'created_by', 'created_at'. 232* Oparam string $sortDirection The sort direction. Allowed values: 'asc', 'desc'. Defaults to 'dez 233* dreturn Collection<AutomatedReport>229230231234255256sfilterset = Sthis->createMock originalClassName: FilterDefinitioncsthis->activitysearch->method constraint: 'getArrayr1lterKeys')->w14 usagesScapturedcriteria = null;ninn S->acu v Vsearch-sexoersth S=>oncelu.ui→>iecno constragetOnDemandPageFilterSet')1 eall-›il ~ Accept File *+ k (X Reject file (Griterta 2orätilesia) use ($filWinasun ch00 2.12.21: A new version is avallable. View chancelod loday 10:33., 0labl: Support Daily • in 2h 56 m100% [2Tue 14 Apr 12:04:15• RequestGenerateAskJiminnyReportJobTest vCascadeFixing ReportControlleAutomated Report Ma© Automated Report !+D ..nand.php#L211 and add validation with logs insideohu Lolla Leunevot tscomlahus pnorL409-419Let me read the current state of the command file first.kead Automareakeporscommand.ongIcan see the user's approach - processsing LeReport already exists trom my earlier work but getReportByld iswhat's being used in processReports. Ineed to implement getReportById properly with validation + logs, and addthe reposilory method. Let me also check the Illuminate Support collection impon situation:Searched use Illuminate (Support Collection in app/Console/Commands/Reports/AutomatedReportsCommand.ph.Now implement both changes - the repository method and the getReportByld method with proper validation:trror while editing automacedkeportscommand. pnpkead Automateakeportscommana.ongThe file is now only 140 lines - the user removed the processSingleReport/warnIfNotApplicableForSchedulemetnoas. Now "l implement oot changes:AutomatedReportsCommand.php+57-1Now add findByldorUuid to the repository:• AutomatedReportsRepository.phpAlso fix the import order Collection should be before the models alphabetically):• AutomatedReportsCommand.php+1 -1• AutomatedReportsCommand.php+1-1Done. summary or changes:AutomatedReportsRepository::findByld0rUuid() (AutomatedReportsRepository-php:47-54):• Numeric string → find() by int ID• Non-numeric → UUID lookup via toOptimized()Both use withTrashed() so soft-deleted reports are findable manuallygetReportById() (AutomatedReportsCommand.php:135-194) - checks all conditions that getActiveReportsByFrequency entorces, loceine a warnine to the loe channel ane orintne a warn lo the terminal tor eaeh violation,out stlll returns the revort so orocessina continuesCheckBehaviour on failNot toundwarnino oo + terminal warn. returns emory collection skios processino))nactive statuswarning log + terminal warn, continuesTeam not activewarnind llod + terminal warn. continuesExoiredwarning log + terminal warn, continuesrrecuency woulentrun toodyinfo log + terminal warn, continuesWGAl mAsk anything (&+L)+ <› Code.Claude Sonnet 4.6winasun leams225:1uir-oia 4 spaces...
|
NULL
|
-4312757663376816869
|
NULL
|
click
|
ocr
|
NULL
|
PhpStormFileFditViewNavigateCodelaraveRetactonTool PhpStormFileFditViewNavigateCodelaraveRetactonToolsWindowHelpFV faVsco.s v#11894 on JY-18909-automated-reports-ask-iminny K vProject v(©) ReportController.phpJiminnybeouecommana.ongAutomatedReportsCommand.php= custom.lo9= laravel.logL SF (iminny@localhostD Unit_ ActionsComponentConfigurationM ConsoleM ContractsM7 DomainD DTO• Enums_ Events_ Exceptions→ fixtures_ HelpersD Http>_Integrations> Minteractions• D Jobs> M Activitv> M AiAutomation>_ Audiov _ AutomatedReports©) CreateResultsTest.pl(C) RequestGenerateAs'© RequestGenerateRerC SendReportJobTest.(ch SendRenortMailJobTcallendar!1CrmDeaksksM Mailbox_ Streaming→ Team_ TelephonyD User(c) ImportRecallAlRecordins(c) SqsVisibilityControlTest→I Listeners→]Mal> MModelsM Notifications› M ObserversPoliciesProvidersRepositories> D Rules• _ Services_ Activity_ ActivityProvidersI IAvatarcallendarConference! CinmiM InternallKioskv _ AutomatedReports©) ActivityTypeServi(c) AskJiminnyRepor(c) AskJiminnyRepor(c) AutomatedRenonAulomaleakeporissendcommand.ongC AddLayoutEntities.phpC Team.phpC) AutomatedReportsRepository.php XHs local liminnyalocalnostconsole PRODL console [EUl© AutomatedReportsService.php© CreateHeldActivityEvent.phpe) Track?roviderinstalled-vent.ono¿ consoe STAGINGI© AskJiminnyReportActivityService.phpC ActivityLogged.php© AskJiminnyReportActivityServiceTest.php XC) RequestGenerateAskJiminnyReportJobTest.phpC RequestGenerateAskJiminnyReportJob.phpC RequestGenerateReportJob.phpsrong© AutomatedReportResult.php© AutomatedReport.phpdeclare(strict_types=1);class AutomatedReportsrepos1toryA15 V4namespace Tests Unit\Services K1OSK\AutomatedReports:* dreturn AutomatedReportuse...public function create(array $data): AutomatedReport...1s estuase• Run 'AskJiminnyReportActi... (PHPUnit)":8: Debua 'AskJiminnvReportActi... (PHPUnit)'* Find an automated report by UUID* dparam string suuld* drecurn Aurondredkeoorcnuupublic function findByUuid(string Suuid): ?AutomatedReportRun 'AskJiminnyReportActi... (PHPUnit) with Coverageiearch;Modify Run Configuration..private ElasticActivityRepository&Mock0bject SelasticRepository:1o usagesprivate LoggerinterfacexMock0bject slogger9 usagesprivate AskJ1minnykeporcAculVityservice sservice;return AutomatedReport::where('uuid', AutomatedReport:: to0ptimized(Suuid))->firstO:29 GT>protected function setUp: voidt...hTusdyeIl usagespublic function findByldorUu1d(string s1d0rUu1d): ?AutomatedReportprivate function makeFilter(string $key. ?string $value): SearchFiltif (is numeric(sidorluid)) "o usaeesprivate function makeUserO: User&Mock0bjecti...h8 usagesreturn AutomatedReport::where('uvid', AutomatedReport::to0ptimized(Sid0rUuid))->firstO;private function makesavedsearch(array sf1lters): SearchxMockobjectpubLic tunction tescbecAculvityLasrorsavedsearchkecurnstas: voldt* Retrieve all standard (non-Ask Jaminny) automated reports.100 M ›public function testGetActivityIdsForSavedSearchReturnsEmptyWhenNoRd* dparam string ssortcolumnThe column to sort by. Allowed values: 'created_by', 'created_at'. 118 % >* dparam string SsortDirection The sort direction. Allowed values:"asc, "desc". veraults to "des-oe157 % >public function testGetActivityldsFilters0utDateFiltersO: void..public function testGetActivityldsFilters0utClosingPeriodDateFilter.* drerurn couuectonsaurondredredor*/12 usagespublic function getAllStandardReportsstring SsortColumn ="created at',string SsortDirection = 'desc': Collection 1...185 VA Npublic function testGetActiv1tyldsHandLesArrayr1lters: vo1di.206 D >-224225puDLic tunction tescbecAculvltylashandlesscalarrilters: voldt.**pubtao runctaontestGetActivitvIdsPassesNonZeroSequenceNumberToDisarpuser - ochis->makeusert,SsavedSearch = sthis->makeSavedSearch(u.D:* Recrieve aLL Ask Jaminny reporus created Dy the given user.* dparam usersuserIne user wnose reporus to retrieve.*oparan scring esortho lunnThe column to sort by. Allowed values: 'created_by', 'created_at'. 232* Oparam string $sortDirection The sort direction. Allowed values: 'asc', 'desc'. Defaults to 'dez 233* dreturn Collection<AutomatedReport>229230231234255256sfilterset = Sthis->createMock originalClassName: FilterDefinitioncsthis->activitysearch->method constraint: 'getArrayr1lterKeys')->w14 usagesScapturedcriteria = null;ninn S->acu v Vsearch-sexoersth S=>oncelu.ui→>iecno constragetOnDemandPageFilterSet')1 eall-›il ~ Accept File *+ k (X Reject file (Griterta 2orätilesia) use ($filWinasun ch00 2.12.21: A new version is avallable. View chancelod loday 10:33., 0labl: Support Daily • in 2h 56 m100% [2Tue 14 Apr 12:04:15• RequestGenerateAskJiminnyReportJobTest vCascadeFixing ReportControlleAutomated Report Ma© Automated Report !+D ..nand.php#L211 and add validation with logs insideohu Lolla Leunevot tscomlahus pnorL409-419Let me read the current state of the command file first.kead Automareakeporscommand.ongIcan see the user's approach - processsing LeReport already exists trom my earlier work but getReportByld iswhat's being used in processReports. Ineed to implement getReportById properly with validation + logs, and addthe reposilory method. Let me also check the Illuminate Support collection impon situation:Searched use Illuminate (Support Collection in app/Console/Commands/Reports/AutomatedReportsCommand.ph.Now implement both changes - the repository method and the getReportByld method with proper validation:trror while editing automacedkeportscommand. pnpkead Automateakeportscommana.ongThe file is now only 140 lines - the user removed the processSingleReport/warnIfNotApplicableForSchedulemetnoas. Now "l implement oot changes:AutomatedReportsCommand.php+57-1Now add findByldorUuid to the repository:• AutomatedReportsRepository.phpAlso fix the import order Collection should be before the models alphabetically):• AutomatedReportsCommand.php+1 -1• AutomatedReportsCommand.php+1-1Done. summary or changes:AutomatedReportsRepository::findByld0rUuid() (AutomatedReportsRepository-php:47-54):• Numeric string → find() by int ID• Non-numeric → UUID lookup via toOptimized()Both use withTrashed() so soft-deleted reports are findable manuallygetReportById() (AutomatedReportsCommand.php:135-194) - checks all conditions that getActiveReportsByFrequency entorces, loceine a warnine to the loe channel ane orintne a warn lo the terminal tor eaeh violation,out stlll returns the revort so orocessina continuesCheckBehaviour on failNot toundwarnino oo + terminal warn. returns emory collection skios processino))nactive statuswarning log + terminal warn, continuesTeam not activewarnind llod + terminal warn. continuesExoiredwarning log + terminal warn, continuesrrecuency woulentrun toodyinfo log + terminal warn, continuesWGAl mAsk anything (&+L)+ <› Code.Claude Sonnet 4.6winasun leams225:1uir-oia 4 spaces...
|
NULL
|
|
10927
|
217
|
11
|
2026-04-14T09:04:18.121929+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157458121_m2.jpg...
|
PhpStorm
|
faVsco.js – AskJiminnyReportActivityServiceTest.ph faVsco.js – AskJiminnyReportActivityServiceTest.php...
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
Project: faVsco.js, menu
#11894 on JY-18909-automa Project: faVsco.js, menu
#11894 on JY-18909-automated-reports-ask-jiminny, menu
Start Listening for PHP Debug Connections
RequestGenerateAskJiminnyReportJobTest
Run 'RequestGenerateAskJiminnyReportJobTest'
Debug 'RequestGenerateAskJiminnyReportJobTest'
More Actions
JetBrains AI
Search Everywhere
IDE and Project Settings
Sync Changes
Hide This Notification
Code changed:
Hide
2
3
Previous Highlighted Error
Next Highlighted Error
<?php
declare(strict_types=1);
namespace Tests\Unit\Services\Kiosk\AutomatedReports;
use Jiminny\Component\ActivitySearch\FilterDefinition\ActivityActualDate;
use Jiminny\Component\ActivitySearch\FilterDefinition\ActivityUpdatedDate;
use Jiminny\Component\ActivitySearch\FilterDefinition\DealInsights\ClosingPeriodFilter;
use Jiminny\Component\ActivitySearch\FilterDefinitionCollection;
use Jiminny\Component\ActivitySearch\Service\ActivitySearch;
use Jiminny\Models\Activity\Search;
use Jiminny\Models\Activity\SearchFilter;
use Jiminny\Models\User;
use Jiminny\Repositories\ElasticActivityRepository;
use Jiminny\Services\Kiosk\AutomatedReports\AskJiminnyReportActivityService;
use Jiminny\VO\Repository\OnDemandActivitySearch\Criteria;
use PHPUnit\Framework\MockObject\MockObject;
use PHPUnit\Framework\TestCase;
use Psr\Log\LoggerInterface;
class AskJiminnyReportActivityServiceTest extends TestCase
{
private ActivitySearch&MockObject $activitySearch;
private ElasticActivityRepository&MockObject $elasticRepository;
private LoggerInterface&MockObject $logger;
private AskJiminnyReportActivityService $service;
protected function setUp(): void
{
$this->activitySearch = $this->createMock(ActivitySearch::class);
$this->elasticRepository = $this->createMock(ElasticActivityRepository::class);
$this->logger = $this->createMock(LoggerInterface::class);
$this->service = new AskJiminnyReportActivityService(
$this->activitySearch,
$this->elasticRepository,
$this->logger,
);
}
private function makeFilter(string $key, ?string $value): SearchFilter&MockObject
{
$filter = $this->createMock(SearchFilter::class);
$filter->method('getFilterProperty')->willReturn($key);
$filter->method('getFilterValue')->willReturn($value);
return $filter;
}
private function makeUser(): User&MockObject
{
$tz = new \DateTimeZone('UTC');
$user = $this->createMock(User::class);
$user->method('getTimezone')->willReturn($tz);
$user->method('getId')->willReturn(1);
$user->method('getUuid')->willReturn('user-uuid');
return $user;
}
private function makeSavedSearch(array $filters): Search&MockObject
{
$savedSearch = $this->createMock(Search::class);
$savedSearch->method('getId')->willReturn(42);
$savedSearch->method('getFilters')->willReturn(new \Illuminate\Support\LazyCollection($filters));
return $savedSearch;
}
public function testGetActivityIdsForSavedSearchReturnsIds(): void
{
$user = $this->makeUser();
$savedSearch = $this->makeSavedSearch([]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->expects($this->once())
->method('getArrayFilterKeys')
->with($user)
->willReturn([]);
$this->activitySearch->expects($this->once())
->method('getOnDemandPageFilterSet')
->willReturn($filterSet);
$this->elasticRepository->expects($this->once())
->method('onDemandSearchIdsOnly')
->willReturn(['id-1', 'id-2', 'id-3']);
$this->logger->expects($this->once())
->method('info')
->with('[AskJiminnyReport] Fetched activity IDs for saved search');
$result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertEquals(['id-1', 'id-2', 'id-3'], $result);
}
public function testGetActivityIdsForSavedSearchReturnsEmptyWhenNoResults(): void
{
$user = $this->makeUser();
$savedSearch = $this->makeSavedSearch([]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn([]);
$this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn([]);
$this->logger->expects($this->once())->method('info');
$result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertEmpty($result);
}
public function testGetActivityIdsFiltersOutDateFilters(): void
{
$user = $this->makeUser();
$nonDateFilter = $this->makeFilter('owner_id', '123');
$startDateFilter = $this->makeFilter(ActivityActualDate::PARAM_START_DATE, '2025-01-01 00:00:00');
$endDateFilter = $this->makeFilter(ActivityActualDate::PARAM_END_DATE, '2025-01-31 23:59:59');
$updatedFromFilter = $this->makeFilter(ActivityUpdatedDate::PARAM_UPDATED_FROM, '2025-01-01 00:00:00');
$updatedToFilter = $this->makeFilter(ActivityUpdatedDate::PARAM_UPDATED_TO, '2025-01-31 23:59:59');
$savedSearch = $this->makeSavedSearch([
$nonDateFilter,
$startDateFilter,
$endDateFilter,
$updatedFromFilter,
$updatedToFilter,
]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn([]);
$capturedCriteria = null;
$this->activitySearch->expects($this->once())
->method('getOnDemandPageFilterSet')
->willReturnCallback(function (Criteria $criteria) use ($filterSet, &$capturedCriteria) {
$capturedCriteria = $criteria;
return $filterSet;
});
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn([]);
$this->logger->method('info');
$this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertNotNull($capturedCriteria);
}
public function testGetActivityIdsFiltersOutClosingPeriodDateFilters(): void
{
$user = $this->makeUser();
$closingStartFilter = $this->makeFilter(ClosingPeriodFilter::KEY_START_DATE, '2025-01-01');
$closingEndFilter = $this->makeFilter(ClosingPeriodFilter::KEY_END_DATE, '2025-03-31');
$regularFilter = $this->makeFilter('rep_id', '99');
$savedSearch = $this->makeSavedSearch([
$closingStartFilter,
$closingEndFilter,
$regularFilter,
]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn([]);
$this->activitySearch->expects($this->once())
->method('getOnDemandPageFilterSet')
->willReturn($filterSet);
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['id-1']);
$this->logger->method('info');
$result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertEquals(['id-1'], $result);
}
public function testGetActivityIdsHandlesArrayFilters(): void
{
$user = $this->makeUser();
$filter1 = $this->makeFilter('outcome', 'positive');
$filter2 = $this->makeFilter('outcome', 'negative');
$savedSearch = $this->makeSavedSearch([$filter1, $filter2]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn(['outcome']);
$this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['id-1']);
$this->logger->method('info');
$result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertEquals(['id-1'], $result);
}
public function testGetActivityIdsHandlesScalarFilters(): void
{
$user = $this->makeUser();
$filter = $this->makeFilter('direction', 'inbound');
$savedSearch = $this->makeSavedSearch([$filter]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn([]);
$this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['id-5']);
$this->logger->method('info');
$result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertEquals(['id-5'], $result);
}
public function testGetActivityIdsPassesNonZeroSequenceNumberToDisableFirstRequestDefaults(): void
{
$user = $this->makeUser();
$savedSearch = $this->makeSavedSearch([]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn([]);
$capturedCriteria = null;
$this->activitySearch->expects($this->once())
->method('getOnDemandPageFilterSet')
->willReturnCallback(function (Criteria $criteria) use ($filterSet, &$capturedCriteria) {
$capturedCriteria = $criteria;
return $filterSet;
});
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn([]);
$this->logger->method('info');
$this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertNotNull($capturedCriteria);
$this->assertFalse($capturedCriteria->isFirstRequest());
}
public function testGetActivityIdsLogsWithCorrectContext(): void
{
$user = $this->makeUser();
$savedSearch = $this->makeSavedSearch([]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn([]);
$this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['a', 'b']);
$this->logger->expects($this->once())
->method('info')
->with(
'[AskJiminnyReport] Fetched activity IDs for saved search',
$this->callback(fn ($context) => $context['saved_search_id'] === 42
&& $context['user_id'] === 1
&& $context['activity_count'] === 2)
);
$this->service->getActivityIdsForSavedSearch($savedSearch, $user);
}
}
Sync Changes
Hide This Notification
Code changed:
Hide
15
4
Previous Highlighted Error
Next Highlighted Error
<?php
declare(strict_types=1);
namespace Jiminny\Repositories;
use Carbon\CarbonImmutable;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Support\Carbon;
use Illuminate\Database\Eloquent\Collection;
use Illuminate\Pagination\LengthAwarePaginator;
use Illuminate\Support\Facades\DB;
use Jiminny\Models\AutomatedReport;
use Jiminny\Models\AutomatedReportResult;
use Jiminny\Models\Team;
use Jiminny\Models\User;
use Jiminny\Services\Kiosk\AutomatedReports\AutomatedReportsService;
use Jiminny\Services\Kiosk\AutomatedReports\ReportSort;
use Jiminny\Services\Kiosk\AutomatedReports\ReportSortDirection;
class AutomatedReportsRepository
{
/**
* Create a new automated report
*
* @param array $data
*
* @return AutomatedReport
*/
public function create(array $data): AutomatedReport
{
return AutomatedReport::create($data);
}
/**
* Find an automated report by UUID
*
* @param string $uuid
*
* @return AutomatedReport|null
*/
public function findByUuid(string $uuid): ?AutomatedReport
{
return AutomatedReport::where('uuid', AutomatedReport::toOptimized($uuid))->first();
}
public function findByIdOrUuid(string $idOrUuid): ?AutomatedReport
{
if (is_numeric($idOrUuid)) {
return AutomatedReport::find((int) $idOrUuid);
}
return AutomatedReport::where('uuid', AutomatedReport::toOptimized($idOrUuid))->first();
}
/**
* Retrieve all standard (non-Ask Jiminny) automated reports.
*
* @param string $sortColumn The column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to 'created_at'.
* @param string $sortDirection The sort direction. Allowed values: 'asc', 'desc'. Defaults to 'desc'.
*
* @return Collection<AutomatedReport>
*/
public function getAllStandardReports(
string $sortColumn = 'created_at',
string $sortDirection = 'desc'
): Collection {
return $this->buildSortedQuery($sortColumn, $sortDirection)
->whereNot('type', AutomatedReportsService::TYPE_ASK_JIMINNY)
->get();
}
/**
* Retrieve all Ask Jiminny reports created by the given user.
*
* @param User $user The user whose reports to retrieve.
* @param string $sortColumn The column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to 'created_at'.
* @param string $sortDirection The sort direction. Allowed values: 'asc', 'desc'. Defaults to 'desc'.
*
* @return Collection<AutomatedReport>
*/
public function getAskJiminnyReportsByUser(
User $user,
string $sortColumn = 'created_at',
string $sortDirection = 'desc'
): Collection {
return $this->buildSortedQuery($sortColumn, $sortDirection)
->where('type', AutomatedReportsService::TYPE_ASK_JIMINNY)
->where('created_by', $user->getId())
->get();
}
private function buildSortedQuery(string $sortColumn, string $sortDirection): \Illuminate\Database\Eloquent\Builder
{
$allowedColumns = ['created_by', 'created_at'];
if (! in_array($sortColumn, $allowedColumns)) {
$sortColumn = 'created_at';
}
$sortDirection = strtolower($sortDirection) === 'asc' ? 'asc' : 'desc';
$query = AutomatedReport::query()->with(['creator', 'team']);
if ($sortColumn === 'created_by') {
$query->leftJoin('users', 'users.id', '=', 'automated_reports.created_by')
->orderByRaw("users.name COLLATE utf8mb4_unicode_ci {$sortDirection}")
->select('automated_reports.*');
} else {
$query->orderBy($sortColumn, $sortDirection);
}
return $query;
}
/**
* Get all active and enabled reports with active teams for the specified frequency.
*
* @param string $frequency
*
* @return Collection<AutomatedReport>
*/
public function getActiveReportsByFrequency(string $frequency): Collection
{
return AutomatedReport::where('automated_reports.status', true)
->where('automated_reports.frequency', $frequency)
->join('teams', 'automated_reports.team_id', '=', 'teams.id')
->where('teams.status', Team::STATUS_ACTIVE)
->where(function ($query) {
$query->whereNull('automated_reports.expires_at')
->orWhere('automated_reports.expires_at', '>=', now()->toDateString());
})
->select('automated_reports.*')
->get();
}
/**
* Update an automated report
*
* @param AutomatedReport $report
* @param array $data
*
* @return AutomatedReport
*/
public function update(AutomatedReport $report, array $data): AutomatedReport
{
$report->update($data);
return $report;
}
/**
* Create a new automated report result.
*
* @param array $data The data to create the automated report result with.
*
* @return AutomatedReportResult The newly created automated report result.
*/
public function createResult(array $data): AutomatedReportResult
{
return AutomatedReportResult::create($data);
}
/**
* Find an automated report result by UUID.
*
* @param string $uuid The UUID to find the automated report result with.
*
* @return AutomatedReportResult|null The automated report result if found, otherwise null.
*/
public function findResultByUuid(string $uuid): ?AutomatedReportResult
{
return AutomatedReportResult::where('uuid', AutomatedReportResult::toOptimized($uuid))->first();
}
public function findResultByUuidForUser(string $uuid, User $user): ?AutomatedReportResult
{
return AutomatedReportResult::query()
->where('uuid', AutomatedReportResult::toOptimized($uuid))
->whereHas('report', static function ($query) use ($user): void {
$query->where('team_id', $user->getTeamId())
->where('created_by', $user->getId());
})
->first();
}
public function findChildResult(AutomatedReportResult $result, string $type): ?AutomatedReportResult
{
return AutomatedReportResult::query()
->where('parent_id', $result->getId())
->where('media_type', $type)
->first();
}
public function getGeneratedNotSentResults(): Collection
{
return AutomatedReportResult::query()
->whereNotNull('generated_at')
->whereNull('sent_at')
->where('status', AutomatedReportResult::STATUS_GENERATED)
->whereHas('report')
->with('report')
->get();
}
public function getPaginatedUserReports(
User $user,
ReportSort $sort,
ReportSortDirection $sortDirection,
int $resultsPerPage,
int $page,
?Carbon $fromDate,
?Carbon $toDate,
array $teamIds,
array $reportTypes,
?string $name,
): LengthAwarePaginator {
$query = AutomatedReportResult::query()
->whereNotNull('automated_report_results.generated_at')
->join('automated_reports', 'automated_report_results.report_id', '=', 'automated_reports.id')
->where('automated_reports.team_id', $user->getTeamId())
->whereJsonContains('automated_reports.recipients->users', $user->getId())
->orderByRaw("$sort->value COLLATE utf8mb4_unicode_ci {$sortDirection->value}")
->select('automated_report_results.*')
->with('report.team');
if ($fromDate !== null && $toDate !== null) {
$query->whereBetween('generated_at', [$fromDate, $toDate]);
}
if (! empty($teamIds)) {
$query->where(function ($q) use ($teamIds) {
foreach ($teamIds as $id) {
$q->orWhereJsonContains('automated_reports.groups', $id);
}
});
}
if (! empty($reportTypes)) {
$query->whereIn('automated_reports.type', $reportTypes);
}
if (! empty($name)) {
$query->whereLike('name', "%$name%");
}
return $query->paginate($resultsPerPage, ['*'], 'page', $page);
}
public function countUserReports(User $user): int
{
return AutomatedReportResult::query()
->whereNotNull('generated_at')
->whereNotNull('sent_at')
->whereHas('report', function ($q) use ($user) {
$q->where('team_id', $user->getTeamId())
->whereJsonContains('recipients->users', $user->getId());
})
->count();
}
/**
* Get report IDs for a specific team
*
* @param Team $team
*
* @return \Illuminate\Support\Collection
*/
public function getReportIdsByTeam(Team $team): \Illuminate\Support\Collection
{
return AutomatedReport::where('team_id', $team->getId())->pluck('id');
}
/**
* Get all reports for a specific team
*
* @param Team $team
*
* @return Collection
*/
public function getReportsByTeam(Team $team): Collection
{
return AutomatedReport::where('team_id', $team->getId())->get();
}
/**
* Get all report results for a specific report
*
* @param AutomatedReport $report
*
* @return Collection
*/
public function getResultsByReport(AutomatedReport $report): Collection
{
return $this->getResultsByReportQuery($report)->get();
}
public function getResultsByReportQuery(AutomatedReport $report): Builder
{
return AutomatedReportResult::where('report_id', $report->getId());
}
public function getReportResultsQueryForRetention(Team $team, CarbonImmutable $retentionDate): Builder
{
$reportIds = $this->getReportIdsByTeam($team);
return AutomatedReportResult::query()->whereIn('report_id', $reportIds)
->whereRaw('IFNULL(generated_at, created_at) <= ?', [$retentionDate]);
}
/**
* @param int|null $teamId Optional team ID to filter results
*
* @return \Illuminate\Support\Collection<int, int> Collection of team IDs
*/
public function getTeamIdsWithReportsResults(?int $teamId = null): \Illuminate\Support\Collection
{
$query = DB::table('automated_reports')
->join('teams', 'automated_reports.team_id', '=', 'teams.id')
->select('teams.id')
->distinct();
if ($teamId !== null) {
$query->where('teams.id', $teamId);
}
return $query->pluck('teams.id');
}
}
Project
Project
New File or Directory…
Expand Selected...
|
[{"role":"AXButton","text" [{"role":"AXButton","text":"Project: faVsco.js, menu","depth":5,"bounds":{"left":0.03046875,"top":0.017361112,"width":0.0453125,"height":0.022222223},"help_text":"~/jiminny/app","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"#11894 on JY-18909-automated-reports-ask-jiminny, menu","depth":5,"bounds":{"left":0.07578125,"top":0.017361112,"width":0.14960937,"height":0.022222223},"help_text":"Pull request #11894 exists for current branch JY-18909-automated-reports-ask-jiminny, but local branch is out of sync with remote","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Start Listening for PHP Debug Connections","depth":5,"bounds":{"left":0.76171875,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"RequestGenerateAskJiminnyReportJobTest","depth":6,"bounds":{"left":0.7796875,"top":0.017361112,"width":0.12109375,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Run 'RequestGenerateAskJiminnyReportJobTest'","depth":6,"bounds":{"left":0.9007813,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Debug 'RequestGenerateAskJiminnyReportJobTest'","depth":6,"bounds":{"left":0.9140625,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"More Actions","depth":6,"bounds":{"left":0.9273437,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"JetBrains AI","depth":5,"bounds":{"left":0.96015626,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Search Everywhere","depth":5,"bounds":{"left":0.9734375,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"IDE and Project Settings","depth":5,"bounds":{"left":0.9867188,"top":0.017361112,"width":0.013281226,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Sync Changes","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide This Notification","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Code changed:","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.049609374,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"2","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.009375,"height":0.0},"role_description":"text"},{"role":"AXStaticText","text":"3","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.009375,"height":0.0},"role_description":"text"},{"role":"AXButton","text":"Previous Highlighted Error","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.00859375,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Next Highlighted Error","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.008203125,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"<?php\n\ndeclare(strict_types=1);\n\nnamespace Tests\\Unit\\Services\\Kiosk\\AutomatedReports;\n\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinition\\ActivityActualDate;\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinition\\ActivityUpdatedDate;\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinition\\DealInsights\\ClosingPeriodFilter;\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinitionCollection;\nuse Jiminny\\Component\\ActivitySearch\\Service\\ActivitySearch;\nuse Jiminny\\Models\\Activity\\Search;\nuse Jiminny\\Models\\Activity\\SearchFilter;\nuse Jiminny\\Models\\User;\nuse Jiminny\\Repositories\\ElasticActivityRepository;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AskJiminnyReportActivityService;\nuse Jiminny\\VO\\Repository\\OnDemandActivitySearch\\Criteria;\nuse PHPUnit\\Framework\\MockObject\\MockObject;\nuse PHPUnit\\Framework\\TestCase;\nuse Psr\\Log\\LoggerInterface;\n\nclass AskJiminnyReportActivityServiceTest extends TestCase\n{\n private ActivitySearch&MockObject $activitySearch;\n private ElasticActivityRepository&MockObject $elasticRepository;\n private LoggerInterface&MockObject $logger;\n private AskJiminnyReportActivityService $service;\n\n protected function setUp(): void\n {\n $this->activitySearch = $this->createMock(ActivitySearch::class);\n $this->elasticRepository = $this->createMock(ElasticActivityRepository::class);\n $this->logger = $this->createMock(LoggerInterface::class);\n\n $this->service = new AskJiminnyReportActivityService(\n $this->activitySearch,\n $this->elasticRepository,\n $this->logger,\n );\n }\n\n private function makeFilter(string $key, ?string $value): SearchFilter&MockObject\n {\n $filter = $this->createMock(SearchFilter::class);\n $filter->method('getFilterProperty')->willReturn($key);\n $filter->method('getFilterValue')->willReturn($value);\n\n return $filter;\n }\n\n private function makeUser(): User&MockObject\n {\n $tz = new \\DateTimeZone('UTC');\n $user = $this->createMock(User::class);\n $user->method('getTimezone')->willReturn($tz);\n $user->method('getId')->willReturn(1);\n $user->method('getUuid')->willReturn('user-uuid');\n\n return $user;\n }\n\n private function makeSavedSearch(array $filters): Search&MockObject\n {\n $savedSearch = $this->createMock(Search::class);\n $savedSearch->method('getId')->willReturn(42);\n $savedSearch->method('getFilters')->willReturn(new \\Illuminate\\Support\\LazyCollection($filters));\n\n return $savedSearch;\n }\n\n public function testGetActivityIdsForSavedSearchReturnsIds(): void\n {\n $user = $this->makeUser();\n $savedSearch = $this->makeSavedSearch([]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->expects($this->once())\n ->method('getArrayFilterKeys')\n ->with($user)\n ->willReturn([]);\n\n $this->activitySearch->expects($this->once())\n ->method('getOnDemandPageFilterSet')\n ->willReturn($filterSet);\n\n $this->elasticRepository->expects($this->once())\n ->method('onDemandSearchIdsOnly')\n ->willReturn(['id-1', 'id-2', 'id-3']);\n\n $this->logger->expects($this->once())\n ->method('info')\n ->with('[AskJiminnyReport] Fetched activity IDs for saved search');\n\n $result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertEquals(['id-1', 'id-2', 'id-3'], $result);\n }\n\n public function testGetActivityIdsForSavedSearchReturnsEmptyWhenNoResults(): void\n {\n $user = $this->makeUser();\n $savedSearch = $this->makeSavedSearch([]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn([]);\n $this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn([]);\n\n $this->logger->expects($this->once())->method('info');\n\n $result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertEmpty($result);\n }\n\n public function testGetActivityIdsFiltersOutDateFilters(): void\n {\n $user = $this->makeUser();\n\n $nonDateFilter = $this->makeFilter('owner_id', '123');\n $startDateFilter = $this->makeFilter(ActivityActualDate::PARAM_START_DATE, '2025-01-01 00:00:00');\n $endDateFilter = $this->makeFilter(ActivityActualDate::PARAM_END_DATE, '2025-01-31 23:59:59');\n $updatedFromFilter = $this->makeFilter(ActivityUpdatedDate::PARAM_UPDATED_FROM, '2025-01-01 00:00:00');\n $updatedToFilter = $this->makeFilter(ActivityUpdatedDate::PARAM_UPDATED_TO, '2025-01-31 23:59:59');\n\n $savedSearch = $this->makeSavedSearch([\n $nonDateFilter,\n $startDateFilter,\n $endDateFilter,\n $updatedFromFilter,\n $updatedToFilter,\n ]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn([]);\n\n $capturedCriteria = null;\n $this->activitySearch->expects($this->once())\n ->method('getOnDemandPageFilterSet')\n ->willReturnCallback(function (Criteria $criteria) use ($filterSet, &$capturedCriteria) {\n $capturedCriteria = $criteria;\n\n return $filterSet;\n });\n\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn([]);\n $this->logger->method('info');\n\n $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertNotNull($capturedCriteria);\n }\n\n public function testGetActivityIdsFiltersOutClosingPeriodDateFilters(): void\n {\n $user = $this->makeUser();\n\n $closingStartFilter = $this->makeFilter(ClosingPeriodFilter::KEY_START_DATE, '2025-01-01');\n $closingEndFilter = $this->makeFilter(ClosingPeriodFilter::KEY_END_DATE, '2025-03-31');\n $regularFilter = $this->makeFilter('rep_id', '99');\n\n $savedSearch = $this->makeSavedSearch([\n $closingStartFilter,\n $closingEndFilter,\n $regularFilter,\n ]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn([]);\n $this->activitySearch->expects($this->once())\n ->method('getOnDemandPageFilterSet')\n ->willReturn($filterSet);\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['id-1']);\n $this->logger->method('info');\n\n $result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertEquals(['id-1'], $result);\n }\n\n public function testGetActivityIdsHandlesArrayFilters(): void\n {\n $user = $this->makeUser();\n\n $filter1 = $this->makeFilter('outcome', 'positive');\n $filter2 = $this->makeFilter('outcome', 'negative');\n\n $savedSearch = $this->makeSavedSearch([$filter1, $filter2]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn(['outcome']);\n $this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['id-1']);\n $this->logger->method('info');\n\n $result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertEquals(['id-1'], $result);\n }\n\n public function testGetActivityIdsHandlesScalarFilters(): void\n {\n $user = $this->makeUser();\n\n $filter = $this->makeFilter('direction', 'inbound');\n $savedSearch = $this->makeSavedSearch([$filter]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn([]);\n $this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['id-5']);\n $this->logger->method('info');\n\n $result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertEquals(['id-5'], $result);\n }\n\n public function testGetActivityIdsPassesNonZeroSequenceNumberToDisableFirstRequestDefaults(): void\n {\n $user = $this->makeUser();\n $savedSearch = $this->makeSavedSearch([]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn([]);\n\n $capturedCriteria = null;\n $this->activitySearch->expects($this->once())\n ->method('getOnDemandPageFilterSet')\n ->willReturnCallback(function (Criteria $criteria) use ($filterSet, &$capturedCriteria) {\n $capturedCriteria = $criteria;\n\n return $filterSet;\n });\n\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn([]);\n $this->logger->method('info');\n\n $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertNotNull($capturedCriteria);\n $this->assertFalse($capturedCriteria->isFirstRequest());\n }\n\n public function testGetActivityIdsLogsWithCorrectContext(): void\n {\n $user = $this->makeUser();\n $savedSearch = $this->makeSavedSearch([]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn([]);\n $this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['a', 'b']);\n\n $this->logger->expects($this->once())\n ->method('info')\n ->with(\n '[AskJiminnyReport] Fetched activity IDs for saved search',\n $this->callback(fn ($context) => $context['saved_search_id'] === 42\n && $context['user_id'] === 1\n && $context['activity_count'] === 2)\n );\n\n $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n }\n}","depth":4,"bounds":{"left":0.490625,"top":0.12777779,"width":0.3347656,"height":0.8722222},"value":"<?php\n\ndeclare(strict_types=1);\n\nnamespace Tests\\Unit\\Services\\Kiosk\\AutomatedReports;\n\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinition\\ActivityActualDate;\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinition\\ActivityUpdatedDate;\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinition\\DealInsights\\ClosingPeriodFilter;\nuse Jiminny\\Component\\ActivitySearch\\FilterDefinitionCollection;\nuse Jiminny\\Component\\ActivitySearch\\Service\\ActivitySearch;\nuse Jiminny\\Models\\Activity\\Search;\nuse Jiminny\\Models\\Activity\\SearchFilter;\nuse Jiminny\\Models\\User;\nuse Jiminny\\Repositories\\ElasticActivityRepository;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AskJiminnyReportActivityService;\nuse Jiminny\\VO\\Repository\\OnDemandActivitySearch\\Criteria;\nuse PHPUnit\\Framework\\MockObject\\MockObject;\nuse PHPUnit\\Framework\\TestCase;\nuse Psr\\Log\\LoggerInterface;\n\nclass AskJiminnyReportActivityServiceTest extends TestCase\n{\n private ActivitySearch&MockObject $activitySearch;\n private ElasticActivityRepository&MockObject $elasticRepository;\n private LoggerInterface&MockObject $logger;\n private AskJiminnyReportActivityService $service;\n\n protected function setUp(): void\n {\n $this->activitySearch = $this->createMock(ActivitySearch::class);\n $this->elasticRepository = $this->createMock(ElasticActivityRepository::class);\n $this->logger = $this->createMock(LoggerInterface::class);\n\n $this->service = new AskJiminnyReportActivityService(\n $this->activitySearch,\n $this->elasticRepository,\n $this->logger,\n );\n }\n\n private function makeFilter(string $key, ?string $value): SearchFilter&MockObject\n {\n $filter = $this->createMock(SearchFilter::class);\n $filter->method('getFilterProperty')->willReturn($key);\n $filter->method('getFilterValue')->willReturn($value);\n\n return $filter;\n }\n\n private function makeUser(): User&MockObject\n {\n $tz = new \\DateTimeZone('UTC');\n $user = $this->createMock(User::class);\n $user->method('getTimezone')->willReturn($tz);\n $user->method('getId')->willReturn(1);\n $user->method('getUuid')->willReturn('user-uuid');\n\n return $user;\n }\n\n private function makeSavedSearch(array $filters): Search&MockObject\n {\n $savedSearch = $this->createMock(Search::class);\n $savedSearch->method('getId')->willReturn(42);\n $savedSearch->method('getFilters')->willReturn(new \\Illuminate\\Support\\LazyCollection($filters));\n\n return $savedSearch;\n }\n\n public function testGetActivityIdsForSavedSearchReturnsIds(): void\n {\n $user = $this->makeUser();\n $savedSearch = $this->makeSavedSearch([]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->expects($this->once())\n ->method('getArrayFilterKeys')\n ->with($user)\n ->willReturn([]);\n\n $this->activitySearch->expects($this->once())\n ->method('getOnDemandPageFilterSet')\n ->willReturn($filterSet);\n\n $this->elasticRepository->expects($this->once())\n ->method('onDemandSearchIdsOnly')\n ->willReturn(['id-1', 'id-2', 'id-3']);\n\n $this->logger->expects($this->once())\n ->method('info')\n ->with('[AskJiminnyReport] Fetched activity IDs for saved search');\n\n $result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertEquals(['id-1', 'id-2', 'id-3'], $result);\n }\n\n public function testGetActivityIdsForSavedSearchReturnsEmptyWhenNoResults(): void\n {\n $user = $this->makeUser();\n $savedSearch = $this->makeSavedSearch([]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn([]);\n $this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn([]);\n\n $this->logger->expects($this->once())->method('info');\n\n $result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertEmpty($result);\n }\n\n public function testGetActivityIdsFiltersOutDateFilters(): void\n {\n $user = $this->makeUser();\n\n $nonDateFilter = $this->makeFilter('owner_id', '123');\n $startDateFilter = $this->makeFilter(ActivityActualDate::PARAM_START_DATE, '2025-01-01 00:00:00');\n $endDateFilter = $this->makeFilter(ActivityActualDate::PARAM_END_DATE, '2025-01-31 23:59:59');\n $updatedFromFilter = $this->makeFilter(ActivityUpdatedDate::PARAM_UPDATED_FROM, '2025-01-01 00:00:00');\n $updatedToFilter = $this->makeFilter(ActivityUpdatedDate::PARAM_UPDATED_TO, '2025-01-31 23:59:59');\n\n $savedSearch = $this->makeSavedSearch([\n $nonDateFilter,\n $startDateFilter,\n $endDateFilter,\n $updatedFromFilter,\n $updatedToFilter,\n ]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn([]);\n\n $capturedCriteria = null;\n $this->activitySearch->expects($this->once())\n ->method('getOnDemandPageFilterSet')\n ->willReturnCallback(function (Criteria $criteria) use ($filterSet, &$capturedCriteria) {\n $capturedCriteria = $criteria;\n\n return $filterSet;\n });\n\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn([]);\n $this->logger->method('info');\n\n $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertNotNull($capturedCriteria);\n }\n\n public function testGetActivityIdsFiltersOutClosingPeriodDateFilters(): void\n {\n $user = $this->makeUser();\n\n $closingStartFilter = $this->makeFilter(ClosingPeriodFilter::KEY_START_DATE, '2025-01-01');\n $closingEndFilter = $this->makeFilter(ClosingPeriodFilter::KEY_END_DATE, '2025-03-31');\n $regularFilter = $this->makeFilter('rep_id', '99');\n\n $savedSearch = $this->makeSavedSearch([\n $closingStartFilter,\n $closingEndFilter,\n $regularFilter,\n ]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn([]);\n $this->activitySearch->expects($this->once())\n ->method('getOnDemandPageFilterSet')\n ->willReturn($filterSet);\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['id-1']);\n $this->logger->method('info');\n\n $result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertEquals(['id-1'], $result);\n }\n\n public function testGetActivityIdsHandlesArrayFilters(): void\n {\n $user = $this->makeUser();\n\n $filter1 = $this->makeFilter('outcome', 'positive');\n $filter2 = $this->makeFilter('outcome', 'negative');\n\n $savedSearch = $this->makeSavedSearch([$filter1, $filter2]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn(['outcome']);\n $this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['id-1']);\n $this->logger->method('info');\n\n $result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertEquals(['id-1'], $result);\n }\n\n public function testGetActivityIdsHandlesScalarFilters(): void\n {\n $user = $this->makeUser();\n\n $filter = $this->makeFilter('direction', 'inbound');\n $savedSearch = $this->makeSavedSearch([$filter]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn([]);\n $this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['id-5']);\n $this->logger->method('info');\n\n $result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertEquals(['id-5'], $result);\n }\n\n public function testGetActivityIdsPassesNonZeroSequenceNumberToDisableFirstRequestDefaults(): void\n {\n $user = $this->makeUser();\n $savedSearch = $this->makeSavedSearch([]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn([]);\n\n $capturedCriteria = null;\n $this->activitySearch->expects($this->once())\n ->method('getOnDemandPageFilterSet')\n ->willReturnCallback(function (Criteria $criteria) use ($filterSet, &$capturedCriteria) {\n $capturedCriteria = $criteria;\n\n return $filterSet;\n });\n\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn([]);\n $this->logger->method('info');\n\n $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n\n $this->assertNotNull($capturedCriteria);\n $this->assertFalse($capturedCriteria->isFirstRequest());\n }\n\n public function testGetActivityIdsLogsWithCorrectContext(): void\n {\n $user = $this->makeUser();\n $savedSearch = $this->makeSavedSearch([]);\n\n $filterSet = $this->createMock(FilterDefinitionCollection::class);\n\n $this->activitySearch->method('getArrayFilterKeys')->willReturn([]);\n $this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);\n $this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['a', 'b']);\n\n $this->logger->expects($this->once())\n ->method('info')\n ->with(\n '[AskJiminnyReport] Fetched activity IDs for saved search',\n $this->callback(fn ($context) => $context['saved_search_id'] === 42\n && $context['user_id'] === 1\n && $context['activity_count'] === 2)\n );\n\n $this->service->getActivityIdsForSavedSearch($savedSearch, $user);\n }\n}","role_description":"text entry area","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Sync Changes","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide This Notification","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Code changed:","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.049609374,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"15","depth":4,"bounds":{"left":0.4234375,"top":0.1736111,"width":0.011328125,"height":0.013194445},"role_description":"text"},{"role":"AXStaticText","text":"4","depth":4,"bounds":{"left":0.43710938,"top":0.1736111,"width":0.009375,"height":0.013194445},"role_description":"text"},{"role":"AXButton","text":"Previous Highlighted Error","depth":4,"bounds":{"left":0.4484375,"top":0.17222223,"width":0.00859375,"height":0.015972223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Next Highlighted Error","depth":4,"bounds":{"left":0.45703125,"top":0.17222223,"width":0.008203125,"height":0.015972223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"<?php\n\ndeclare(strict_types=1);\n\nnamespace Jiminny\\Repositories;\n\nuse Carbon\\CarbonImmutable;\nuse Illuminate\\Database\\Eloquent\\Builder;\nuse Illuminate\\Support\\Carbon;\nuse Illuminate\\Database\\Eloquent\\Collection;\nuse Illuminate\\Pagination\\LengthAwarePaginator;\nuse Illuminate\\Support\\Facades\\DB;\nuse Jiminny\\Models\\AutomatedReport;\nuse Jiminny\\Models\\AutomatedReportResult;\nuse Jiminny\\Models\\Team;\nuse Jiminny\\Models\\User;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AutomatedReportsService;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\ReportSort;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\ReportSortDirection;\n\nclass AutomatedReportsRepository\n{\n /**\n * Create a new automated report\n *\n * @param array $data\n *\n * @return AutomatedReport\n */\n public function create(array $data): AutomatedReport\n {\n return AutomatedReport::create($data);\n }\n\n /**\n * Find an automated report by UUID\n *\n * @param string $uuid\n *\n * @return AutomatedReport|null\n */\n public function findByUuid(string $uuid): ?AutomatedReport\n {\n return AutomatedReport::where('uuid', AutomatedReport::toOptimized($uuid))->first();\n }\n\n public function findByIdOrUuid(string $idOrUuid): ?AutomatedReport\n {\n if (is_numeric($idOrUuid)) {\n return AutomatedReport::find((int) $idOrUuid);\n }\n\n return AutomatedReport::where('uuid', AutomatedReport::toOptimized($idOrUuid))->first();\n }\n\n /**\n * Retrieve all standard (non-Ask Jiminny) automated reports.\n *\n * @param string $sortColumn The column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to 'created_at'.\n * @param string $sortDirection The sort direction. Allowed values: 'asc', 'desc'. Defaults to 'desc'.\n *\n * @return Collection<AutomatedReport>\n */\n public function getAllStandardReports(\n string $sortColumn = 'created_at',\n string $sortDirection = 'desc'\n ): Collection {\n return $this->buildSortedQuery($sortColumn, $sortDirection)\n ->whereNot('type', AutomatedReportsService::TYPE_ASK_JIMINNY)\n ->get();\n }\n\n /**\n * Retrieve all Ask Jiminny reports created by the given user.\n *\n * @param User $user The user whose reports to retrieve.\n * @param string $sortColumn The column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to 'created_at'.\n * @param string $sortDirection The sort direction. Allowed values: 'asc', 'desc'. Defaults to 'desc'.\n *\n * @return Collection<AutomatedReport>\n */\n public function getAskJiminnyReportsByUser(\n User $user,\n string $sortColumn = 'created_at',\n string $sortDirection = 'desc'\n ): Collection {\n return $this->buildSortedQuery($sortColumn, $sortDirection)\n ->where('type', AutomatedReportsService::TYPE_ASK_JIMINNY)\n ->where('created_by', $user->getId())\n ->get();\n }\n\n private function buildSortedQuery(string $sortColumn, string $sortDirection): \\Illuminate\\Database\\Eloquent\\Builder\n {\n $allowedColumns = ['created_by', 'created_at'];\n if (! in_array($sortColumn, $allowedColumns)) {\n $sortColumn = 'created_at';\n }\n\n $sortDirection = strtolower($sortDirection) === 'asc' ? 'asc' : 'desc';\n\n $query = AutomatedReport::query()->with(['creator', 'team']);\n\n if ($sortColumn === 'created_by') {\n $query->leftJoin('users', 'users.id', '=', 'automated_reports.created_by')\n ->orderByRaw(\"users.name COLLATE utf8mb4_unicode_ci {$sortDirection}\")\n ->select('automated_reports.*');\n } else {\n $query->orderBy($sortColumn, $sortDirection);\n }\n\n return $query;\n }\n\n /**\n * Get all active and enabled reports with active teams for the specified frequency.\n *\n * @param string $frequency\n *\n * @return Collection<AutomatedReport>\n */\n public function getActiveReportsByFrequency(string $frequency): Collection\n {\n return AutomatedReport::where('automated_reports.status', true)\n ->where('automated_reports.frequency', $frequency)\n ->join('teams', 'automated_reports.team_id', '=', 'teams.id')\n ->where('teams.status', Team::STATUS_ACTIVE)\n ->where(function ($query) {\n $query->whereNull('automated_reports.expires_at')\n ->orWhere('automated_reports.expires_at', '>=', now()->toDateString());\n })\n ->select('automated_reports.*')\n ->get();\n }\n\n /**\n * Update an automated report\n *\n * @param AutomatedReport $report\n * @param array $data\n *\n * @return AutomatedReport\n */\n public function update(AutomatedReport $report, array $data): AutomatedReport\n {\n $report->update($data);\n\n return $report;\n }\n\n /**\n * Create a new automated report result.\n *\n * @param array $data The data to create the automated report result with.\n *\n * @return AutomatedReportResult The newly created automated report result.\n */\n public function createResult(array $data): AutomatedReportResult\n {\n return AutomatedReportResult::create($data);\n }\n\n /**\n * Find an automated report result by UUID.\n *\n * @param string $uuid The UUID to find the automated report result with.\n *\n * @return AutomatedReportResult|null The automated report result if found, otherwise null.\n */\n public function findResultByUuid(string $uuid): ?AutomatedReportResult\n {\n return AutomatedReportResult::where('uuid', AutomatedReportResult::toOptimized($uuid))->first();\n }\n\n public function findResultByUuidForUser(string $uuid, User $user): ?AutomatedReportResult\n {\n return AutomatedReportResult::query()\n ->where('uuid', AutomatedReportResult::toOptimized($uuid))\n ->whereHas('report', static function ($query) use ($user): void {\n $query->where('team_id', $user->getTeamId())\n ->where('created_by', $user->getId());\n })\n ->first();\n }\n\n public function findChildResult(AutomatedReportResult $result, string $type): ?AutomatedReportResult\n {\n return AutomatedReportResult::query()\n ->where('parent_id', $result->getId())\n ->where('media_type', $type)\n ->first();\n }\n\n public function getGeneratedNotSentResults(): Collection\n {\n return AutomatedReportResult::query()\n ->whereNotNull('generated_at')\n ->whereNull('sent_at')\n ->where('status', AutomatedReportResult::STATUS_GENERATED)\n ->whereHas('report')\n ->with('report')\n ->get();\n }\n\n public function getPaginatedUserReports(\n User $user,\n ReportSort $sort,\n ReportSortDirection $sortDirection,\n int $resultsPerPage,\n int $page,\n ?Carbon $fromDate,\n ?Carbon $toDate,\n array $teamIds,\n array $reportTypes,\n ?string $name,\n ): LengthAwarePaginator {\n $query = AutomatedReportResult::query()\n ->whereNotNull('automated_report_results.generated_at')\n ->join('automated_reports', 'automated_report_results.report_id', '=', 'automated_reports.id')\n ->where('automated_reports.team_id', $user->getTeamId())\n ->whereJsonContains('automated_reports.recipients->users', $user->getId())\n ->orderByRaw(\"$sort->value COLLATE utf8mb4_unicode_ci {$sortDirection->value}\")\n ->select('automated_report_results.*')\n ->with('report.team');\n\n if ($fromDate !== null && $toDate !== null) {\n $query->whereBetween('generated_at', [$fromDate, $toDate]);\n }\n\n if (! empty($teamIds)) {\n $query->where(function ($q) use ($teamIds) {\n foreach ($teamIds as $id) {\n $q->orWhereJsonContains('automated_reports.groups', $id);\n }\n });\n }\n\n if (! empty($reportTypes)) {\n $query->whereIn('automated_reports.type', $reportTypes);\n }\n\n if (! empty($name)) {\n $query->whereLike('name', \"%$name%\");\n }\n\n return $query->paginate($resultsPerPage, ['*'], 'page', $page);\n }\n\n public function countUserReports(User $user): int\n {\n return AutomatedReportResult::query()\n ->whereNotNull('generated_at')\n ->whereNotNull('sent_at')\n ->whereHas('report', function ($q) use ($user) {\n $q->where('team_id', $user->getTeamId())\n ->whereJsonContains('recipients->users', $user->getId());\n })\n ->count();\n }\n\n /**\n * Get report IDs for a specific team\n *\n * @param Team $team\n *\n * @return \\Illuminate\\Support\\Collection\n */\n public function getReportIdsByTeam(Team $team): \\Illuminate\\Support\\Collection\n {\n return AutomatedReport::where('team_id', $team->getId())->pluck('id');\n }\n\n /**\n * Get all reports for a specific team\n *\n * @param Team $team\n *\n * @return Collection\n */\n public function getReportsByTeam(Team $team): Collection\n {\n return AutomatedReport::where('team_id', $team->getId())->get();\n }\n\n /**\n * Get all report results for a specific report\n *\n * @param AutomatedReport $report\n *\n * @return Collection\n */\n public function getResultsByReport(AutomatedReport $report): Collection\n {\n return $this->getResultsByReportQuery($report)->get();\n }\n\n public function getResultsByReportQuery(AutomatedReport $report): Builder\n {\n return AutomatedReportResult::where('report_id', $report->getId());\n }\n\n public function getReportResultsQueryForRetention(Team $team, CarbonImmutable $retentionDate): Builder\n {\n $reportIds = $this->getReportIdsByTeam($team);\n\n return AutomatedReportResult::query()->whereIn('report_id', $reportIds)\n ->whereRaw('IFNULL(generated_at, created_at) <= ?', [$retentionDate]);\n }\n\n /**\n * @param int|null $teamId Optional team ID to filter results\n *\n * @return \\Illuminate\\Support\\Collection<int, int> Collection of team IDs\n */\n public function getTeamIdsWithReportsResults(?int $teamId = null): \\Illuminate\\Support\\Collection\n {\n $query = DB::table('automated_reports')\n ->join('teams', 'automated_reports.team_id', '=', 'teams.id')\n ->select('teams.id')\n ->distinct();\n\n if ($teamId !== null) {\n $query->where('teams.id', $teamId);\n }\n\n return $query->pluck('teams.id');\n }\n}","depth":4,"bounds":{"left":0.15234375,"top":0.0,"width":0.39882812,"height":1.0},"value":"<?php\n\ndeclare(strict_types=1);\n\nnamespace Jiminny\\Repositories;\n\nuse Carbon\\CarbonImmutable;\nuse Illuminate\\Database\\Eloquent\\Builder;\nuse Illuminate\\Support\\Carbon;\nuse Illuminate\\Database\\Eloquent\\Collection;\nuse Illuminate\\Pagination\\LengthAwarePaginator;\nuse Illuminate\\Support\\Facades\\DB;\nuse Jiminny\\Models\\AutomatedReport;\nuse Jiminny\\Models\\AutomatedReportResult;\nuse Jiminny\\Models\\Team;\nuse Jiminny\\Models\\User;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AutomatedReportsService;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\ReportSort;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\ReportSortDirection;\n\nclass AutomatedReportsRepository\n{\n /**\n * Create a new automated report\n *\n * @param array $data\n *\n * @return AutomatedReport\n */\n public function create(array $data): AutomatedReport\n {\n return AutomatedReport::create($data);\n }\n\n /**\n * Find an automated report by UUID\n *\n * @param string $uuid\n *\n * @return AutomatedReport|null\n */\n public function findByUuid(string $uuid): ?AutomatedReport\n {\n return AutomatedReport::where('uuid', AutomatedReport::toOptimized($uuid))->first();\n }\n\n public function findByIdOrUuid(string $idOrUuid): ?AutomatedReport\n {\n if (is_numeric($idOrUuid)) {\n return AutomatedReport::find((int) $idOrUuid);\n }\n\n return AutomatedReport::where('uuid', AutomatedReport::toOptimized($idOrUuid))->first();\n }\n\n /**\n * Retrieve all standard (non-Ask Jiminny) automated reports.\n *\n * @param string $sortColumn The column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to 'created_at'.\n * @param string $sortDirection The sort direction. Allowed values: 'asc', 'desc'. Defaults to 'desc'.\n *\n * @return Collection<AutomatedReport>\n */\n public function getAllStandardReports(\n string $sortColumn = 'created_at',\n string $sortDirection = 'desc'\n ): Collection {\n return $this->buildSortedQuery($sortColumn, $sortDirection)\n ->whereNot('type', AutomatedReportsService::TYPE_ASK_JIMINNY)\n ->get();\n }\n\n /**\n * Retrieve all Ask Jiminny reports created by the given user.\n *\n * @param User $user The user whose reports to retrieve.\n * @param string $sortColumn The column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to 'created_at'.\n * @param string $sortDirection The sort direction. Allowed values: 'asc', 'desc'. Defaults to 'desc'.\n *\n * @return Collection<AutomatedReport>\n */\n public function getAskJiminnyReportsByUser(\n User $user,\n string $sortColumn = 'created_at',\n string $sortDirection = 'desc'\n ): Collection {\n return $this->buildSortedQuery($sortColumn, $sortDirection)\n ->where('type', AutomatedReportsService::TYPE_ASK_JIMINNY)\n ->where('created_by', $user->getId())\n ->get();\n }\n\n private function buildSortedQuery(string $sortColumn, string $sortDirection): \\Illuminate\\Database\\Eloquent\\Builder\n {\n $allowedColumns = ['created_by', 'created_at'];\n if (! in_array($sortColumn, $allowedColumns)) {\n $sortColumn = 'created_at';\n }\n\n $sortDirection = strtolower($sortDirection) === 'asc' ? 'asc' : 'desc';\n\n $query = AutomatedReport::query()->with(['creator', 'team']);\n\n if ($sortColumn === 'created_by') {\n $query->leftJoin('users', 'users.id', '=', 'automated_reports.created_by')\n ->orderByRaw(\"users.name COLLATE utf8mb4_unicode_ci {$sortDirection}\")\n ->select('automated_reports.*');\n } else {\n $query->orderBy($sortColumn, $sortDirection);\n }\n\n return $query;\n }\n\n /**\n * Get all active and enabled reports with active teams for the specified frequency.\n *\n * @param string $frequency\n *\n * @return Collection<AutomatedReport>\n */\n public function getActiveReportsByFrequency(string $frequency): Collection\n {\n return AutomatedReport::where('automated_reports.status', true)\n ->where('automated_reports.frequency', $frequency)\n ->join('teams', 'automated_reports.team_id', '=', 'teams.id')\n ->where('teams.status', Team::STATUS_ACTIVE)\n ->where(function ($query) {\n $query->whereNull('automated_reports.expires_at')\n ->orWhere('automated_reports.expires_at', '>=', now()->toDateString());\n })\n ->select('automated_reports.*')\n ->get();\n }\n\n /**\n * Update an automated report\n *\n * @param AutomatedReport $report\n * @param array $data\n *\n * @return AutomatedReport\n */\n public function update(AutomatedReport $report, array $data): AutomatedReport\n {\n $report->update($data);\n\n return $report;\n }\n\n /**\n * Create a new automated report result.\n *\n * @param array $data The data to create the automated report result with.\n *\n * @return AutomatedReportResult The newly created automated report result.\n */\n public function createResult(array $data): AutomatedReportResult\n {\n return AutomatedReportResult::create($data);\n }\n\n /**\n * Find an automated report result by UUID.\n *\n * @param string $uuid The UUID to find the automated report result with.\n *\n * @return AutomatedReportResult|null The automated report result if found, otherwise null.\n */\n public function findResultByUuid(string $uuid): ?AutomatedReportResult\n {\n return AutomatedReportResult::where('uuid', AutomatedReportResult::toOptimized($uuid))->first();\n }\n\n public function findResultByUuidForUser(string $uuid, User $user): ?AutomatedReportResult\n {\n return AutomatedReportResult::query()\n ->where('uuid', AutomatedReportResult::toOptimized($uuid))\n ->whereHas('report', static function ($query) use ($user): void {\n $query->where('team_id', $user->getTeamId())\n ->where('created_by', $user->getId());\n })\n ->first();\n }\n\n public function findChildResult(AutomatedReportResult $result, string $type): ?AutomatedReportResult\n {\n return AutomatedReportResult::query()\n ->where('parent_id', $result->getId())\n ->where('media_type', $type)\n ->first();\n }\n\n public function getGeneratedNotSentResults(): Collection\n {\n return AutomatedReportResult::query()\n ->whereNotNull('generated_at')\n ->whereNull('sent_at')\n ->where('status', AutomatedReportResult::STATUS_GENERATED)\n ->whereHas('report')\n ->with('report')\n ->get();\n }\n\n public function getPaginatedUserReports(\n User $user,\n ReportSort $sort,\n ReportSortDirection $sortDirection,\n int $resultsPerPage,\n int $page,\n ?Carbon $fromDate,\n ?Carbon $toDate,\n array $teamIds,\n array $reportTypes,\n ?string $name,\n ): LengthAwarePaginator {\n $query = AutomatedReportResult::query()\n ->whereNotNull('automated_report_results.generated_at')\n ->join('automated_reports', 'automated_report_results.report_id', '=', 'automated_reports.id')\n ->where('automated_reports.team_id', $user->getTeamId())\n ->whereJsonContains('automated_reports.recipients->users', $user->getId())\n ->orderByRaw(\"$sort->value COLLATE utf8mb4_unicode_ci {$sortDirection->value}\")\n ->select('automated_report_results.*')\n ->with('report.team');\n\n if ($fromDate !== null && $toDate !== null) {\n $query->whereBetween('generated_at', [$fromDate, $toDate]);\n }\n\n if (! empty($teamIds)) {\n $query->where(function ($q) use ($teamIds) {\n foreach ($teamIds as $id) {\n $q->orWhereJsonContains('automated_reports.groups', $id);\n }\n });\n }\n\n if (! empty($reportTypes)) {\n $query->whereIn('automated_reports.type', $reportTypes);\n }\n\n if (! empty($name)) {\n $query->whereLike('name', \"%$name%\");\n }\n\n return $query->paginate($resultsPerPage, ['*'], 'page', $page);\n }\n\n public function countUserReports(User $user): int\n {\n return AutomatedReportResult::query()\n ->whereNotNull('generated_at')\n ->whereNotNull('sent_at')\n ->whereHas('report', function ($q) use ($user) {\n $q->where('team_id', $user->getTeamId())\n ->whereJsonContains('recipients->users', $user->getId());\n })\n ->count();\n }\n\n /**\n * Get report IDs for a specific team\n *\n * @param Team $team\n *\n * @return \\Illuminate\\Support\\Collection\n */\n public function getReportIdsByTeam(Team $team): \\Illuminate\\Support\\Collection\n {\n return AutomatedReport::where('team_id', $team->getId())->pluck('id');\n }\n\n /**\n * Get all reports for a specific team\n *\n * @param Team $team\n *\n * @return Collection\n */\n public function getReportsByTeam(Team $team): Collection\n {\n return AutomatedReport::where('team_id', $team->getId())->get();\n }\n\n /**\n * Get all report results for a specific report\n *\n * @param AutomatedReport $report\n *\n * @return Collection\n */\n public function getResultsByReport(AutomatedReport $report): Collection\n {\n return $this->getResultsByReportQuery($report)->get();\n }\n\n public function getResultsByReportQuery(AutomatedReport $report): Builder\n {\n return AutomatedReportResult::where('report_id', $report->getId());\n }\n\n public function getReportResultsQueryForRetention(Team $team, CarbonImmutable $retentionDate): Builder\n {\n $reportIds = $this->getReportIdsByTeam($team);\n\n return AutomatedReportResult::query()->whereIn('report_id', $reportIds)\n ->whereRaw('IFNULL(generated_at, created_at) <= ?', [$retentionDate]);\n }\n\n /**\n * @param int|null $teamId Optional team ID to filter results\n *\n * @return \\Illuminate\\Support\\Collection<int, int> Collection of team IDs\n */\n public function getTeamIdsWithReportsResults(?int $teamId = null): \\Illuminate\\Support\\Collection\n {\n $query = DB::table('automated_reports')\n ->join('teams', 'automated_reports.team_id', '=', 'teams.id')\n ->select('teams.id')\n ->distinct();\n\n if ($teamId !== null) {\n $query->where('teams.id', $teamId);\n }\n\n return $query->pluck('teams.id');\n }\n}","role_description":"text entry area","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Project","depth":3,"role_description":"text"},{"role":"AXButton","text":"Project","depth":3,"bounds":{"left":0.0140625,"top":0.041666668,"width":0.028515626,"height":0.021527778},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"New File or Directory…","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Expand Selected","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false}]...
|
710421231581632929
|
-8276790037575160396
|
visual_change
|
accessibility
|
NULL
|
Project: faVsco.js, menu
#11894 on JY-18909-automa Project: faVsco.js, menu
#11894 on JY-18909-automated-reports-ask-jiminny, menu
Start Listening for PHP Debug Connections
RequestGenerateAskJiminnyReportJobTest
Run 'RequestGenerateAskJiminnyReportJobTest'
Debug 'RequestGenerateAskJiminnyReportJobTest'
More Actions
JetBrains AI
Search Everywhere
IDE and Project Settings
Sync Changes
Hide This Notification
Code changed:
Hide
2
3
Previous Highlighted Error
Next Highlighted Error
<?php
declare(strict_types=1);
namespace Tests\Unit\Services\Kiosk\AutomatedReports;
use Jiminny\Component\ActivitySearch\FilterDefinition\ActivityActualDate;
use Jiminny\Component\ActivitySearch\FilterDefinition\ActivityUpdatedDate;
use Jiminny\Component\ActivitySearch\FilterDefinition\DealInsights\ClosingPeriodFilter;
use Jiminny\Component\ActivitySearch\FilterDefinitionCollection;
use Jiminny\Component\ActivitySearch\Service\ActivitySearch;
use Jiminny\Models\Activity\Search;
use Jiminny\Models\Activity\SearchFilter;
use Jiminny\Models\User;
use Jiminny\Repositories\ElasticActivityRepository;
use Jiminny\Services\Kiosk\AutomatedReports\AskJiminnyReportActivityService;
use Jiminny\VO\Repository\OnDemandActivitySearch\Criteria;
use PHPUnit\Framework\MockObject\MockObject;
use PHPUnit\Framework\TestCase;
use Psr\Log\LoggerInterface;
class AskJiminnyReportActivityServiceTest extends TestCase
{
private ActivitySearch&MockObject $activitySearch;
private ElasticActivityRepository&MockObject $elasticRepository;
private LoggerInterface&MockObject $logger;
private AskJiminnyReportActivityService $service;
protected function setUp(): void
{
$this->activitySearch = $this->createMock(ActivitySearch::class);
$this->elasticRepository = $this->createMock(ElasticActivityRepository::class);
$this->logger = $this->createMock(LoggerInterface::class);
$this->service = new AskJiminnyReportActivityService(
$this->activitySearch,
$this->elasticRepository,
$this->logger,
);
}
private function makeFilter(string $key, ?string $value): SearchFilter&MockObject
{
$filter = $this->createMock(SearchFilter::class);
$filter->method('getFilterProperty')->willReturn($key);
$filter->method('getFilterValue')->willReturn($value);
return $filter;
}
private function makeUser(): User&MockObject
{
$tz = new \DateTimeZone('UTC');
$user = $this->createMock(User::class);
$user->method('getTimezone')->willReturn($tz);
$user->method('getId')->willReturn(1);
$user->method('getUuid')->willReturn('user-uuid');
return $user;
}
private function makeSavedSearch(array $filters): Search&MockObject
{
$savedSearch = $this->createMock(Search::class);
$savedSearch->method('getId')->willReturn(42);
$savedSearch->method('getFilters')->willReturn(new \Illuminate\Support\LazyCollection($filters));
return $savedSearch;
}
public function testGetActivityIdsForSavedSearchReturnsIds(): void
{
$user = $this->makeUser();
$savedSearch = $this->makeSavedSearch([]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->expects($this->once())
->method('getArrayFilterKeys')
->with($user)
->willReturn([]);
$this->activitySearch->expects($this->once())
->method('getOnDemandPageFilterSet')
->willReturn($filterSet);
$this->elasticRepository->expects($this->once())
->method('onDemandSearchIdsOnly')
->willReturn(['id-1', 'id-2', 'id-3']);
$this->logger->expects($this->once())
->method('info')
->with('[AskJiminnyReport] Fetched activity IDs for saved search');
$result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertEquals(['id-1', 'id-2', 'id-3'], $result);
}
public function testGetActivityIdsForSavedSearchReturnsEmptyWhenNoResults(): void
{
$user = $this->makeUser();
$savedSearch = $this->makeSavedSearch([]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn([]);
$this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn([]);
$this->logger->expects($this->once())->method('info');
$result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertEmpty($result);
}
public function testGetActivityIdsFiltersOutDateFilters(): void
{
$user = $this->makeUser();
$nonDateFilter = $this->makeFilter('owner_id', '123');
$startDateFilter = $this->makeFilter(ActivityActualDate::PARAM_START_DATE, '2025-01-01 00:00:00');
$endDateFilter = $this->makeFilter(ActivityActualDate::PARAM_END_DATE, '2025-01-31 23:59:59');
$updatedFromFilter = $this->makeFilter(ActivityUpdatedDate::PARAM_UPDATED_FROM, '2025-01-01 00:00:00');
$updatedToFilter = $this->makeFilter(ActivityUpdatedDate::PARAM_UPDATED_TO, '2025-01-31 23:59:59');
$savedSearch = $this->makeSavedSearch([
$nonDateFilter,
$startDateFilter,
$endDateFilter,
$updatedFromFilter,
$updatedToFilter,
]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn([]);
$capturedCriteria = null;
$this->activitySearch->expects($this->once())
->method('getOnDemandPageFilterSet')
->willReturnCallback(function (Criteria $criteria) use ($filterSet, &$capturedCriteria) {
$capturedCriteria = $criteria;
return $filterSet;
});
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn([]);
$this->logger->method('info');
$this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertNotNull($capturedCriteria);
}
public function testGetActivityIdsFiltersOutClosingPeriodDateFilters(): void
{
$user = $this->makeUser();
$closingStartFilter = $this->makeFilter(ClosingPeriodFilter::KEY_START_DATE, '2025-01-01');
$closingEndFilter = $this->makeFilter(ClosingPeriodFilter::KEY_END_DATE, '2025-03-31');
$regularFilter = $this->makeFilter('rep_id', '99');
$savedSearch = $this->makeSavedSearch([
$closingStartFilter,
$closingEndFilter,
$regularFilter,
]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn([]);
$this->activitySearch->expects($this->once())
->method('getOnDemandPageFilterSet')
->willReturn($filterSet);
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['id-1']);
$this->logger->method('info');
$result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertEquals(['id-1'], $result);
}
public function testGetActivityIdsHandlesArrayFilters(): void
{
$user = $this->makeUser();
$filter1 = $this->makeFilter('outcome', 'positive');
$filter2 = $this->makeFilter('outcome', 'negative');
$savedSearch = $this->makeSavedSearch([$filter1, $filter2]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn(['outcome']);
$this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['id-1']);
$this->logger->method('info');
$result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertEquals(['id-1'], $result);
}
public function testGetActivityIdsHandlesScalarFilters(): void
{
$user = $this->makeUser();
$filter = $this->makeFilter('direction', 'inbound');
$savedSearch = $this->makeSavedSearch([$filter]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn([]);
$this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['id-5']);
$this->logger->method('info');
$result = $this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertEquals(['id-5'], $result);
}
public function testGetActivityIdsPassesNonZeroSequenceNumberToDisableFirstRequestDefaults(): void
{
$user = $this->makeUser();
$savedSearch = $this->makeSavedSearch([]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn([]);
$capturedCriteria = null;
$this->activitySearch->expects($this->once())
->method('getOnDemandPageFilterSet')
->willReturnCallback(function (Criteria $criteria) use ($filterSet, &$capturedCriteria) {
$capturedCriteria = $criteria;
return $filterSet;
});
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn([]);
$this->logger->method('info');
$this->service->getActivityIdsForSavedSearch($savedSearch, $user);
$this->assertNotNull($capturedCriteria);
$this->assertFalse($capturedCriteria->isFirstRequest());
}
public function testGetActivityIdsLogsWithCorrectContext(): void
{
$user = $this->makeUser();
$savedSearch = $this->makeSavedSearch([]);
$filterSet = $this->createMock(FilterDefinitionCollection::class);
$this->activitySearch->method('getArrayFilterKeys')->willReturn([]);
$this->activitySearch->method('getOnDemandPageFilterSet')->willReturn($filterSet);
$this->elasticRepository->method('onDemandSearchIdsOnly')->willReturn(['a', 'b']);
$this->logger->expects($this->once())
->method('info')
->with(
'[AskJiminnyReport] Fetched activity IDs for saved search',
$this->callback(fn ($context) => $context['saved_search_id'] === 42
&& $context['user_id'] === 1
&& $context['activity_count'] === 2)
);
$this->service->getActivityIdsForSavedSearch($savedSearch, $user);
}
}
Sync Changes
Hide This Notification
Code changed:
Hide
15
4
Previous Highlighted Error
Next Highlighted Error
<?php
declare(strict_types=1);
namespace Jiminny\Repositories;
use Carbon\CarbonImmutable;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Support\Carbon;
use Illuminate\Database\Eloquent\Collection;
use Illuminate\Pagination\LengthAwarePaginator;
use Illuminate\Support\Facades\DB;
use Jiminny\Models\AutomatedReport;
use Jiminny\Models\AutomatedReportResult;
use Jiminny\Models\Team;
use Jiminny\Models\User;
use Jiminny\Services\Kiosk\AutomatedReports\AutomatedReportsService;
use Jiminny\Services\Kiosk\AutomatedReports\ReportSort;
use Jiminny\Services\Kiosk\AutomatedReports\ReportSortDirection;
class AutomatedReportsRepository
{
/**
* Create a new automated report
*
* @param array $data
*
* @return AutomatedReport
*/
public function create(array $data): AutomatedReport
{
return AutomatedReport::create($data);
}
/**
* Find an automated report by UUID
*
* @param string $uuid
*
* @return AutomatedReport|null
*/
public function findByUuid(string $uuid): ?AutomatedReport
{
return AutomatedReport::where('uuid', AutomatedReport::toOptimized($uuid))->first();
}
public function findByIdOrUuid(string $idOrUuid): ?AutomatedReport
{
if (is_numeric($idOrUuid)) {
return AutomatedReport::find((int) $idOrUuid);
}
return AutomatedReport::where('uuid', AutomatedReport::toOptimized($idOrUuid))->first();
}
/**
* Retrieve all standard (non-Ask Jiminny) automated reports.
*
* @param string $sortColumn The column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to 'created_at'.
* @param string $sortDirection The sort direction. Allowed values: 'asc', 'desc'. Defaults to 'desc'.
*
* @return Collection<AutomatedReport>
*/
public function getAllStandardReports(
string $sortColumn = 'created_at',
string $sortDirection = 'desc'
): Collection {
return $this->buildSortedQuery($sortColumn, $sortDirection)
->whereNot('type', AutomatedReportsService::TYPE_ASK_JIMINNY)
->get();
}
/**
* Retrieve all Ask Jiminny reports created by the given user.
*
* @param User $user The user whose reports to retrieve.
* @param string $sortColumn The column to sort by. Allowed values: 'created_by', 'created_at'. Defaults to 'created_at'.
* @param string $sortDirection The sort direction. Allowed values: 'asc', 'desc'. Defaults to 'desc'.
*
* @return Collection<AutomatedReport>
*/
public function getAskJiminnyReportsByUser(
User $user,
string $sortColumn = 'created_at',
string $sortDirection = 'desc'
): Collection {
return $this->buildSortedQuery($sortColumn, $sortDirection)
->where('type', AutomatedReportsService::TYPE_ASK_JIMINNY)
->where('created_by', $user->getId())
->get();
}
private function buildSortedQuery(string $sortColumn, string $sortDirection): \Illuminate\Database\Eloquent\Builder
{
$allowedColumns = ['created_by', 'created_at'];
if (! in_array($sortColumn, $allowedColumns)) {
$sortColumn = 'created_at';
}
$sortDirection = strtolower($sortDirection) === 'asc' ? 'asc' : 'desc';
$query = AutomatedReport::query()->with(['creator', 'team']);
if ($sortColumn === 'created_by') {
$query->leftJoin('users', 'users.id', '=', 'automated_reports.created_by')
->orderByRaw("users.name COLLATE utf8mb4_unicode_ci {$sortDirection}")
->select('automated_reports.*');
} else {
$query->orderBy($sortColumn, $sortDirection);
}
return $query;
}
/**
* Get all active and enabled reports with active teams for the specified frequency.
*
* @param string $frequency
*
* @return Collection<AutomatedReport>
*/
public function getActiveReportsByFrequency(string $frequency): Collection
{
return AutomatedReport::where('automated_reports.status', true)
->where('automated_reports.frequency', $frequency)
->join('teams', 'automated_reports.team_id', '=', 'teams.id')
->where('teams.status', Team::STATUS_ACTIVE)
->where(function ($query) {
$query->whereNull('automated_reports.expires_at')
->orWhere('automated_reports.expires_at', '>=', now()->toDateString());
})
->select('automated_reports.*')
->get();
}
/**
* Update an automated report
*
* @param AutomatedReport $report
* @param array $data
*
* @return AutomatedReport
*/
public function update(AutomatedReport $report, array $data): AutomatedReport
{
$report->update($data);
return $report;
}
/**
* Create a new automated report result.
*
* @param array $data The data to create the automated report result with.
*
* @return AutomatedReportResult The newly created automated report result.
*/
public function createResult(array $data): AutomatedReportResult
{
return AutomatedReportResult::create($data);
}
/**
* Find an automated report result by UUID.
*
* @param string $uuid The UUID to find the automated report result with.
*
* @return AutomatedReportResult|null The automated report result if found, otherwise null.
*/
public function findResultByUuid(string $uuid): ?AutomatedReportResult
{
return AutomatedReportResult::where('uuid', AutomatedReportResult::toOptimized($uuid))->first();
}
public function findResultByUuidForUser(string $uuid, User $user): ?AutomatedReportResult
{
return AutomatedReportResult::query()
->where('uuid', AutomatedReportResult::toOptimized($uuid))
->whereHas('report', static function ($query) use ($user): void {
$query->where('team_id', $user->getTeamId())
->where('created_by', $user->getId());
})
->first();
}
public function findChildResult(AutomatedReportResult $result, string $type): ?AutomatedReportResult
{
return AutomatedReportResult::query()
->where('parent_id', $result->getId())
->where('media_type', $type)
->first();
}
public function getGeneratedNotSentResults(): Collection
{
return AutomatedReportResult::query()
->whereNotNull('generated_at')
->whereNull('sent_at')
->where('status', AutomatedReportResult::STATUS_GENERATED)
->whereHas('report')
->with('report')
->get();
}
public function getPaginatedUserReports(
User $user,
ReportSort $sort,
ReportSortDirection $sortDirection,
int $resultsPerPage,
int $page,
?Carbon $fromDate,
?Carbon $toDate,
array $teamIds,
array $reportTypes,
?string $name,
): LengthAwarePaginator {
$query = AutomatedReportResult::query()
->whereNotNull('automated_report_results.generated_at')
->join('automated_reports', 'automated_report_results.report_id', '=', 'automated_reports.id')
->where('automated_reports.team_id', $user->getTeamId())
->whereJsonContains('automated_reports.recipients->users', $user->getId())
->orderByRaw("$sort->value COLLATE utf8mb4_unicode_ci {$sortDirection->value}")
->select('automated_report_results.*')
->with('report.team');
if ($fromDate !== null && $toDate !== null) {
$query->whereBetween('generated_at', [$fromDate, $toDate]);
}
if (! empty($teamIds)) {
$query->where(function ($q) use ($teamIds) {
foreach ($teamIds as $id) {
$q->orWhereJsonContains('automated_reports.groups', $id);
}
});
}
if (! empty($reportTypes)) {
$query->whereIn('automated_reports.type', $reportTypes);
}
if (! empty($name)) {
$query->whereLike('name', "%$name%");
}
return $query->paginate($resultsPerPage, ['*'], 'page', $page);
}
public function countUserReports(User $user): int
{
return AutomatedReportResult::query()
->whereNotNull('generated_at')
->whereNotNull('sent_at')
->whereHas('report', function ($q) use ($user) {
$q->where('team_id', $user->getTeamId())
->whereJsonContains('recipients->users', $user->getId());
})
->count();
}
/**
* Get report IDs for a specific team
*
* @param Team $team
*
* @return \Illuminate\Support\Collection
*/
public function getReportIdsByTeam(Team $team): \Illuminate\Support\Collection
{
return AutomatedReport::where('team_id', $team->getId())->pluck('id');
}
/**
* Get all reports for a specific team
*
* @param Team $team
*
* @return Collection
*/
public function getReportsByTeam(Team $team): Collection
{
return AutomatedReport::where('team_id', $team->getId())->get();
}
/**
* Get all report results for a specific report
*
* @param AutomatedReport $report
*
* @return Collection
*/
public function getResultsByReport(AutomatedReport $report): Collection
{
return $this->getResultsByReportQuery($report)->get();
}
public function getResultsByReportQuery(AutomatedReport $report): Builder
{
return AutomatedReportResult::where('report_id', $report->getId());
}
public function getReportResultsQueryForRetention(Team $team, CarbonImmutable $retentionDate): Builder
{
$reportIds = $this->getReportIdsByTeam($team);
return AutomatedReportResult::query()->whereIn('report_id', $reportIds)
->whereRaw('IFNULL(generated_at, created_at) <= ?', [$retentionDate]);
}
/**
* @param int|null $teamId Optional team ID to filter results
*
* @return \Illuminate\Support\Collection<int, int> Collection of team IDs
*/
public function getTeamIdsWithReportsResults(?int $teamId = null): \Illuminate\Support\Collection
{
$query = DB::table('automated_reports')
->join('teams', 'automated_reports.team_id', '=', 'teams.id')
->select('teams.id')
->distinct();
if ($teamId !== null) {
$query->where('teams.id', $teamId);
}
return $query->pluck('teams.id');
}
}
Project
Project
New File or Directory…
Expand Selected...
|
10926
|
|
10928
|
217
|
12
|
2026-04-14T09:04:36.333117+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157476333_m2.jpg...
|
Firefox
|
Jiminny — Work
|
1
|
app.staging.jiminny.com/ondemand?topic_id[]=e02f09 app.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4...
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
JY-20543 add AJ reports User pilot tracking by Lak JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira
Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Configure SSH access to multiple environment - Engineering - Confluence
Configure SSH access to multiple environment - Engineering - Confluence
Console Home | Console Home | us-east-2
Console Home | Console Home | us-east-2
SecurityGroup | EC2 | us-east-2
SecurityGroup | EC2 | us-east-2
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app
SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app
Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet
Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet
Jiminny
Jiminny
Close tab
Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf
Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf
Service-Desk - Queues - Platform team - Service space - Jira
Service-Desk - Queues - Platform team - Service space - Jira
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Configure SSH access to multiple environment - Engineering - Confluence
Configure SSH access to multiple environment - Engineering - Confluence
CloudWatch | us-east-2
CloudWatch | us-east-2
New Tab
New Tab
CloudWatch | us-east-2
CloudWatch | us-east-2
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
JY-18909-automated-reports-ask-jiminny ■ 869720
28
28
14
activities
Get Notified
Sort by Sort by: Most recent
Sort by
Sort by:
Most recent
Add Recording
common.ai-icon-alt
Topics:
Competitors
Show internal and external activities:
Show internal only
Save Search
Clear all
Saved searches Saved searches
Saved searches
Saved searches
Team
Search teams Search teams
Search teams
Search teams
Host
Search team members Search team members
Search team members
Search team members
Also search as participant
Participant
Search team members Search team members
Search team members
Search team members
Customer
Customer
Transcript
Search transcript
Select option Said by
Select option
Said by
Select option Anyone
Select option
Anyone
Period
All time
Topics
Competitors × Search topics
Competitors
×
Search topics
Activity type
Search activity types Search activity types
Search activity types
Search activity types
Duration
Min (minutes)
Max (minutes)
AI call score
Select AI call score Select AI call score
Select AI call score
Select AI call score
Automated call score
Select automated call score Select automated call score
Select automated call score
Select automated call score
Coaching score
Select coaching score Select coaching score
Select coaching score
Select coaching score
Coach
Search coaches Search coaches
Search coaches
Search coaches
Stage at call
Search stages Search stages
Search stages
Search stages
Current stage
Search stages Search stages
Search stages
Search stages
Language
Search language Search language
Search language
Search language
Playlist
Search playlists Search playlists
Search playlists
Search playlists
Pending CRM notes
Not logged to CRM
Recorded
Search recorded Search recorded
Search recorded
Search recorded
Show internal and external activities
Select option Show internal only
Select option
Show internal only
Platform
Search platforms Search platforms
Search platforms
Search platforms
Call type
Search channels Search channels
Search channels
Search channels
Outcome
Search CRM Outcome Search CRM Outcome
Search CRM Outcome
Search CRM Outcome
Deal value
Min (amount)
Max (amount)
Deal close date
All time
Deal age
0
1359d
2717d+
Talking speed
0
177 wpm
252 wpm+
Talk ratio
0%
40%
60%
100%
Patience
0s
1s
2s
3s+
Longest monologue
0
5m
10m+
Longest customer story
0
5m
10m+
Rep questions
0
25
50+
Engaging questions
0
25
50+
Insightful questions
0
25
50+
Customer questions
0
25
50+
Comments
0
1
2
5
10
20+
Host
Activity
Contact
Activity Type
Current Stage
Stats
Duration
Date
Jiminny Web SA Jiminny Salesforce App Training Number of favorites 0 Number of shares 0 Number of comments 0 Number of plays 4 47m11/07/2024, 2:28 PM
Jiminny
Salesforce App Training
Number of favorites
0
Number of shares
0
Number of comments
0
Number of plays
4
47m
11/07/2024, 2:28 PM
Bekkie Wetz Jiminny Bekkie/ Jules - renewals and ContractBook Number of favorites 1 Number of shares 0 Number of comments 0 Number of plays 3 44m25/06/2024, 3:09 PM
Jiminny
Bekkie/ Jules - renewals and ContractBook
Number of favorites
1
Number of shares
0
Number of comments
0...
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":4,"bounds":{"left":0.00234375,"top":0.045138888,"width":0.0890625,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira","depth":4,"bounds":{"left":0.0,"top":0.08263889,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira","depth":5,"bounds":{"left":0.015625,"top":0.09236111,"width":0.11796875,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":4,"bounds":{"left":0.0,"top":0.11111111,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":5,"bounds":{"left":0.015625,"top":0.12083333,"width":0.18710938,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Configure SSH access to multiple environment - Engineering - Confluence","depth":4,"bounds":{"left":0.0,"top":0.13958333,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Configure SSH access to multiple environment - Engineering - Confluence","depth":5,"bounds":{"left":0.015625,"top":0.14930555,"width":0.1515625,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Console Home | Console Home | us-east-2","depth":4,"bounds":{"left":0.0,"top":0.16805555,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Console Home | Console Home | us-east-2","depth":5,"bounds":{"left":0.015625,"top":0.17777778,"width":0.08671875,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"SecurityGroup | EC2 | us-east-2","depth":4,"bounds":{"left":0.0,"top":0.19652778,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"SecurityGroup | EC2 | us-east-2","depth":5,"bounds":{"left":0.015625,"top":0.20625,"width":0.06484375,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":4,"bounds":{"left":0.0,"top":0.225,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":5,"bounds":{"left":0.015625,"top":0.23472223,"width":0.18710938,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app","depth":4,"bounds":{"left":0.0,"top":0.2534722,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app","depth":5,"bounds":{"left":0.015625,"top":0.26319444,"width":0.23476562,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet","depth":4,"bounds":{"left":0.0,"top":0.28194445,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet","depth":5,"bounds":{"left":0.015625,"top":0.29166666,"width":0.1984375,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Jiminny","depth":4,"bounds":{"left":0.0,"top":0.31041667,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"Jiminny","depth":5,"bounds":{"left":0.015625,"top":0.3201389,"width":0.015625,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close tab","depth":5,"bounds":{"left":0.07890625,"top":0.31666666,"width":0.009375,"height":0.016666668},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf","depth":4,"bounds":{"left":0.0,"top":0.33888888,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf","depth":5,"bounds":{"left":0.015625,"top":0.34861112,"width":0.1640625,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Service-Desk - Queues - Platform team - Service space - Jira","depth":4,"bounds":{"left":0.0,"top":0.3673611,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Service-Desk - Queues - Platform team - Service space - Jira","depth":5,"bounds":{"left":0.015625,"top":0.37708333,"width":0.12617187,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":4,"bounds":{"left":0.0,"top":0.39583334,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":5,"bounds":{"left":0.015625,"top":0.40555555,"width":0.18710938,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Configure SSH access to multiple environment - Engineering - Confluence","depth":4,"bounds":{"left":0.0,"top":0.42430556,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Configure SSH access to multiple environment - Engineering - Confluence","depth":5,"bounds":{"left":0.015625,"top":0.4340278,"width":0.1515625,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"CloudWatch | us-east-2","depth":4,"bounds":{"left":0.0,"top":0.45277777,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"CloudWatch | us-east-2","depth":5,"bounds":{"left":0.015625,"top":0.4625,"width":0.0484375,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"New Tab","depth":4,"bounds":{"left":0.0,"top":0.48125,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"New Tab","depth":5,"bounds":{"left":0.015625,"top":0.49097222,"width":0.017578125,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"CloudWatch | us-east-2","depth":4,"bounds":{"left":0.0,"top":0.50972223,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"CloudWatch | us-east-2","depth":5,"bounds":{"left":0.015625,"top":0.51944447,"width":0.0484375,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"New Tab","depth":4,"bounds":{"left":0.003125,"top":0.5395833,"width":0.08710937,"height":0.022222223},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"bounds":{"left":0.003125,"top":0.97430557,"width":0.0125,"height":0.022222223},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"bounds":{"left":0.01640625,"top":0.97430557,"width":0.0125,"height":0.022222223},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Tabs from other devices","depth":6,"bounds":{"left":0.029296875,"top":0.97430557,"width":0.0125,"height":0.022222223},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"bounds":{"left":0.0421875,"top":0.97430557,"width":0.0125,"height":0.022222223},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"bounds":{"left":0.05546875,"top":0.97430557,"width":0.0125,"height":0.022222223},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-18909-automated-reports-ask-jiminny ■ 869720","depth":9,"bounds":{"left":0.09453125,"top":0.9875,"width":0.11796875,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"28","depth":12,"bounds":{"left":0.096875,"top":0.925,"width":0.01875,"height":0.030555556},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"28","depth":14,"bounds":{"left":0.10664062,"top":0.9284722,"width":0.00546875,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"14","depth":14,"bounds":{"left":0.2421875,"top":0.061805554,"width":0.0109375,"height":0.017361112},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"activities","depth":14,"bounds":{"left":0.253125,"top":0.061805554,"width":0.031640626,"height":0.017361112},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Get Notified","depth":13,"bounds":{"left":0.55078125,"top":0.058333334,"width":0.051171876,"height":0.025},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXComboBox","text":"Sort by Sort by: Most recent","depth":13,"bounds":{"left":0.36171874,"top":0.057638887,"width":0.091796875,"height":0.025694445},"value":"Sort by Sort by: Most recent","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Sort by","depth":14,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Sort by:","depth":15,"bounds":{"left":0.3660156,"top":0.06458333,"width":0.019921875,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Most recent","depth":15,"bounds":{"left":0.3859375,"top":0.06458333,"width":0.030078124,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Add Recording","depth":13,"bounds":{"left":0.4910156,"top":0.058333334,"width":0.056640625,"height":0.025},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"common.ai-icon-alt","depth":14,"bounds":{"left":0.6050781,"top":0.05625,"width":0.0140625,"height":0.025},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Topics:","depth":15,"bounds":{"left":0.24570313,"top":0.10069445,"width":0.014453125,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Competitors","depth":15,"bounds":{"left":0.26210937,"top":0.10069445,"width":0.0265625,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Show internal and external activities:","depth":15,"bounds":{"left":0.30546874,"top":0.10069445,"width":0.07695313,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Show internal only","depth":15,"bounds":{"left":0.384375,"top":0.10069445,"width":0.0390625,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Save Search","depth":14,"bounds":{"left":0.440625,"top":0.09861111,"width":0.0390625,"height":0.013888889},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Clear all","depth":14,"bounds":{"left":0.48359376,"top":0.09861111,"width":0.030078124,"height":0.013888889},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXComboBox","text":"Saved searches Saved searches","depth":13,"bounds":{"left":0.1265625,"top":0.05486111,"width":0.095703125,"height":0.025},"value":"Saved searches Saved searches","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Saved searches","depth":15,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Saved searches","depth":16,"bounds":{"left":0.13085938,"top":0.06111111,"width":0.037109375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Team","depth":13,"bounds":{"left":0.1265625,"top":0.099305555,"width":0.012890625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search teams Search teams","depth":12,"bounds":{"left":0.1265625,"top":0.115277775,"width":0.095703125,"height":0.025},"value":"Search teams Search teams","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search teams","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search teams","depth":14,"bounds":{"left":0.13085938,"top":0.12222222,"width":0.032421876,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Host","depth":13,"bounds":{"left":0.1265625,"top":0.15,"width":0.01171875,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search team members Search team members","depth":12,"bounds":{"left":0.1265625,"top":0.16944444,"width":0.095703125,"height":0.025},"value":"Search team members Search team members","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search team members","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search team members","depth":14,"bounds":{"left":0.13085938,"top":0.17638889,"width":0.05390625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Also search as participant","depth":13,"bounds":{"left":0.1265625,"top":0.19930555,"width":0.062109374,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Participant","depth":13,"bounds":{"left":0.1265625,"top":0.225,"width":0.026953125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search team members Search team members","depth":12,"bounds":{"left":0.1265625,"top":0.24097222,"width":0.095703125,"height":0.025},"value":"Search team members Search team members","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search team members","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search team members","depth":14,"bounds":{"left":0.13085938,"top":0.24791667,"width":0.05390625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Customer","depth":13,"bounds":{"left":0.1265625,"top":0.27569443,"width":0.025390625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXTextField","text":"Customer","depth":12,"bounds":{"left":0.14140625,"top":0.2923611,"width":0.065625,"height":0.025},"help_text":"","placeholder":"Customer or Subject","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Transcript","depth":13,"bounds":{"left":0.1265625,"top":0.32777777,"width":0.02578125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXTextField","text":"Search transcript","depth":12,"bounds":{"left":0.14140625,"top":0.34791666,"width":0.065625,"height":0.025},"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXComboBox","text":"Select option Said by","depth":12,"bounds":{"left":0.1265625,"top":0.37708333,"width":0.095703125,"height":0.025694445},"value":"Select option Said by","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Select option","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Said by","depth":14,"bounds":{"left":0.13085938,"top":0.38402778,"width":0.0171875,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Select option Anyone","depth":12,"bounds":{"left":0.1265625,"top":0.40625,"width":0.095703125,"height":0.025694445},"value":"Select option Anyone","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Select option","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Anyone","depth":14,"bounds":{"left":0.13085938,"top":0.41319445,"width":0.01875,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Period","depth":13,"bounds":{"left":0.1265625,"top":0.44166666,"width":0.016015625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"All time","depth":14,"bounds":{"left":0.13203125,"top":0.46458334,"width":0.017578125,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Topics","depth":13,"bounds":{"left":0.1265625,"top":0.4923611,"width":0.015234375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Competitors × Search topics","depth":12,"bounds":{"left":0.1265625,"top":0.5083333,"width":0.095703125,"height":0.02638889},"value":"Competitors × Search topics","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Competitors","depth":15,"bounds":{"left":0.13359375,"top":0.5159722,"width":0.030859375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"×","depth":16,"bounds":{"left":0.1671875,"top":0.5152778,"width":0.003125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXTextField","text":"Search topics","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Activity type","depth":13,"bounds":{"left":0.1265625,"top":0.54444444,"width":0.03125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search activity types Search activity types","depth":12,"bounds":{"left":0.1265625,"top":0.56041664,"width":0.095703125,"height":0.025},"value":"Search activity types Search activity types","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search activity types","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search activity types","depth":14,"bounds":{"left":0.13085938,"top":0.5673611,"width":0.050390624,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Duration","depth":13,"bounds":{"left":0.1265625,"top":0.5951389,"width":0.023046875,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Min (minutes)","depth":13,"bounds":{"left":0.1265625,"top":0.6125,"width":0.03359375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Max (minutes)","depth":13,"bounds":{"left":0.16875,"top":0.6125,"width":0.034765624,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"AI call score","depth":13,"bounds":{"left":0.1265625,"top":0.6597222,"width":0.029296875,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Select AI call score Select AI call score","depth":12,"bounds":{"left":0.1265625,"top":0.67569447,"width":0.095703125,"height":0.025},"value":"Select AI call score Select AI call score","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Select AI call score","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Select AI call score","depth":14,"bounds":{"left":0.13085938,"top":0.6826389,"width":0.0453125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Automated call score","depth":13,"bounds":{"left":0.1265625,"top":0.7104167,"width":0.0515625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Select automated call score Select automated call score","depth":12,"bounds":{"left":0.1265625,"top":0.7263889,"width":0.095703125,"height":0.036111113},"value":"Select automated call score Select automated call score","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Select automated call score","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Select automated call score","depth":14,"bounds":{"left":0.13085938,"top":0.73194444,"width":0.051953126,"height":0.025694445},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Coaching score","depth":13,"bounds":{"left":0.1265625,"top":0.7722222,"width":0.037109375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Select coaching score Select coaching score","depth":12,"bounds":{"left":0.1265625,"top":0.7881944,"width":0.095703125,"height":0.025},"value":"Select coaching score Select coaching score","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Select coaching score","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Select coaching score","depth":14,"bounds":{"left":0.13085938,"top":0.7951389,"width":0.051953126,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Coach","depth":13,"bounds":{"left":0.1265625,"top":0.8229167,"width":0.01640625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search coaches Search coaches","depth":12,"bounds":{"left":0.1265625,"top":0.8388889,"width":0.095703125,"height":0.025},"value":"Search coaches Search coaches","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search coaches","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search coaches","depth":14,"bounds":{"left":0.13085938,"top":0.84583336,"width":0.0375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Stage at call","depth":13,"bounds":{"left":0.1265625,"top":0.8736111,"width":0.02890625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search stages Search stages","depth":12,"bounds":{"left":0.1265625,"top":0.88958335,"width":0.095703125,"height":0.025},"value":"Search stages Search stages","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search stages","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search stages","depth":14,"bounds":{"left":0.13085938,"top":0.89652777,"width":0.033203125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Current stage","depth":13,"bounds":{"left":0.1265625,"top":0.92430556,"width":0.03359375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search stages Search stages","depth":12,"bounds":{"left":0.1265625,"top":0.94027776,"width":0.095703125,"height":0.025},"value":"Search stages Search stages","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search stages","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search stages","depth":14,"bounds":{"left":0.13085938,"top":0.94722223,"width":0.033203125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Language","depth":13,"bounds":{"left":0.1265625,"top":0.975,"width":0.0234375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search language Search language","depth":12,"bounds":{"left":0.1265625,"top":0.9909722,"width":0.095703125,"height":0.009027779},"value":"Search language Search language","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search language","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search language","depth":14,"bounds":{"left":0.13085938,"top":0.99791664,"width":0.03984375,"height":0.0020833611},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Playlist","depth":13,"bounds":{"left":0.1265625,"top":1.0,"width":0.01796875,"height":-0.02569449},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search playlists Search playlists","depth":12,"bounds":{"left":0.1265625,"top":1.0,"width":0.095703125,"height":-0.041666627},"value":"Search playlists Search playlists","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search playlists","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search playlists","depth":14,"bounds":{"left":0.13085938,"top":1.0,"width":0.037890624,"height":-0.048611164},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Pending CRM notes","depth":13,"bounds":{"left":0.1265625,"top":1.0,"width":0.048046876,"height":-0.076388836},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Not logged to CRM","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Recorded","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search recorded Search recorded","depth":12,"value":"Search recorded Search recorded","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search recorded","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search recorded","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Show internal and external activities","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Select option Show internal only","depth":12,"value":"Select option Show internal only","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Select option","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Show internal only","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Platform","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search platforms Search platforms","depth":12,"value":"Search platforms Search platforms","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search platforms","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search platforms","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Call type","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search channels Search channels","depth":12,"value":"Search channels Search channels","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search channels","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search channels","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Outcome","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search CRM Outcome Search CRM Outcome","depth":12,"value":"Search CRM Outcome Search CRM Outcome","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search CRM Outcome","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search CRM Outcome","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Deal value","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Min (amount)","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Max (amount)","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Deal close date","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"All time","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Deal age","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"1359d","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2717d+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Talking speed","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"177 wpm","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"252 wpm+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Talk ratio","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0%","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"40%","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"60%","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"100%","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Patience","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0s","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"1s","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2s","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"3s+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Longest monologue","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"5m","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"10m+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Longest customer story","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"5m","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"10m+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Rep questions","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"25","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"50+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Engaging questions","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"25","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"50+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Insightful questions","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"25","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"50+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Customer questions","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"25","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"50+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Comments","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"1","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"5","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"10","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"20+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Host","depth":15,"bounds":{"left":0.2511719,"top":0.14097223,"width":0.0109375,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Activity","depth":15,"bounds":{"left":0.28632814,"top":0.14097223,"width":0.01796875,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Contact","depth":15,"bounds":{"left":0.3839844,"top":0.14097223,"width":0.018359374,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Activity Type","depth":15,"bounds":{"left":0.4152344,"top":0.14097223,"width":0.01796875,"height":0.025},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Current Stage","depth":15,"bounds":{"left":0.44921875,"top":0.14097223,"width":0.03203125,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Stats","depth":15,"bounds":{"left":0.49179688,"top":0.14097223,"width":0.011328125,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Duration","depth":15,"bounds":{"left":0.53085935,"top":0.14097223,"width":0.0203125,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Date","depth":15,"bounds":{"left":0.5589844,"top":0.14097223,"width":0.011328125,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Jiminny Web SA Jiminny Salesforce App Training Number of favorites 0 Number of shares 0 Number of comments 0 Number of plays 4 47m11/07/2024, 2:28 PM","depth":14,"bounds":{"left":0.24179688,"top":0.17847222,"width":0.37773436,"height":0.050694443},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Jiminny","depth":18,"bounds":{"left":0.28632814,"top":0.19166666,"width":0.017578125,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Salesforce App Training","depth":17,"bounds":{"left":0.28632814,"top":0.20555556,"width":0.053125,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Number of favorites","depth":18,"bounds":{"left":0.49257812,"top":0.19027779,"width":0.0203125,"height":0.03888889},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":18,"bounds":{"left":0.5015625,"top":0.19097222,"width":0.002734375,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Number of shares","depth":18,"bounds":{"left":0.49257812,"top":0.19027779,"width":0.01875,"height":0.03888889},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":18,"bounds":{"left":0.51875,"top":0.19097222,"width":0.002734375,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Number of comments","depth":18,"bounds":{"left":0.49257812,"top":0.19027779,"width":0.023828125,"height":0.03888889},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":18,"bounds":{"left":0.5015625,"top":0.2048611,"width":0.002734375,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Number of plays","depth":18,"bounds":{"left":0.49257812,"top":0.19027779,"width":0.01875,"height":0.03888889},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"4","depth":18,"bounds":{"left":0.51875,"top":0.2048611,"width":0.002734375,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"47m","depth":16,"bounds":{"left":0.53085935,"top":0.19791667,"width":0.01015625,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"11/07/2024, 2:28 PM","depth":16,"bounds":{"left":0.5589844,"top":0.19791667,"width":0.04921875,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Bekkie Wetz Jiminny Bekkie/ Jules - renewals and ContractBook Number of favorites 1 Number of shares 0 Number of comments 0 Number of plays 3 44m25/06/2024, 3:09 PM","depth":14,"bounds":{"left":0.24179688,"top":0.22916667,"width":0.37773436,"height":0.050694443},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Jiminny","depth":18,"bounds":{"left":0.28632814,"top":0.24236111,"width":0.017578125,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Bekkie/ Jules - renewals and ContractBook","depth":17,"bounds":{"left":0.28632814,"top":0.25625,"width":0.096875,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Number of favorites","depth":18,"bounds":{"left":0.49257812,"top":0.24097222,"width":0.0203125,"height":0.03888889},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"1","depth":18,"bounds":{"left":0.5015625,"top":0.24166666,"width":0.002734375,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Number of shares","depth":18,"bounds":{"left":0.49257812,"top":0.24097222,"width":0.01875,"height":0.03888889},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":18,"bounds":{"left":0.51875,"top":0.24166666,"width":0.002734375,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Number of comments","depth":18,"bounds":{"left":0.49257812,"top":0.24097222,"width":0.023828125,"height":0.03888889},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":18,"bounds":{"left":0.5015625,"top":0.25555557,"width":0.002734375,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
-7858395721120215887
|
4256266838360126146
|
visual_change
|
accessibility
|
NULL
|
JY-20543 add AJ reports User pilot tracking by Lak JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira
Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Configure SSH access to multiple environment - Engineering - Confluence
Configure SSH access to multiple environment - Engineering - Confluence
Console Home | Console Home | us-east-2
Console Home | Console Home | us-east-2
SecurityGroup | EC2 | us-east-2
SecurityGroup | EC2 | us-east-2
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app
SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app
Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet
Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet
Jiminny
Jiminny
Close tab
Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf
Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf
Service-Desk - Queues - Platform team - Service space - Jira
Service-Desk - Queues - Platform team - Service space - Jira
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Configure SSH access to multiple environment - Engineering - Confluence
Configure SSH access to multiple environment - Engineering - Confluence
CloudWatch | us-east-2
CloudWatch | us-east-2
New Tab
New Tab
CloudWatch | us-east-2
CloudWatch | us-east-2
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
JY-18909-automated-reports-ask-jiminny ■ 869720
28
28
14
activities
Get Notified
Sort by Sort by: Most recent
Sort by
Sort by:
Most recent
Add Recording
common.ai-icon-alt
Topics:
Competitors
Show internal and external activities:
Show internal only
Save Search
Clear all
Saved searches Saved searches
Saved searches
Saved searches
Team
Search teams Search teams
Search teams
Search teams
Host
Search team members Search team members
Search team members
Search team members
Also search as participant
Participant
Search team members Search team members
Search team members
Search team members
Customer
Customer
Transcript
Search transcript
Select option Said by
Select option
Said by
Select option Anyone
Select option
Anyone
Period
All time
Topics
Competitors × Search topics
Competitors
×
Search topics
Activity type
Search activity types Search activity types
Search activity types
Search activity types
Duration
Min (minutes)
Max (minutes)
AI call score
Select AI call score Select AI call score
Select AI call score
Select AI call score
Automated call score
Select automated call score Select automated call score
Select automated call score
Select automated call score
Coaching score
Select coaching score Select coaching score
Select coaching score
Select coaching score
Coach
Search coaches Search coaches
Search coaches
Search coaches
Stage at call
Search stages Search stages
Search stages
Search stages
Current stage
Search stages Search stages
Search stages
Search stages
Language
Search language Search language
Search language
Search language
Playlist
Search playlists Search playlists
Search playlists
Search playlists
Pending CRM notes
Not logged to CRM
Recorded
Search recorded Search recorded
Search recorded
Search recorded
Show internal and external activities
Select option Show internal only
Select option
Show internal only
Platform
Search platforms Search platforms
Search platforms
Search platforms
Call type
Search channels Search channels
Search channels
Search channels
Outcome
Search CRM Outcome Search CRM Outcome
Search CRM Outcome
Search CRM Outcome
Deal value
Min (amount)
Max (amount)
Deal close date
All time
Deal age
0
1359d
2717d+
Talking speed
0
177 wpm
252 wpm+
Talk ratio
0%
40%
60%
100%
Patience
0s
1s
2s
3s+
Longest monologue
0
5m
10m+
Longest customer story
0
5m
10m+
Rep questions
0
25
50+
Engaging questions
0
25
50+
Insightful questions
0
25
50+
Customer questions
0
25
50+
Comments
0
1
2
5
10
20+
Host
Activity
Contact
Activity Type
Current Stage
Stats
Duration
Date
Jiminny Web SA Jiminny Salesforce App Training Number of favorites 0 Number of shares 0 Number of comments 0 Number of plays 4 47m11/07/2024, 2:28 PM
Jiminny
Salesforce App Training
Number of favorites
0
Number of shares
0
Number of comments
0
Number of plays
4
47m
11/07/2024, 2:28 PM
Bekkie Wetz Jiminny Bekkie/ Jules - renewals and ContractBook Number of favorites 1 Number of shares 0 Number of comments 0 Number of plays 3 44m25/06/2024, 3:09 PM
Jiminny
Bekkie/ Jules - renewals and ContractBook
Number of favorites
1
Number of shares
0
Number of comments
0...
|
NULL
|
|
10930
|
217
|
13
|
2026-04-14T09:04:39.335055+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157479335_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEoitViewHistoryBookmarksProfilesToolsWi FirefoxFileEoitViewHistoryBookmarksProfilesToolsWindowHelpapp.staging.jiminny.com/ondemand?topic_id[J=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=3You are currently impersonating Nikolay Yankov <)Saved searches14 activitiesSort by: Most recent* Add RecordingF: Get NotifiedPlatform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloleamSearch teamsiTopics: Competitors XShow internal and external activities: Show internal only *)HostIActivityZ Configure SSH access to multipleHost@ Console Home | Console Home | usSearch team membersiSecurityGroup | EC2 |us-east-210Mise searen as DarticloanuJY-20543 add AJ reports User pilcSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatfornJY-20543 add AJ reports User pilc& Configure SSH access to multiple eCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabParuicipantsearcn leam membersCustomer ©Customer or SubjectTranscript ©• Search transcript |Said byMnyonePeriodAll timeTopicsCompetitors *)Activity typeSearch activity typesDuration ©Min (minutes)Max (minutes)Al call scoreSelect Al call scoreMulomalea call scoreSelect automated calliCoaching scoreSelect coaching scoreCoach ®Search coaches.Stage at callSearch stagesCurrent stageSearch stagesJiminny MSalestorce App IrainingJiminny MBekkie/ Jules - renewals and Contract..Jiminny MHandover training part 1Unknown Customer M2 8 Deal Insights playbook 2 €Exclaimer MExclaimer handoverUnknown Customer MHow to run an Intro CallTom Lavery at Plamen enterprise MJiminny & - All-hands meeting i%Unknown Customer MAll -hands Jan 9thUnknown Customer MNotetaker added on 11-28-23 @04:01Unknown Customer played MTraining 8 - Jiminny Apo for Salesfor….Unknown Customer MAll-hands - Thank Yous, What Went, L...Unknown Customer (played MAll-hands - Nov /thUnknown Customer 1All Hands - October 31st ©Unknown Customer MDeal Insights Referesher/Training w/T...JY-18909-automated-reports-ask-iiminny = 869720Save Search @ Clear allContactActivityTypeCurrent StagestatsDurationDateTomLaveryUnlikely toRenew$42,12647ml90 D444mĐ0 D3Đ0 D234mW0 %000D 2$0 228.DO DO17m$1 %0ĐO DO1hsim'90 D 4{0&2DOD643mĐ0 D428m2 151m{003Đ0D325m3ym0 82Đ0 D133m22.D0 D 1141m11/0//2024.2:28 PM25/06/2024, 3:09 PM10/06/2024, 12:02 PM18/05/9014. 19.56 PM13/03/2024, 11:28 AM26/02 9024.2:30 PM116/01/2024, 11:43 AM09/01/2024, 11:45 AM28/11/2023, 11:30 AM22/11/2023, 11:56 AM14/11/2023, 11:27 AM0//1100/3.11:42 AMI31/10/2023, 11:35 AM25/10/2023, 11:46 AMf Support Daily • in 2h 56mA100% C•Tue 14 Apr 12:04:39Q InspectorFilter URLs• ConsoleD DebuggerN Network( PerformanceAlIHMLeSS290 PA200 P...206 P.200 P...200 P.200 G.200 G.200 G..200 G..296G200 P..200 G.A0...A0...A app.A aр...A aрp...A app.A app...А aрp.A find...A r.lo...200P.A r.lo...200 P...Ar.lo..1200 P.A r...200 P..A r.lo...200 P..A r.lo...200 P...a r.lo...200 P...A r.lo...200 P...A r.lo..200 P...A r.lo...206 P..Ar.o...200 P...A r.lo...200 P...A r.l...200 P...A r.o...200 P..A r.l...200 P...Ar.lo..200 P...A r.lo...200) P...A r.lo...200 P..A r.lo...206 P..r.lo.200 P...Ar.o..1200 P.A r.lo..200 P...A r.o...200P.A r.l...200 P...A r....200 P...A r.lo...200 P...A r.lo..200 P..A r.lo...200 P...A r.lo...200 P...A r.l...200 P...A r.lo...200 P...A r.o...200 P...A r.lo..200 P...Ar.lo...200 P...Ar.o...200 P...A r.lo...Me: Domain FileMrlo.Tasoonxat o attorm-stac xhiA8.../api/5627310/envelope/2: fetch/api/5627310/envelope/2: fetch/api/5627310/envelope/?: fetch/api/5627310/envelope/?; fetchH Xhisaved-searchintegrationson-demand?topic_id•A xhr•A xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platformi?a=ponxaf/platform-stag xhriPa=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhriza=ponxaf/platform-stag xhri?a=ponxaf/platform xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhriPa=ponxaf/platform-stag xhriPa=ponxaf/platform-staç xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhrÔ 48 requests{) Style EditorO: MemoryE Storage0 99+No Throttling :HeadersCookiesRequestResponseTimingsSecurity5,59 KB1Block Resend500 B 2BgET nttos:laoostacing.lminnv.com/aoi/v/oage/on-demanertooic 10=e0210934-c0/0-4106003 285-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4500 B 2 B200500 B 2BHTTP/36.28 kB 2...55.54 kB (196.87 kB size)5.65 kB 1no-referrer-when-downgradesystem3.62 kB 1...3.83 kB 5..55.54 .3.11 kB 9..cached 6...slalusVersionTransferredReferrer PolicyDNS Resolutionkesponse Headers (2.900 Kb)alt-svc: h3=":443"; ma=86400cache-control: no-cache, onivatecontent-encoalng: oziocontent-language: encontent-secuntv-policv-revort-onv: scriot-src 'self 'unsate-inine' 'unsate-eval" • oo: hit.kawe307.701./4 Mb U.2.47 kB 0...4.91 kB 0.10.11 kB O...2.48 kB 0...2.43 kB 0...2.49 kB 0..2.48 kB O...2.73 kB O...2.43 kB 0...2.48 kB 0...2.48 kB 0...ucncio, slyto sie soll unsare mme mepencuttslasmebmimamcon mapedlonto yooMeaois.com nuos.cons.clouatare.com.me-sre sellmos.con.stagmg.tminy.com/nttes... nutos:S.intercomcan.com; connect-s/cnuos.apo.stacine.lminny.comnutos./meala.aoo.staging.liminnv.com [URL_WITH_CREDENTIALS] 4.61 min...
|
NULL
|
8660773583342473762
|
NULL
|
visual_change
|
ocr
|
NULL
|
FirefoxFileEoitViewHistoryBookmarksProfilesToolsWi FirefoxFileEoitViewHistoryBookmarksProfilesToolsWindowHelpapp.staging.jiminny.com/ondemand?topic_id[J=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=3You are currently impersonating Nikolay Yankov <)Saved searches14 activitiesSort by: Most recent* Add RecordingF: Get NotifiedPlatform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloleamSearch teamsiTopics: Competitors XShow internal and external activities: Show internal only *)HostIActivityZ Configure SSH access to multipleHost@ Console Home | Console Home | usSearch team membersiSecurityGroup | EC2 |us-east-210Mise searen as DarticloanuJY-20543 add AJ reports User pilcSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatfornJY-20543 add AJ reports User pilc& Configure SSH access to multiple eCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabParuicipantsearcn leam membersCustomer ©Customer or SubjectTranscript ©• Search transcript |Said byMnyonePeriodAll timeTopicsCompetitors *)Activity typeSearch activity typesDuration ©Min (minutes)Max (minutes)Al call scoreSelect Al call scoreMulomalea call scoreSelect automated calliCoaching scoreSelect coaching scoreCoach ®Search coaches.Stage at callSearch stagesCurrent stageSearch stagesJiminny MSalestorce App IrainingJiminny MBekkie/ Jules - renewals and Contract..Jiminny MHandover training part 1Unknown Customer M2 8 Deal Insights playbook 2 €Exclaimer MExclaimer handoverUnknown Customer MHow to run an Intro CallTom Lavery at Plamen enterprise MJiminny & - All-hands meeting i%Unknown Customer MAll -hands Jan 9thUnknown Customer MNotetaker added on 11-28-23 @04:01Unknown Customer played MTraining 8 - Jiminny Apo for Salesfor….Unknown Customer MAll-hands - Thank Yous, What Went, L...Unknown Customer (played MAll-hands - Nov /thUnknown Customer 1All Hands - October 31st ©Unknown Customer MDeal Insights Referesher/Training w/T...JY-18909-automated-reports-ask-iiminny = 869720Save Search @ Clear allContactActivityTypeCurrent StagestatsDurationDateTomLaveryUnlikely toRenew$42,12647ml90 D444mĐ0 D3Đ0 D234mW0 %000D 2$0 228.DO DO17m$1 %0ĐO DO1hsim'90 D 4{0&2DOD643mĐ0 D428m2 151m{003Đ0D325m3ym0 82Đ0 D133m22.D0 D 1141m11/0//2024.2:28 PM25/06/2024, 3:09 PM10/06/2024, 12:02 PM18/05/9014. 19.56 PM13/03/2024, 11:28 AM26/02 9024.2:30 PM116/01/2024, 11:43 AM09/01/2024, 11:45 AM28/11/2023, 11:30 AM22/11/2023, 11:56 AM14/11/2023, 11:27 AM0//1100/3.11:42 AMI31/10/2023, 11:35 AM25/10/2023, 11:46 AMf Support Daily • in 2h 56mA100% C•Tue 14 Apr 12:04:39Q InspectorFilter URLs• ConsoleD DebuggerN Network( PerformanceAlIHMLeSS290 PA200 P...206 P.200 P...200 P.200 G.200 G.200 G..200 G..296G200 P..200 G.A0...A0...A app.A aр...A aрp...A app.A app...А aрp.A find...A r.lo...200P.A r.lo...200 P...Ar.lo..1200 P.A r...200 P..A r.lo...200 P..A r.lo...200 P...a r.lo...200 P...A r.lo...200 P...A r.lo..200 P...A r.lo...206 P..Ar.o...200 P...A r.lo...200 P...A r.l...200 P...A r.o...200 P..A r.l...200 P...Ar.lo..200 P...A r.lo...200) P...A r.lo...200 P..A r.lo...206 P..r.lo.200 P...Ar.o..1200 P.A r.lo..200 P...A r.o...200P.A r.l...200 P...A r....200 P...A r.lo...200 P...A r.lo..200 P..A r.lo...200 P...A r.lo...200 P...A r.l...200 P...A r.lo...200 P...A r.o...200 P...A r.lo..200 P...Ar.lo...200 P...Ar.o...200 P...A r.lo...Me: Domain FileMrlo.Tasoonxat o attorm-stac xhiA8.../api/5627310/envelope/2: fetch/api/5627310/envelope/2: fetch/api/5627310/envelope/?: fetch/api/5627310/envelope/?; fetchH Xhisaved-searchintegrationson-demand?topic_id•A xhr•A xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platformi?a=ponxaf/platform-stag xhriPa=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhriza=ponxaf/platform-stag xhri?a=ponxaf/platform xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhriPa=ponxaf/platform-stag xhriPa=ponxaf/platform-staç xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhri?a=ponxaf/platform-stag xhrÔ 48 requests{) Style EditorO: MemoryE Storage0 99+No Throttling :HeadersCookiesRequestResponseTimingsSecurity5,59 KB1Block Resend500 B 2BgET nttos:laoostacing.lminnv.com/aoi/v/oage/on-demanertooic 10=e0210934-c0/0-4106003 285-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4500 B 2 B200500 B 2BHTTP/36.28 kB 2...55.54 kB (196.87 kB size)5.65 kB 1no-referrer-when-downgradesystem3.62 kB 1...3.83 kB 5..55.54 .3.11 kB 9..cached 6...slalusVersionTransferredReferrer PolicyDNS Resolutionkesponse Headers (2.900 Kb)alt-svc: h3=":443"; ma=86400cache-control: no-cache, onivatecontent-encoalng: oziocontent-language: encontent-secuntv-policv-revort-onv: scriot-src 'self 'unsate-inine' 'unsate-eval" • oo: hit.kawe307.701./4 Mb U.2.47 kB 0...4.91 kB 0.10.11 kB O...2.48 kB 0...2.43 kB 0...2.49 kB 0..2.48 kB O...2.73 kB O...2.43 kB 0...2.48 kB 0...2.48 kB 0...ucncio, slyto sie soll unsare mme mepencuttslasmebmimamcon mapedlonto yooMeaois.com nuos.cons.clouatare.com.me-sre sellmos.con.stagmg.tminy.com/nttes... nutos:S.intercomcan.com; connect-s/cnuos.apo.stacine.lminny.comnutos./meala.aoo.staging.liminnv.com [URL_WITH_CREDENTIALS] 4.61 min...
|
10928
|
|
10932
|
217
|
14
|
2026-04-14T09:04:42.339569+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157482339_m2.jpg...
|
Firefox
|
Jiminny — Work
|
1
|
https://app.staging.jiminny.com/ondemand?topic_id[
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
JY-20543 add AJ reports User pilot tracking by Lak JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira
Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Configure SSH access to multiple environment - Engineering - Confluence
Configure SSH access to multiple environment - Engineering - Confluence
Console Home | Console Home | us-east-2
Console Home | Console Home | us-east-2
SecurityGroup | EC2 | us-east-2
SecurityGroup | EC2 | us-east-2
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app
SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app
Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet
Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet
Jiminny
Jiminny
Close tab
Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf
Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf
Service-Desk - Queues - Platform team - Service space - Jira
Service-Desk - Queues - Platform team - Service space - Jira
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Configure SSH access to multiple environment - Engineering - Confluence
Configure SSH access to multiple environment - Engineering - Confluence
CloudWatch | us-east-2
CloudWatch | us-east-2
New Tab
New Tab
CloudWatch | us-east-2
CloudWatch | us-east-2
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
JY-18909-automated-reports-ask-jiminny ■ 869720
28
28
14
activities
Get Notified
Sort by Sort by: Most recent
Sort by
Sort by:
Most recent
Add Recording
common.ai-icon-alt
Topics:
Competitors
Show internal and external activities:
Show internal only
Save Search
Clear all
Saved searches Saved searches
Saved searches
Saved searches
Team
Search teams Search teams
Search teams
Search teams
Host
Search team members Search team members
Search team members
Search team members
Also search as participant
Participant
Search team members Search team members
Search team members
Search team members
Customer
Customer
Transcript
Search transcript
Select option Said by
Select option
Said by
Select option Anyone
Select option
Anyone
Period
All time
Topics
Competitors × Search topics
Competitors
×
Search topics
Activity type
Search activity types Search activity types
Search activity types
Search activity types
Duration
Min (minutes)
Max (minutes)
AI call score
Select AI call score Select AI call score
Select AI call score
Select AI call score
Automated call score
Select automated call score Select automated call score
Select automated call score
Select automated call score
Coaching score
Select coaching score Select coaching score
Select coaching score
Select coaching score
Coach
Search coaches Search coaches
Search coaches
Search coaches
Stage at call
Search stages Search stages
Search stages
Search stages
Current stage
Search stages Search stages
Search stages
Search stages
Language
Search language Search language
Search language
Search language
Playlist
Search playlists Search playlists
Search playlists
Search playlists
Pending CRM notes
Not logged to CRM
Recorded
Search recorded Search recorded
Search recorded
Search recorded
Show internal and external activities
Select option Show internal only
Select option
Show internal only
Platform
Search platforms Search platforms
Search platforms
Search platforms
Call type
Search channels Search channels
Search channels
Search channels
Outcome
Search CRM Outcome Search CRM Outcome
Search CRM Outcome
Search CRM Outcome
Deal value
Min (amount)
Max (amount)
Deal close date
All time
Deal age
0
1359d
2717d+
Talking speed
0
177 wpm
252 wpm+
Talk ratio
0%
40%
60%
100%
Patience
0s
1s
2s
3s+
Longest monologue
0
5m
10m+
Longest customer story
0
5m
10m+
Rep questions
0
25
50+
Engaging questions
0
25
50+
Insightful questions
0
25
50+
Customer questions
0
25
50+
Comments
0
1
2
5
10
20+
Host
Activity
Contact
Activity Type
Current Stage
Stats
Duration
Date
Jiminny Web SA Jiminny Salesforce App Training Number of favorites 0 Number of shares 0 Number of comments 0 Number of plays 4 47m11/07/2024, 2:28 PM
Jiminny
Salesforce App Training
Number of favorites
0
Number of shares
0
Number of comments
0
Number of plays
4
47m
11/07/2024, 2:28 PM
Bekkie Wetz Jiminny Bekkie/ Jules - renewals and ContractBook Number of favorites 1 Number of shares 0 Number of comments 0 Number of plays 3 44m25/06/2024, 3:09 PM
Jiminny
Bekkie/ Jules - renewals and ContractBook...
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":4,"bounds":{"left":0.00234375,"top":0.045138888,"width":0.0890625,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira","depth":4,"bounds":{"left":0.0,"top":0.08263889,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira","depth":5,"bounds":{"left":0.015625,"top":0.09236111,"width":0.11796875,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":4,"bounds":{"left":0.0,"top":0.11111111,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":5,"bounds":{"left":0.015625,"top":0.12083333,"width":0.18710938,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Configure SSH access to multiple environment - Engineering - Confluence","depth":4,"bounds":{"left":0.0,"top":0.13958333,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Configure SSH access to multiple environment - Engineering - Confluence","depth":5,"bounds":{"left":0.015625,"top":0.14930555,"width":0.1515625,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Console Home | Console Home | us-east-2","depth":4,"bounds":{"left":0.0,"top":0.16805555,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Console Home | Console Home | us-east-2","depth":5,"bounds":{"left":0.015625,"top":0.17777778,"width":0.08671875,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"SecurityGroup | EC2 | us-east-2","depth":4,"bounds":{"left":0.0,"top":0.19652778,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"SecurityGroup | EC2 | us-east-2","depth":5,"bounds":{"left":0.015625,"top":0.20625,"width":0.06484375,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":4,"bounds":{"left":0.0,"top":0.225,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":5,"bounds":{"left":0.015625,"top":0.23472223,"width":0.18710938,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app","depth":4,"bounds":{"left":0.0,"top":0.2534722,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app","depth":5,"bounds":{"left":0.015625,"top":0.26319444,"width":0.23476562,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet","depth":4,"bounds":{"left":0.0,"top":0.28194445,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet","depth":5,"bounds":{"left":0.015625,"top":0.29166666,"width":0.1984375,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Jiminny","depth":4,"bounds":{"left":0.0,"top":0.31041667,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"Jiminny","depth":5,"bounds":{"left":0.015625,"top":0.3201389,"width":0.015625,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close tab","depth":5,"bounds":{"left":0.07890625,"top":0.31666666,"width":0.009375,"height":0.016666668},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf","depth":4,"bounds":{"left":0.0,"top":0.33888888,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf","depth":5,"bounds":{"left":0.015625,"top":0.34861112,"width":0.1640625,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Service-Desk - Queues - Platform team - Service space - Jira","depth":4,"bounds":{"left":0.0,"top":0.3673611,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Service-Desk - Queues - Platform team - Service space - Jira","depth":5,"bounds":{"left":0.015625,"top":0.37708333,"width":0.12617187,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":4,"bounds":{"left":0.0,"top":0.39583334,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":5,"bounds":{"left":0.015625,"top":0.40555555,"width":0.18710938,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Configure SSH access to multiple environment - Engineering - Confluence","depth":4,"bounds":{"left":0.0,"top":0.42430556,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Configure SSH access to multiple environment - Engineering - Confluence","depth":5,"bounds":{"left":0.015625,"top":0.4340278,"width":0.1515625,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"CloudWatch | us-east-2","depth":4,"bounds":{"left":0.0,"top":0.45277777,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"CloudWatch | us-east-2","depth":5,"bounds":{"left":0.015625,"top":0.4625,"width":0.0484375,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"New Tab","depth":4,"bounds":{"left":0.0,"top":0.48125,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"New Tab","depth":5,"bounds":{"left":0.015625,"top":0.49097222,"width":0.017578125,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"CloudWatch | us-east-2","depth":4,"bounds":{"left":0.0,"top":0.50972223,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"CloudWatch | us-east-2","depth":5,"bounds":{"left":0.015625,"top":0.51944447,"width":0.0484375,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"New Tab","depth":4,"bounds":{"left":0.003125,"top":0.5395833,"width":0.08710937,"height":0.022222223},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"bounds":{"left":0.003125,"top":0.97430557,"width":0.0125,"height":0.022222223},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"bounds":{"left":0.01640625,"top":0.97430557,"width":0.0125,"height":0.022222223},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Tabs from other devices","depth":6,"bounds":{"left":0.029296875,"top":0.97430557,"width":0.0125,"height":0.022222223},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"bounds":{"left":0.0421875,"top":0.97430557,"width":0.0125,"height":0.022222223},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"bounds":{"left":0.05546875,"top":0.97430557,"width":0.0125,"height":0.022222223},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-18909-automated-reports-ask-jiminny ■ 869720","depth":9,"bounds":{"left":0.09453125,"top":0.9875,"width":0.11796875,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"28","depth":12,"bounds":{"left":0.096875,"top":0.925,"width":0.01875,"height":0.030555556},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"28","depth":14,"bounds":{"left":0.10664062,"top":0.9284722,"width":0.00546875,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"14","depth":14,"bounds":{"left":0.2421875,"top":0.061805554,"width":0.0109375,"height":0.017361112},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"activities","depth":14,"bounds":{"left":0.253125,"top":0.061805554,"width":0.031640626,"height":0.017361112},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Get Notified","depth":13,"bounds":{"left":0.55078125,"top":0.058333334,"width":0.051171876,"height":0.025},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXComboBox","text":"Sort by Sort by: Most recent","depth":13,"bounds":{"left":0.36171874,"top":0.057638887,"width":0.091796875,"height":0.025694445},"value":"Sort by Sort by: Most recent","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Sort by","depth":14,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Sort by:","depth":15,"bounds":{"left":0.3660156,"top":0.06458333,"width":0.019921875,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Most recent","depth":15,"bounds":{"left":0.3859375,"top":0.06458333,"width":0.030078124,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Add Recording","depth":13,"bounds":{"left":0.4910156,"top":0.058333334,"width":0.056640625,"height":0.025},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"common.ai-icon-alt","depth":14,"bounds":{"left":0.6050781,"top":0.05625,"width":0.0140625,"height":0.025},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Topics:","depth":15,"bounds":{"left":0.24570313,"top":0.10069445,"width":0.014453125,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Competitors","depth":15,"bounds":{"left":0.26210937,"top":0.10069445,"width":0.0265625,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Show internal and external activities:","depth":15,"bounds":{"left":0.30546874,"top":0.10069445,"width":0.07695313,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Show internal only","depth":15,"bounds":{"left":0.384375,"top":0.10069445,"width":0.0390625,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Save Search","depth":14,"bounds":{"left":0.440625,"top":0.09861111,"width":0.0390625,"height":0.013888889},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Clear all","depth":14,"bounds":{"left":0.48359376,"top":0.09861111,"width":0.030078124,"height":0.013888889},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXComboBox","text":"Saved searches Saved searches","depth":13,"bounds":{"left":0.1265625,"top":0.05486111,"width":0.095703125,"height":0.025},"value":"Saved searches Saved searches","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Saved searches","depth":15,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Saved searches","depth":16,"bounds":{"left":0.13085938,"top":0.06111111,"width":0.037109375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Team","depth":13,"bounds":{"left":0.1265625,"top":0.099305555,"width":0.012890625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search teams Search teams","depth":12,"bounds":{"left":0.1265625,"top":0.115277775,"width":0.095703125,"height":0.025},"value":"Search teams Search teams","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search teams","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search teams","depth":14,"bounds":{"left":0.13085938,"top":0.12222222,"width":0.032421876,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Host","depth":13,"bounds":{"left":0.1265625,"top":0.15,"width":0.01171875,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search team members Search team members","depth":12,"bounds":{"left":0.1265625,"top":0.16944444,"width":0.095703125,"height":0.025},"value":"Search team members Search team members","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search team members","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search team members","depth":14,"bounds":{"left":0.13085938,"top":0.17638889,"width":0.05390625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Also search as participant","depth":13,"bounds":{"left":0.1265625,"top":0.19930555,"width":0.062109374,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Participant","depth":13,"bounds":{"left":0.1265625,"top":0.225,"width":0.026953125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search team members Search team members","depth":12,"bounds":{"left":0.1265625,"top":0.24097222,"width":0.095703125,"height":0.025},"value":"Search team members Search team members","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search team members","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search team members","depth":14,"bounds":{"left":0.13085938,"top":0.24791667,"width":0.05390625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Customer","depth":13,"bounds":{"left":0.1265625,"top":0.27569443,"width":0.025390625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXTextField","text":"Customer","depth":12,"bounds":{"left":0.14140625,"top":0.2923611,"width":0.065625,"height":0.025},"help_text":"","placeholder":"Customer or Subject","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Transcript","depth":13,"bounds":{"left":0.1265625,"top":0.32777777,"width":0.02578125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXTextField","text":"Search transcript","depth":12,"bounds":{"left":0.14140625,"top":0.34791666,"width":0.065625,"height":0.025},"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXComboBox","text":"Select option Said by","depth":12,"bounds":{"left":0.1265625,"top":0.37708333,"width":0.095703125,"height":0.025694445},"value":"Select option Said by","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Select option","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Said by","depth":14,"bounds":{"left":0.13085938,"top":0.38402778,"width":0.0171875,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Select option Anyone","depth":12,"bounds":{"left":0.1265625,"top":0.40625,"width":0.095703125,"height":0.025694445},"value":"Select option Anyone","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Select option","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Anyone","depth":14,"bounds":{"left":0.13085938,"top":0.41319445,"width":0.01875,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Period","depth":13,"bounds":{"left":0.1265625,"top":0.44166666,"width":0.016015625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"All time","depth":14,"bounds":{"left":0.13203125,"top":0.46458334,"width":0.017578125,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Topics","depth":13,"bounds":{"left":0.1265625,"top":0.4923611,"width":0.015234375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Competitors × Search topics","depth":12,"bounds":{"left":0.1265625,"top":0.5083333,"width":0.095703125,"height":0.02638889},"value":"Competitors × Search topics","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Competitors","depth":15,"bounds":{"left":0.13359375,"top":0.5159722,"width":0.030859375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"×","depth":16,"bounds":{"left":0.1671875,"top":0.5152778,"width":0.003125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXTextField","text":"Search topics","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Activity type","depth":13,"bounds":{"left":0.1265625,"top":0.54444444,"width":0.03125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search activity types Search activity types","depth":12,"bounds":{"left":0.1265625,"top":0.56041664,"width":0.095703125,"height":0.025},"value":"Search activity types Search activity types","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search activity types","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search activity types","depth":14,"bounds":{"left":0.13085938,"top":0.5673611,"width":0.050390624,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Duration","depth":13,"bounds":{"left":0.1265625,"top":0.5951389,"width":0.023046875,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Min (minutes)","depth":13,"bounds":{"left":0.1265625,"top":0.6125,"width":0.03359375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Max (minutes)","depth":13,"bounds":{"left":0.16875,"top":0.6125,"width":0.034765624,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"AI call score","depth":13,"bounds":{"left":0.1265625,"top":0.6597222,"width":0.029296875,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Select AI call score Select AI call score","depth":12,"bounds":{"left":0.1265625,"top":0.67569447,"width":0.095703125,"height":0.025},"value":"Select AI call score Select AI call score","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Select AI call score","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Select AI call score","depth":14,"bounds":{"left":0.13085938,"top":0.6826389,"width":0.0453125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Automated call score","depth":13,"bounds":{"left":0.1265625,"top":0.7104167,"width":0.0515625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Select automated call score Select automated call score","depth":12,"bounds":{"left":0.1265625,"top":0.7263889,"width":0.095703125,"height":0.036111113},"value":"Select automated call score Select automated call score","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Select automated call score","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Select automated call score","depth":14,"bounds":{"left":0.13085938,"top":0.73194444,"width":0.051953126,"height":0.025694445},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Coaching score","depth":13,"bounds":{"left":0.1265625,"top":0.7722222,"width":0.037109375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Select coaching score Select coaching score","depth":12,"bounds":{"left":0.1265625,"top":0.7881944,"width":0.095703125,"height":0.025},"value":"Select coaching score Select coaching score","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Select coaching score","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Select coaching score","depth":14,"bounds":{"left":0.13085938,"top":0.7951389,"width":0.051953126,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Coach","depth":13,"bounds":{"left":0.1265625,"top":0.8229167,"width":0.01640625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search coaches Search coaches","depth":12,"bounds":{"left":0.1265625,"top":0.8388889,"width":0.095703125,"height":0.025},"value":"Search coaches Search coaches","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search coaches","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search coaches","depth":14,"bounds":{"left":0.13085938,"top":0.84583336,"width":0.0375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Stage at call","depth":13,"bounds":{"left":0.1265625,"top":0.8736111,"width":0.02890625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search stages Search stages","depth":12,"bounds":{"left":0.1265625,"top":0.88958335,"width":0.095703125,"height":0.025},"value":"Search stages Search stages","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search stages","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search stages","depth":14,"bounds":{"left":0.13085938,"top":0.89652777,"width":0.033203125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Current stage","depth":13,"bounds":{"left":0.1265625,"top":0.92430556,"width":0.03359375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search stages Search stages","depth":12,"bounds":{"left":0.1265625,"top":0.94027776,"width":0.095703125,"height":0.025},"value":"Search stages Search stages","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search stages","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search stages","depth":14,"bounds":{"left":0.13085938,"top":0.94722223,"width":0.033203125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Language","depth":13,"bounds":{"left":0.1265625,"top":0.975,"width":0.0234375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search language Search language","depth":12,"bounds":{"left":0.1265625,"top":0.9909722,"width":0.095703125,"height":0.009027779},"value":"Search language Search language","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search language","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search language","depth":14,"bounds":{"left":0.13085938,"top":0.99791664,"width":0.03984375,"height":0.0020833611},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Playlist","depth":13,"bounds":{"left":0.1265625,"top":1.0,"width":0.01796875,"height":-0.02569449},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search playlists Search playlists","depth":12,"bounds":{"left":0.1265625,"top":1.0,"width":0.095703125,"height":-0.041666627},"value":"Search playlists Search playlists","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search playlists","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search playlists","depth":14,"bounds":{"left":0.13085938,"top":1.0,"width":0.037890624,"height":-0.048611164},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Pending CRM notes","depth":13,"bounds":{"left":0.1265625,"top":1.0,"width":0.048046876,"height":-0.076388836},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Not logged to CRM","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Recorded","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search recorded Search recorded","depth":12,"value":"Search recorded Search recorded","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search recorded","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search recorded","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Show internal and external activities","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Select option Show internal only","depth":12,"value":"Select option Show internal only","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Select option","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Show internal only","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Platform","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search platforms Search platforms","depth":12,"value":"Search platforms Search platforms","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search platforms","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search platforms","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Call type","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search channels Search channels","depth":12,"value":"Search channels Search channels","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search channels","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search channels","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Outcome","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search CRM Outcome Search CRM Outcome","depth":12,"value":"Search CRM Outcome Search CRM Outcome","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search CRM Outcome","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search CRM Outcome","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Deal value","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Min (amount)","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Max (amount)","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Deal close date","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"All time","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Deal age","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"1359d","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2717d+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Talking speed","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"177 wpm","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"252 wpm+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Talk ratio","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0%","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"40%","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"60%","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"100%","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Patience","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0s","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"1s","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2s","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"3s+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Longest monologue","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"5m","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"10m+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Longest customer story","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"5m","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"10m+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Rep questions","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"25","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"50+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Engaging questions","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"25","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"50+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Insightful questions","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"25","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"50+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Customer questions","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"25","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"50+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Comments","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"1","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"5","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"10","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"20+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Host","depth":15,"bounds":{"left":0.2511719,"top":0.14097223,"width":0.0109375,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Activity","depth":15,"bounds":{"left":0.28632814,"top":0.14097223,"width":0.01796875,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Contact","depth":15,"bounds":{"left":0.3839844,"top":0.14097223,"width":0.018359374,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Activity Type","depth":15,"bounds":{"left":0.4152344,"top":0.14097223,"width":0.01796875,"height":0.025},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Current Stage","depth":15,"bounds":{"left":0.44921875,"top":0.14097223,"width":0.03203125,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Stats","depth":15,"bounds":{"left":0.49179688,"top":0.14097223,"width":0.011328125,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Duration","depth":15,"bounds":{"left":0.53085935,"top":0.14097223,"width":0.0203125,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Date","depth":15,"bounds":{"left":0.5589844,"top":0.14097223,"width":0.011328125,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Jiminny Web SA Jiminny Salesforce App Training Number of favorites 0 Number of shares 0 Number of comments 0 Number of plays 4 47m11/07/2024, 2:28 PM","depth":14,"bounds":{"left":0.24179688,"top":0.17847222,"width":0.37773436,"height":0.050694443},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Jiminny","depth":18,"bounds":{"left":0.28632814,"top":0.19166666,"width":0.017578125,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Salesforce App Training","depth":17,"bounds":{"left":0.28632814,"top":0.20555556,"width":0.053125,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Number of favorites","depth":18,"bounds":{"left":0.49257812,"top":0.19027779,"width":0.0203125,"height":0.03888889},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":18,"bounds":{"left":0.5015625,"top":0.19097222,"width":0.002734375,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Number of shares","depth":18,"bounds":{"left":0.49257812,"top":0.19027779,"width":0.01875,"height":0.03888889},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":18,"bounds":{"left":0.51875,"top":0.19097222,"width":0.002734375,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Number of comments","depth":18,"bounds":{"left":0.49257812,"top":0.19027779,"width":0.023828125,"height":0.03888889},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":18,"bounds":{"left":0.5015625,"top":0.2048611,"width":0.002734375,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Number of plays","depth":18,"bounds":{"left":0.49257812,"top":0.19027779,"width":0.01875,"height":0.03888889},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"4","depth":18,"bounds":{"left":0.51875,"top":0.2048611,"width":0.002734375,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"47m","depth":16,"bounds":{"left":0.53085935,"top":0.19791667,"width":0.01015625,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"11/07/2024, 2:28 PM","depth":16,"bounds":{"left":0.5589844,"top":0.19791667,"width":0.04921875,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Bekkie Wetz Jiminny Bekkie/ Jules - renewals and ContractBook Number of favorites 1 Number of shares 0 Number of comments 0 Number of plays 3 44m25/06/2024, 3:09 PM","depth":14,"bounds":{"left":0.24179688,"top":0.22916667,"width":0.37773436,"height":0.050694443},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Jiminny","depth":18,"bounds":{"left":0.28632814,"top":0.24236111,"width":0.017578125,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Bekkie/ Jules - renewals and ContractBook","depth":17,"bounds":{"left":0.28632814,"top":0.25625,"width":0.096875,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
-7551692132713273702
|
4256266838224859842
|
visual_change
|
accessibility
|
NULL
|
JY-20543 add AJ reports User pilot tracking by Lak JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira
Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Configure SSH access to multiple environment - Engineering - Confluence
Configure SSH access to multiple environment - Engineering - Confluence
Console Home | Console Home | us-east-2
Console Home | Console Home | us-east-2
SecurityGroup | EC2 | us-east-2
SecurityGroup | EC2 | us-east-2
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app
SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app
Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet
Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet
Jiminny
Jiminny
Close tab
Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf
Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf
Service-Desk - Queues - Platform team - Service space - Jira
Service-Desk - Queues - Platform team - Service space - Jira
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Configure SSH access to multiple environment - Engineering - Confluence
Configure SSH access to multiple environment - Engineering - Confluence
CloudWatch | us-east-2
CloudWatch | us-east-2
New Tab
New Tab
CloudWatch | us-east-2
CloudWatch | us-east-2
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
JY-18909-automated-reports-ask-jiminny ■ 869720
28
28
14
activities
Get Notified
Sort by Sort by: Most recent
Sort by
Sort by:
Most recent
Add Recording
common.ai-icon-alt
Topics:
Competitors
Show internal and external activities:
Show internal only
Save Search
Clear all
Saved searches Saved searches
Saved searches
Saved searches
Team
Search teams Search teams
Search teams
Search teams
Host
Search team members Search team members
Search team members
Search team members
Also search as participant
Participant
Search team members Search team members
Search team members
Search team members
Customer
Customer
Transcript
Search transcript
Select option Said by
Select option
Said by
Select option Anyone
Select option
Anyone
Period
All time
Topics
Competitors × Search topics
Competitors
×
Search topics
Activity type
Search activity types Search activity types
Search activity types
Search activity types
Duration
Min (minutes)
Max (minutes)
AI call score
Select AI call score Select AI call score
Select AI call score
Select AI call score
Automated call score
Select automated call score Select automated call score
Select automated call score
Select automated call score
Coaching score
Select coaching score Select coaching score
Select coaching score
Select coaching score
Coach
Search coaches Search coaches
Search coaches
Search coaches
Stage at call
Search stages Search stages
Search stages
Search stages
Current stage
Search stages Search stages
Search stages
Search stages
Language
Search language Search language
Search language
Search language
Playlist
Search playlists Search playlists
Search playlists
Search playlists
Pending CRM notes
Not logged to CRM
Recorded
Search recorded Search recorded
Search recorded
Search recorded
Show internal and external activities
Select option Show internal only
Select option
Show internal only
Platform
Search platforms Search platforms
Search platforms
Search platforms
Call type
Search channels Search channels
Search channels
Search channels
Outcome
Search CRM Outcome Search CRM Outcome
Search CRM Outcome
Search CRM Outcome
Deal value
Min (amount)
Max (amount)
Deal close date
All time
Deal age
0
1359d
2717d+
Talking speed
0
177 wpm
252 wpm+
Talk ratio
0%
40%
60%
100%
Patience
0s
1s
2s
3s+
Longest monologue
0
5m
10m+
Longest customer story
0
5m
10m+
Rep questions
0
25
50+
Engaging questions
0
25
50+
Insightful questions
0
25
50+
Customer questions
0
25
50+
Comments
0
1
2
5
10
20+
Host
Activity
Contact
Activity Type
Current Stage
Stats
Duration
Date
Jiminny Web SA Jiminny Salesforce App Training Number of favorites 0 Number of shares 0 Number of comments 0 Number of plays 4 47m11/07/2024, 2:28 PM
Jiminny
Salesforce App Training
Number of favorites
0
Number of shares
0
Number of comments
0
Number of plays
4
47m
11/07/2024, 2:28 PM
Bekkie Wetz Jiminny Bekkie/ Jules - renewals and ContractBook Number of favorites 1 Number of shares 0 Number of comments 0 Number of plays 3 44m25/06/2024, 3:09 PM
Jiminny
Bekkie/ Jules - renewals and ContractBook...
|
NULL
|
|
10933
|
217
|
15
|
2026-04-14T09:04:45.367220+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157485367_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEoitViewHistoryBookmarksProfilesToolsWi FirefoxFileEoitViewHistoryBookmarksProfilesToolsWindowHelphttps://app.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1|[URL_WITH_CREDENTIALS] 49 requestspeL-nuobMororoXr oo-xAblolylerosreceg meoe IrmoNCHICOLOJgKOlAZUT IMISSYUROeMeJb@qNlax-ebkay1Nt_luaGiUarFrtaz1/hrvgrDr-SBrUsupbs/Bclmcvbmhx8KplJfmK59243.45 KB 2.24 MB transterredFinish: 4.6/ min...
|
NULL
|
-4333485181252438742
|
NULL
|
visual_change
|
ocr
|
NULL
|
FirefoxFileEoitViewHistoryBookmarksProfilesToolsWi FirefoxFileEoitViewHistoryBookmarksProfilesToolsWindowHelphttps://app.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1|[URL_WITH_CREDENTIALS] 49 requestspeL-nuobMororoXr oo-xAblolylerosreceg meoe IrmoNCHICOLOJgKOlAZUT IMISSYUROeMeJb@qNlax-ebkay1Nt_luaGiUarFrtaz1/hrvgrDr-SBrUsupbs/Bclmcvbmhx8KplJfmK59243.45 KB 2.24 MB transterredFinish: 4.6/ min...
|
10932
|
|
10934
|
217
|
16
|
2026-04-14T09:04:48.407831+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157488407_m2.jpg...
|
Firefox
|
Jiminny — Work
|
1
|
app.staging.jiminny.com/ondemand?topic_id[]=e02f09 app.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1...
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
JY-20543 add AJ reports User pilot tracking by Lak JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira
Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Configure SSH access to multiple environment - Engineering - Confluence
Configure SSH access to multiple environment - Engineering - Confluence
Console Home | Console Home | us-east-2
Console Home | Console Home | us-east-2
SecurityGroup | EC2 | us-east-2
SecurityGroup | EC2 | us-east-2
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app
SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app
Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet
Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet
Jiminny
Jiminny
Close tab
Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf
Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf
Service-Desk - Queues - Platform team - Service space - Jira
Service-Desk - Queues - Platform team - Service space - Jira
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Configure SSH access to multiple environment - Engineering - Confluence
Configure SSH access to multiple environment - Engineering - Confluence
CloudWatch | us-east-2
CloudWatch | us-east-2
New Tab
New Tab
CloudWatch | us-east-2
CloudWatch | us-east-2
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
JY-18909-automated-reports-ask-jiminny ■ 869720
28
28
0
activities
Get Notified
Sort by Sort by: Most recent
Sort by
Sort by:
Most recent
Add Recording
common.ai-icon-alt
Team:
Product
Topics:
Competitors
Duration:
1m and above
Recorded:
Only Recorded
Show internal and external activities:
Show internal only
Save Search
Clear all
Saved searches Saved searches
Saved searches
Saved searches
Team
Product × Search teams
Product
×
Search teams
Host
Search team members Search team members
Search team members
Search team members
Also search as participant
Participant
Search team members Search team members
Search team members
Search team members
Customer
Customer
Transcript
Search transcript
Select option Said by
Select option
Said by
Select option Anyone
Select option
Anyone
Period
All time
Topics
Competitors × Search topics
Competitors
×
Search topics
Activity type
Search activity types Search activity types
Search activity types
Search activity types
Duration
Min (minutes)
1
Max (minutes)
AI call score
Select AI call score Select AI call score
Select AI call score
Select AI call score
Automated call score
Select automated call score Select automated call score
Select automated call score
Select automated call score
Coaching score
Select coaching score Select coaching score
Select coaching score
Select coaching score
Coach
Search coaches Search coaches
Search coaches
Search coaches
Stage at call
Search stages Search stages
Search stages
Search stages
Current stage
Search stages Search stages
Search stages
Search stages
Language
Search language Search language
Search language
Search language
Playlist
Search playlists Search playlists
Search playlists
Search playlists
Pending CRM notes
Not logged to CRM
Recorded
Search recorded Only Recorded
Search recorded
Only Recorded
Show internal and external activities
Select option Show internal only
Select option
Show internal only
Platform
Search platforms Search platforms
Search platforms
Search platforms
Call type
Search channels Search channels
Search channels
Search channels
Outcome
Search CRM Outcome Search CRM Outcome
Search CRM Outcome
Search CRM Outcome
Deal value
Min (amount)
Max (amount)
Deal close date
All time
Deal age
0
1359d
2717d+
Talking speed
0
177 wpm
252 wpm+
Talk ratio
0%
40%
60%
100%
Patience
0s
1s
2s
3s+
Longest monologue
0
5m
10m+
Longest customer story
0
5m
10m+
Rep questions
0
25
50+
Engaging questions
0
25
50+
Insightful questions
0
25
50+
Customer questions
0
25
50+...
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":4,"bounds":{"left":0.00234375,"top":0.045138888,"width":0.0890625,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira","depth":4,"bounds":{"left":0.0,"top":0.08263889,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira","depth":5,"bounds":{"left":0.015625,"top":0.09236111,"width":0.11796875,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":4,"bounds":{"left":0.0,"top":0.11111111,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":5,"bounds":{"left":0.015625,"top":0.12083333,"width":0.18710938,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Configure SSH access to multiple environment - Engineering - Confluence","depth":4,"bounds":{"left":0.0,"top":0.13958333,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Configure SSH access to multiple environment - Engineering - Confluence","depth":5,"bounds":{"left":0.015625,"top":0.14930555,"width":0.1515625,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Console Home | Console Home | us-east-2","depth":4,"bounds":{"left":0.0,"top":0.16805555,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Console Home | Console Home | us-east-2","depth":5,"bounds":{"left":0.015625,"top":0.17777778,"width":0.08671875,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"SecurityGroup | EC2 | us-east-2","depth":4,"bounds":{"left":0.0,"top":0.19652778,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"SecurityGroup | EC2 | us-east-2","depth":5,"bounds":{"left":0.015625,"top":0.20625,"width":0.06484375,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":4,"bounds":{"left":0.0,"top":0.225,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":5,"bounds":{"left":0.015625,"top":0.23472223,"width":0.18710938,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app","depth":4,"bounds":{"left":0.0,"top":0.2534722,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app","depth":5,"bounds":{"left":0.015625,"top":0.26319444,"width":0.23476562,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet","depth":4,"bounds":{"left":0.0,"top":0.28194445,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet","depth":5,"bounds":{"left":0.015625,"top":0.29166666,"width":0.1984375,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Jiminny","depth":4,"bounds":{"left":0.0,"top":0.31041667,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"Jiminny","depth":5,"bounds":{"left":0.015625,"top":0.3201389,"width":0.015625,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close tab","depth":5,"bounds":{"left":0.07890625,"top":0.31666666,"width":0.009375,"height":0.016666668},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf","depth":4,"bounds":{"left":0.0,"top":0.33888888,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf","depth":5,"bounds":{"left":0.015625,"top":0.34861112,"width":0.1640625,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Service-Desk - Queues - Platform team - Service space - Jira","depth":4,"bounds":{"left":0.0,"top":0.3673611,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Service-Desk - Queues - Platform team - Service space - Jira","depth":5,"bounds":{"left":0.015625,"top":0.37708333,"width":0.12617187,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":4,"bounds":{"left":0.0,"top":0.39583334,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":5,"bounds":{"left":0.015625,"top":0.40555555,"width":0.18710938,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Configure SSH access to multiple environment - Engineering - Confluence","depth":4,"bounds":{"left":0.0,"top":0.42430556,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Configure SSH access to multiple environment - Engineering - Confluence","depth":5,"bounds":{"left":0.015625,"top":0.4340278,"width":0.1515625,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"CloudWatch | us-east-2","depth":4,"bounds":{"left":0.0,"top":0.45277777,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"CloudWatch | us-east-2","depth":5,"bounds":{"left":0.015625,"top":0.4625,"width":0.0484375,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"New Tab","depth":4,"bounds":{"left":0.0,"top":0.48125,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"New Tab","depth":5,"bounds":{"left":0.015625,"top":0.49097222,"width":0.017578125,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"CloudWatch | us-east-2","depth":4,"bounds":{"left":0.0,"top":0.50972223,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"CloudWatch | us-east-2","depth":5,"bounds":{"left":0.015625,"top":0.51944447,"width":0.0484375,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"New Tab","depth":4,"bounds":{"left":0.003125,"top":0.5395833,"width":0.08710937,"height":0.022222223},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"bounds":{"left":0.003125,"top":0.97430557,"width":0.0125,"height":0.022222223},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"bounds":{"left":0.01640625,"top":0.97430557,"width":0.0125,"height":0.022222223},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Tabs from other devices","depth":6,"bounds":{"left":0.029296875,"top":0.97430557,"width":0.0125,"height":0.022222223},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"bounds":{"left":0.0421875,"top":0.97430557,"width":0.0125,"height":0.022222223},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"bounds":{"left":0.05546875,"top":0.97430557,"width":0.0125,"height":0.022222223},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-18909-automated-reports-ask-jiminny ■ 869720","depth":9,"bounds":{"left":0.09453125,"top":0.9875,"width":0.11796875,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"28","depth":12,"bounds":{"left":0.096875,"top":0.925,"width":0.01875,"height":0.030555556},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"28","depth":14,"bounds":{"left":0.10664062,"top":0.9284722,"width":0.00546875,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":14,"bounds":{"left":0.2421875,"top":0.061805554,"width":0.00625,"height":0.017361112},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"activities","depth":14,"bounds":{"left":0.2484375,"top":0.061805554,"width":0.031640626,"height":0.017361112},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Get Notified","depth":13,"bounds":{"left":0.55078125,"top":0.058333334,"width":0.051171876,"height":0.025},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXComboBox","text":"Sort by Sort by: Most recent","depth":13,"bounds":{"left":0.36171874,"top":0.057638887,"width":0.091796875,"height":0.025694445},"value":"Sort by Sort by: Most recent","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Sort by","depth":14,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Sort by:","depth":15,"bounds":{"left":0.3660156,"top":0.06458333,"width":0.019921875,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Most recent","depth":15,"bounds":{"left":0.3859375,"top":0.06458333,"width":0.030078124,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Add Recording","depth":13,"bounds":{"left":0.4910156,"top":0.058333334,"width":0.056640625,"height":0.025},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"common.ai-icon-alt","depth":14,"bounds":{"left":0.6050781,"top":0.05625,"width":0.0140625,"height":0.025},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":false,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Team:","depth":15,"bounds":{"left":0.24570313,"top":0.09652778,"width":0.0125,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Product","depth":15,"bounds":{"left":0.26015624,"top":0.09652778,"width":0.016796876,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Topics:","depth":15,"bounds":{"left":0.29375,"top":0.09652778,"width":0.014453125,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Competitors","depth":15,"bounds":{"left":0.31015626,"top":0.09652778,"width":0.0265625,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Duration:","depth":15,"bounds":{"left":0.35351562,"top":0.09652778,"width":0.019921875,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"1m and above","depth":15,"bounds":{"left":0.37539062,"top":0.09652778,"width":0.02890625,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Recorded:","depth":15,"bounds":{"left":0.42109376,"top":0.09652778,"width":0.021484375,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Only Recorded","depth":15,"bounds":{"left":0.44453126,"top":0.09652778,"width":0.031640626,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Show internal and external activities:","depth":15,"bounds":{"left":0.24570313,"top":0.121527776,"width":0.07734375,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Show internal only","depth":15,"bounds":{"left":0.325,"top":0.121527776,"width":0.038671874,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Save Search","depth":14,"bounds":{"left":0.2421875,"top":0.14930555,"width":0.0390625,"height":0.013888889},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Clear all","depth":14,"bounds":{"left":0.28515625,"top":0.14930555,"width":0.030078124,"height":0.013888889},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXComboBox","text":"Saved searches Saved searches","depth":13,"bounds":{"left":0.1265625,"top":0.05486111,"width":0.095703125,"height":0.025},"value":"Saved searches Saved searches","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Saved searches","depth":15,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Saved searches","depth":16,"bounds":{"left":0.13085938,"top":0.06111111,"width":0.037109375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Team","depth":13,"bounds":{"left":0.1265625,"top":0.099305555,"width":0.012890625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Product × Search teams","depth":12,"bounds":{"left":0.1265625,"top":0.115277775,"width":0.095703125,"height":0.02638889},"value":"Product × Search teams","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Product","depth":15,"bounds":{"left":0.13359375,"top":0.12291667,"width":0.01953125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"×","depth":16,"bounds":{"left":0.15585938,"top":0.12222222,"width":0.003125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXTextField","text":"Search teams","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Host","depth":13,"bounds":{"left":0.1265625,"top":0.15138888,"width":0.01171875,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search team members Search team members","depth":12,"bounds":{"left":0.1265625,"top":0.17083333,"width":0.095703125,"height":0.025},"value":"Search team members Search team members","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search team members","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search team members","depth":14,"bounds":{"left":0.13085938,"top":0.17777778,"width":0.05390625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Also search as participant","depth":13,"bounds":{"left":0.1265625,"top":0.20069444,"width":0.062109374,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Participant","depth":13,"bounds":{"left":0.1265625,"top":0.22638889,"width":0.026953125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search team members Search team members","depth":12,"bounds":{"left":0.1265625,"top":0.24236111,"width":0.095703125,"height":0.025},"value":"Search team members Search team members","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search team members","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search team members","depth":14,"bounds":{"left":0.13085938,"top":0.24930556,"width":0.05390625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Customer","depth":13,"bounds":{"left":0.1265625,"top":0.27708334,"width":0.025390625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXTextField","text":"Customer","depth":12,"bounds":{"left":0.14140625,"top":0.29375,"width":0.065625,"height":0.025},"help_text":"","placeholder":"Customer or Subject","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Transcript","depth":13,"bounds":{"left":0.1265625,"top":0.32916668,"width":0.02578125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXTextField","text":"Search transcript","depth":12,"bounds":{"left":0.14140625,"top":0.34930557,"width":0.065625,"height":0.025},"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXComboBox","text":"Select option Said by","depth":12,"bounds":{"left":0.1265625,"top":0.3784722,"width":0.095703125,"height":0.025694445},"value":"Select option Said by","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Select option","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Said by","depth":14,"bounds":{"left":0.13085938,"top":0.38541666,"width":0.0171875,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Select option Anyone","depth":12,"bounds":{"left":0.1265625,"top":0.40763888,"width":0.095703125,"height":0.025694445},"value":"Select option Anyone","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Select option","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Anyone","depth":14,"bounds":{"left":0.13085938,"top":0.41458333,"width":0.01875,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Period","depth":13,"bounds":{"left":0.1265625,"top":0.44305557,"width":0.016015625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"All time","depth":14,"bounds":{"left":0.13203125,"top":0.46597221,"width":0.017578125,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Topics","depth":13,"bounds":{"left":0.1265625,"top":0.49375,"width":0.015234375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Competitors × Search topics","depth":12,"bounds":{"left":0.1265625,"top":0.50972223,"width":0.095703125,"height":0.02638889},"value":"Competitors × Search topics","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Competitors","depth":15,"bounds":{"left":0.13359375,"top":0.5173611,"width":0.030859375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"×","depth":16,"bounds":{"left":0.1671875,"top":0.51666665,"width":0.003125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXTextField","text":"Search topics","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Activity type","depth":13,"bounds":{"left":0.1265625,"top":0.54583335,"width":0.03125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search activity types Search activity types","depth":12,"bounds":{"left":0.1265625,"top":0.56180555,"width":0.095703125,"height":0.025},"value":"Search activity types Search activity types","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search activity types","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search activity types","depth":14,"bounds":{"left":0.13085938,"top":0.56875,"width":0.050390624,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Duration","depth":13,"bounds":{"left":0.1265625,"top":0.59652776,"width":0.023046875,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Min (minutes)","depth":13,"bounds":{"left":0.1265625,"top":0.61388886,"width":0.03359375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"1","depth":13,"bounds":{"left":0.13203125,"top":0.6333333,"width":0.003125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Max (minutes)","depth":13,"bounds":{"left":0.16875,"top":0.61388886,"width":0.034765624,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"AI call score","depth":13,"bounds":{"left":0.1265625,"top":0.6611111,"width":0.029296875,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Select AI call score Select AI call score","depth":12,"bounds":{"left":0.1265625,"top":0.6770833,"width":0.095703125,"height":0.025},"value":"Select AI call score Select AI call score","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Select AI call score","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Select AI call score","depth":14,"bounds":{"left":0.13085938,"top":0.6840278,"width":0.0453125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Automated call score","depth":13,"bounds":{"left":0.1265625,"top":0.7118056,"width":0.0515625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Select automated call score Select automated call score","depth":12,"bounds":{"left":0.1265625,"top":0.7277778,"width":0.095703125,"height":0.036111113},"value":"Select automated call score Select automated call score","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Select automated call score","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Select automated call score","depth":14,"bounds":{"left":0.13085938,"top":0.73333335,"width":0.051953126,"height":0.025694445},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Coaching score","depth":13,"bounds":{"left":0.1265625,"top":0.7736111,"width":0.037109375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Select coaching score Select coaching score","depth":12,"bounds":{"left":0.1265625,"top":0.7895833,"width":0.095703125,"height":0.025},"value":"Select coaching score Select coaching score","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Select coaching score","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Select coaching score","depth":14,"bounds":{"left":0.13085938,"top":0.7965278,"width":0.051953126,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Coach","depth":13,"bounds":{"left":0.1265625,"top":0.82430553,"width":0.01640625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search coaches Search coaches","depth":12,"bounds":{"left":0.1265625,"top":0.8402778,"width":0.095703125,"height":0.025},"value":"Search coaches Search coaches","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search coaches","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search coaches","depth":14,"bounds":{"left":0.13085938,"top":0.8472222,"width":0.0375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Stage at call","depth":13,"bounds":{"left":0.1265625,"top":0.875,"width":0.02890625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search stages Search stages","depth":12,"bounds":{"left":0.1265625,"top":0.8909722,"width":0.095703125,"height":0.025},"value":"Search stages Search stages","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search stages","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search stages","depth":14,"bounds":{"left":0.13085938,"top":0.8979167,"width":0.033203125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Current stage","depth":13,"bounds":{"left":0.1265625,"top":0.92569447,"width":0.03359375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search stages Search stages","depth":12,"bounds":{"left":0.1265625,"top":0.94166666,"width":0.095703125,"height":0.025},"value":"Search stages Search stages","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search stages","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search stages","depth":14,"bounds":{"left":0.13085938,"top":0.94861114,"width":0.033203125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Language","depth":13,"bounds":{"left":0.1265625,"top":0.9763889,"width":0.0234375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search language Search language","depth":12,"bounds":{"left":0.1265625,"top":0.9923611,"width":0.095703125,"height":0.0076388717},"value":"Search language Search language","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search language","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search language","depth":14,"bounds":{"left":0.13085938,"top":0.99930555,"width":0.03984375,"height":0.0006944537},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Playlist","depth":13,"bounds":{"left":0.1265625,"top":1.0,"width":0.01796875,"height":-0.027083278},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search playlists Search playlists","depth":12,"bounds":{"left":0.1265625,"top":1.0,"width":0.095703125,"height":-0.043055534},"value":"Search playlists Search playlists","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search playlists","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search playlists","depth":14,"bounds":{"left":0.13085938,"top":1.0,"width":0.037890624,"height":-0.049999952},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Pending CRM notes","depth":13,"bounds":{"left":0.1265625,"top":1.0,"width":0.048046876,"height":-0.07777774},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Not logged to CRM","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Recorded","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search recorded Only Recorded","depth":12,"value":"Search recorded Only Recorded","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search recorded","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Only Recorded","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Show internal and external activities","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Select option Show internal only","depth":12,"value":"Select option Show internal only","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Select option","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Show internal only","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Platform","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search platforms Search platforms","depth":12,"value":"Search platforms Search platforms","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search platforms","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search platforms","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Call type","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search channels Search channels","depth":12,"value":"Search channels Search channels","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search channels","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search channels","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Outcome","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search CRM Outcome Search CRM Outcome","depth":12,"value":"Search CRM Outcome Search CRM Outcome","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search CRM Outcome","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search CRM Outcome","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Deal value","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Min (amount)","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Max (amount)","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Deal close date","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"All time","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Deal age","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"1359d","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2717d+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Talking speed","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"177 wpm","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"252 wpm+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Talk ratio","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0%","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"40%","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"60%","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"100%","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Patience","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0s","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"1s","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2s","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"3s+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Longest monologue","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"5m","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"10m+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Longest customer story","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"5m","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"10m+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Rep questions","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"25","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"50+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Engaging questions","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"25","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"50+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Insightful questions","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"25","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"50+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Customer questions","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"25","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"50+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
4131468604803394450
|
1369459477212459242
|
visual_change
|
accessibility
|
NULL
|
JY-20543 add AJ reports User pilot tracking by Lak JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira
Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Configure SSH access to multiple environment - Engineering - Confluence
Configure SSH access to multiple environment - Engineering - Confluence
Console Home | Console Home | us-east-2
Console Home | Console Home | us-east-2
SecurityGroup | EC2 | us-east-2
SecurityGroup | EC2 | us-east-2
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app
SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app
Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet
Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet
Jiminny
Jiminny
Close tab
Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf
Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf
Service-Desk - Queues - Platform team - Service space - Jira
Service-Desk - Queues - Platform team - Service space - Jira
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Configure SSH access to multiple environment - Engineering - Confluence
Configure SSH access to multiple environment - Engineering - Confluence
CloudWatch | us-east-2
CloudWatch | us-east-2
New Tab
New Tab
CloudWatch | us-east-2
CloudWatch | us-east-2
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
JY-18909-automated-reports-ask-jiminny ■ 869720
28
28
0
activities
Get Notified
Sort by Sort by: Most recent
Sort by
Sort by:
Most recent
Add Recording
common.ai-icon-alt
Team:
Product
Topics:
Competitors
Duration:
1m and above
Recorded:
Only Recorded
Show internal and external activities:
Show internal only
Save Search
Clear all
Saved searches Saved searches
Saved searches
Saved searches
Team
Product × Search teams
Product
×
Search teams
Host
Search team members Search team members
Search team members
Search team members
Also search as participant
Participant
Search team members Search team members
Search team members
Search team members
Customer
Customer
Transcript
Search transcript
Select option Said by
Select option
Said by
Select option Anyone
Select option
Anyone
Period
All time
Topics
Competitors × Search topics
Competitors
×
Search topics
Activity type
Search activity types Search activity types
Search activity types
Search activity types
Duration
Min (minutes)
1
Max (minutes)
AI call score
Select AI call score Select AI call score
Select AI call score
Select AI call score
Automated call score
Select automated call score Select automated call score
Select automated call score
Select automated call score
Coaching score
Select coaching score Select coaching score
Select coaching score
Select coaching score
Coach
Search coaches Search coaches
Search coaches
Search coaches
Stage at call
Search stages Search stages
Search stages
Search stages
Current stage
Search stages Search stages
Search stages
Search stages
Language
Search language Search language
Search language
Search language
Playlist
Search playlists Search playlists
Search playlists
Search playlists
Pending CRM notes
Not logged to CRM
Recorded
Search recorded Only Recorded
Search recorded
Only Recorded
Show internal and external activities
Select option Show internal only
Select option
Show internal only
Platform
Search platforms Search platforms
Search platforms
Search platforms
Call type
Search channels Search channels
Search channels
Search channels
Outcome
Search CRM Outcome Search CRM Outcome
Search CRM Outcome
Search CRM Outcome
Deal value
Min (amount)
Max (amount)
Deal close date
All time
Deal age
0
1359d
2717d+
Talking speed
0
177 wpm
252 wpm+
Talk ratio
0%
40%
60%
100%
Patience
0s
1s
2s
3s+
Longest monologue
0
5m
10m+
Longest customer story
0
5m
10m+
Rep questions
0
25
50+
Engaging questions
0
25
50+
Insightful questions
0
25
50+
Customer questions
0
25
50+...
|
NULL
|
|
10935
|
217
|
17
|
2026-04-14T09:04:51.448363+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157491448_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEoitViewHistoryBookmarksProfilesToolsWi FirefoxFileEoitViewHistoryBookmarksProfilesToolsWindowHelpapp.staging.jiminny.com/ondemand?topic_id[=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1You are currently impersonating Nikolay Yankov <)Saved searchesO activitiesSort by: Most recentPlatform Sprint 1 Q2 - Platform TealeamJY-20543 add AJ reports User pilo(Product x)Z Configure SSH access to multipleHost@ Console Home | Console Home | usSecurityGroup | EC2 |us-east-210Search team membersAlso search as participantJY-20543 add AJ reports User piloSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc(x) Configure SSH access to multipleFal CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabParticipantSearch team membersCustomer (?• Customer or SubiectiTranscript ©Q Search transcriptSaid byAnyonePeriodiAll timeIopIcs( Competitors *)Activity typeSearch activity typesDuration ®Min (minutes) Max (minutes)Al call scoreSelect Al call scoreAutomated call scoreSelect automated callscoreCoaching scoreSelect coaching scoreCoach ©Search coachesStage at callSearch stagesCurrent stageSearch stagesleam: ProductxTopics: Competitors xDuration: 1m and above XRecorded: Only Recorded XShow internal and external activities: Show internal only X )b) Save Search(—) Clear alliSorry, we didn't find any matches for your filters.JY-18909-automated-reports-ask-iiminny = 869720* Add Recording |A Get Notified, 0half Support Daily • in 2h 56mACR O InspectorConsole• DebuggerN Network{) Style Editor( Performance7 Filter URLsAll HTMLCSsMediaotheCtatucMethodDomainInitiator200POSTAr.loar-in.comTasoonxat/olattorm-staqinaxr=0-019d8028-3ett-/ xhn200POSTA Y 036719.ing.../api/5627310/envelope/?sentry_version=7&sentry_ke fetch200POST• g 036719.ing..ap1/562/310/envelope/?sentryversion=/&sentry_ke tetch200POSTA B 036719.ing.../api/5627310/envelope/?sentry_version=7&sentry_ke sentry-B0ScDkXd...200POSTA 7 036719.ing...apl/boz/s1u envelooe sentry version=/asentry ke sentrv-buscukxo.200GETA app.staging.ji...search?status[l=completed&sort_by=dateHeld& xhr200GETA app.staging.ji..recentA xhr200200GETA app.stagingji...saved-searchA xhrGETapp.staging ji..integrationsxhr200GETA app.stagingji...on-demandrtopic 1c=e021093-co/0-4706-ac4 Xhn200GETA find.userpilot.ioNX-094be170200POST200A app.staging,-ji...xhrPOSTAr.logr-in.comi?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhrO: MemoryTypeIsonjsonjsonjson100% C•Tue 14 Apr 12:04:51E Storage0 99+_ Disable Cache No Throttling 50.Transferred6,12 KB500 B179 ms2 B | 147 msb00 B500 B19o me500 B2B95 mg6,28 KВ 2421kB1483 ms5.65 kB 15.26 kB801ms3.62 kB1.42 kB• 1010 ms3.83 kB5.53 kB1331 ms864k31481 mscached3.11 KB127.67 kB62 B0 ms96 B1 595 msI 355 msÔ 13 requests|131./9KB 185 KB transterredFinish: 4.31s DOMContentLoaded: 369 ms load: 518 ms...
|
NULL
|
-4179115651899084107
|
NULL
|
visual_change
|
ocr
|
NULL
|
FirefoxFileEoitViewHistoryBookmarksProfilesToolsWi FirefoxFileEoitViewHistoryBookmarksProfilesToolsWindowHelpapp.staging.jiminny.com/ondemand?topic_id[=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1You are currently impersonating Nikolay Yankov <)Saved searchesO activitiesSort by: Most recentPlatform Sprint 1 Q2 - Platform TealeamJY-20543 add AJ reports User pilo(Product x)Z Configure SSH access to multipleHost@ Console Home | Console Home | usSecurityGroup | EC2 |us-east-210Search team membersAlso search as participantJY-20543 add AJ reports User piloSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc(x) Configure SSH access to multipleFal CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabParticipantSearch team membersCustomer (?• Customer or SubiectiTranscript ©Q Search transcriptSaid byAnyonePeriodiAll timeIopIcs( Competitors *)Activity typeSearch activity typesDuration ®Min (minutes) Max (minutes)Al call scoreSelect Al call scoreAutomated call scoreSelect automated callscoreCoaching scoreSelect coaching scoreCoach ©Search coachesStage at callSearch stagesCurrent stageSearch stagesleam: ProductxTopics: Competitors xDuration: 1m and above XRecorded: Only Recorded XShow internal and external activities: Show internal only X )b) Save Search(—) Clear alliSorry, we didn't find any matches for your filters.JY-18909-automated-reports-ask-iiminny = 869720* Add Recording |A Get Notified, 0half Support Daily • in 2h 56mACR O InspectorConsole• DebuggerN Network{) Style Editor( Performance7 Filter URLsAll HTMLCSsMediaotheCtatucMethodDomainInitiator200POSTAr.loar-in.comTasoonxat/olattorm-staqinaxr=0-019d8028-3ett-/ xhn200POSTA Y 036719.ing.../api/5627310/envelope/?sentry_version=7&sentry_ke fetch200POST• g 036719.ing..ap1/562/310/envelope/?sentryversion=/&sentry_ke tetch200POSTA B 036719.ing.../api/5627310/envelope/?sentry_version=7&sentry_ke sentry-B0ScDkXd...200POSTA 7 036719.ing...apl/boz/s1u envelooe sentry version=/asentry ke sentrv-buscukxo.200GETA app.staging.ji...search?status[l=completed&sort_by=dateHeld& xhr200GETA app.staging.ji..recentA xhr200200GETA app.stagingji...saved-searchA xhrGETapp.staging ji..integrationsxhr200GETA app.stagingji...on-demandrtopic 1c=e021093-co/0-4706-ac4 Xhn200GETA find.userpilot.ioNX-094be170200POST200A app.staging,-ji...xhrPOSTAr.logr-in.comi?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhrO: MemoryTypeIsonjsonjsonjson100% C•Tue 14 Apr 12:04:51E Storage0 99+_ Disable Cache No Throttling 50.Transferred6,12 KB500 B179 ms2 B | 147 msb00 B500 B19o me500 B2B95 mg6,28 KВ 2421kB1483 ms5.65 kB 15.26 kB801ms3.62 kB1.42 kB• 1010 ms3.83 kB5.53 kB1331 ms864k31481 mscached3.11 KB127.67 kB62 B0 ms96 B1 595 msI 355 msÔ 13 requests|131./9KB 185 KB transterredFinish: 4.31s DOMContentLoaded: 369 ms load: 518 ms...
|
10934
|
|
10937
|
217
|
18
|
2026-04-14T09:04:53.139189+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157493139_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEoitViewHistoryBookmarksProfilesToolsWi FirefoxFileEoitViewHistoryBookmarksProfilesToolsWindowHelpapp.staging.jiminny.com/ondemand?topic_id[=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1You are currently impersonating Nikolay Yankov <)Saved searchesO activitiesSort by: Most recentPlatform Sprint 1 Q2 - Platform TealeamJY-20543 add AJ reports User pilo(Product x)Z Configure SSH access to multipleHost@ Console Home | Console Home | usSecurityGroup | EC2 |us-east-210Search team membersAlso search as participantJY-20543 add AJ reports User piloSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc(x) Configure SSH access to multipleFal CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabParticipantSearch team membersCustomer (?• Customer or SubiectiTranscript ©Q Search transcriptSaid byAnyonePeriodiAll timeIopIcs( Competitors *)Activity typeSearch activity typesDuration ®Min (minutes) Max (minutes)Al call scoreSelect Al call scoreAutomated call scoreSelect automated callscoreCoaching scoreSelect coaching scoreCoach ©Search coachesStage at callSearch stagesCurrent stageSearch stagesleam: ProductxTopics: Competitors xDuration: 1m and above XRecorded: Only Recorded XShow internal and external activities: Show internal only X )b) Save Search(—) Clear alliSorry, we didn't find any matches for your filters.JY-18909-automated-reports-ask-iiminny = 869720* Add RecordingÀ Get Notified, 0half Support Daily • in 2h 56mACR O InspectorConsole• DebuggerN Network{) Style Editor( Performance7 Filter URLsAll HTMLCSsMediaotheCtatucMethodDomainInitiator200POSTAr.loar-in.comTasoonxat/olattorm-staqinaxr=0-019d8028-3ett-/ xhn200POSTA Y 036719.ing.../api/5627310/envelope/?sentry_version=7&sentry_ke fetch200POST• g 036719.ing..ap1/562/310/envelope/?sentryversion=/&sentry_ke tetch200POSTA B 036719.ing.../api/5627310/envelope/?sentry_version=7&sentry_ke sentry-B0ScDkXd...200POSTA 7 036719.ing...apl/boz/s1u envelooe sentry version=/asentry ke sentrv-buscukxo.200GETA app.staging.ji...search?status[l=completed&sort_by=dateHeld& xhr200GETA app.staging.ji..recentA xhr200200GETA app.stagingji...saved-searchA xhrGETapp.staging ji..integrationsxhr200GETA app.stagingji...on-demandrtopic 1c=e021093-co/0-4706-ac4 Xhn200GET200A find.userpilot.ioNX-094be170POST200A app.staging,-ji...xhrPOSTAr.logr-in.comi?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhrO: MemoryTypeIsonjsonjsonjson100% C•Tue 14 Apr 12:04:52E Storage0 99+_ Disable Cache No Throttling 50.Transferred6,12 KB500 B179 ms2 B | 147 msb00 B500 B19o me500 B2B95 mg6,28 KВ 2421kB1483 ms5.65 kB 15.26 kB801ms3.62 kB1.42 kB• 1010 ms3.83 kB5.53 kB1331 ms85.21 kB1481 mscached3.11 KB127.67 kB62 B0 ms96 B1 595 msI 355 msÔ 13 requests|131./9KB 185 KB transterredFinish: 4.31s DOMContentLoaded: 369 ms load: 518 ms...
|
NULL
|
3212609949678243446
|
NULL
|
click
|
ocr
|
NULL
|
FirefoxFileEoitViewHistoryBookmarksProfilesToolsWi FirefoxFileEoitViewHistoryBookmarksProfilesToolsWindowHelpapp.staging.jiminny.com/ondemand?topic_id[=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1You are currently impersonating Nikolay Yankov <)Saved searchesO activitiesSort by: Most recentPlatform Sprint 1 Q2 - Platform TealeamJY-20543 add AJ reports User pilo(Product x)Z Configure SSH access to multipleHost@ Console Home | Console Home | usSecurityGroup | EC2 |us-east-210Search team membersAlso search as participantJY-20543 add AJ reports User piloSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc(x) Configure SSH access to multipleFal CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabParticipantSearch team membersCustomer (?• Customer or SubiectiTranscript ©Q Search transcriptSaid byAnyonePeriodiAll timeIopIcs( Competitors *)Activity typeSearch activity typesDuration ®Min (minutes) Max (minutes)Al call scoreSelect Al call scoreAutomated call scoreSelect automated callscoreCoaching scoreSelect coaching scoreCoach ©Search coachesStage at callSearch stagesCurrent stageSearch stagesleam: ProductxTopics: Competitors xDuration: 1m and above XRecorded: Only Recorded XShow internal and external activities: Show internal only X )b) Save Search(—) Clear alliSorry, we didn't find any matches for your filters.JY-18909-automated-reports-ask-iiminny = 869720* Add RecordingÀ Get Notified, 0half Support Daily • in 2h 56mACR O InspectorConsole• DebuggerN Network{) Style Editor( Performance7 Filter URLsAll HTMLCSsMediaotheCtatucMethodDomainInitiator200POSTAr.loar-in.comTasoonxat/olattorm-staqinaxr=0-019d8028-3ett-/ xhn200POSTA Y 036719.ing.../api/5627310/envelope/?sentry_version=7&sentry_ke fetch200POST• g 036719.ing..ap1/562/310/envelope/?sentryversion=/&sentry_ke tetch200POSTA B 036719.ing.../api/5627310/envelope/?sentry_version=7&sentry_ke sentry-B0ScDkXd...200POSTA 7 036719.ing...apl/boz/s1u envelooe sentry version=/asentry ke sentrv-buscukxo.200GETA app.staging.ji...search?status[l=completed&sort_by=dateHeld& xhr200GETA app.staging.ji..recentA xhr200200GETA app.stagingji...saved-searchA xhrGETapp.staging ji..integrationsxhr200GETA app.stagingji...on-demandrtopic 1c=e021093-co/0-4706-ac4 Xhn200GET200A find.userpilot.ioNX-094be170POST200A app.staging,-ji...xhrPOSTAr.logr-in.comi?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhrO: MemoryTypeIsonjsonjsonjson100% C•Tue 14 Apr 12:04:52E Storage0 99+_ Disable Cache No Throttling 50.Transferred6,12 KB500 B179 ms2 B | 147 msb00 B500 B19o me500 B2B95 mg6,28 KВ 2421kB1483 ms5.65 kB 15.26 kB801ms3.62 kB1.42 kB• 1010 ms3.83 kB5.53 kB1331 ms85.21 kB1481 mscached3.11 KB127.67 kB62 B0 ms96 B1 595 msI 355 msÔ 13 requests|131./9KB 185 KB transterredFinish: 4.31s DOMContentLoaded: 369 ms load: 518 ms...
|
NULL
|
|
10939
|
217
|
19
|
2026-04-14T09:04:54.450745+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157494450_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFilePlatform Sprint 1 Q2 - Platform TeaJY-2 FirefoxFilePlatform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloZ Configure SSH access to multiple@ Console Home | Console Home | usSecurityGroup | EC2 |us-east-2JY-20543 add AJ reports User piloSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc(x) Configure SSH access to multipleCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabEoitViewHistory10$BookmarksProfilesToolsWindowHelphttps://app.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1|Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira - jiminny.atlassian.net/jira/software/c/projects/JY/boards/37JY-20543 add AJ reports User pilot tracking by LakyLak • Pull Request #11932 • jiminny/app Switch to TabTeaJiminny - app.staging.jiminny.com/ai-reportsInbox (1,540) - [EMAIL] - Jiminny Mail - mail.google.com/mail/u/0/#inboxHosCloudWatch | us-east-2 Switch to TabMeet - Daily - Platform - meet.google.com/mie-gawc-dsiAlsowikipeala - wikipedia.orgParlCUSRecent searchesgmailTrending on Googleтурска лираTrarкарлос алкарас3 керлнска праресионален тенисистSearch transcriptSaid byAnyonePeriodiAll timeIopIcs( Competitors *)Activity typeSearch activity typesDuration ®Min (minutes) Max (minutes)Al call scoreSelect Al call scoreAutomated call scoreSelect automated callscoreCoaching scoreSelect coaching scoreCoach ©Search coachesStage at callSearch stagesCurrent stageSearch stagesJY-18909-automated-reports-ask-iiminny = 869720)halSupport Daily - in 2h 56 mA100% CS•Tue 14 Apr 12:04:54Waes"mhoomE Storage0 99+_ Disable Cache No Throttling + 50:Transferred5.12 kB0 8 |179 ms500 B2 B | 147 msb00 B2 B 1 95 ms500 B2 B |95 ms500 B2B95 ms6.28 KB 24.21 kB 1483 ms5.65 kB 15.26 kB/801 ms3.62 kB1.42 KB1010 ms3.83 kB5.53 kB1331 ms864k31481 mscached62 B3.11 KB96B127.67 kB3.39 kB1 595 ms1 355 ms148 ms© 14 requests|131./9KB/ 188.39 kB transterredFinish: 7.50 s DOMContentLoaded: 369 ms load: 518 ms...
|
NULL
|
-1288930026332589331
|
NULL
|
visual_change
|
ocr
|
NULL
|
FirefoxFilePlatform Sprint 1 Q2 - Platform TeaJY-2 FirefoxFilePlatform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloZ Configure SSH access to multiple@ Console Home | Console Home | usSecurityGroup | EC2 |us-east-2JY-20543 add AJ reports User piloSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc(x) Configure SSH access to multipleCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabEoitViewHistory10$BookmarksProfilesToolsWindowHelphttps://app.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1|Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira - jiminny.atlassian.net/jira/software/c/projects/JY/boards/37JY-20543 add AJ reports User pilot tracking by LakyLak • Pull Request #11932 • jiminny/app Switch to TabTeaJiminny - app.staging.jiminny.com/ai-reportsInbox (1,540) - [EMAIL] - Jiminny Mail - mail.google.com/mail/u/0/#inboxHosCloudWatch | us-east-2 Switch to TabMeet - Daily - Platform - meet.google.com/mie-gawc-dsiAlsowikipeala - wikipedia.orgParlCUSRecent searchesgmailTrending on Googleтурска лираTrarкарлос алкарас3 керлнска праресионален тенисистSearch transcriptSaid byAnyonePeriodiAll timeIopIcs( Competitors *)Activity typeSearch activity typesDuration ®Min (minutes) Max (minutes)Al call scoreSelect Al call scoreAutomated call scoreSelect automated callscoreCoaching scoreSelect coaching scoreCoach ©Search coachesStage at callSearch stagesCurrent stageSearch stagesJY-18909-automated-reports-ask-iiminny = 869720)halSupport Daily - in 2h 56 mA100% CS•Tue 14 Apr 12:04:54Waes"mhoomE Storage0 99+_ Disable Cache No Throttling + 50:Transferred5.12 kB0 8 |179 ms500 B2 B | 147 msb00 B2 B 1 95 ms500 B2 B |95 ms500 B2B95 ms6.28 KB 24.21 kB 1483 ms5.65 kB 15.26 kB/801 ms3.62 kB1.42 KB1010 ms3.83 kB5.53 kB1331 ms864k31481 mscached62 B3.11 KB96B127.67 kB3.39 kB1 595 ms1 355 ms148 ms© 14 requests|131./9KB/ 188.39 kB transterredFinish: 7.50 s DOMContentLoaded: 369 ms load: 518 ms...
|
10937
|
|
10941
|
217
|
20
|
2026-04-14T09:04:57.079943+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157497079_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEoitViewHistoryPlatform Sprint 1 Q2 - P FirefoxFileEoitViewHistoryPlatform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloZ Configure SSH access to multipleConsole Home | Console Home | usSecurityGroup | EC2 |us-east-2JY-20543 add AJ reports User piloSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny¿Ask Jiminny test report - 8 Aor 201BookmarksProfilesToolsWindowHelp10$app.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1Jiminny - http://app.staging.jiminny.com/ondemand?topic_id[=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1Firefox SuggestTeaHosJiminny - app.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1Jiminny -app.staging.jiminny.com/ondemand7topic._jd[=e02f0932-cb78-41bG-ac41-&b8db1392146&include_internal_conversations=18sequence_number=4Jiminny - app.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4AlsoParJiminny - app.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=3Jiminny - app.staging.jiminny.com/ondemand?topic_idlI=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=3Jiminny - app.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=1search team membersiCustomer (?Customer or subiectiTranscript ©Q Search transcript, 0half Support Daily • in 2h 56mAS080088GETGETGETPOSTPOSTA app.staging.ji...saved-searchA app.staging.i...integrationsa xhrxhrA app.stagingji...on-demandrtonic 1c =e0210932-c0/0-4106-ac 4 xhnA find.userpilot.ioNX-094be170A app.staging.ji...Ar.logr-in.comAr.logr-in.com4 xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhr100% CS•Tue 14 Apr 12:04:56E Storage0 99+_ Disable Cache No Throttling + 50:Transferred6,12 KB0 8 |179 ms500 B2 B | 147 msb00 B2 B 1 95 ms500 B2 B |95 ms500 B2B95 ms6.28 KB 24.21KB 1483 ms5.65 kB 15.26 kB/801 ms3.62 kB1.42 kBI 1010 ms3.83 kB5.53 kB1331 ms8b4kь1481 mscached62 B3.11 KB96B127.67 kB3.39 kB595 ms1 355 ms148 ms≤ Service-Desk - Queues - PlatformJY-20543 add AJ reports User pilc& Configure SSH access to multiple eCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabSaid byAnyonePeriodiAll timeIopIcs( Competitors *)Activity typeSearch activity typesDuration ®Min (minutes) Max (minutes)Al call scoreSelect Al call scoreAutomated call scoreSelect automated calliscoreCoaching scoreSelect coaching scoreCoach ©Search coachesStage at callSearch stagesCurrent stageSearch stagesJY-18909-automated-reports-ask-iiminny = 869720)© 14 requests|131./9KB 188.39 kB transterredFinish: 7.50 s DOMContentLoaded: 369 ms] load: 518 ms...
|
NULL
|
6700681527875741474
|
NULL
|
click
|
ocr
|
NULL
|
FirefoxFileEoitViewHistoryPlatform Sprint 1 Q2 - P FirefoxFileEoitViewHistoryPlatform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloZ Configure SSH access to multipleConsole Home | Console Home | usSecurityGroup | EC2 |us-east-2JY-20543 add AJ reports User piloSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny¿Ask Jiminny test report - 8 Aor 201BookmarksProfilesToolsWindowHelp10$app.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1Jiminny - http://app.staging.jiminny.com/ondemand?topic_id[=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1Firefox SuggestTeaHosJiminny - app.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1Jiminny -app.staging.jiminny.com/ondemand7topic._jd[=e02f0932-cb78-41bG-ac41-&b8db1392146&include_internal_conversations=18sequence_number=4Jiminny - app.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4AlsoParJiminny - app.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=3Jiminny - app.staging.jiminny.com/ondemand?topic_idlI=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=3Jiminny - app.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=1search team membersiCustomer (?Customer or subiectiTranscript ©Q Search transcript, 0half Support Daily • in 2h 56mAS080088GETGETGETPOSTPOSTA app.staging.ji...saved-searchA app.staging.i...integrationsa xhrxhrA app.stagingji...on-demandrtonic 1c =e0210932-c0/0-4106-ac 4 xhnA find.userpilot.ioNX-094be170A app.staging.ji...Ar.logr-in.comAr.logr-in.com4 xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhr100% CS•Tue 14 Apr 12:04:56E Storage0 99+_ Disable Cache No Throttling + 50:Transferred6,12 KB0 8 |179 ms500 B2 B | 147 msb00 B2 B 1 95 ms500 B2 B |95 ms500 B2B95 ms6.28 KB 24.21KB 1483 ms5.65 kB 15.26 kB/801 ms3.62 kB1.42 kBI 1010 ms3.83 kB5.53 kB1331 ms8b4kь1481 mscached62 B3.11 KB96B127.67 kB3.39 kB595 ms1 355 ms148 ms≤ Service-Desk - Queues - PlatformJY-20543 add AJ reports User pilc& Configure SSH access to multiple eCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabSaid byAnyonePeriodiAll timeIopIcs( Competitors *)Activity typeSearch activity typesDuration ®Min (minutes) Max (minutes)Al call scoreSelect Al call scoreAutomated call scoreSelect automated calliscoreCoaching scoreSelect coaching scoreCoach ©Search coachesStage at callSearch stagesCurrent stageSearch stagesJY-18909-automated-reports-ask-iiminny = 869720)© 14 requests|131./9KB 188.39 kB transterredFinish: 7.50 s DOMContentLoaded: 369 ms] load: 518 ms...
|
NULL
|
|
10942
|
217
|
21
|
2026-04-14T09:04:57.951808+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157497951_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEoitViewHistoryBookmarksProfilesToolsWi FirefoxFileEoitViewHistoryBookmarksProfilesToolsWindowHelpSaved searchesapp.stagingjiminny.com/ondemand?topic_id[=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4You are currently impersonating Nikolay Yankov <)O activitiesSort by: Most recent-@(©AdRecordingPlatform Sprint 1 Q2 - Platform TealeamJY-20543 add AJ reports User pilo(Product x)Z Configure SSH access to multipleHost@ Console Home | Console Home | usSecurityGroup | EC2 |us-east-210Search team membersAlso search as participantJY-20543 add AJ reports User piloSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity•Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc(x) Configure SSH access to multipleFal CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabParticipantSearch team membersCustomer (?Customer or subiectiTranscript ©Q Search transcriptSaid byAnyonePeriodiAll timeIopIcs( Competitors *)Activity typeSearch activity typesDuration ®Min (minutes) Max (minutes)Al call scoreSelect Al call scoreAutomated call scoreSelect automated callscoreCoaching scoreSelect coaching scoreCoach ©Search coachesStage at callSearch stagesCurrent stageSearch stagesleam: ProductxTopics: Competitors X) Duration: 1m and above X)Show internal and external activities: Show internal only X )Recorded: Only Recorded Xb) Save Search(—) Clear alliSorry, we didn't find any matches for your filters.JY-18909-automated-reports-ask-iiminny = 869720)halSupport Daily - in 2h 56 mA100% CS•Tue 14 Apr 12:04:57: Get NotifiedCR O Inspector| T Filter URLSAll HTML CSS• ConsoleD DebuggerTt Network{) Style Editor( Performance: MemoryE StoragemagesMediaother• Perform a request orReload the page to see detalled information about network activity.• Click on the obutton to start perormance analysis. 2_ Disable Cache No Throttling + 50:Ô No requests...
|
NULL
|
-8544112698791903079
|
NULL
|
visual_change
|
ocr
|
NULL
|
FirefoxFileEoitViewHistoryBookmarksProfilesToolsWi FirefoxFileEoitViewHistoryBookmarksProfilesToolsWindowHelpSaved searchesapp.stagingjiminny.com/ondemand?topic_id[=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4You are currently impersonating Nikolay Yankov <)O activitiesSort by: Most recent-@(©AdRecordingPlatform Sprint 1 Q2 - Platform TealeamJY-20543 add AJ reports User pilo(Product x)Z Configure SSH access to multipleHost@ Console Home | Console Home | usSecurityGroup | EC2 |us-east-210Search team membersAlso search as participantJY-20543 add AJ reports User piloSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity•Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc(x) Configure SSH access to multipleFal CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabParticipantSearch team membersCustomer (?Customer or subiectiTranscript ©Q Search transcriptSaid byAnyonePeriodiAll timeIopIcs( Competitors *)Activity typeSearch activity typesDuration ®Min (minutes) Max (minutes)Al call scoreSelect Al call scoreAutomated call scoreSelect automated callscoreCoaching scoreSelect coaching scoreCoach ©Search coachesStage at callSearch stagesCurrent stageSearch stagesleam: ProductxTopics: Competitors X) Duration: 1m and above X)Show internal and external activities: Show internal only X )Recorded: Only Recorded Xb) Save Search(—) Clear alliSorry, we didn't find any matches for your filters.JY-18909-automated-reports-ask-iiminny = 869720)halSupport Daily - in 2h 56 mA100% CS•Tue 14 Apr 12:04:57: Get NotifiedCR O Inspector| T Filter URLSAll HTML CSS• ConsoleD DebuggerTt Network{) Style Editor( Performance: MemoryE StoragemagesMediaother• Perform a request orReload the page to see detalled information about network activity.• Click on the obutton to start perormance analysis. 2_ Disable Cache No Throttling + 50:Ô No requests...
|
10941
|
|
10943
|
217
|
22
|
2026-04-14T09:05:00.982367+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157500982_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEoitViewHistoryBookmarksProfllesToolsWi FirefoxFileEoitViewHistoryBookmarksProfllesToolsWindowHelpapp.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4You are currently impersonating Nikolay Yankov <)j Support Daily • in 2h 55 mA100% C•Tue 14 Apr 12:05:00• DebuggerN Network(} Style Editor( PerformanceO: MemoryE StorageNo tilters annlied0 99+_ Disable Cache No Throttling + 50:Platform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloZ Configure SSH access to multipleConsole Home | Console Home | usSecurityGroup | EC2 |us-east-2JY-20543 add AJ reports User pilo5 SRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201- Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc(x) Configure SSH access to multipleCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New Tab10InspectorConsole| T Filter URLSAll HTML CSSCtatucMethod Domain200POST8 8 036719.ing...200POSTA 8 036779.ing...200POST• g 036719.ing..POSTA B 036719.ing...GETA app.staging.i..A app.staging.ji...A app.staging.ji.A app.stagingji...app.staging.jimin...ttind, userollot.loA app.staging.i...MediaInitiatorap1b0 310 envelodelsentry versionssentrv xe tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchap1/562/310/envelope/?sentryversion=/&sentry_ke tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchsearch?statusl|=completed&sort_by=dateHeld& * xhrrecentsaved-searchA xhrintegrationsA xhron-demand?topic_idll=e02f0932-cb76-41b6-ac +a xhrNX-0940e17authenticatexhrTypeIsonsonTransferredb008500 Bb00 B500 B6.28 kB 24.21 kB5.65 kB15.26 kB3.62 kB1.42 kB3.83 kB5.53 KBcacheo3.12 kB96 B43 ms| 43 ms1537 ms211 ms1508 m;1253 ms620 msJY-18909-automated-reports-ask-iiminny = 869720)© 11 requests|46.68 KB 24.49 KB transterredFinish: 2.13sDOMContentLoaded: 42 ms load: 195 ms...
|
NULL
|
-3387436160434246656
|
NULL
|
visual_change
|
ocr
|
NULL
|
FirefoxFileEoitViewHistoryBookmarksProfllesToolsWi FirefoxFileEoitViewHistoryBookmarksProfllesToolsWindowHelpapp.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4You are currently impersonating Nikolay Yankov <)j Support Daily • in 2h 55 mA100% C•Tue 14 Apr 12:05:00• DebuggerN Network(} Style Editor( PerformanceO: MemoryE StorageNo tilters annlied0 99+_ Disable Cache No Throttling + 50:Platform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloZ Configure SSH access to multipleConsole Home | Console Home | usSecurityGroup | EC2 |us-east-2JY-20543 add AJ reports User pilo5 SRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201- Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc(x) Configure SSH access to multipleCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New Tab10InspectorConsole| T Filter URLSAll HTML CSSCtatucMethod Domain200POST8 8 036719.ing...200POSTA 8 036779.ing...200POST• g 036719.ing..POSTA B 036719.ing...GETA app.staging.i..A app.staging.ji...A app.staging.ji.A app.stagingji...app.staging.jimin...ttind, userollot.loA app.staging.i...MediaInitiatorap1b0 310 envelodelsentry versionssentrv xe tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchap1/562/310/envelope/?sentryversion=/&sentry_ke tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchsearch?statusl|=completed&sort_by=dateHeld& * xhrrecentsaved-searchA xhrintegrationsA xhron-demand?topic_idll=e02f0932-cb76-41b6-ac +a xhrNX-0940e17authenticatexhrTypeIsonsonTransferredb008500 Bb00 B500 B6.28 kB 24.21 kB5.65 kB15.26 kB3.62 kB1.42 kB3.83 kB5.53 KBcacheo3.12 kB96 B43 ms| 43 ms1537 ms211 ms1508 m;1253 ms620 msJY-18909-automated-reports-ask-iiminny = 869720)© 11 requests|46.68 KB 24.49 KB transterredFinish: 2.13sDOMContentLoaded: 42 ms load: 195 ms...
|
NULL
|
|
10944
|
217
|
23
|
2026-04-14T09:05:04.006941+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157504006_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEoitViewHistoryBookmarksProfilesToolsWi FirefoxFileEoitViewHistoryBookmarksProfilesToolsWindowHelpSaved searchesapp.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4You are currently impersonating Nikolay Yankov <)14 activitiesSort by: Most recent* Add RecordingA Get NotifiedPlatform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloleamSearch teamsiTopics: Competitors XShow internal and external activities: Show internal only *)Save Search @ Clear allHostIActivityCurrent StagestatsDuration DateZ Configure SSH access to multipleHost@ Console Home | Console Home | usSearch team membersiSecurityGroup | EC2 |us-east-210niso searen as particioantJY-20543 add AJ reports User pilcSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc& Configure SSH access to multiple eCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabParuicipantsearcn leam memdersCustomer ©Customer or SubjectTranscript ©• Search transcript |Said byMnyonePeriodAll timeTopicsCompetitors *)Activity typeSearch activity typesDuration ©Min (minutes)Max (minutes)Al call scoreSelect Al call scoreMulomalea call scoreSelect automated calliCoaching scoreSelect coaching scoreCoach ®Search coaches.Stage at callSearch stagesCurrent stageSearch stagesLanguageapp.staging.jiminny.com/plavback/eb99550a-72b3-4a5a-afd3-6764fd731cb5ContactActivityTypeJiminny MSalestorce App IrainingJiminny MBekkie/ Jules - renewals and Contract…Jiminny MHandover training part 1Unknown Customer M2 8 Deal Insights playbook 2 €Exclaimer MExclaimer handoverUnknown Customer MHow to run an Intro CallTom Lavery at Plamen enterprise MJiminny & - All-hands meeting i%TomLaveryUnknown Customer MAll -hands Jan 9thUnknown Customer MNotetaker added on 11-28-23 @04:01Unknown Customer played) 1Training P - Jiminny App for Salesfor..Unknown Customer MAll-hands - Thank Yous, What Went, L...Unknown Customer played MAll-hands - Nov /thUnknown Customer 1All Hands - October 31st ©Unknown Customer MDeal Insights Referesher/Training w/T...Unlikely toRenew$42,12647mlĐ0 D444mĐ0 D3Đ0D234m$0%0Đ0 D2$0 228.DODO17m31m43m28mD0 E1 sim25m39m33m53122ĐO D 1141m11/0/2024.2:28 PMI25/06/2024, 3:09 PM10/06/2024, 12:02 PM18/05/9014. 19.96 PMI13/03/2024, 11:28 AM26/02/2024, 2:30 PM16/01/2024, 11:43 AM09/01/2024, 11:45 AM28/11/2023, 11:30 AM22/11/2023, 11:56 AM14/11/2023, 11:27 AM07/11/2023, 11:42 AM31/10/2023, 11:35 AM25/10/2023, 11:46 AMj Support Daily • in 2h 55 mA100% C•Tue 14 Apr 12:05:03Q InspectorFilter URLsConsoleD DebuggerN Network{} Style Editor( PerformanceO: Memory0 99+AlIHMLeSSMethod296200POs IPOSTPOsIPOSTMedia200200200200200GETGETGETGET200200POSTPOsIDomainA D 036719.ing...A Y 036719.ing...036/19.ing..A B 036719.ing...apo.stagino.l..A app.staging.ji...A app.stagingji...A app.stagingji...A app.stagingji...ttind, userollot.loA app.stagingji...r.logr-in.comInitiatorap1b0 310 envelodelsentry versionssentrv xe tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchap1/562/310/envelope/?sentryversion=/&sentry_ke tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchsearch?statusl|=completed&sort_by=dateHeld& * xhrrecentsaved-search" Xhiintegrationson-demand?topic_idll=e02f0932-cb76-41b6-ac +a xhrNX-0940e17authenticateA xhrYa=ponxat plattorm-staging&r=b-019d8b28-3eft-/c xhrE Storage_ Disable Cache No Throttling + 50:TransferredIsonsonb00843 ms500 Bb00 B500 B| 43 ms6.28 kB24.21 kB1537 ms5.65 KB15.26 kB| 211 ms3.62 kB1.42 KB3.83 kB5.53 kB55.53 kB 196.86.1253 ms2288 mscacheo3.12 kB126.39 KB96 BI 620 ms359 ms12 requests| 243.44 kB / 206.41 kB transferredFinish: 4.39s DOMContentLoaded: 42 ms load: 195 ms...
|
NULL
|
6058075518634320600
|
NULL
|
visual_change
|
ocr
|
NULL
|
FirefoxFileEoitViewHistoryBookmarksProfilesToolsWi FirefoxFileEoitViewHistoryBookmarksProfilesToolsWindowHelpSaved searchesapp.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4You are currently impersonating Nikolay Yankov <)14 activitiesSort by: Most recent* Add RecordingA Get NotifiedPlatform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloleamSearch teamsiTopics: Competitors XShow internal and external activities: Show internal only *)Save Search @ Clear allHostIActivityCurrent StagestatsDuration DateZ Configure SSH access to multipleHost@ Console Home | Console Home | usSearch team membersiSecurityGroup | EC2 |us-east-210niso searen as particioantJY-20543 add AJ reports User pilcSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc& Configure SSH access to multiple eCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabParuicipantsearcn leam memdersCustomer ©Customer or SubjectTranscript ©• Search transcript |Said byMnyonePeriodAll timeTopicsCompetitors *)Activity typeSearch activity typesDuration ©Min (minutes)Max (minutes)Al call scoreSelect Al call scoreMulomalea call scoreSelect automated calliCoaching scoreSelect coaching scoreCoach ®Search coaches.Stage at callSearch stagesCurrent stageSearch stagesLanguageapp.staging.jiminny.com/plavback/eb99550a-72b3-4a5a-afd3-6764fd731cb5ContactActivityTypeJiminny MSalestorce App IrainingJiminny MBekkie/ Jules - renewals and Contract…Jiminny MHandover training part 1Unknown Customer M2 8 Deal Insights playbook 2 €Exclaimer MExclaimer handoverUnknown Customer MHow to run an Intro CallTom Lavery at Plamen enterprise MJiminny & - All-hands meeting i%TomLaveryUnknown Customer MAll -hands Jan 9thUnknown Customer MNotetaker added on 11-28-23 @04:01Unknown Customer played) 1Training P - Jiminny App for Salesfor..Unknown Customer MAll-hands - Thank Yous, What Went, L...Unknown Customer played MAll-hands - Nov /thUnknown Customer 1All Hands - October 31st ©Unknown Customer MDeal Insights Referesher/Training w/T...Unlikely toRenew$42,12647mlĐ0 D444mĐ0 D3Đ0D234m$0%0Đ0 D2$0 228.DODO17m31m43m28mD0 E1 sim25m39m33m53122ĐO D 1141m11/0/2024.2:28 PMI25/06/2024, 3:09 PM10/06/2024, 12:02 PM18/05/9014. 19.96 PMI13/03/2024, 11:28 AM26/02/2024, 2:30 PM16/01/2024, 11:43 AM09/01/2024, 11:45 AM28/11/2023, 11:30 AM22/11/2023, 11:56 AM14/11/2023, 11:27 AM07/11/2023, 11:42 AM31/10/2023, 11:35 AM25/10/2023, 11:46 AMj Support Daily • in 2h 55 mA100% C•Tue 14 Apr 12:05:03Q InspectorFilter URLsConsoleD DebuggerN Network{} Style Editor( PerformanceO: Memory0 99+AlIHMLeSSMethod296200POs IPOSTPOsIPOSTMedia200200200200200GETGETGETGET200200POSTPOsIDomainA D 036719.ing...A Y 036719.ing...036/19.ing..A B 036719.ing...apo.stagino.l..A app.staging.ji...A app.stagingji...A app.stagingji...A app.stagingji...ttind, userollot.loA app.stagingji...r.logr-in.comInitiatorap1b0 310 envelodelsentry versionssentrv xe tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchap1/562/310/envelope/?sentryversion=/&sentry_ke tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchsearch?statusl|=completed&sort_by=dateHeld& * xhrrecentsaved-search" Xhiintegrationson-demand?topic_idll=e02f0932-cb76-41b6-ac +a xhrNX-0940e17authenticateA xhrYa=ponxat plattorm-staging&r=b-019d8b28-3eft-/c xhrE Storage_ Disable Cache No Throttling + 50:TransferredIsonsonb00843 ms500 Bb00 B500 B| 43 ms6.28 kB24.21 kB1537 ms5.65 KB15.26 kB| 211 ms3.62 kB1.42 KB3.83 kB5.53 kB55.53 kB 196.86.1253 ms2288 mscacheo3.12 kB126.39 KB96 BI 620 ms359 ms12 requests| 243.44 kB / 206.41 kB transferredFinish: 4.39s DOMContentLoaded: 42 ms load: 195 ms...
|
10943
|
|
10946
|
217
|
24
|
2026-04-14T09:05:07.432629+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157507432_m2.jpg...
|
Slack
|
Aneliya Angelova, Nikolay Yankov, Steliyan Georgie Aneliya Angelova, Nikolay Yankov, Steliyan Georgiev (DM) - Jiminny Inc - 1 new item - Slack...
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
Jiminny Inc
Jiminny (Staging)
Add workspaces
Home
Jiminny Inc
Jiminny (Staging)
Add workspaces
Home
Home
DMs
DMs
Activity
Activity
Files
Files
Later
Later
More…
More
Unreads
Threads
Huddles
Drafts & sent
Directories
platform-inner-team
ai-chapter
alerts
backend
confusion-clinic
curiosity_lab
engineering
frontend
general
infra-changes
jiminny-bg
platform-tickets
product_launches
random
releases
sofia-office
support
thank-yous
the_people_of_jiminny
Aneliya Angelova
,
Nikolay Yankov
,
Steliyan Georgiev
Steliyan Georgiev
Adelina Petrova
,
Ilian Kyuchukov
,
Steliyan Georgiev
Adelina Petrova
Galya Dimitrova
Vasil Vasilev
Nikolay Nikolov
Galya Dimitrova
,
Nikolay Nikolov
Galya Dimitrova
,
Nikolay Yankov
Nikolay Yankov
Jira Cloud
Toast
Google Calendar
Messages
Messages
Add canvas
Add canvas
Add and Edit Channel Tabs
Canvas
List
Folder
Jump to first unread message (⌘J)
Mark as read (esc)
Jump to date
Lukas Kovalik
Today at 10:34:10 AM
10:34 AM
не само daily но трябва да се пусне команда...
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"Jiminny Inc","depth":12,"bounds":{"left":0.23867187,"top":1.0,"width":0.0125,"height":-0.05486107},"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true,"is_expanded":false},{"role":"AXRadioButton","text":"Jiminny (Staging)","depth":12,"bounds":{"left":0.23867187,"top":1.0,"width":0.0125,"height":-0.090972185},"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"Add workspaces","depth":12,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"Home","depth":14,"bounds":{"left":0.26054686,"top":1.0,"width":0.0203125,"height":-0.048611164},"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true,"is_expanded":false},{"role":"AXStaticText","text":"Home","depth":16,"bounds":{"left":0.26484376,"top":1.0,"width":0.01171875,"height":-0.08124995},"role_description":"text"},{"role":"AXRadioButton","text":"DMs","depth":14,"bounds":{"left":0.26054686,"top":1.0,"width":0.0203125,"height":-0.0958333},"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"DMs","depth":16,"role_description":"text"},{"role":"AXRadioButton","text":"Activity","depth":14,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Activity","depth":16,"role_description":"text"},{"role":"AXRadioButton","text":"Files","depth":14,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Files","depth":16,"role_description":"text"},{"role":"AXRadioButton","text":"Later","depth":14,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Later","depth":16,"role_description":"text"},{"role":"AXRadioButton","text":"More…","depth":14,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"More","depth":16,"role_description":"text"},{"role":"AXStaticText","text":"Unreads","depth":21,"bounds":{"left":0.3,"top":1.0,"width":0.022265624,"height":-0.079861164},"role_description":"text"},{"role":"AXStaticText","text":"Threads","depth":21,"bounds":{"left":0.3,"top":1.0,"width":0.020703126,"height":-0.079861164},"role_description":"text"},{"role":"AXStaticText","text":"Huddles","depth":21,"bounds":{"left":0.3,"top":1.0,"width":0.021484375,"height":-0.079861164},"role_description":"text"},{"role":"AXStaticText","text":"Drafts & sent","depth":21,"bounds":{"left":0.3,"top":1.0,"width":0.034375,"height":-0.079861164},"role_description":"text"},{"role":"AXStaticText","text":"Directories","depth":21,"bounds":{"left":0.3,"top":1.0,"width":0.028515626,"height":-0.079861164},"role_description":"text"},{"role":"AXStaticText","text":"platform-inner-team","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"ai-chapter","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"alerts","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"backend","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"confusion-clinic","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"curiosity_lab","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"engineering","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"frontend","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"general","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"infra-changes","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"jiminny-bg","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"platform-tickets","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"product_launches","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"random","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"releases","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"sofia-office","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"support","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"thank-yous","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"the_people_of_jiminny","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Aneliya Angelova","depth":23,"role_description":"text"},{"role":"AXStaticText","text":",","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Nikolay Yankov","depth":23,"role_description":"text"},{"role":"AXStaticText","text":",","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Steliyan Georgiev","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Steliyan Georgiev","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Adelina Petrova","depth":23,"role_description":"text"},{"role":"AXStaticText","text":",","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Ilian Kyuchukov","depth":23,"role_description":"text"},{"role":"AXStaticText","text":",","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Steliyan Georgiev","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Adelina Petrova","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Galya Dimitrova","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Vasil Vasilev","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Nikolay Nikolov","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Galya Dimitrova","depth":23,"role_description":"text"},{"role":"AXStaticText","text":",","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Nikolay Nikolov","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Galya Dimitrova","depth":23,"role_description":"text"},{"role":"AXStaticText","text":",","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Nikolay Yankov","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Nikolay Yankov","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Jira Cloud","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Toast","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Google Calendar","depth":23,"role_description":"text"},{"role":"AXRadioButton","text":"Messages","depth":17,"bounds":{"left":0.3765625,"top":1.0,"width":0.036328126,"height":-0.079861164},"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true,"is_expanded":false},{"role":"AXStaticText","text":"Messages","depth":19,"bounds":{"left":0.3875,"top":1.0,"width":0.022265624,"height":-0.087499976},"role_description":"text"},{"role":"AXRadioButton","text":"Add canvas","depth":18,"bounds":{"left":0.4140625,"top":1.0,"width":0.040234376,"height":-0.079861164},"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Add canvas","depth":20,"bounds":{"left":0.425,"top":1.0,"width":0.026171874,"height":-0.087499976},"role_description":"text"},{"role":"AXPopUpButton","text":"Add and Edit Channel Tabs","depth":17,"bounds":{"left":0.45546874,"top":1.0,"width":0.012890625,"height":-0.079861164},"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Canvas","depth":17,"role_description":"text"},{"role":"AXStaticText","text":"List","depth":17,"role_description":"text"},{"role":"AXStaticText","text":"Folder","depth":17,"role_description":"text"},{"role":"AXButton","text":"Jump to first unread message (⌘J)","depth":20,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Mark as read (esc)","depth":20,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"Jump to date","depth":23,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Lukas Kovalik","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 10:34:10 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:34 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"не само daily но трябва да се пусне команда","depth":25,"role_description":"text"}]...
|
-4687907541376312758
|
-1749098031445206263
|
click
|
hybrid
|
NULL
|
Jiminny Inc
Jiminny (Staging)
Add workspaces
Home
Jiminny Inc
Jiminny (Staging)
Add workspaces
Home
Home
DMs
DMs
Activity
Activity
Files
Files
Later
Later
More…
More
Unreads
Threads
Huddles
Drafts & sent
Directories
platform-inner-team
ai-chapter
alerts
backend
confusion-clinic
curiosity_lab
engineering
frontend
general
infra-changes
jiminny-bg
platform-tickets
product_launches
random
releases
sofia-office
support
thank-yous
the_people_of_jiminny
Aneliya Angelova
,
Nikolay Yankov
,
Steliyan Georgiev
Steliyan Georgiev
Adelina Petrova
,
Ilian Kyuchukov
,
Steliyan Georgiev
Adelina Petrova
Galya Dimitrova
Vasil Vasilev
Nikolay Nikolov
Galya Dimitrova
,
Nikolay Nikolov
Galya Dimitrova
,
Nikolay Yankov
Nikolay Yankov
Jira Cloud
Toast
Google Calendar
Messages
Messages
Add canvas
Add canvas
Add and Edit Channel Tabs
Canvas
List
Folder
Jump to first unread message (⌘J)
Mark as read (esc)
Jump to date
Lukas Kovalik
Today at 10:34:10 AM
10:34 AM
не само daily но трябва да се пусне команда
FirefoxFileEoitViewHistoryBookmarksProfilesToolsWindowHelpSaved searchesapp.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4You are currently impersonating Nikolay Yankov <)14 activitiesSort by: Most recent* Add RecordingA Get NotifiedPlatform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloleamSearch teamsiTopics: Competitors XShow internal and external activities: Show internal only *)Save Search @ Clear allHostIActivityCurrent StagestatsZ Configure SSH access to multipleHost@ Console Home | Console Home | usSearch team membersiSecurityGroup | EC2 |us-east-210niso searen as DarticloanuJY-20543 add AJ reports User pilcSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc& Configure SSH access to multiple eCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabParuicipantsearcn leam memdersCustomer ©Customer or SubjectTranscript ©• Search transcript |Said byMnyonePeriodAll timeTopicsCompetitors *)Activity typeSearch activity typesDuration ©Min (minutes)Max (minutes)Al call scoreSelect Al call scoreMulomalea call scoreSelect automated calliCoaching scoreSelect coaching scoreCoach ®Search coaches.Stage at callSearch stagesCurrent stageSearch stagesContactActivityTypeDurationDateJiminny MSalestorce App IrainingJiminny MBekkie/ Jules - renewals and Contract..Jiminny MHandover training part 1Unknown Customer M2 8 Deal Insights playbook 2 €Exclaimer MExclaimer handoverUnknown Customer MHow to run an Intro CallTom Lavery at Plamen enterpriseMJiminny & - All-hands meeting i%TomLaveryUnknown Customer MAll -hands Jan 9thUnknown Customer MNotetaker added on 11-28-23 @04:01Unknown Customer played) 1Training P - Jiminny App for Salesfor..Unknown Customer MAll-hands - Thank Yous, What Went, L...Unknown Customer played MAll-hands - Nov /thUnknown Customer 1All Hands - October 31st ©Unknown Customer MDeal Insights Referesher/Training w/T...JY-18909-automated-reports-ask-iiminny = 869720Unlikely toRenew$42,12647mĐ0 D444m90 о 3Đ0 D234mĐ0 D2$0 228.DODO17m31m43m28mD0 E1 sim25m39m33m53122ĐO D 1141m11/0/2024.2:28 PMI25/06/2024, 3:09 PM10/06/2024, 12:02 PM18/05/9014. 19.96 PMI13/03/2024, 11:28 AM26/02/2024, 2:30 PM16/01/2024, 11:43 AM09/01/2024, 11:45 AM28/11/2023, 11:30 AM22/11/2023, 11:56 AM14/11/2023, 11:27 AM07/11/2023, 11:42 AM31/10/2023, 11:35 AM25/10/2023, 11:46 AMj Support Daily • in 2h 55 mA100% C•Tue 14 Apr 12:05:07Q InspectorFilter URLsConsole• DebuggerN Network{} Style Editor( PerformanceO: Memory0 99+AlIHMLeSSMethod200200206POs IPOSTPOsIPOST200200200200200200200MediaGETGETGETGETPOSTPOSTPOSTDomainA D 036719.ing...A Y 036719.ing...036/19.ing..A B 036719.ing...apo.stagino.l..A app.staging.ji...A app.staging.ji.A app.stagingji...A app.stagingji...wtind.userpilot.ioA app.stagingji...A r.logr-in.comAr.logr-in.comInitiatorap1b0 310 envelodelsentry versionssentrv xe tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchap1/562/310/envelope/?sentryversion=/&sentry_ke tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchsearch?statusl|=completed&sort_by=dateHeld& * xhrrecentsaved-searchA xhrintegrationson-demand?topic_idll=e02f0932-cb76-41b6-ac +a xhrNX-0940e17authenticateA xhrYa=ponxat plattorm-staging&r=b-019d8b28-3eft-/c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhrE StorageDisable CacheNo Throttling + 50;TransferredIsonsonb00843 ms500 B| 43 msb00 B44 ms500 B| 43 ms6.28 kB24.21 kB1537 ms5.65 kB15.26 KB211 ms3.62 kB1.42 Kb 1508 ms3.83 kB5.53 kB1253 ms55.53 kB 196.86..2299 mscacheo3.12 kB96 B| 620 ms126.39 KB7.89 kBOB1158 ms13 requests| 243.44 kB / 214.31 kB transferredFinish: 7.58sDOMContentLoaded: 42 ms load: 195 ms...
|
NULL
|
|
10948
|
217
|
25
|
2026-04-14T09:05:09.161925+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157509161_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEditViewHistoryBookmarksProfilesToolsWi FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHeldSaved searchesapp.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4You are currently impersonating Nikolay Yankov <)14 activitiesSort by: Most recent* Add RecordingA Get NotifiedPlatform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloleamSearch teamsiTopics: Competitors XShow internal and external activities: Show internal only *)Save Search @ Clear allHostIActivityCurrent StagestatsZ Configure SSH access to multipleHost@ Console Home | Console Home | usSearch team membersiSecurityGroup | EC2 |us-east-210niso searen as DarticloanuJY-20543 add AJ reports User pilcSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc(x) Configure SSH access to multipleCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabParuicipantSearch team membersCustomer ®Customer or SubjectTranscript ©• Search transcript |Said byAnyonePeriodAll timeTopicsCompetitors *)Activity typeSearch activity typesDuration ©Min (minutes)Max (minutes)Al call scoreSelect Al call scoreMulomalea call scoreSelect automated calliCoaching scoreSelect coaching scoreCoach ®Search coaches.Stage at callSearch stagesCurrent stageSearch stagesContactActivityTypeDurationDateJiminny MSalestorce App IrainingJiminny MBekkie/ Jules - renewals and Contract..Jiminny MHandover training part 1Unknown Customer M2 8 Deal Insights playbook 2 €Exclaimer MExclaimer handoverUnknown Customer MHow to run an Intro CallTom Lavery at Plamen enterpriseMJiminny & - All-hands meeting i%TomLaveryUnknown Customer MAll -hands Jan 9thUnknown Customer MNotetaker added on 11-28-23 @04:01Unknown Customer played) 1Training P - Jiminny App for Salesfor..Unknown Customer MAll-hands - Thank Yous, What Went, L...Unknown Customer played MAll-hands - Nov /thUnknown Customer 1All Hands - October 31st ©Unknown Customer MDeal Insights Referesher/Training w/T...JY-18909-automated-reports-ask-iiminny = 869720Unlikely toRenew$42,12647m90 D444m90 о 3Đ0 D234m$0%0Đ0 D2$0 228.DODO17m31m43m28mD0 E1 sim25m39m33m53122ĐO D 1141m11/0/2024.2:28 PMI25/06/2024, 3:09 PM10/06/2024, 12:02 PM18/05/9014. 19.96 PMI13/03/2024, 11:28 AM26/02/2024, 2:30 PM16/01/2024, 11:43 AM09/01/2024, 11:45 AM28/11/2023, 11:30 AM22/11/2023, 11:56 AM14/11/2023, 11:27 AM07/11/2023, 11:42 AM31/10/2023, 11:35 AM25/10/2023, 11:46 AMSupport Daily • in 2h 55 mTue 14 Apr 12:05:08Q InspectorConsoleD DebuggerN Network{) Style Editor( PerformanceELE MemoryE Storage© 99+Filter URLsAlIHMLeSS200200206200200200200200200200MediaMethodPOs IPOSTPOsIPOSTGETGETGETGETGETPOSTPOSTPOSTDomainA D 036719.ing...A Y 036719.ing...036/19.ing..A B 036719.ing...apo.stagino.l..A app.staging.ji...A app.stagingji...A app.stagingji...A app.stagingji...wtind.userpilot.ioA app.stagingji...A r.logr-in.comAr.logr-in.comInitiatorap1b0 310 envelodelsentry versionssentrv xe tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchap1/562/310/envelope/?sentryversion=/&sentry_ke tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchsearch?statusl|=completed&sort_by=dateHeld& * xhrrecentsaved-searchA xhrintegrationson-demand?topic_idll=e02f0932-cb76-41b6-ac +a xhrNX-0940e17authenticateA xhrYa=ponxat plattorm-staging&r=b-019d8b28-3eft-/c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhrDisable CacheNo Throttling + 50;TransferredIsonb00843 ms500 B| 43 msb00 B44 ms500 B| 43 ms6.28 kB24.21 kB1537 ms5.65 kB15.26 kB211 ms3.62 kB1.42 Kb 1508 ms3.83 kB5.53 kB1253 ms55.53 kB 196.86..2299 mscacheo3.12 kB96 B| 620 ms126.39 KB7.89 kBOB1158 ms13 requests| 243.44 kB / 214.31 kB transferredFinish: 7.58sDOMContentLoaded: 42 ms load: 195 ms...
|
NULL
|
-8385453292434457693
|
NULL
|
click
|
ocr
|
NULL
|
FirefoxFileEditViewHistoryBookmarksProfilesToolsWi FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHeldSaved searchesapp.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4You are currently impersonating Nikolay Yankov <)14 activitiesSort by: Most recent* Add RecordingA Get NotifiedPlatform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloleamSearch teamsiTopics: Competitors XShow internal and external activities: Show internal only *)Save Search @ Clear allHostIActivityCurrent StagestatsZ Configure SSH access to multipleHost@ Console Home | Console Home | usSearch team membersiSecurityGroup | EC2 |us-east-210niso searen as DarticloanuJY-20543 add AJ reports User pilcSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc(x) Configure SSH access to multipleCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabParuicipantSearch team membersCustomer ®Customer or SubjectTranscript ©• Search transcript |Said byAnyonePeriodAll timeTopicsCompetitors *)Activity typeSearch activity typesDuration ©Min (minutes)Max (minutes)Al call scoreSelect Al call scoreMulomalea call scoreSelect automated calliCoaching scoreSelect coaching scoreCoach ®Search coaches.Stage at callSearch stagesCurrent stageSearch stagesContactActivityTypeDurationDateJiminny MSalestorce App IrainingJiminny MBekkie/ Jules - renewals and Contract..Jiminny MHandover training part 1Unknown Customer M2 8 Deal Insights playbook 2 €Exclaimer MExclaimer handoverUnknown Customer MHow to run an Intro CallTom Lavery at Plamen enterpriseMJiminny & - All-hands meeting i%TomLaveryUnknown Customer MAll -hands Jan 9thUnknown Customer MNotetaker added on 11-28-23 @04:01Unknown Customer played) 1Training P - Jiminny App for Salesfor..Unknown Customer MAll-hands - Thank Yous, What Went, L...Unknown Customer played MAll-hands - Nov /thUnknown Customer 1All Hands - October 31st ©Unknown Customer MDeal Insights Referesher/Training w/T...JY-18909-automated-reports-ask-iiminny = 869720Unlikely toRenew$42,12647m90 D444m90 о 3Đ0 D234m$0%0Đ0 D2$0 228.DODO17m31m43m28mD0 E1 sim25m39m33m53122ĐO D 1141m11/0/2024.2:28 PMI25/06/2024, 3:09 PM10/06/2024, 12:02 PM18/05/9014. 19.96 PMI13/03/2024, 11:28 AM26/02/2024, 2:30 PM16/01/2024, 11:43 AM09/01/2024, 11:45 AM28/11/2023, 11:30 AM22/11/2023, 11:56 AM14/11/2023, 11:27 AM07/11/2023, 11:42 AM31/10/2023, 11:35 AM25/10/2023, 11:46 AMSupport Daily • in 2h 55 mTue 14 Apr 12:05:08Q InspectorConsoleD DebuggerN Network{) Style Editor( PerformanceELE MemoryE Storage© 99+Filter URLsAlIHMLeSS200200206200200200200200200200MediaMethodPOs IPOSTPOsIPOSTGETGETGETGETGETPOSTPOSTPOSTDomainA D 036719.ing...A Y 036719.ing...036/19.ing..A B 036719.ing...apo.stagino.l..A app.staging.ji...A app.stagingji...A app.stagingji...A app.stagingji...wtind.userpilot.ioA app.stagingji...A r.logr-in.comAr.logr-in.comInitiatorap1b0 310 envelodelsentry versionssentrv xe tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchap1/562/310/envelope/?sentryversion=/&sentry_ke tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchsearch?statusl|=completed&sort_by=dateHeld& * xhrrecentsaved-searchA xhrintegrationson-demand?topic_idll=e02f0932-cb76-41b6-ac +a xhrNX-0940e17authenticateA xhrYa=ponxat plattorm-staging&r=b-019d8b28-3eft-/c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhrDisable CacheNo Throttling + 50;TransferredIsonb00843 ms500 B| 43 msb00 B44 ms500 B| 43 ms6.28 kB24.21 kB1537 ms5.65 kB15.26 kB211 ms3.62 kB1.42 Kb 1508 ms3.83 kB5.53 kB1253 ms55.53 kB 196.86..2299 mscacheo3.12 kB96 B| 620 ms126.39 KB7.89 kBOB1158 ms13 requests| 243.44 kB / 214.31 kB transferredFinish: 7.58sDOMContentLoaded: 42 ms load: 195 ms...
|
10946
|
|
10950
|
217
|
26
|
2026-04-14T09:05:12.397156+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157512397_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEditViewHistoryBookmarksProfilesToolsWi FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHeldPlatform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloZ Configure SSH access to multiple@ Console Home | Console Home | usSecurityGroup | EC2 |us-east-2JY-20543 add AJ reports User pilcSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc(x) Configure SSH access to multipleCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabSaved searchesapp.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4You are currently impersonating Nikolay Yankov <)14 activitiesSort by: Most recent* Add RecordingA Get NotifiedleamSearch teamsiTopics: Competitors XShow internal and external activities: Show internal only *)Save Search @ Clear allHostIActivityCurrent StagestatsHostSearch team membersiniso searen as DarticloanuParuicipantSearch team membersCustomer ®Customer or SubjectTranscript ©• Search transcript |Said byMnyonePeriodAll timeTopicsCompetitors *)Activity typeSearch activity typesDuration ©Min (minutes)Max (minutes)Al call scoreselect Ai call scoreMulomalea call scoreSelect automated calliCoaching scoreSelect coaching scoreCoach ®Search coaches.Stage at callSearch stagesCurrent stageSearch stagesContactActivityTypeDurationDateJiminny MSalestorce App IrainingJiminny MBekkie/ Jules - renewals and Contract..Jiminny MHandover training part 1Unknown Customer M2 8 Deal Insights playbook 2 &Exclaimer MExclaimer handoverUnknown Customer MHow to run an Intro CallTom Lavery at Plamen enterprise MJiminny & - All-hands meeting i%TomLaveryUnknown Customer MAll -hands Jan 9thUnknown Customer MNotetaker added on 11-28-23 @04:01Unknown Customer played) 1Training P - Jiminny App for Salesfor..Unknown Customer MAll-hands - Thank Yous, What Went, L...Unknown Customer played 1All-hands - Nov /thUnknown Customer 1All Hands - October 31st ©Unknown Customer MDeal Insights Referesher/Training w/T...JY-18909-automated-reports-ask-iiminny = 869720unlikelv toRenew$42,12600 D 44/m44mĐ0 D334mĐ0 D2.$0000D 2$0 228.DODO17m31m43m28mD0 E1 sim25m39m33m5122ĐO D 1141m11/0/2024.2:28 PMI25/06/2024, 3:09 PM10/06/2024, 12:02 PM18/05/9014. 19.96 PMI13/03/2024, 11:28 AM26/02/2024, 2:30 PM16/01/2024, 11:43 AM09/01/2024, 11:45 AM28/11/2023, 11:30 AM22/11/2023, 11:56 AM14/11/2023, 11:27 AM07/11/2023, 11:42 AM31/10/2023, 11:35 AM25/10/2023, 11:46 AMSupport Daily • in 2h 55 mTue 14 Aor 12:05:12Q InspectorFilter URLsConsoleD DebuggerN Network{} Style Editor( PerformanceELE MemoryE Storage© 99+AlIHMLeSSMethod200200206POs IPOSTPOsIPOST200200200200200GETGETGETGETGETGET200200200200POSTPOsIPOSTPOSTImagesMediaotheDomainA D 036719.ing...A Y 036719.ing...036/19.ing..A B 036719.ing...apo.stagino.l..A app.staging.ji...A app.stagingji...A app.stagingji...A app.stagingji...ttind, userollot.loA app.stagingji...A r.logr-in.comAr.logr-in.comr.locl-in.comInitiatorap1b0 310 envelodelsentry versionssentrv xe tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchap1/562/310/envelope/?sentryversion=/&sentry_ke tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchsearch?statusl|=completed&sort_by=dateHeld& * xhrrecentsaved-search" Xhiintegrationson-demand?topic_idll=e02f0932-cb76-41b6-ac +a xhrNX-0940e17authenticateA xhrYa=ponxat plattorm-staging&r=b-019d8b28-3eft-/c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhr_ Disable Cache No Throttling + 50:TypeTransferred20.48Isonb00843 mr500 B2 B |43 msb00 B2 B | 44 ms500 B2 B |43ms6.28 kB24.21 kB I 1537 ms5.65 kB15.26 kB || 211ms3.62 kB1.42 Kb 1508 ms3.83 kB5.53 kB | 1253 ms55.53 kB 196.86...2299 mscacheo3.12 kB96 B | 620 ms126.39 KB7.89 kB6.41 kB1158 ms153 msÔ 14 requests| 243.44 kB / 220.71 kB transferredFinish: 11.03sDOMContentLoaded: 42 ms load: 195 ms...
|
NULL
|
-387773864182500402
|
NULL
|
click
|
ocr
|
NULL
|
FirefoxFileEditViewHistoryBookmarksProfilesToolsWi FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHeldPlatform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloZ Configure SSH access to multiple@ Console Home | Console Home | usSecurityGroup | EC2 |us-east-2JY-20543 add AJ reports User pilcSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc(x) Configure SSH access to multipleCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabSaved searchesapp.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4You are currently impersonating Nikolay Yankov <)14 activitiesSort by: Most recent* Add RecordingA Get NotifiedleamSearch teamsiTopics: Competitors XShow internal and external activities: Show internal only *)Save Search @ Clear allHostIActivityCurrent StagestatsHostSearch team membersiniso searen as DarticloanuParuicipantSearch team membersCustomer ®Customer or SubjectTranscript ©• Search transcript |Said byMnyonePeriodAll timeTopicsCompetitors *)Activity typeSearch activity typesDuration ©Min (minutes)Max (minutes)Al call scoreselect Ai call scoreMulomalea call scoreSelect automated calliCoaching scoreSelect coaching scoreCoach ®Search coaches.Stage at callSearch stagesCurrent stageSearch stagesContactActivityTypeDurationDateJiminny MSalestorce App IrainingJiminny MBekkie/ Jules - renewals and Contract..Jiminny MHandover training part 1Unknown Customer M2 8 Deal Insights playbook 2 &Exclaimer MExclaimer handoverUnknown Customer MHow to run an Intro CallTom Lavery at Plamen enterprise MJiminny & - All-hands meeting i%TomLaveryUnknown Customer MAll -hands Jan 9thUnknown Customer MNotetaker added on 11-28-23 @04:01Unknown Customer played) 1Training P - Jiminny App for Salesfor..Unknown Customer MAll-hands - Thank Yous, What Went, L...Unknown Customer played 1All-hands - Nov /thUnknown Customer 1All Hands - October 31st ©Unknown Customer MDeal Insights Referesher/Training w/T...JY-18909-automated-reports-ask-iiminny = 869720unlikelv toRenew$42,12600 D 44/m44mĐ0 D334mĐ0 D2.$0000D 2$0 228.DODO17m31m43m28mD0 E1 sim25m39m33m5122ĐO D 1141m11/0/2024.2:28 PMI25/06/2024, 3:09 PM10/06/2024, 12:02 PM18/05/9014. 19.96 PMI13/03/2024, 11:28 AM26/02/2024, 2:30 PM16/01/2024, 11:43 AM09/01/2024, 11:45 AM28/11/2023, 11:30 AM22/11/2023, 11:56 AM14/11/2023, 11:27 AM07/11/2023, 11:42 AM31/10/2023, 11:35 AM25/10/2023, 11:46 AMSupport Daily • in 2h 55 mTue 14 Aor 12:05:12Q InspectorFilter URLsConsoleD DebuggerN Network{} Style Editor( PerformanceELE MemoryE Storage© 99+AlIHMLeSSMethod200200206POs IPOSTPOsIPOST200200200200200GETGETGETGETGETGET200200200200POSTPOsIPOSTPOSTImagesMediaotheDomainA D 036719.ing...A Y 036719.ing...036/19.ing..A B 036719.ing...apo.stagino.l..A app.staging.ji...A app.stagingji...A app.stagingji...A app.stagingji...ttind, userollot.loA app.stagingji...A r.logr-in.comAr.logr-in.comr.locl-in.comInitiatorap1b0 310 envelodelsentry versionssentrv xe tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchap1/562/310/envelope/?sentryversion=/&sentry_ke tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchsearch?statusl|=completed&sort_by=dateHeld& * xhrrecentsaved-search" Xhiintegrationson-demand?topic_idll=e02f0932-cb76-41b6-ac +a xhrNX-0940e17authenticateA xhrYa=ponxat plattorm-staging&r=b-019d8b28-3eft-/c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhr_ Disable Cache No Throttling + 50:TypeTransferred20.48Isonb00843 mr500 B2 B |43 msb00 B2 B | 44 ms500 B2 B |43ms6.28 kB24.21 kB I 1537 ms5.65 kB15.26 kB || 211ms3.62 kB1.42 Kb 1508 ms3.83 kB5.53 kB | 1253 ms55.53 kB 196.86...2299 mscacheo3.12 kB96 B | 620 ms126.39 KB7.89 kB6.41 kB1158 ms153 msÔ 14 requests| 243.44 kB / 220.71 kB transferredFinish: 11.03sDOMContentLoaded: 42 ms load: 195 ms...
|
NULL
|
|
10951
|
217
|
27
|
2026-04-14T09:05:13.613450+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157513613_m2.jpg...
|
Slack
|
Aneliya Angelova, Nikolay Yankov, Steliyan Georgie Aneliya Angelova, Nikolay Yankov, Steliyan Georgiev (DM) - Jiminny Inc - 1 new item - Slack...
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
Jiminny Inc
Jiminny (Staging)
Add workspaces
Home
Jiminny Inc
Jiminny (Staging)
Add workspaces
Home
Home
DMs
DMs
Activity
Activity
Files
Files
Later
Later
More…
More
Unreads
Threads
Huddles
Drafts & sent
Directories
platform-inner-team
ai-chapter
alerts
backend
confusion-clinic
curiosity_lab
engineering
frontend
general
infra-changes
jiminny-bg
platform-tickets
product_launches
random
releases
sofia-office
support
thank-yous
the_people_of_jiminny
Aneliya Angelova
,
Nikolay Yankov
,
Steliyan Georgiev
Steliyan Georgiev
Adelina Petrova
,
Ilian Kyuchukov
,
Steliyan Georgiev
Adelina Petrova
Galya Dimitrova
Vasil Vasilev
Nikolay Nikolov
Galya Dimitrova
,
Nikolay Nikolov
Galya Dimitrova
,
Nikolay Yankov
Nikolay Yankov
Jira Cloud
Toast
Google Calendar
Messages
Messages
Add canvas
Add canvas
Add and Edit Channel Tabs
Canvas
List
Folder
Jump to date
Lukas Kovalik
Today at 10:34:10 AM
10:34 AM
не само daily но трябва да се пусне команда
Today at 10:35:08 AM
10:35
php artisan automated-reports
Nikolay Yankov
Today at 10:35:39 AM
10:35 AM
значи не създава веднага по принцип, в някакъв час на деня ли стъздава?
Lukas Kovalik
Today at 10:36:11 AM
10:36 AM
това ще гледа всичко applicable за днес (ако не понедлник или начало на месец е само daily)
Today at 10:36:27 AM
10:36
крон го пуска през нощ
Today at 10:37:19 AM
10:37
така че мануално пусни при тестване
Today at 10:38:26 AM
10:38
ако трябва да тестваме други репорти може да променя команда за тестване да приема параметър за report template и д си пускаме определен когато тестваме
Nikolay Yankov
Today at 10:41:03 AM
10:41 AM
можеш ли да я ръннеш ти командата
Lukas Kovalik
Today at 10:43:05 AM
10:43 AM
да
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Nikolay Yankov
Today at 10:45:52 AM
10:45 AM
пиши кат оя ръннеш
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Lukas Kovalik
Today at 10:52:52 AM
10:52 AM
забавих се че ми се разбазикаха settings за среди
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 10:53:07 AM
10:53
пуснах и мина и fail-на
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 10:53:20 AM
10:53
има result но е failed
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 10:58:08 AM
10:58
значи
REASON_NOT_ENOUGH_ACTIVITIES
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 10:58:57 AM
10:58
виж дали има нещо в OD със този филтър
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Nikolay Yankov
Today at 11:01:28 AM
11:01 AM
Добре
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Nikolay Yankov
Today at 11:39:27 AM
11:39 AM
я рънни пак
Lukas
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Lukas Kovalik
Today at 11:43:00 AM
11:43 AM
готово
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 11:44:24 AM
11:44
същото
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 11:47:25 AM
11:47
Competitive pitches беше втория нали така
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
New
Nikolay Yankov
Today at 12:04:33 PM
12:04 PM
Да, там има 14 активитита, защо не сработи този път?
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…...
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"Jiminny Inc","depth":12,"bounds":{"left":0.23867187,"top":1.0,"width":0.0125,"height":-0.05486107},"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true,"is_expanded":false},{"role":"AXRadioButton","text":"Jiminny (Staging)","depth":12,"bounds":{"left":0.23867187,"top":1.0,"width":0.0125,"height":-0.090972185},"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"Add workspaces","depth":12,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"Home","depth":14,"bounds":{"left":0.26054686,"top":1.0,"width":0.0203125,"height":-0.048611164},"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true,"is_expanded":false},{"role":"AXStaticText","text":"Home","depth":16,"bounds":{"left":0.26484376,"top":1.0,"width":0.01171875,"height":-0.08124995},"role_description":"text"},{"role":"AXRadioButton","text":"DMs","depth":14,"bounds":{"left":0.26054686,"top":1.0,"width":0.0203125,"height":-0.0958333},"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"DMs","depth":16,"role_description":"text"},{"role":"AXRadioButton","text":"Activity","depth":14,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Activity","depth":16,"role_description":"text"},{"role":"AXRadioButton","text":"Files","depth":14,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Files","depth":16,"role_description":"text"},{"role":"AXRadioButton","text":"Later","depth":14,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Later","depth":16,"role_description":"text"},{"role":"AXRadioButton","text":"More…","depth":14,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"More","depth":16,"role_description":"text"},{"role":"AXStaticText","text":"Unreads","depth":21,"bounds":{"left":0.3,"top":1.0,"width":0.022265624,"height":-0.079861164},"role_description":"text"},{"role":"AXStaticText","text":"Threads","depth":21,"bounds":{"left":0.3,"top":1.0,"width":0.020703126,"height":-0.079861164},"role_description":"text"},{"role":"AXStaticText","text":"Huddles","depth":21,"bounds":{"left":0.3,"top":1.0,"width":0.021484375,"height":-0.079861164},"role_description":"text"},{"role":"AXStaticText","text":"Drafts & sent","depth":21,"bounds":{"left":0.3,"top":1.0,"width":0.034375,"height":-0.079861164},"role_description":"text"},{"role":"AXStaticText","text":"Directories","depth":21,"bounds":{"left":0.3,"top":1.0,"width":0.028515626,"height":-0.079861164},"role_description":"text"},{"role":"AXStaticText","text":"platform-inner-team","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"ai-chapter","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"alerts","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"backend","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"confusion-clinic","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"curiosity_lab","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"engineering","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"frontend","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"general","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"infra-changes","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"jiminny-bg","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"platform-tickets","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"product_launches","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"random","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"releases","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"sofia-office","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"support","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"thank-yous","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"the_people_of_jiminny","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Aneliya Angelova","depth":23,"role_description":"text"},{"role":"AXStaticText","text":",","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Nikolay Yankov","depth":23,"role_description":"text"},{"role":"AXStaticText","text":",","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Steliyan Georgiev","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Steliyan Georgiev","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Adelina Petrova","depth":23,"role_description":"text"},{"role":"AXStaticText","text":",","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Ilian Kyuchukov","depth":23,"role_description":"text"},{"role":"AXStaticText","text":",","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Steliyan Georgiev","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Adelina Petrova","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Galya Dimitrova","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Vasil Vasilev","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Nikolay Nikolov","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Galya Dimitrova","depth":23,"role_description":"text"},{"role":"AXStaticText","text":",","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Nikolay Nikolov","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Galya Dimitrova","depth":23,"role_description":"text"},{"role":"AXStaticText","text":",","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Nikolay Yankov","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Nikolay Yankov","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Jira Cloud","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Toast","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Google Calendar","depth":23,"role_description":"text"},{"role":"AXRadioButton","text":"Messages","depth":17,"bounds":{"left":0.3765625,"top":1.0,"width":0.036328126,"height":-0.079861164},"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true,"is_expanded":false},{"role":"AXStaticText","text":"Messages","depth":19,"bounds":{"left":0.3875,"top":1.0,"width":0.022265624,"height":-0.087499976},"role_description":"text"},{"role":"AXRadioButton","text":"Add canvas","depth":18,"bounds":{"left":0.4140625,"top":1.0,"width":0.040234376,"height":-0.079861164},"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Add canvas","depth":20,"bounds":{"left":0.425,"top":1.0,"width":0.026171874,"height":-0.087499976},"role_description":"text"},{"role":"AXPopUpButton","text":"Add and Edit Channel Tabs","depth":17,"bounds":{"left":0.45546874,"top":1.0,"width":0.012890625,"height":-0.079861164},"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Canvas","depth":17,"role_description":"text"},{"role":"AXStaticText","text":"List","depth":17,"role_description":"text"},{"role":"AXStaticText","text":"Folder","depth":17,"role_description":"text"},{"role":"AXPopUpButton","text":"Jump to date","depth":23,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Lukas Kovalik","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 10:34:10 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:34 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"не само daily но трябва да се пусне команда","depth":25,"role_description":"text"},{"role":"AXLink","text":"Today at 10:35:08 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:35","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"php artisan automated-reports","depth":25,"role_description":"text"},{"role":"AXButton","text":"Nikolay Yankov","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 10:35:39 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:35 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"значи не създава веднага по принцип, в някакъв час на деня ли стъздава?","depth":25,"role_description":"text"},{"role":"AXButton","text":"Lukas Kovalik","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 10:36:11 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:36 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"това ще гледа всичко applicable за днес (ако не понедлник или начало на месец е само daily)","depth":25,"role_description":"text"},{"role":"AXLink","text":"Today at 10:36:27 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:36","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"крон го пуска през нощ","depth":25,"role_description":"text"},{"role":"AXLink","text":"Today at 10:37:19 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:37","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"така че мануално пусни при тестване","depth":25,"role_description":"text"},{"role":"AXLink","text":"Today at 10:38:26 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:38","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"ако трябва да тестваме други репорти може да променя команда за тестване да приема параметър за report template и д си пускаме определен когато тестваме","depth":25,"role_description":"text"},{"role":"AXButton","text":"Nikolay Yankov","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 10:41:03 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:41 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"можеш ли да я ръннеш ти командата","depth":25,"role_description":"text"},{"role":"AXButton","text":"Lukas Kovalik","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 10:43:05 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:43 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"да","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Nikolay Yankov","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 10:45:52 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:45 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"пиши кат оя ръннеш","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Lukas Kovalik","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 10:52:52 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:52 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"забавих се че ми се разбазикаха settings за среди","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Today at 10:53:07 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:53","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"пуснах и мина и fail-на","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Today at 10:53:20 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:53","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"има result но е failed","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Today at 10:58:08 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:58","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"значи","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"REASON_NOT_ENOUGH_ACTIVITIES","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Today at 10:58:57 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:58","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"виж дали има нещо в OD със този филтър","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Nikolay Yankov","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 11:01:28 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"11:01 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"Добре","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Nikolay Yankov","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 11:39:27 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"11:39 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"я рънни пак","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"Lukas","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Lukas Kovalik","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 11:43:00 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"11:43 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"готово","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Today at 11:44:24 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"11:44","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"същото","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Today at 11:47:25 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"11:47","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"Competitive pitches беше втория нали така","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"New","depth":22,"role_description":"text"},{"role":"AXButton","text":"Nikolay Yankov","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 12:04:33 PM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"12:04 PM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"Да, там има 14 активитита, защо не сработи този път?","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false}]...
|
3633154138292956942
|
-1285472192273661616
|
visual_change
|
hybrid
|
NULL
|
Jiminny Inc
Jiminny (Staging)
Add workspaces
Home
Jiminny Inc
Jiminny (Staging)
Add workspaces
Home
Home
DMs
DMs
Activity
Activity
Files
Files
Later
Later
More…
More
Unreads
Threads
Huddles
Drafts & sent
Directories
platform-inner-team
ai-chapter
alerts
backend
confusion-clinic
curiosity_lab
engineering
frontend
general
infra-changes
jiminny-bg
platform-tickets
product_launches
random
releases
sofia-office
support
thank-yous
the_people_of_jiminny
Aneliya Angelova
,
Nikolay Yankov
,
Steliyan Georgiev
Steliyan Georgiev
Adelina Petrova
,
Ilian Kyuchukov
,
Steliyan Georgiev
Adelina Petrova
Galya Dimitrova
Vasil Vasilev
Nikolay Nikolov
Galya Dimitrova
,
Nikolay Nikolov
Galya Dimitrova
,
Nikolay Yankov
Nikolay Yankov
Jira Cloud
Toast
Google Calendar
Messages
Messages
Add canvas
Add canvas
Add and Edit Channel Tabs
Canvas
List
Folder
Jump to date
Lukas Kovalik
Today at 10:34:10 AM
10:34 AM
не само daily но трябва да се пусне команда
Today at 10:35:08 AM
10:35
php artisan automated-reports
Nikolay Yankov
Today at 10:35:39 AM
10:35 AM
значи не създава веднага по принцип, в някакъв час на деня ли стъздава?
Lukas Kovalik
Today at 10:36:11 AM
10:36 AM
това ще гледа всичко applicable за днес (ако не понедлник или начало на месец е само daily)
Today at 10:36:27 AM
10:36
крон го пуска през нощ
Today at 10:37:19 AM
10:37
така че мануално пусни при тестване
Today at 10:38:26 AM
10:38
ако трябва да тестваме други репорти може да променя команда за тестване да приема параметър за report template и д си пускаме определен когато тестваме
Nikolay Yankov
Today at 10:41:03 AM
10:41 AM
можеш ли да я ръннеш ти командата
Lukas Kovalik
Today at 10:43:05 AM
10:43 AM
да
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Nikolay Yankov
Today at 10:45:52 AM
10:45 AM
пиши кат оя ръннеш
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Lukas Kovalik
Today at 10:52:52 AM
10:52 AM
забавих се че ми се разбазикаха settings за среди
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 10:53:07 AM
10:53
пуснах и мина и fail-на
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 10:53:20 AM
10:53
има result но е failed
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 10:58:08 AM
10:58
значи
REASON_NOT_ENOUGH_ACTIVITIES
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 10:58:57 AM
10:58
виж дали има нещо в OD със този филтър
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Nikolay Yankov
Today at 11:01:28 AM
11:01 AM
Добре
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Nikolay Yankov
Today at 11:39:27 AM
11:39 AM
я рънни пак
Lukas
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Lukas Kovalik
Today at 11:43:00 AM
11:43 AM
готово
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 11:44:24 AM
11:44
същото
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 11:47:25 AM
11:47
Competitive pitches беше втория нали така
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
New
Nikolay Yankov
Today at 12:04:33 PM
12:04 PM
Да, там има 14 активитита, защо не сработи този път?
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
FirefoxFileEditViewHistoryBookmarks)ProfilesToolsWindowHeldSaved searchesapp.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4You are currently impersonating Nikolay Yankov <)14 activitiesSort by: Most recent* Add RecordingA Get NotifiedPlatform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloleamSearch teamsiTopics: Competitors XShow internal and external activities: Show internal only *)Save Search @ Clear allHostIActivityCurrent StagestatsZ Configure SSH access to multipleHost@ Console Home | Console Home | usSearch team membersiSecurityGroup | EC2 |us-east-210niso searen as DarticloanuJY-20543 add AJ reports User pilcSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc(x) Configure SSH access to multipleCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabParuicipantSearch team membersCustomer ®Customer or SubjectTranscript ©• Search transcript |Said byMnyonePeriodAll timeTopicsCompetitors *)Activity typeSearch activity typesDuration ©Min (minutes)Max (minutes)Al call scoreSelect Al call scoreMulomalea call scoreSelect automated calliCoaching scoreSelect coaching scoreCoach ®Search coaches.Stage at callSearch stagesCurrent stageSearch stagesContactActivityTypeDurationDateJiminny MSalestorce App IrainingJiminny MBekkie/ Jules - renewals and Contract…Jiminny MHandover training part 1Unknown Customer M2 8 Deal Insights playbook 2 €Exclaimer MExclaimer handoverUnknown Customer MHow to run an Intro CallTom Lavery at Plamen enterpriseMJiminny & - All-hands meeting i%TomLaveryUnknown Customer MAll -hands Jan 9thUnknown Customer MNotetaker added on 11-28-23 @04:01Unknown Customer played) 1Training P - Jiminny App for Salesfor..Unknown Customer MAll-hands - Thank Yous, What Went, L...Unknown Customer played MAll-hands - Nov /thUnknown Customer 1All Hands - October 31st ©Unknown Customer MDeal Insights Referesher/Training w/T...JY-18909-automated-reports-ask-iiminny = 869720Unlikely toRenew$42,12647mĐ0 D444m90 о 3Đ0D234m$0%000D 2$0 228.DODO17m31m43m28mD0 E1 sim25m39m33m53122ĐO D 1141m11/0/2024.2:28 PMI25/06/2024, 3:09 PM10/06/2024, 12:02 PM18/05/9014. 19.96 PMI13/03/2024, 11:28 AM26/02/2024, 2:30 PM16/01/2024, 11:43 AM09/01/2024, 11:45 AM28/11/2023, 11:30 AM22/11/2023, 11:56 AM14/11/2023, 11:27 AM07/11/2023, 11:42 AM31/10/2023, 11:35 AM25/10/2023, 11:46 AMSupport Daily • in 2h 55 mTue 14 Aor 12:05:13Q InspectorConsoleD DebuggerN Network{) Style Editor( PerformanceELE MemoryE Storage© 99+Filter URLsAlIHMLeSSImages200200206200200200200200200206200200MediaotheMethodPOs IPOSTInitiatorPOsIPOSTGETGETGETGETGETGETPOSTPOsIPOSTPUSIPOSTDomainA D 036719.ing...A Y 036719.ing...036/19.ing..A B 036719.ing...apo.stagino.l..A app.staging.ji...A app.staging.ji.A app.stagingji...A app.stagingji...ttind, userollot.loA app.stagingji...ap1b0 310 envelodelsentry versionssentrv xe tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchap1/562/310/envelope/?sentryversion=/&sentry_ke tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchsearch?statusl|=completed&sort_by=dateHeld& * xhrrecentsaved-search" Xhiintegrationson-demand?topic_idll=e02f0932-cb76-41b6-ac +a xhrNX-0940e17authenticateA xhrAr.logr-in.comr.locl-in.comAr.logr-in.comYa=ponxat plattorm-staging&r=b-019d8b28-3eft-/c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhr_ Disable Cache No Throttling + 50:TransferredIsonb0088 | 43 ms500 B2 B | 43 msb00 B23 44 ms500 B2 B | 43 ms6.28 kB24.21 kB1537 ms5.65 kB15.26 kB | 211 ms3.62 kB1.42 Kb 1508 ms3.83 kB5.53 kB | 1253 ms55.53 kB 196.86..2299 mscacheo3.12 kB126.39 KB7.89 kB6.41 kB348kR96 B | 620 ms359 ms|158 ms153 ms|150 ms15 requests| 243.44 kB / 224.19 kB transferredFinish: 14.72 sDOMContentLoaded: 42 ms load: 195 ms...
|
10950
|
|
10952
|
217
|
28
|
2026-04-14T09:05:19.668758+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157519668_m2.jpg...
|
Slack
|
Aneliya Angelova, Nikolay Yankov, Steliyan Georgie Aneliya Angelova, Nikolay Yankov, Steliyan Georgiev (DM) - Jiminny Inc - 1 new item - Slack...
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
Jiminny Inc
Jiminny (Staging)
Add workspaces
Home
Jiminny Inc
Jiminny (Staging)
Add workspaces
Home
Home
DMs
DMs
Activity
Activity
Files
Files
Later
Later
More…
More
Unreads
Threads
Huddles
Drafts & sent
Directories
platform-inner-team
ai-chapter
alerts
backend
confusion-clinic
curiosity_lab
engineering
frontend
general
infra-changes
jiminny-bg
platform-tickets
product_launches
random
releases
sofia-office
support
thank-yous
the_people_of_jiminny
Aneliya Angelova
,
Nikolay Yankov
,
Steliyan Georgiev
Steliyan Georgiev
Adelina Petrova
,
Ilian Kyuchukov
,
Steliyan Georgiev
Adelina Petrova
Galya Dimitrova
Vasil Vasilev
Nikolay Nikolov
Galya Dimitrova
,
Nikolay Nikolov
Galya Dimitrova
,
Nikolay Yankov
Nikolay Yankov
Jira Cloud
Toast
Google Calendar
Messages
Messages
Add canvas
Add canvas
Add and Edit Channel Tabs
Canvas
List
Folder
Jump to date
Lukas Kovalik
Today at 10:34:10 AM
10:34 AM
не само daily но трябва да се пусне команда
Today at 10:35:08 AM
10:35
php artisan automated-reports
Nikolay Yankov
Today at 10:35:39 AM
10:35 AM
значи не създава веднага по принцип, в някакъв час на деня ли стъздава?
Lukas Kovalik
Today at 10:36:11 AM
10:36 AM
това ще гледа всичко applicable за днес (ако не понедлник или начало на месец е само daily)
Today at 10:36:27 AM
10:36
крон го пуска през нощ
Today at 10:37:19 AM
10:37
така че мануално пусни при тестване
Today at 10:38:26 AM
10:38
ако трябва да тестваме други репорти може да променя команда за тестване да приема параметър за report template и д си пускаме определен когато тестваме
Nikolay Yankov
Today at 10:41:03 AM
10:41 AM
можеш ли да я ръннеш ти командата
Lukas Kovalik
Today at 10:43:05 AM
10:43 AM
да
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Nikolay Yankov
Today at 10:45:52 AM
10:45 AM
пиши кат оя ръннеш
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Lukas Kovalik
Today at 10:52:52 AM
10:52 AM
забавих се че ми се разбазикаха settings за среди
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 10:53:07 AM
10:53
пуснах и мина и fail-на
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 10:53:20 AM
10:53
има result но е failed
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 10:58:08 AM
10:58
значи
REASON_NOT_ENOUGH_ACTIVITIES
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 10:58:57 AM
10:58
виж дали има нещо в OD със този филтър
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Nikolay Yankov
Today at 11:01:28 AM
11:01 AM
Добре
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Nikolay Yankov
Today at 11:39:27 AM
11:39 AM
я рънни пак
Lukas
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Lukas Kovalik
Today at 11:43:00 AM
11:43 AM
готово
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 11:44:24 AM
11:44
същото
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 11:47:25 AM
11:47
Competitive pitches беше втория нали така
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
New
Nikolay Yankov
Today at 12:04:33 PM
12:04 PM...
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"Jiminny Inc","depth":12,"bounds":{"left":0.23867187,"top":1.0,"width":0.0125,"height":-0.05486107},"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true,"is_expanded":false},{"role":"AXRadioButton","text":"Jiminny (Staging)","depth":12,"bounds":{"left":0.23867187,"top":1.0,"width":0.0125,"height":-0.090972185},"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"Add workspaces","depth":12,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"Home","depth":14,"bounds":{"left":0.26054686,"top":1.0,"width":0.0203125,"height":-0.048611164},"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true,"is_expanded":false},{"role":"AXStaticText","text":"Home","depth":16,"bounds":{"left":0.26484376,"top":1.0,"width":0.01171875,"height":-0.08124995},"role_description":"text"},{"role":"AXRadioButton","text":"DMs","depth":14,"bounds":{"left":0.26054686,"top":1.0,"width":0.0203125,"height":-0.0958333},"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"DMs","depth":16,"role_description":"text"},{"role":"AXRadioButton","text":"Activity","depth":14,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Activity","depth":16,"role_description":"text"},{"role":"AXRadioButton","text":"Files","depth":14,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Files","depth":16,"role_description":"text"},{"role":"AXRadioButton","text":"Later","depth":14,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Later","depth":16,"role_description":"text"},{"role":"AXRadioButton","text":"More…","depth":14,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"More","depth":16,"role_description":"text"},{"role":"AXStaticText","text":"Unreads","depth":21,"bounds":{"left":0.3,"top":1.0,"width":0.022265624,"height":-0.079861164},"role_description":"text"},{"role":"AXStaticText","text":"Threads","depth":21,"bounds":{"left":0.3,"top":1.0,"width":0.020703126,"height":-0.079861164},"role_description":"text"},{"role":"AXStaticText","text":"Huddles","depth":21,"bounds":{"left":0.3,"top":1.0,"width":0.021484375,"height":-0.079861164},"role_description":"text"},{"role":"AXStaticText","text":"Drafts & sent","depth":21,"bounds":{"left":0.3,"top":1.0,"width":0.034375,"height":-0.079861164},"role_description":"text"},{"role":"AXStaticText","text":"Directories","depth":21,"bounds":{"left":0.3,"top":1.0,"width":0.028515626,"height":-0.079861164},"role_description":"text"},{"role":"AXStaticText","text":"platform-inner-team","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"ai-chapter","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"alerts","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"backend","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"confusion-clinic","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"curiosity_lab","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"engineering","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"frontend","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"general","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"infra-changes","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"jiminny-bg","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"platform-tickets","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"product_launches","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"random","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"releases","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"sofia-office","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"support","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"thank-yous","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"the_people_of_jiminny","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Aneliya Angelova","depth":23,"role_description":"text"},{"role":"AXStaticText","text":",","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Nikolay Yankov","depth":23,"role_description":"text"},{"role":"AXStaticText","text":",","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Steliyan Georgiev","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Steliyan Georgiev","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Adelina Petrova","depth":23,"role_description":"text"},{"role":"AXStaticText","text":",","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Ilian Kyuchukov","depth":23,"role_description":"text"},{"role":"AXStaticText","text":",","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Steliyan Georgiev","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Adelina Petrova","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Galya Dimitrova","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Vasil Vasilev","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Nikolay Nikolov","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Galya Dimitrova","depth":23,"role_description":"text"},{"role":"AXStaticText","text":",","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Nikolay Nikolov","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Galya Dimitrova","depth":23,"role_description":"text"},{"role":"AXStaticText","text":",","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Nikolay Yankov","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Nikolay Yankov","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Jira Cloud","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Toast","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Google Calendar","depth":23,"role_description":"text"},{"role":"AXRadioButton","text":"Messages","depth":17,"bounds":{"left":0.3765625,"top":1.0,"width":0.036328126,"height":-0.079861164},"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true,"is_expanded":false},{"role":"AXStaticText","text":"Messages","depth":19,"bounds":{"left":0.3875,"top":1.0,"width":0.022265624,"height":-0.087499976},"role_description":"text"},{"role":"AXRadioButton","text":"Add canvas","depth":18,"bounds":{"left":0.4140625,"top":1.0,"width":0.040234376,"height":-0.079861164},"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Add canvas","depth":20,"bounds":{"left":0.425,"top":1.0,"width":0.026171874,"height":-0.087499976},"role_description":"text"},{"role":"AXPopUpButton","text":"Add and Edit Channel Tabs","depth":17,"bounds":{"left":0.45546874,"top":1.0,"width":0.012890625,"height":-0.079861164},"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Canvas","depth":17,"role_description":"text"},{"role":"AXStaticText","text":"List","depth":17,"role_description":"text"},{"role":"AXStaticText","text":"Folder","depth":17,"role_description":"text"},{"role":"AXPopUpButton","text":"Jump to date","depth":23,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Lukas Kovalik","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 10:34:10 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:34 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"не само daily но трябва да се пусне команда","depth":25,"role_description":"text"},{"role":"AXLink","text":"Today at 10:35:08 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:35","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"php artisan automated-reports","depth":25,"role_description":"text"},{"role":"AXButton","text":"Nikolay Yankov","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 10:35:39 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:35 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"значи не създава веднага по принцип, в някакъв час на деня ли стъздава?","depth":25,"role_description":"text"},{"role":"AXButton","text":"Lukas Kovalik","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 10:36:11 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:36 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"това ще гледа всичко applicable за днес (ако не понедлник или начало на месец е само daily)","depth":25,"role_description":"text"},{"role":"AXLink","text":"Today at 10:36:27 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:36","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"крон го пуска през нощ","depth":25,"role_description":"text"},{"role":"AXLink","text":"Today at 10:37:19 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:37","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"така че мануално пусни при тестване","depth":25,"role_description":"text"},{"role":"AXLink","text":"Today at 10:38:26 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:38","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"ако трябва да тестваме други репорти може да променя команда за тестване да приема параметър за report template и д си пускаме определен когато тестваме","depth":25,"role_description":"text"},{"role":"AXButton","text":"Nikolay Yankov","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 10:41:03 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:41 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"можеш ли да я ръннеш ти командата","depth":25,"role_description":"text"},{"role":"AXButton","text":"Lukas Kovalik","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 10:43:05 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:43 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"да","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Nikolay Yankov","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 10:45:52 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:45 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"пиши кат оя ръннеш","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Lukas Kovalik","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 10:52:52 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:52 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"забавих се че ми се разбазикаха settings за среди","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Today at 10:53:07 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:53","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"пуснах и мина и fail-на","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Today at 10:53:20 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:53","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"има result но е failed","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Today at 10:58:08 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:58","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"значи","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"REASON_NOT_ENOUGH_ACTIVITIES","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Today at 10:58:57 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:58","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"виж дали има нещо в OD със този филтър","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Nikolay Yankov","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 11:01:28 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"11:01 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"Добре","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Nikolay Yankov","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 11:39:27 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"11:39 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"я рънни пак","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"Lukas","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Lukas Kovalik","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 11:43:00 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"11:43 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"готово","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Today at 11:44:24 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"11:44","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"същото","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Today at 11:47:25 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"11:47","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"Competitive pitches беше втория нали така","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"New","depth":22,"role_description":"text"},{"role":"AXButton","text":"Nikolay Yankov","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 12:04:33 PM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"12:04 PM","depth":25,"role_description":"text"}]...
|
7427672459816991510
|
-1285472192273661616
|
visual_change
|
hybrid
|
NULL
|
Jiminny Inc
Jiminny (Staging)
Add workspaces
Home
Jiminny Inc
Jiminny (Staging)
Add workspaces
Home
Home
DMs
DMs
Activity
Activity
Files
Files
Later
Later
More…
More
Unreads
Threads
Huddles
Drafts & sent
Directories
platform-inner-team
ai-chapter
alerts
backend
confusion-clinic
curiosity_lab
engineering
frontend
general
infra-changes
jiminny-bg
platform-tickets
product_launches
random
releases
sofia-office
support
thank-yous
the_people_of_jiminny
Aneliya Angelova
,
Nikolay Yankov
,
Steliyan Georgiev
Steliyan Georgiev
Adelina Petrova
,
Ilian Kyuchukov
,
Steliyan Georgiev
Adelina Petrova
Galya Dimitrova
Vasil Vasilev
Nikolay Nikolov
Galya Dimitrova
,
Nikolay Nikolov
Galya Dimitrova
,
Nikolay Yankov
Nikolay Yankov
Jira Cloud
Toast
Google Calendar
Messages
Messages
Add canvas
Add canvas
Add and Edit Channel Tabs
Canvas
List
Folder
Jump to date
Lukas Kovalik
Today at 10:34:10 AM
10:34 AM
не само daily но трябва да се пусне команда
Today at 10:35:08 AM
10:35
php artisan automated-reports
Nikolay Yankov
Today at 10:35:39 AM
10:35 AM
значи не създава веднага по принцип, в някакъв час на деня ли стъздава?
Lukas Kovalik
Today at 10:36:11 AM
10:36 AM
това ще гледа всичко applicable за днес (ако не понедлник или начало на месец е само daily)
Today at 10:36:27 AM
10:36
крон го пуска през нощ
Today at 10:37:19 AM
10:37
така че мануално пусни при тестване
Today at 10:38:26 AM
10:38
ако трябва да тестваме други репорти може да променя команда за тестване да приема параметър за report template и д си пускаме определен когато тестваме
Nikolay Yankov
Today at 10:41:03 AM
10:41 AM
можеш ли да я ръннеш ти командата
Lukas Kovalik
Today at 10:43:05 AM
10:43 AM
да
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Nikolay Yankov
Today at 10:45:52 AM
10:45 AM
пиши кат оя ръннеш
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Lukas Kovalik
Today at 10:52:52 AM
10:52 AM
забавих се че ми се разбазикаха settings за среди
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 10:53:07 AM
10:53
пуснах и мина и fail-на
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 10:53:20 AM
10:53
има result но е failed
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 10:58:08 AM
10:58
значи
REASON_NOT_ENOUGH_ACTIVITIES
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 10:58:57 AM
10:58
виж дали има нещо в OD със този филтър
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Nikolay Yankov
Today at 11:01:28 AM
11:01 AM
Добре
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Nikolay Yankov
Today at 11:39:27 AM
11:39 AM
я рънни пак
Lukas
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Lukas Kovalik
Today at 11:43:00 AM
11:43 AM
готово
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 11:44:24 AM
11:44
същото
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 11:47:25 AM
11:47
Competitive pitches беше втория нали така
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
New
Nikolay Yankov
Today at 12:04:33 PM
12:04 PM
FirefoxFileEditViewHistoryBookmarks)ProfilesToolsWindowHeldPlatform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloZ Configure SSH access to multiple@ Console Home | Console Home | usSecurityGroup | EC2 |us-east-2JY-20543 add AJ reports User pilcSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformJY-20543 add AJ reports User pilc(x) Configure SSH access to multipleCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabSaved searchesapp.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4You are currently impersonating Nikolay Yankov <)14 activitiesSort by: Most recent* Add RecordingA Get NotifiedleamSearch teamsiTopics: Competitors XShow internal and external activities: Show internal only *)Save Search @ Clear allHostIActivityCurrent StagestatsHostSearch team membersinise searen as particioanuParuicipantSearch team membersCustomer ®Customer or SubjectTranscript ©• Search transcript |Said byAnyonePeriodAll timeTopicsCompetitors *)Activity typeSearch activity typesDuration ©Min (minutes)Max (minutes)Al call scoreselect Ai call scoreMulomalea call scoreSelect automated calliCoaching scoreSelect coaching scoreCoach ®Search coaches.Stage at callSearch stagesCurrent stageSearch stagesContactActivityTypeDurationDateJiminny MSalestorce App IrainingJiminny MBekkie/ Jules - renewals and Contract..Jiminny MHandover training part 1Unknown Customer M2 8 Deal Insights playbook 2 &Exclaimer MExclaimer handoverUnknown Customer MHow to run an Intro CallTom Lavery at Plamen enterprise MJiminny & - All-hands meeting i%TomLaveryUnknown Customer MAll -hands Jan 9thUnknown Customer MNotetaker added on 11-28-23 @04:01Unknown Customer played) 1Training P - Jiminny App for Salesfor..Unknown Customer MAll-hands - Thank Yous, What Went, L...Unknown Customer played 1All-hands - Nov /thUnknown Customer 1All Hands - October 31st ©Unknown Customer MDeal Insights Referesher/Training w/T...JY-18909-automated-reports-ask-iiminny = 869720)Unlikely toRenew$42,12647m90D444m90 о 3Đ0D234m00D 2$0 228.DODO17m31m43m28mD0 E1 sim25m39m33m5122ĐO D 1141m11/0/2024.2:28 PMI25/06/2024, 3:09 PM10/06/2024, 12:02 PM18/05/9014. 19.96 PMI13/03/2024, 11:28 AM26/02/2024, 2:30 PM16/01/2024, 11:43 AM09/01/2024, 11:45 AM28/11/2023, 11:30 AM22/11/2023, 11:56 AM14/11/2023, 11:27 AM07/11/2023, 11:42 AM31/10/2023, 11:35 AM25/10/2023, 11:46 AMSupport Daily • in 2h 55 mTue 14 Aor 17:05:19Q InspectorFilter URLsConsoleD DebuggerN Network{) Style Editor( PerformanceELE MemoryE Storage© 99+_ Disable Cache No Throttling 50.AlIHMLeSSCtatucMethod200POs I200POST206POsIPOST200200200200200GETGETGETGETGETGET200POSTPOSTPOSTPosl200200POSTPOSTImagesMediaotheDomainA D 036719.ing...A Y 036719.ing...036/19.ing..A B 036719.ing...apo.stagino.l..A app.staging.ji...A app.staging.ji..A app.stagingji...A app.stagingji...ttind, userollot.loA app.stagingji...Ar.logr-in.comr.locl-in.comAr.logr-in.comr.locl-in.comInitiatorap1b0 310 envelodelsentry versionssentrv xe tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchap1/562/310/envelope/?sentryversion=/&sentry_ke tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchsearch?statusl|=completed&sort_by=dateHeld& * xhrrecentsaved-search" Xhiintegrationson-demand?topic_idll=e02f0932-cb76-41b6-ac +a xhrNX-0940e17authenticateA xhrYa=ponxat plattorm-staging&r=b-019d8b28-3eft-/c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhra=oonxar/platrorm-stacinear=b-01500020-3e1-/c XhiTypeTransferredIsonb008843 ms500 B2 B | 43 msb00 B23 44m500 B2 B | 43 ms6.28 kB24.21 kB1537 ms5.65 kB15.26 kB | 211 ms3.62 kB1.42 Kb 1508 ms3.83 kB5.53 kB | 1253 ms55.53 kB 196.86...| 2299 mscacheo3.12 kB126.39 KB7.89 kB6.41 kB3.48 KB2.96 kB96 B | 620 ms1359 ms|158 ms153 ms|150 ms166 msÔ 16 requests| 243.44 kB / 227.15 kB transferredFinish: 17.93s DOMContentLoaded: 42 ms load: 195 ms...
|
NULL
|
|
10953
|
217
|
29
|
2026-04-14T09:05:22.679742+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157522679_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEditViewHistoryBookmarks)ProfilesToolsW FirefoxFileEditViewHistoryBookmarks)ProfilesToolsWindowHeldSaved searchesapp.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4You are currently impersonating Nikolay Yankov <)14 activitiesSort by: Most recent* Add RecordingA Get NotifiedPlatform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloleamSearch teamsiTopics: Competitors XShow internal and external activities: Show internal only *)Save Search @ Clear allHostIActivityCurrent StagestatsZ Configure SSH access to multipleHost@ Console Home | Console Home | usSearch team membersiSecurityGroup | EC2 |us-east-210nise searen as particioanuJY-20543 add AJ reports User pilcSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc(x) Configure SSH access to multipleCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabParuicipantSearch team membersCustomer ®Customer or SubjectTranscript ©• Search transcript |Said byMnyonePeriodAll timeTopicsCompetitors *)Activity typeSearch activity typesDuration ©Min (minutes)Max (minutes)Al call scoreSelect Al call scoreMulomalea call scoreSelect automated calliCoaching scoreSelect coaching scoreCoach ®Search coaches.Stage at callSearch stagesCurrent stageSearch stagesContactActivityTypeDurationDateJiminny MSalestorce App IrainingJiminny MBekkie/ Jules - renewals and Contract..Jiminny MHandover training part 1Unknown Customer M2 8 Deal Insights playbook 2 €Exclaimer MExclaimer handoverUnknown Customer MHow to run an Intro CallTom Lavery at Plamen enterpriseMJiminny & - All-hands meeting i%TomLaveryUnknown Customer MAll -hands Jan 9thUnknown Customer MNotetaker added on 11-28-23 @04:01Unknown Customer played) 1Training P - Jiminny App for Salesfor..Unknown Customer MAll-hands - Thank Yous, What Went, L...Unknown Customer played MAll-hands - Nov /thUnknown Customer 1All Hands - October 31st ©Unknown Customer MDeal Insights Referesher/Training w/T...JY-18909-automated-reports-ask-iiminny = 869720Unlikelv ToRenew$42,1264/mĐ0 D444m90 о 3Đ0D234m00D 2$0 228.DODO17m31m43m28mD0 E1 sim25m39m33m53122ĐO D 1141m11/0/2024.2:28 PMI25/06/2024, 3:09 PM10/06/2024, 12:02 PM18/05/9014. 19.96 PMI13/03/2024, 11:28 AM26/02/2024, 2:30 PM16/01/2024, 11:43 AM09/01/2024, 11:45 AM28/11/2023, 11:30 AM22/11/2023, 11:56 AM14/11/2023, 11:27 AM07/11/2023, 11:42 AM31/10/2023, 11:35 AM25/10/2023, 11:46 AMSupport Daily • in 2h 55 mTue 14 Apr 12:05:22Q InspectorConsoleD DebuggerN Network{) Style Editor( PerformanceELE MemoryE Storage© 99+Filter URLs_ Disable Cache No Throttling 50.AlIHMLeSSImagesMediaotheCtatucMethod200200206PosPOSTInitiatorTypeTransferred40.80 $200200200200200200200200200POsIPOSTGETGETGETGETGETGETPOSTPOSTPOSTPOSTPOSTPoslPOSTDomainA D 036719.ing...A Y 036719.ing...036/19.ing..A B 036719.ing...apo.stagino.l..A app.staging.ji...A app.stagingji...A app.stagingji...A app.stagingji...ttind, userollot.loA app.stagingji...ap1b0 310 envelodelsentry versionssentrv xe tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchap1/562/310/envelope/?sentryversion=/&sentry_ke tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchsearch?statusl|=completed&sort_by=dateHeld& * xhrrecentsaved-search" Xhiintegrationson-demand?topic_idll=e02f0932-cb76-41b6-ac +a xhrNX-0940e17authenticateA xhrIsonAr.logr-in.comr.locl-in.comAr.logr-in.comrlocl-in.comYa=ponxat plattorm-staging&r=b-019d8b28-3eft-/c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhra=oonxar/platrorm-stacinear=b-01500020-3e1-/c Xhiatrloar-in.comMa=ponxaf/o atform-staging&r=6-019d8628-3ef-7c xhnb008843 mg500 B2 B | 43 msb00 B2 B 44 mg500 B2 B | 43 ms6.28 kB24.21 kB 1537ms5.65 kB15.26 kB | 211 ms3.62 kB1.42 kB | 1508 ms3.83 kB5.53 kB | 1253 ms55.53 kB 196.86...2298 mscacheo3.12 kB96 B | 620 ms126.39 KB7.89 kB158 ms6.41 kB348kR153 ms| 150 ms2.96 kB3.45 kB166 ms| 151 ms17 requests| 243.44 kB / 230.60 kB transferredFinish: 24.15s DOMContentLoaded: 42 ms load: 195 ms...
|
NULL
|
-6041518331789489735
|
NULL
|
visual_change
|
ocr
|
NULL
|
FirefoxFileEditViewHistoryBookmarks)ProfilesToolsW FirefoxFileEditViewHistoryBookmarks)ProfilesToolsWindowHeldSaved searchesapp.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4You are currently impersonating Nikolay Yankov <)14 activitiesSort by: Most recent* Add RecordingA Get NotifiedPlatform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloleamSearch teamsiTopics: Competitors XShow internal and external activities: Show internal only *)Save Search @ Clear allHostIActivityCurrent StagestatsZ Configure SSH access to multipleHost@ Console Home | Console Home | usSearch team membersiSecurityGroup | EC2 |us-east-210nise searen as particioanuJY-20543 add AJ reports User pilcSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc(x) Configure SSH access to multipleCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabParuicipantSearch team membersCustomer ®Customer or SubjectTranscript ©• Search transcript |Said byMnyonePeriodAll timeTopicsCompetitors *)Activity typeSearch activity typesDuration ©Min (minutes)Max (minutes)Al call scoreSelect Al call scoreMulomalea call scoreSelect automated calliCoaching scoreSelect coaching scoreCoach ®Search coaches.Stage at callSearch stagesCurrent stageSearch stagesContactActivityTypeDurationDateJiminny MSalestorce App IrainingJiminny MBekkie/ Jules - renewals and Contract..Jiminny MHandover training part 1Unknown Customer M2 8 Deal Insights playbook 2 €Exclaimer MExclaimer handoverUnknown Customer MHow to run an Intro CallTom Lavery at Plamen enterpriseMJiminny & - All-hands meeting i%TomLaveryUnknown Customer MAll -hands Jan 9thUnknown Customer MNotetaker added on 11-28-23 @04:01Unknown Customer played) 1Training P - Jiminny App for Salesfor..Unknown Customer MAll-hands - Thank Yous, What Went, L...Unknown Customer played MAll-hands - Nov /thUnknown Customer 1All Hands - October 31st ©Unknown Customer MDeal Insights Referesher/Training w/T...JY-18909-automated-reports-ask-iiminny = 869720Unlikelv ToRenew$42,1264/mĐ0 D444m90 о 3Đ0D234m00D 2$0 228.DODO17m31m43m28mD0 E1 sim25m39m33m53122ĐO D 1141m11/0/2024.2:28 PMI25/06/2024, 3:09 PM10/06/2024, 12:02 PM18/05/9014. 19.96 PMI13/03/2024, 11:28 AM26/02/2024, 2:30 PM16/01/2024, 11:43 AM09/01/2024, 11:45 AM28/11/2023, 11:30 AM22/11/2023, 11:56 AM14/11/2023, 11:27 AM07/11/2023, 11:42 AM31/10/2023, 11:35 AM25/10/2023, 11:46 AMSupport Daily • in 2h 55 mTue 14 Apr 12:05:22Q InspectorConsoleD DebuggerN Network{) Style Editor( PerformanceELE MemoryE Storage© 99+Filter URLs_ Disable Cache No Throttling 50.AlIHMLeSSImagesMediaotheCtatucMethod200200206PosPOSTInitiatorTypeTransferred40.80 $200200200200200200200200200POsIPOSTGETGETGETGETGETGETPOSTPOSTPOSTPOSTPOSTPoslPOSTDomainA D 036719.ing...A Y 036719.ing...036/19.ing..A B 036719.ing...apo.stagino.l..A app.staging.ji...A app.stagingji...A app.stagingji...A app.stagingji...ttind, userollot.loA app.stagingji...ap1b0 310 envelodelsentry versionssentrv xe tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchap1/562/310/envelope/?sentryversion=/&sentry_ke tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchsearch?statusl|=completed&sort_by=dateHeld& * xhrrecentsaved-search" Xhiintegrationson-demand?topic_idll=e02f0932-cb76-41b6-ac +a xhrNX-0940e17authenticateA xhrIsonAr.logr-in.comr.locl-in.comAr.logr-in.comrlocl-in.comYa=ponxat plattorm-staging&r=b-019d8b28-3eft-/c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhra=oonxar/platrorm-stacinear=b-01500020-3e1-/c Xhiatrloar-in.comMa=ponxaf/o atform-staging&r=6-019d8628-3ef-7c xhnb008843 mg500 B2 B | 43 msb00 B2 B 44 mg500 B2 B | 43 ms6.28 kB24.21 kB 1537ms5.65 kB15.26 kB | 211 ms3.62 kB1.42 kB | 1508 ms3.83 kB5.53 kB | 1253 ms55.53 kB 196.86...2298 mscacheo3.12 kB96 B | 620 ms126.39 KB7.89 kB158 ms6.41 kB348kR153 ms| 150 ms2.96 kB3.45 kB166 ms| 151 ms17 requests| 243.44 kB / 230.60 kB transferredFinish: 24.15s DOMContentLoaded: 42 ms load: 195 ms...
|
10952
|
|
10954
|
217
|
30
|
2026-04-14T09:05:25.711678+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157525711_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEditViewHistoryBookmarks)ProfilesToolsW FirefoxFileEditViewHistoryBookmarks)ProfilesToolsWindowHeldPlatform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloZ Configure SSH access to multiple@ Console Home | Console Home | usSecurityGroup | EC2 |us-east-2JY-20543 add AJ reports User pilcSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformJY-20543 add AJ reports User pilc(x) Configure SSH access to multipleCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabSaved searchesapp.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4You are currently impersonating Nikolay Yankov <)14 activitiesSort by: Most recent* Add RecordingA Get NotifiedleamSearch teamsiTopics: Competitors XShow internal and external activities: Show internal only *)Save Search @ Clear allHostIActivityCurrent StagestatsHostSearch team membersinise searen as particioanuParuicipantSearch team membersCustomer ®Customer or SubjectTranscript ©• Search transcript |Said byMnyonePeriodAll timeTopicsCompetitors *)Activity typeSearch activity typesDuration ©Min (minutes)Max (minutes)Al call scoreselect Ai call scoreMulomalea call scoreSelect automated calliCoaching scoreSelect coaching scoreCoach ®Search coaches.Stage at callSearch stagesCurrent stageSearch stagesContactActivityTypeDurationDateJiminny MSalestorce App IrainingJiminny MBekkie/ Jules - renewals and Contract..Jiminny MHandover training part 1Unknown Customer M2 8 Deal Insights playbook 2 &Exclaimer MExclaimer handoverUnknown Customer MHow to run an Intro CallTom Lavery at Plamen enterpriseMJiminny & - All-hands meeting i%TomLaveryUnknown Customer MAll -hands Jan 9thUnknown Customer MNotetaker added on 11-28-23 @04:01Unknown Customer played) 1Training P - Jiminny App for Salesfor..Unknown Customer MAll-hands - Thank Yous, What Went, L...Unknown Customer played 1All-hands - Nov /thUnknown Customer 1All Hands - October 31st ©Unknown Customer MDeal Insights Referesher/Training w/T...JY-18909-automated-reports-ask-iiminny = 869720unlikelv toRenew$42,1264/mĐ0 D444mĐ0 D3Đ0D234m00D 2$0 228.DODO17m31m43m28mD0 E1 sim25m39m33m5122ĐO D 1141m11/0/2024.2:28 PMI25/06/2024, 3:09 PM10/06/2024, 12:02 PM18/05/9014. 19.96 PMI13/03/2024, 11:28 AM26/02/2024, 2:30 PM16/01/2024, 11:43 AM09/01/2024, 11:45 AM28/11/2023, 11:30 AM22/11/2023, 11:56 AM14/11/2023, 11:27 AM07/11/2023, 11:42 AM31/10/2023, 11:35 AM25/10/2023, 11:46 AMSupport Daily • in 2h 55 mTue 14 Apr 12:05:25Q InspectorConsoleD DebuggerN Network{) Style Editor( PerformanceELE MemoryE Storage© 99+Filter URLs_ Disable Cache No Throttling 50.AlIHMLeSSImagesMediaotheCtatucMethod200200206PosPOSTInitiatorTypeTransferred40.80 $200200200200200200200200200POsIPOSTGETGETGETGETGETGETPOSTPOSTPOSTPOSTPOSTPoslPOSTDomainA D 036719.ing...A Y 036719.ing...036/19.ing..A B 036719.ing...apo.stagino.l..A app.staging.ji...A app.stagingji...A app.stagingji...A app.stagingji...ttind, userollot.loA app.stagingji...ap1b0 310 envelodelsentry versionssentrv xe tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchap1/562/310/envelope/?sentryversion=/&sentry_ke tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchsearch?statusl|=completed&sort_by=dateHeld& * xhrrecentsaved-search" Xhiintegrationson-demand?topic_idll=e02f0932-cb76-41b6-ac +a xhrNX-0940e17authenticateA xhrjsonAr.logr-in.comrlocl-in.comAr.logr-in.comrlocl-in.comYa=ponxat plattorm-staging&r=b-019d8b28-3eft-/c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhra=oonxar/platrorm-stacinear=b-01500020-3e1-/c Xhiatrloar-in.comMa=ponxaf/o atform-staging&r=6-019d8628-3ef-7c xhnb008843 mg500 B2 B | 43 msb00 B2 B 44 mg500 B2 B | 43 ms6.28 kB24.21 kB 1537ms5.65 kB15.26 kB | 211 ms3.62 kB1.42 kB | 1508 ms3.83 kB5.53 kB | 1253 ms55.53 kB 196.86...2293 mscacheo3.12 kB96 B | 620 ms126.39 KB7.89 kB158 ms6.41 kB348kR153 ms| 150 ms2.96 kB3.45 kB166 ms| 151 ms17 requests| 243.44 kB / 230.60 kB transferredFinish: 24.15s DOMContentLoaded: 42 ms load: 195 ms...
|
NULL
|
487633775529471389
|
NULL
|
visual_change
|
ocr
|
NULL
|
FirefoxFileEditViewHistoryBookmarks)ProfilesToolsW FirefoxFileEditViewHistoryBookmarks)ProfilesToolsWindowHeldPlatform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloZ Configure SSH access to multiple@ Console Home | Console Home | usSecurityGroup | EC2 |us-east-2JY-20543 add AJ reports User pilcSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformJY-20543 add AJ reports User pilc(x) Configure SSH access to multipleCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabSaved searchesapp.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4You are currently impersonating Nikolay Yankov <)14 activitiesSort by: Most recent* Add RecordingA Get NotifiedleamSearch teamsiTopics: Competitors XShow internal and external activities: Show internal only *)Save Search @ Clear allHostIActivityCurrent StagestatsHostSearch team membersinise searen as particioanuParuicipantSearch team membersCustomer ®Customer or SubjectTranscript ©• Search transcript |Said byMnyonePeriodAll timeTopicsCompetitors *)Activity typeSearch activity typesDuration ©Min (minutes)Max (minutes)Al call scoreselect Ai call scoreMulomalea call scoreSelect automated calliCoaching scoreSelect coaching scoreCoach ®Search coaches.Stage at callSearch stagesCurrent stageSearch stagesContactActivityTypeDurationDateJiminny MSalestorce App IrainingJiminny MBekkie/ Jules - renewals and Contract..Jiminny MHandover training part 1Unknown Customer M2 8 Deal Insights playbook 2 &Exclaimer MExclaimer handoverUnknown Customer MHow to run an Intro CallTom Lavery at Plamen enterpriseMJiminny & - All-hands meeting i%TomLaveryUnknown Customer MAll -hands Jan 9thUnknown Customer MNotetaker added on 11-28-23 @04:01Unknown Customer played) 1Training P - Jiminny App for Salesfor..Unknown Customer MAll-hands - Thank Yous, What Went, L...Unknown Customer played 1All-hands - Nov /thUnknown Customer 1All Hands - October 31st ©Unknown Customer MDeal Insights Referesher/Training w/T...JY-18909-automated-reports-ask-iiminny = 869720unlikelv toRenew$42,1264/mĐ0 D444mĐ0 D3Đ0D234m00D 2$0 228.DODO17m31m43m28mD0 E1 sim25m39m33m5122ĐO D 1141m11/0/2024.2:28 PMI25/06/2024, 3:09 PM10/06/2024, 12:02 PM18/05/9014. 19.96 PMI13/03/2024, 11:28 AM26/02/2024, 2:30 PM16/01/2024, 11:43 AM09/01/2024, 11:45 AM28/11/2023, 11:30 AM22/11/2023, 11:56 AM14/11/2023, 11:27 AM07/11/2023, 11:42 AM31/10/2023, 11:35 AM25/10/2023, 11:46 AMSupport Daily • in 2h 55 mTue 14 Apr 12:05:25Q InspectorConsoleD DebuggerN Network{) Style Editor( PerformanceELE MemoryE Storage© 99+Filter URLs_ Disable Cache No Throttling 50.AlIHMLeSSImagesMediaotheCtatucMethod200200206PosPOSTInitiatorTypeTransferred40.80 $200200200200200200200200200POsIPOSTGETGETGETGETGETGETPOSTPOSTPOSTPOSTPOSTPoslPOSTDomainA D 036719.ing...A Y 036719.ing...036/19.ing..A B 036719.ing...apo.stagino.l..A app.staging.ji...A app.stagingji...A app.stagingji...A app.stagingji...ttind, userollot.loA app.stagingji...ap1b0 310 envelodelsentry versionssentrv xe tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchap1/562/310/envelope/?sentryversion=/&sentry_ke tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchsearch?statusl|=completed&sort_by=dateHeld& * xhrrecentsaved-search" Xhiintegrationson-demand?topic_idll=e02f0932-cb76-41b6-ac +a xhrNX-0940e17authenticateA xhrjsonAr.logr-in.comrlocl-in.comAr.logr-in.comrlocl-in.comYa=ponxat plattorm-staging&r=b-019d8b28-3eft-/c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhra=oonxar/platrorm-stacinear=b-01500020-3e1-/c Xhiatrloar-in.comMa=ponxaf/o atform-staging&r=6-019d8628-3ef-7c xhnb008843 mg500 B2 B | 43 msb00 B2 B 44 mg500 B2 B | 43 ms6.28 kB24.21 kB 1537ms5.65 kB15.26 kB | 211 ms3.62 kB1.42 kB | 1508 ms3.83 kB5.53 kB | 1253 ms55.53 kB 196.86...2293 mscacheo3.12 kB96 B | 620 ms126.39 KB7.89 kB158 ms6.41 kB348kR153 ms| 150 ms2.96 kB3.45 kB166 ms| 151 ms17 requests| 243.44 kB / 230.60 kB transferredFinish: 24.15s DOMContentLoaded: 42 ms load: 195 ms...
|
NULL
|
|
10956
|
217
|
31
|
2026-04-14T09:05:43.910424+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157543910_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEditViewHistoryBookmarksProfilesToolsWi FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHeldSaved searches14 activitiesYou are currently impersonating Nikolay Yankov <)Sort by: Most recentPlatform Sprint 1 Q2 - Platform TealeamTopics: Competitors XShow internal and external activities: Show internal only xJY-20543 add AJ reports User piloSearch teamsiHostIActivityZ Configure SSH access to multipleHost@ Console Home | Console Home | usSearch team membersiSecurityGroup | EC2 |us-east-210Mise searen as DarticloanuJY-20543 add AJ reports User pilcSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc(x) Configure SSH access to multipleCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabParuicipantSearch team membersCustomer ®Customer or SubjectTranscript ©• Search transcript |Said byMnyonePeriodAll timeTopicsCompetitors *)Activity typeSearch activity typesDuration ©Min (minutes)Max (minutes)Al call scoreSelect Al call scoreMulomaled call scoreSelect automated calliCoaching scoreSelect coaching scoreCoach ®Search coaches.Stage at callSearch stagesCurrent stageSearch stagesContactActivityTypeJiminny MSalestorce App IrainingJiminny MBekkie/ Jules - renewals and Contract..Jiminny MHandover training part 1Unknown Customer M2 8 Deal Insights playbook 2 €Exclaimer MExclaimer handoverUnknown Customer MHow to run an Intro CallTom Lavery at Plamen enterprise MJiminny & - All-hands meeting i%TomLaveryUnknown Customer MAll -hands Jan 9thUnknown Customer MNotetaker added on 11-28-23 @04:01Unknown Customer played) 1Training P - Jiminny App for Salesfor..Unknown Customer MAll-hands - Thank Yous, What Went, L...Unknown Customer played MAll-hands - Nov /thUnknown Customer 1All Hands - October 31st ©Unknown Customer MDeal Insights Referesher/Training w/T...JY-18909-automated-reports-ask-iiminny = 869720* Add RecordingA Get NotifiedSave Search @ Clear allCurrent Stagestats00 D 40.Đ0 D2.00D 2Duration4/m44m34mUnlikelv ToRenew$42,126$0 228.DODO17mD0D431m43m$0 92ĐOD428m51m25m39m33m53122ĐO D 1141mDate11/0/2024.2:28 PMI25/06/2024, 3:09 PM10/06/2024, 12:02 PM18/05/9014. 19.96 PMI13/03/2024, 11:28 AM26/02/2024, 2:30 PM16/01/2024, 11:43 AM09/01/2024, 11:45 AM28/11/2023, 11:30 AM22/11/2023, 11:56 AM14/11/2023, 11:27 AM07/11/2023, 11:42 AM31/10/2023, 11:35 AM25/10/2023, 11:46 AMSupport Daily - in 2h 55 mTue 14 Aor 17:05:43Q InspectorFilter URLsConsoleD Debugger{) Style Editor( PerformanceELE Memory© 99+AlIHMLeSSStatus200200206200200200200200200MethodPosPOSTPOsIPOSTGETGETGETGETGETGET2002002002002001200200200200200200POSTPOSTPOSTPUSIPOSTPOSTPOSTPOSTPOSTPOSTPOSTrontsDomainA g 036719.ing...A Y 036719.ing...036/19.ing..A B 036719.ing...apo.stagino.l..A app.staging.ji...A app.staging.ji.A app.stagingji...A app.stagingji...ttind, userollot.loA app.stagingji...Ar.logr-in.comr.locl-in.comAr.logr-in.comr.locl-in.comAr.logr-in.comrlogt-in.comAr.logr-in.comAr.logr-in.com@ r.logr-in.comN NetworkE Storage_ Disable Cache No Throttling 50.ImagesMediaotheInitiatorap1b0 310 envelode/"sentry versions sentrv xe tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchap1/562/310/envelope/?sentryversion=/&sentry_ke tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchsearch?statusl|=completed&sort_by=dateHeld& * xhrrecentsaved-search" Xhiintegrationson-demand?topic_idll=e02f0932-cb76-41b6-ac +a xhrNX-0940e17authenticateA xhrYa=ponxat plattorm-staging&r=b-019d8b28-3eft-/c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhra=oonxar/platrorm-stacinear=b-01500020-3e1-/c Xhii?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhrTasponxat/olattorm-staginaxr=b-01908028-3eft-/c xhni?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhrTasponxat/olattorm-staginaxr=b-01908028-3eft-/c xhnTypeTransferredisonsonjsonjsonb008843 ms500 B2 B | 43 msb00 B23 44 ms500 B2 B | 43 ms6.28 kB24.21 kB 1537 ms5.65 kB15.26 kB | 211 ms3.62 kB1.42 kB | 1508 ms3.83 kB5.53 kB | 1253 ms55.53 kB 196.86...| 2299 mscacheo0 ms3.12 kB96 B | 620 ms126.39 KB7.89 kB6.41 kB3.48 kB2.96 kB3.45 kB3.45 kBOB29o KB2.98 kB3,40 KB|158 ms153 ms1150 ms166 ms|151 ms157 ms1155 ms159 ms176 msÓ 21 requests |243.44 KB 243.45 KB transterredFinish: 44.49 s DOMContentLoaded: 42 ms•load: 195 ms...
|
NULL
|
5072096853394830859
|
NULL
|
visual_change
|
ocr
|
NULL
|
FirefoxFileEditViewHistoryBookmarksProfilesToolsWi FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHeldSaved searches14 activitiesYou are currently impersonating Nikolay Yankov <)Sort by: Most recentPlatform Sprint 1 Q2 - Platform TealeamTopics: Competitors XShow internal and external activities: Show internal only xJY-20543 add AJ reports User piloSearch teamsiHostIActivityZ Configure SSH access to multipleHost@ Console Home | Console Home | usSearch team membersiSecurityGroup | EC2 |us-east-210Mise searen as DarticloanuJY-20543 add AJ reports User pilcSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc(x) Configure SSH access to multipleCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabParuicipantSearch team membersCustomer ®Customer or SubjectTranscript ©• Search transcript |Said byMnyonePeriodAll timeTopicsCompetitors *)Activity typeSearch activity typesDuration ©Min (minutes)Max (minutes)Al call scoreSelect Al call scoreMulomaled call scoreSelect automated calliCoaching scoreSelect coaching scoreCoach ®Search coaches.Stage at callSearch stagesCurrent stageSearch stagesContactActivityTypeJiminny MSalestorce App IrainingJiminny MBekkie/ Jules - renewals and Contract..Jiminny MHandover training part 1Unknown Customer M2 8 Deal Insights playbook 2 €Exclaimer MExclaimer handoverUnknown Customer MHow to run an Intro CallTom Lavery at Plamen enterprise MJiminny & - All-hands meeting i%TomLaveryUnknown Customer MAll -hands Jan 9thUnknown Customer MNotetaker added on 11-28-23 @04:01Unknown Customer played) 1Training P - Jiminny App for Salesfor..Unknown Customer MAll-hands - Thank Yous, What Went, L...Unknown Customer played MAll-hands - Nov /thUnknown Customer 1All Hands - October 31st ©Unknown Customer MDeal Insights Referesher/Training w/T...JY-18909-automated-reports-ask-iiminny = 869720* Add RecordingA Get NotifiedSave Search @ Clear allCurrent Stagestats00 D 40.Đ0 D2.00D 2Duration4/m44m34mUnlikelv ToRenew$42,126$0 228.DODO17mD0D431m43m$0 92ĐOD428m51m25m39m33m53122ĐO D 1141mDate11/0/2024.2:28 PMI25/06/2024, 3:09 PM10/06/2024, 12:02 PM18/05/9014. 19.96 PMI13/03/2024, 11:28 AM26/02/2024, 2:30 PM16/01/2024, 11:43 AM09/01/2024, 11:45 AM28/11/2023, 11:30 AM22/11/2023, 11:56 AM14/11/2023, 11:27 AM07/11/2023, 11:42 AM31/10/2023, 11:35 AM25/10/2023, 11:46 AMSupport Daily - in 2h 55 mTue 14 Aor 17:05:43Q InspectorFilter URLsConsoleD Debugger{) Style Editor( PerformanceELE Memory© 99+AlIHMLeSSStatus200200206200200200200200200MethodPosPOSTPOsIPOSTGETGETGETGETGETGET2002002002002001200200200200200200POSTPOSTPOSTPUSIPOSTPOSTPOSTPOSTPOSTPOSTPOSTrontsDomainA g 036719.ing...A Y 036719.ing...036/19.ing..A B 036719.ing...apo.stagino.l..A app.staging.ji...A app.staging.ji.A app.stagingji...A app.stagingji...ttind, userollot.loA app.stagingji...Ar.logr-in.comr.locl-in.comAr.logr-in.comr.locl-in.comAr.logr-in.comrlogt-in.comAr.logr-in.comAr.logr-in.com@ r.logr-in.comN NetworkE Storage_ Disable Cache No Throttling 50.ImagesMediaotheInitiatorap1b0 310 envelode/"sentry versions sentrv xe tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchap1/562/310/envelope/?sentryversion=/&sentry_ke tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchsearch?statusl|=completed&sort_by=dateHeld& * xhrrecentsaved-search" Xhiintegrationson-demand?topic_idll=e02f0932-cb76-41b6-ac +a xhrNX-0940e17authenticateA xhrYa=ponxat plattorm-staging&r=b-019d8b28-3eft-/c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhra=oonxar/platrorm-stacinear=b-01500020-3e1-/c Xhii?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhrTasponxat/olattorm-staginaxr=b-01908028-3eft-/c xhni?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhrTasponxat/olattorm-staginaxr=b-01908028-3eft-/c xhnTypeTransferredisonsonjsonjsonb008843 ms500 B2 B | 43 msb00 B23 44 ms500 B2 B | 43 ms6.28 kB24.21 kB 1537 ms5.65 kB15.26 kB | 211 ms3.62 kB1.42 kB | 1508 ms3.83 kB5.53 kB | 1253 ms55.53 kB 196.86...| 2299 mscacheo0 ms3.12 kB96 B | 620 ms126.39 KB7.89 kB6.41 kB3.48 kB2.96 kB3.45 kB3.45 kBOB29o KB2.98 kB3,40 KB|158 ms153 ms1150 ms166 ms|151 ms157 ms1155 ms159 ms176 msÓ 21 requests |243.44 KB 243.45 KB transterredFinish: 44.49 s DOMContentLoaded: 42 ms•load: 195 ms...
|
10954
|
|
10958
|
217
|
32
|
2026-04-14T09:05:46.682690+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157546682_m2.jpg...
|
Firefox
|
Jiminny — Work
|
1
|
app.staging.jiminny.com/ondemand?topic_id[]=e02f09 app.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4...
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
JY-20543 add AJ reports User pilot tracking by Lak JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira
Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira...
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":4,"bounds":{"left":0.00234375,"top":0.045138888,"width":0.0890625,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira","depth":4,"bounds":{"left":0.0,"top":0.08263889,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira","depth":5,"bounds":{"left":0.015625,"top":0.09236111,"width":0.11796875,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
6238685320478863360
|
-5216202589983710005
|
click
|
hybrid
|
NULL
|
JY-20543 add AJ reports User pilot tracking by Lak JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira
Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira
FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHeldSaved searchesapp.staging.jiminny.com/ondemand/toplc_lab=e02l09s2-00/0-4100-d641-000001592140@inCidde_Ihternal_Conversatlons=ldsequence_numDer=hYou are currently impersonating Nikolay Yankov <)14 activitiesSort by: Most recent* Add RecordingA Get NotifiedPlatform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloleamSearch teamsiTopics: Competitors XShow internal and external activities: Show internal only * )Save Search @ Clear allHostIActivityZ Configure SSH access to multipleHost@ Console Home | Console Home | usSearch team membersiSecurityGroup | EC2 |us-east-210nise searen as particioanuJY-20543 add AJ reports User pilcSRD-6779 | JY-20632 | Unable toJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformJY-20543 add AJ reports User pilc(x) Configure SSH access to multipleCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabParuicipantSearch team membersCustomer ®Customer or SubjectTranscript ©• Search transcript |Said byMnyonePeriodAll timeTopicsCompetitors *)Activity typeSearch activity typesDuration ©Min (minutes)Max (minutes)Al call scoreSelect Al call scoreMulomalea call scoreSelect automated calliCoaching scoreSelect coaching scoreCoach ®Search coaches.Stage at callSearch stagesCurrent stageSearch stagesContactActivityCurrent StagestatsTypeDurationDateJiminny MSalestorce App IrainingJiminny MBekkie/ Jules - renewals and Contract..Jiminny MHandover training part 1Unknown Customer M2 8 Deal Insights playbook 2 €Exclaimer MExclaimer handoverUnknown Customer MHow to run an Intro CallTom Lavery at Plamen enterprise MJiminny & - All-hands meeting i%TomLaveryUnknown Customer MAll -hands Jan 9thUnknown Customer MNotetaker added on 11-28-23 @04:01Unknown Customer played) 1Training P - Jiminny App for Salesfor..Unknown Customer MAll-hands - Thank Yous, What Went, L...Unknown Customer played MAll-hands - Nov /thUnknown Customer 1All Hands - October 31st ©Unknown Customer MDeal Insights Referesher/Training w/T...JY-18909-automated-reports-ask-iiminny = 86972000 D 44/m0.44m34mĐ0 D2.00D 2Unlikelv ToRenew$42,126$0 228.DODO17m0 82@0 D431m43m$0 92ĐOD428m51m25m39m33m$1 82ĐO D 1141m11/0/2024.2:28 PMI25/06/2024, 3:09 PM10/06/2024, 12:02 PM18/05/9014. 19.96 PMI13/03/2024, 11:28 AM26/02/2024, 2:30 PM16/01/2024, 11:43 AM09/01/2024, 11:45 AM28/11/2023, 11:30 AM22/11/2023, 11:56 AM14/11/2023, 11:27 AM07/11/2023, 11:42 AM31/10/2023, 11:35 AM25/10/2023, 11:46 AMSupport Daily - in 2h 55 mTue 14 Aor 17:05:46Q InspectorP Filter URLsConsoleD Debugger{) Style Editor( PerformanceELE Memory© 99+AlIHMLeSSrontsCtatucMethod200Pos200POST20620020020020020020020020020012002001200200]200200200200POsIPOSTGETGETGETGETGETGETPOSTPOSTPOSTPUSIPOSTPOSTPOSTPOSTPOSTPOSTPOSTDomainA g 036719.ing...A Y 036719.ing...036/19.ing..A B 036719.ing...apo.stagino.l..A app.staging.ji...A app.staging.ji.A app.stagingji...A app.stagingji...ttind, userollot.loA app.stagingji...Ar.logr-in.comr.locl-in.comAr.logr-in.comr.locl-in.comAr.logr-in.comrlogt-in.comAr.logr-in.comAr.logr-in.com@ r.logr-in.comN NetworkE Storage_ Disable Cache No Throttling + 50:ImagesMediaotheInitiatorTypeTransferredap1b0 /310 envelode/"sentry versions sentrv xe tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchap1/562/310/envelope/?sentryversion=/&sentry_ke tetch/api/5627310/envelope/?sentry_version=7&sentry_ke fetchsearch?statusl|=completed&sort_by=dateHeld& * xhrrecentsaved-search" Xhiintegrationson-demand?topic_idll=e02f0932-cb76-41b6-ac +a xhrNX-0940e17authenticateA xhrYa=ponxat plattorm-staging&r=b-019d8b28-3eft-/c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhra=oonxar/platrorm-stacinear=b-01500020-3e1-/c Xhii?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhrTasponxat/olattorm-staginaxr=b-01908028-3eft-/c xhni?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhrTasponxat/olattorm-staginaxr=b-01908028-3eft-/c xhnisonsonjsonjsonb008843 ms500 B2 B | 43 msb00 B23 44 ms500 B2 B | 43 ms6.28 kB24.21 kB 1537 ms5.65 kB15.26 kB | 211 ms3.62 kB1.42 kB | 1508 ms3.83 kB5.53 kB | 1253 ms55.53 kB 196.86...| 2299 mscacheo0 ms3.12 kB96 B | 620 ms126.39 KB7.89 kB6.41 kB3.48 kB2.96 kB3.45 kB3.45 kBOB|158 ms153 ms1150 ms166 ms|151 ms157 ms29o KB1155 ms2.98 kB159 ms3,40 KB176 ms21 requests| 243.44 kB / 243.45 kB transferredFinish: 44.49s DOMContentLoaded: 42 ms•load: 195 ms...
|
NULL
|
|
10959
|
217
|
33
|
2026-04-14T09:05:48.186988+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157548186_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEoitViewHistoryBookmarksProfilesToolsWi FirefoxFileEoitViewHistoryBookmarksProfilesToolsWindowHelpapp.staging.jiminny.com/ondemand?topic_idfl=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4 JPlatform Sprint 1 Q2 - Platform Team - Scrum Board - Jira — jiminny.atlassian.net/jira/software/c/projects/JY/boards/37JY-20543 add AJ reports User pilot tracking by LakyLak • Pull Request #11932 • jiminny/app (CJ Switch to TabPlatform Sprint 1 Q2 - Platform TeaJiminny - app.staging.jiminny.com/ai-reportsJY-20543 add AJ reports User piloInbox (1,540) - [EMAIL] - Jiminny Mail - mail.google.com/mail/u/0/#inboxZ Configure SSH access to multipleCloudWatch | us-east-2 Switch to Tab@ Console Home | Console Home | usMeet - Daily - Platform - meet.google.com/mie-gawc-dsiSecurityGroup | EC2 |us-east-210AISOwikipeala - wikipedia.orgJY-20543 add AJ reports User pilcParSRD-6779 | JY-20632 | Unable to$Recent SearchesgmailTrending on GoogleJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformJY-20543 add AJ reports User pilc& Configure SSH access to multiple eCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabCusTrarман юнаитед соешу лииде• Search transcript |Said byAnyonePeriodAll timeTopicsCompetitors *)Activity typeSearch activity typesDuration ©Min (minutes)Max (minutes)Al call scoreSelect Al call scoreMulomalea call scoreSelect automated calliCoaching scoreSelect coaching scoreCoach ®Search coaches.Stage at callSearch stagesCurrent stageSearch stagesJY-18909-automated-reports-ask-iiminny = 8697202 8 Deal Insights playbook 2 €Exclaimer MExclaimer handoverUnknown Customer MHow to run an Intro CallTom Lavery at Plamen enterprise MJiminny & - All-hands meeting %Unknown Customer MAll -hands Jan 9thUnknown Customer MNotetaker added on 11-28-23 @04:01Unknown Customer played) 1Training P - Jiminny App for Salesfor..Unknown Customer MAll-hands - Thank Yous, What Went, L...Unknown Customer played MAll-hands - Nov /thUnknown Customer 1All Hands - October 31st ©Unknown Customer MDeal Insights Referesher/Training w/T...TomLaveryUnlikely toRenew$42,12650 02$0 828DODO17m801n.31m43m$0 82ĐO D428m51m25m39m33m$1 82ĐO D 1141m18/05/9014. 19.56 PM13/03/2024, 11:28 AM26/02/2024, 2:30 PM16/01/2024, 11:43 AM09/01/2024, 11:45 AM28/11/2023, 11:30 AM22/11/2023, 11:56 AM14/11/2023, 11:27 AM07/11/2023, 11:42 AM31/10/2023, 11:35 AM25/10/2023, 11:46 AMj Support Daily • in 2h 55 m200200[PHONE]00200POSTPOSTPOSTPOSTPOSTPOSTPOSTAr.logr-in.com@ r.logr-in.comAr.logr-in.comrlogt-in.comAr.logr-in.comAr.logr-in.comAr.logr-in.comi?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhra=oonxar/platrorm-stacinear=b-01500020-3e1-/c Xhii?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhrTasponxat/olattorm-staginaxr=b-01908028-3eft-/c xhni?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhrTasponxat/olattorm-staginaxr=b-01908028-3eft-/c xhnjsonsonjsonjson100% C•Tue 14 Apr 12:05:47E Storage0 99+_ Disable Cache No Throttling + 50:Transferredb008843 ms500 B2 B | 43 msb00 B2 B 44 ms500 B2 B | 43 ms6.28 kB24.21 kB 1537 ms5.65 kB15.26 kB | 211 ms3.62 kB1.42 Kb 1508 ms3.83 kB5.53 kB | 1253 ms55.53 kB 196.86... | 2299 mscacheo0 ms3.12 kB96 B|620 ms126.39 KB7.89 kB6.41 kB3.48 kB|158 ms153 ms1150 ms2.96 kB3.45 kB3.45 kBOB29o KB2.98 kB3,40 KB| 151 msI 157 ms1155 ms159 ms176 ms21 requests| 243.44 kB / 243.45 kB transferredFinish: 44.49 s DOMContentLoaded: 42 msload: 195 ms...
|
NULL
|
8099060675247356331
|
NULL
|
visual_change
|
ocr
|
NULL
|
FirefoxFileEoitViewHistoryBookmarksProfilesToolsWi FirefoxFileEoitViewHistoryBookmarksProfilesToolsWindowHelpapp.staging.jiminny.com/ondemand?topic_idfl=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4 JPlatform Sprint 1 Q2 - Platform Team - Scrum Board - Jira — jiminny.atlassian.net/jira/software/c/projects/JY/boards/37JY-20543 add AJ reports User pilot tracking by LakyLak • Pull Request #11932 • jiminny/app (CJ Switch to TabPlatform Sprint 1 Q2 - Platform TeaJiminny - app.staging.jiminny.com/ai-reportsJY-20543 add AJ reports User piloInbox (1,540) - [EMAIL] - Jiminny Mail - mail.google.com/mail/u/0/#inboxZ Configure SSH access to multipleCloudWatch | us-east-2 Switch to Tab@ Console Home | Console Home | usMeet - Daily - Platform - meet.google.com/mie-gawc-dsiSecurityGroup | EC2 |us-east-210AISOwikipeala - wikipedia.orgJY-20543 add AJ reports User pilcParSRD-6779 | JY-20632 | Unable to$Recent SearchesgmailTrending on GoogleJy 19798 evaluation for ai activity8 Jiminny7 Ask Jiminny test report - 8 Aor 201Service-Desk - Queues - PlatformJY-20543 add AJ reports User pilc& Configure SSH access to multiple eCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabCusTrarман юнаитед соешу лииде• Search transcript |Said byAnyonePeriodAll timeTopicsCompetitors *)Activity typeSearch activity typesDuration ©Min (minutes)Max (minutes)Al call scoreSelect Al call scoreMulomalea call scoreSelect automated calliCoaching scoreSelect coaching scoreCoach ®Search coaches.Stage at callSearch stagesCurrent stageSearch stagesJY-18909-automated-reports-ask-iiminny = 8697202 8 Deal Insights playbook 2 €Exclaimer MExclaimer handoverUnknown Customer MHow to run an Intro CallTom Lavery at Plamen enterprise MJiminny & - All-hands meeting %Unknown Customer MAll -hands Jan 9thUnknown Customer MNotetaker added on 11-28-23 @04:01Unknown Customer played) 1Training P - Jiminny App for Salesfor..Unknown Customer MAll-hands - Thank Yous, What Went, L...Unknown Customer played MAll-hands - Nov /thUnknown Customer 1All Hands - October 31st ©Unknown Customer MDeal Insights Referesher/Training w/T...TomLaveryUnlikely toRenew$42,12650 02$0 828DODO17m801n.31m43m$0 82ĐO D428m51m25m39m33m$1 82ĐO D 1141m18/05/9014. 19.56 PM13/03/2024, 11:28 AM26/02/2024, 2:30 PM16/01/2024, 11:43 AM09/01/2024, 11:45 AM28/11/2023, 11:30 AM22/11/2023, 11:56 AM14/11/2023, 11:27 AM07/11/2023, 11:42 AM31/10/2023, 11:35 AM25/10/2023, 11:46 AMj Support Daily • in 2h 55 m200200[PHONE]00200POSTPOSTPOSTPOSTPOSTPOSTPOSTAr.logr-in.com@ r.logr-in.comAr.logr-in.comrlogt-in.comAr.logr-in.comAr.logr-in.comAr.logr-in.comi?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhra=oonxar/platrorm-stacinear=b-01500020-3e1-/c Xhii?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhrTasponxat/olattorm-staginaxr=b-01908028-3eft-/c xhni?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhrTasponxat/olattorm-staginaxr=b-01908028-3eft-/c xhnjsonsonjsonjson100% C•Tue 14 Apr 12:05:47E Storage0 99+_ Disable Cache No Throttling + 50:Transferredb008843 ms500 B2 B | 43 msb00 B2 B 44 ms500 B2 B | 43 ms6.28 kB24.21 kB 1537 ms5.65 kB15.26 kB | 211 ms3.62 kB1.42 Kb 1508 ms3.83 kB5.53 kB | 1253 ms55.53 kB 196.86... | 2299 mscacheo0 ms3.12 kB96 B|620 ms126.39 KB7.89 kB6.41 kB3.48 kB|158 ms153 ms1150 ms2.96 kB3.45 kB3.45 kBOB29o KB2.98 kB3,40 KB| 151 msI 157 ms1155 ms159 ms176 ms21 requests| 243.44 kB / 243.45 kB transferredFinish: 44.49 s DOMContentLoaded: 42 msload: 195 ms...
|
10958
|
|
10961
|
217
|
34
|
2026-04-14T09:05:54.201958+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157554201_m2.jpg...
|
Firefox
|
Jiminny — Work
|
1
|
app.staging.jiminny.com/ondemand?topic_id[]=e02f09 app.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4...
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
JY-20543 add AJ reports User pilot tracking by Lak JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira
Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Configure SSH access to multiple environment - Engineering - Confluence
Configure SSH access to multiple environment - Engineering - Confluence
Console Home | Console Home | us-east-2
Console Home | Console Home | us-east-2
SecurityGroup | EC2 | us-east-2
SecurityGroup | EC2 | us-east-2
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app
SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app
Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet
Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet
Jiminny
Jiminny
Close tab
Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf
Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf
Service-Desk - Queues - Platform team - Service space - Jira
Service-Desk - Queues - Platform team - Service space - Jira
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Configure SSH access to multiple environment - Engineering - Confluence
Configure SSH access to multiple environment - Engineering - Confluence
CloudWatch | us-east-2
CloudWatch | us-east-2
New Tab
New Tab
CloudWatch | us-east-2
CloudWatch | us-east-2
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
JY-18909-automated-reports-ask-jiminny ■ 869720
28
28
14
activities
Get Notified
Sort by Sort by: Most recent
Sort by
Sort by:
Most recent
Add Recording
common.ai-icon-alt
Topics:
Competitors
Show internal and external activities:
Show internal only
Save Search
Clear all
Saved searches Saved searches
Saved searches
Saved searches
Team
Search teams Search teams
Search teams
Search teams
Host
Search team members Search team members
Search team members
Search team members
Also search as participant
Participant
Search team members Search team members
Search team members
Search team members
Customer
Customer
Transcript
Search transcript
Select option Said by
Select option
Said by
Select option Anyone
Select option
Anyone
Period
All time
Topics
Competitors × Search topics
Competitors
×
Search topics
Activity type
Search activity types Search activity types
Search activity types
Search activity types
Duration
Min (minutes)
Max (minutes)
AI call score
Select AI call score Select AI call score
Select AI call score
Select AI call score
Automated call score
Select automated call score Select automated call score
Select automated call score
Select automated call score
Coaching score
Select coaching score Select coaching score
Select coaching score
Select coaching score
Coach
Search coaches Search coaches
Search coaches
Search coaches
Stage at call
Search stages Search stages
Search stages
Search stages
Current stage
Search stages Search stages
Search stages
Search stages
Language
Search language Search language
Search language
Search language
Playlist
Search playlists Search playlists
Search playlists
Search playlists
Pending CRM notes
Not logged to CRM
Recorded
Search recorded Search recorded
Search recorded
Search recorded
Show internal and external activities
Select option Show internal only
Select option
Show internal only
Platform
Search platforms Search platforms
Search platforms
Search platforms
Call type
Search channels Search channels
Search channels
Search channels
Outcome
Search CRM Outcome Search CRM Outcome
Search CRM Outcome
Search CRM Outcome
Deal value
Min (amount)
Max (amount)
Deal close date
All time
Deal age
0
1359d
2717d+
Talking speed
0
177 wpm
252 wpm+
Talk ratio
0%
40%
60%
100%
Patience
0s
1s
2s
3s+
Longest monologue
0
5m
10m+
Longest customer story
0
5m
10m+
Rep questions
0
25
50+
Engaging questions
0
25...
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":4,"bounds":{"left":0.00234375,"top":0.045138888,"width":0.0890625,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira","depth":4,"bounds":{"left":0.0,"top":0.08263889,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira","depth":5,"bounds":{"left":0.015625,"top":0.09236111,"width":0.11796875,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":4,"bounds":{"left":0.0,"top":0.11111111,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":5,"bounds":{"left":0.015625,"top":0.12083333,"width":0.18710938,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Configure SSH access to multiple environment - Engineering - Confluence","depth":4,"bounds":{"left":0.0,"top":0.13958333,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Configure SSH access to multiple environment - Engineering - Confluence","depth":5,"bounds":{"left":0.015625,"top":0.14930555,"width":0.1515625,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Console Home | Console Home | us-east-2","depth":4,"bounds":{"left":0.0,"top":0.16805555,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Console Home | Console Home | us-east-2","depth":5,"bounds":{"left":0.015625,"top":0.17777778,"width":0.08671875,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"SecurityGroup | EC2 | us-east-2","depth":4,"bounds":{"left":0.0,"top":0.19652778,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"SecurityGroup | EC2 | us-east-2","depth":5,"bounds":{"left":0.015625,"top":0.20625,"width":0.06484375,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":4,"bounds":{"left":0.0,"top":0.225,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":5,"bounds":{"left":0.015625,"top":0.23472223,"width":0.18710938,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app","depth":4,"bounds":{"left":0.0,"top":0.2534722,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app","depth":5,"bounds":{"left":0.015625,"top":0.26319444,"width":0.23476562,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet","depth":4,"bounds":{"left":0.0,"top":0.28194445,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet","depth":5,"bounds":{"left":0.015625,"top":0.29166666,"width":0.1984375,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Jiminny","depth":4,"bounds":{"left":0.0,"top":0.31041667,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"Jiminny","depth":5,"bounds":{"left":0.015625,"top":0.3201389,"width":0.015625,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close tab","depth":5,"bounds":{"left":0.07890625,"top":0.31666666,"width":0.009375,"height":0.016666668},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf","depth":4,"bounds":{"left":0.0,"top":0.33888888,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf","depth":5,"bounds":{"left":0.015625,"top":0.34861112,"width":0.1640625,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Service-Desk - Queues - Platform team - Service space - Jira","depth":4,"bounds":{"left":0.0,"top":0.3673611,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Service-Desk - Queues - Platform team - Service space - Jira","depth":5,"bounds":{"left":0.015625,"top":0.37708333,"width":0.12617187,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":4,"bounds":{"left":0.0,"top":0.39583334,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app","depth":5,"bounds":{"left":0.015625,"top":0.40555555,"width":0.18710938,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Configure SSH access to multiple environment - Engineering - Confluence","depth":4,"bounds":{"left":0.0,"top":0.42430556,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Configure SSH access to multiple environment - Engineering - Confluence","depth":5,"bounds":{"left":0.015625,"top":0.4340278,"width":0.1515625,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"CloudWatch | us-east-2","depth":4,"bounds":{"left":0.0,"top":0.45277777,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"CloudWatch | us-east-2","depth":5,"bounds":{"left":0.015625,"top":0.4625,"width":0.0484375,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"New Tab","depth":4,"bounds":{"left":0.0,"top":0.48125,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"New Tab","depth":5,"bounds":{"left":0.015625,"top":0.49097222,"width":0.017578125,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"CloudWatch | us-east-2","depth":4,"bounds":{"left":0.0,"top":0.50972223,"width":0.09375,"height":0.028472222},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"CloudWatch | us-east-2","depth":5,"bounds":{"left":0.015625,"top":0.51944447,"width":0.0484375,"height":0.009722223},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"New Tab","depth":4,"bounds":{"left":0.003125,"top":0.5395833,"width":0.08710937,"height":0.022222223},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"bounds":{"left":0.003125,"top":0.97430557,"width":0.0125,"height":0.022222223},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"bounds":{"left":0.01640625,"top":0.97430557,"width":0.0125,"height":0.022222223},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Tabs from other devices","depth":6,"bounds":{"left":0.029296875,"top":0.97430557,"width":0.0125,"height":0.022222223},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"bounds":{"left":0.0421875,"top":0.97430557,"width":0.0125,"height":0.022222223},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"bounds":{"left":0.05546875,"top":0.97430557,"width":0.0125,"height":0.022222223},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-18909-automated-reports-ask-jiminny ■ 869720","depth":9,"bounds":{"left":0.09453125,"top":0.9875,"width":0.11796875,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"28","depth":12,"bounds":{"left":0.096875,"top":0.925,"width":0.01875,"height":0.030555556},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"28","depth":14,"bounds":{"left":0.10664062,"top":0.9284722,"width":0.00546875,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"14","depth":14,"bounds":{"left":0.2421875,"top":0.061805554,"width":0.0109375,"height":0.017361112},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"activities","depth":14,"bounds":{"left":0.253125,"top":0.061805554,"width":0.031640626,"height":0.017361112},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Get Notified","depth":13,"bounds":{"left":0.55078125,"top":0.058333334,"width":0.051171876,"height":0.025},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXComboBox","text":"Sort by Sort by: Most recent","depth":13,"bounds":{"left":0.36171874,"top":0.057638887,"width":0.091796875,"height":0.025694445},"value":"Sort by Sort by: Most recent","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Sort by","depth":14,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Sort by:","depth":15,"bounds":{"left":0.3660156,"top":0.06458333,"width":0.019921875,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Most recent","depth":15,"bounds":{"left":0.3859375,"top":0.06458333,"width":0.030078124,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Add Recording","depth":13,"bounds":{"left":0.4910156,"top":0.058333334,"width":0.056640625,"height":0.025},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"common.ai-icon-alt","depth":14,"bounds":{"left":0.6050781,"top":0.05625,"width":0.0140625,"height":0.025},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Topics:","depth":15,"bounds":{"left":0.24570313,"top":0.10069445,"width":0.014453125,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Competitors","depth":15,"bounds":{"left":0.26210937,"top":0.10069445,"width":0.0265625,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Show internal and external activities:","depth":15,"bounds":{"left":0.30546874,"top":0.10069445,"width":0.07695313,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Show internal only","depth":15,"bounds":{"left":0.384375,"top":0.10069445,"width":0.0390625,"height":0.010416667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Save Search","depth":14,"bounds":{"left":0.440625,"top":0.09861111,"width":0.0390625,"height":0.013888889},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Clear all","depth":14,"bounds":{"left":0.48359376,"top":0.09861111,"width":0.030078124,"height":0.013888889},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXComboBox","text":"Saved searches Saved searches","depth":13,"bounds":{"left":0.1265625,"top":0.05486111,"width":0.095703125,"height":0.025},"value":"Saved searches Saved searches","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Saved searches","depth":15,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Saved searches","depth":16,"bounds":{"left":0.13085938,"top":0.06111111,"width":0.037109375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Team","depth":13,"bounds":{"left":0.1265625,"top":0.099305555,"width":0.012890625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search teams Search teams","depth":12,"bounds":{"left":0.1265625,"top":0.115277775,"width":0.095703125,"height":0.025},"value":"Search teams Search teams","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search teams","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search teams","depth":14,"bounds":{"left":0.13085938,"top":0.12222222,"width":0.032421876,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Host","depth":13,"bounds":{"left":0.1265625,"top":0.15,"width":0.01171875,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search team members Search team members","depth":12,"bounds":{"left":0.1265625,"top":0.16944444,"width":0.095703125,"height":0.025},"value":"Search team members Search team members","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search team members","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search team members","depth":14,"bounds":{"left":0.13085938,"top":0.17638889,"width":0.05390625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Also search as participant","depth":13,"bounds":{"left":0.1265625,"top":0.19930555,"width":0.062109374,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Participant","depth":13,"bounds":{"left":0.1265625,"top":0.225,"width":0.026953125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search team members Search team members","depth":12,"bounds":{"left":0.1265625,"top":0.24097222,"width":0.095703125,"height":0.025},"value":"Search team members Search team members","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search team members","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search team members","depth":14,"bounds":{"left":0.13085938,"top":0.24791667,"width":0.05390625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Customer","depth":13,"bounds":{"left":0.1265625,"top":0.27569443,"width":0.025390625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXTextField","text":"Customer","depth":12,"bounds":{"left":0.14140625,"top":0.2923611,"width":0.065625,"height":0.025},"help_text":"","placeholder":"Customer or Subject","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Transcript","depth":13,"bounds":{"left":0.1265625,"top":0.32777777,"width":0.02578125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXTextField","text":"Search transcript","depth":12,"bounds":{"left":0.14140625,"top":0.34791666,"width":0.065625,"height":0.025},"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXComboBox","text":"Select option Said by","depth":12,"bounds":{"left":0.1265625,"top":0.37708333,"width":0.095703125,"height":0.025694445},"value":"Select option Said by","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Select option","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Said by","depth":14,"bounds":{"left":0.13085938,"top":0.38402778,"width":0.0171875,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Select option Anyone","depth":12,"bounds":{"left":0.1265625,"top":0.40625,"width":0.095703125,"height":0.025694445},"value":"Select option Anyone","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Select option","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Anyone","depth":14,"bounds":{"left":0.13085938,"top":0.41319445,"width":0.01875,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Period","depth":13,"bounds":{"left":0.1265625,"top":0.44166666,"width":0.016015625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"All time","depth":14,"bounds":{"left":0.13203125,"top":0.46458334,"width":0.017578125,"height":0.011111111},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Topics","depth":13,"bounds":{"left":0.1265625,"top":0.4923611,"width":0.015234375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Competitors × Search topics","depth":12,"bounds":{"left":0.1265625,"top":0.5083333,"width":0.095703125,"height":0.02638889},"value":"Competitors × Search topics","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Competitors","depth":15,"bounds":{"left":0.13359375,"top":0.5159722,"width":0.030859375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"×","depth":16,"bounds":{"left":0.1671875,"top":0.5152778,"width":0.003125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXTextField","text":"Search topics","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Activity type","depth":13,"bounds":{"left":0.1265625,"top":0.54444444,"width":0.03125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search activity types Search activity types","depth":12,"bounds":{"left":0.1265625,"top":0.56041664,"width":0.095703125,"height":0.025},"value":"Search activity types Search activity types","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search activity types","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search activity types","depth":14,"bounds":{"left":0.13085938,"top":0.5673611,"width":0.050390624,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Duration","depth":13,"bounds":{"left":0.1265625,"top":0.5951389,"width":0.023046875,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Min (minutes)","depth":13,"bounds":{"left":0.1265625,"top":0.6125,"width":0.03359375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Max (minutes)","depth":13,"bounds":{"left":0.16875,"top":0.6125,"width":0.034765624,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"AI call score","depth":13,"bounds":{"left":0.1265625,"top":0.6597222,"width":0.029296875,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Select AI call score Select AI call score","depth":12,"bounds":{"left":0.1265625,"top":0.67569447,"width":0.095703125,"height":0.025},"value":"Select AI call score Select AI call score","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Select AI call score","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Select AI call score","depth":14,"bounds":{"left":0.13085938,"top":0.6826389,"width":0.0453125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Automated call score","depth":13,"bounds":{"left":0.1265625,"top":0.7104167,"width":0.0515625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Select automated call score Select automated call score","depth":12,"bounds":{"left":0.1265625,"top":0.7263889,"width":0.095703125,"height":0.036111113},"value":"Select automated call score Select automated call score","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Select automated call score","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Select automated call score","depth":14,"bounds":{"left":0.13085938,"top":0.73194444,"width":0.051953126,"height":0.025694445},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Coaching score","depth":13,"bounds":{"left":0.1265625,"top":0.7722222,"width":0.037109375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Select coaching score Select coaching score","depth":12,"bounds":{"left":0.1265625,"top":0.7881944,"width":0.095703125,"height":0.025},"value":"Select coaching score Select coaching score","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Select coaching score","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Select coaching score","depth":14,"bounds":{"left":0.13085938,"top":0.7951389,"width":0.051953126,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Coach","depth":13,"bounds":{"left":0.1265625,"top":0.8229167,"width":0.01640625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search coaches Search coaches","depth":12,"bounds":{"left":0.1265625,"top":0.8388889,"width":0.095703125,"height":0.025},"value":"Search coaches Search coaches","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search coaches","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search coaches","depth":14,"bounds":{"left":0.13085938,"top":0.84583336,"width":0.0375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Stage at call","depth":13,"bounds":{"left":0.1265625,"top":0.8736111,"width":0.02890625,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search stages Search stages","depth":12,"bounds":{"left":0.1265625,"top":0.88958335,"width":0.095703125,"height":0.025},"value":"Search stages Search stages","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search stages","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search stages","depth":14,"bounds":{"left":0.13085938,"top":0.89652777,"width":0.033203125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Current stage","depth":13,"bounds":{"left":0.1265625,"top":0.92430556,"width":0.03359375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search stages Search stages","depth":12,"bounds":{"left":0.1265625,"top":0.94027776,"width":0.095703125,"height":0.025},"value":"Search stages Search stages","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search stages","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search stages","depth":14,"bounds":{"left":0.13085938,"top":0.94722223,"width":0.033203125,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Language","depth":13,"bounds":{"left":0.1265625,"top":0.975,"width":0.0234375,"height":0.011805556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search language Search language","depth":12,"bounds":{"left":0.1265625,"top":0.9909722,"width":0.095703125,"height":0.009027779},"value":"Search language Search language","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search language","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search language","depth":14,"bounds":{"left":0.13085938,"top":0.99791664,"width":0.03984375,"height":0.0020833611},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Playlist","depth":13,"bounds":{"left":0.1265625,"top":1.0,"width":0.01796875,"height":-0.02569449},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search playlists Search playlists","depth":12,"bounds":{"left":0.1265625,"top":1.0,"width":0.095703125,"height":-0.041666627},"value":"Search playlists Search playlists","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search playlists","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search playlists","depth":14,"bounds":{"left":0.13085938,"top":1.0,"width":0.037890624,"height":-0.048611164},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Pending CRM notes","depth":13,"bounds":{"left":0.1265625,"top":1.0,"width":0.048046876,"height":-0.076388836},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Not logged to CRM","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Recorded","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search recorded Search recorded","depth":12,"value":"Search recorded Search recorded","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search recorded","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search recorded","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Show internal and external activities","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Select option Show internal only","depth":12,"value":"Select option Show internal only","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Select option","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Show internal only","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Platform","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search platforms Search platforms","depth":12,"value":"Search platforms Search platforms","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search platforms","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search platforms","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Call type","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search channels Search channels","depth":12,"value":"Search channels Search channels","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search channels","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search channels","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Outcome","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Search CRM Outcome Search CRM Outcome","depth":12,"value":"Search CRM Outcome Search CRM Outcome","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search CRM Outcome","depth":13,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search CRM Outcome","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Deal value","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Min (amount)","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Max (amount)","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Deal close date","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"All time","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Deal age","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"1359d","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2717d+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Talking speed","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"177 wpm","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"252 wpm+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Talk ratio","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0%","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"40%","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"60%","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"100%","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Patience","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0s","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"1s","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2s","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"3s+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Longest monologue","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"5m","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"10m+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Longest customer story","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"5m","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"10m+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Rep questions","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"25","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"50+","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Engaging questions","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"25","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
1791973515577543646
|
1952676728468601034
|
visual_change
|
accessibility
|
NULL
|
JY-20543 add AJ reports User pilot tracking by Lak JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira
Platform Sprint 1 Q2 - Platform Team - Scrum Board - Jira
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Configure SSH access to multiple environment - Engineering - Confluence
Configure SSH access to multiple environment - Engineering - Confluence
Console Home | Console Home | us-east-2
Console Home | Console Home | us-east-2
SecurityGroup | EC2 | us-east-2
SecurityGroup | EC2 | us-east-2
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app
SRD-6779 | JY-20632 | Unable to log in to Sidekick with SSO by yalokin-jiminny · Pull Request #11935 · jiminny/app
Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet
Jy 19798 evaluation for ai activity types by nikolaybiaivanov · Pull Request #468 · jiminny/prophet
Jiminny
Jiminny
Close tab
Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf
Ask Jiminny test report - 8 Apr 2026 - Ask Jiminny test report - 13 Apr 2026.pdf
Service-Desk - Queues - Platform team - Service space - Jira
Service-Desk - Queues - Platform team - Service space - Jira
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
JY-20543 add AJ reports User pilot tracking by LakyLak · Pull Request #11932 · jiminny/app
Configure SSH access to multiple environment - Engineering - Confluence
Configure SSH access to multiple environment - Engineering - Confluence
CloudWatch | us-east-2
CloudWatch | us-east-2
New Tab
New Tab
CloudWatch | us-east-2
CloudWatch | us-east-2
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
JY-18909-automated-reports-ask-jiminny ■ 869720
28
28
14
activities
Get Notified
Sort by Sort by: Most recent
Sort by
Sort by:
Most recent
Add Recording
common.ai-icon-alt
Topics:
Competitors
Show internal and external activities:
Show internal only
Save Search
Clear all
Saved searches Saved searches
Saved searches
Saved searches
Team
Search teams Search teams
Search teams
Search teams
Host
Search team members Search team members
Search team members
Search team members
Also search as participant
Participant
Search team members Search team members
Search team members
Search team members
Customer
Customer
Transcript
Search transcript
Select option Said by
Select option
Said by
Select option Anyone
Select option
Anyone
Period
All time
Topics
Competitors × Search topics
Competitors
×
Search topics
Activity type
Search activity types Search activity types
Search activity types
Search activity types
Duration
Min (minutes)
Max (minutes)
AI call score
Select AI call score Select AI call score
Select AI call score
Select AI call score
Automated call score
Select automated call score Select automated call score
Select automated call score
Select automated call score
Coaching score
Select coaching score Select coaching score
Select coaching score
Select coaching score
Coach
Search coaches Search coaches
Search coaches
Search coaches
Stage at call
Search stages Search stages
Search stages
Search stages
Current stage
Search stages Search stages
Search stages
Search stages
Language
Search language Search language
Search language
Search language
Playlist
Search playlists Search playlists
Search playlists
Search playlists
Pending CRM notes
Not logged to CRM
Recorded
Search recorded Search recorded
Search recorded
Search recorded
Show internal and external activities
Select option Show internal only
Select option
Show internal only
Platform
Search platforms Search platforms
Search platforms
Search platforms
Call type
Search channels Search channels
Search channels
Search channels
Outcome
Search CRM Outcome Search CRM Outcome
Search CRM Outcome
Search CRM Outcome
Deal value
Min (amount)
Max (amount)
Deal close date
All time
Deal age
0
1359d
2717d+
Talking speed
0
177 wpm
252 wpm+
Talk ratio
0%
40%
60%
100%
Patience
0s
1s
2s
3s+
Longest monologue
0
5m
10m+
Longest customer story
0
5m
10m+
Rep questions
0
25
50+
Engaging questions
0
25...
|
NULL
|
|
10962
|
217
|
35
|
2026-04-14T09:06:00.275271+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157560275_m2.jpg...
|
Slack
|
Aneliya Angelova, Nikolay Yankov, Steliyan Georgie Aneliya Angelova, Nikolay Yankov, Steliyan Georgiev (DM) - Jiminny Inc - 1 new item - Slack...
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
Jiminny Inc
Jiminny (Staging)
Add workspaces
Home
Jiminny Inc
Jiminny (Staging)
Add workspaces
Home
Home
DMs
DMs
Activity
Activity
Files
Files
Later
Later
More…
More
Unreads
Threads
Huddles
Drafts & sent
Directories
platform-inner-team
ai-chapter
alerts
backend
confusion-clinic
curiosity_lab
engineering
frontend
general
infra-changes
jiminny-bg
platform-tickets
product_launches
random
releases
sofia-office
support
thank-yous
the_people_of_jiminny
Aneliya Angelova
,
Nikolay Yankov
,
Steliyan Georgiev
Steliyan Georgiev
Adelina Petrova
,
Ilian Kyuchukov
,
Steliyan Georgiev
Adelina Petrova
Galya Dimitrova
Vasil Vasilev
Nikolay Nikolov
Galya Dimitrova
,
Nikolay Nikolov
Galya Dimitrova
,
Nikolay Yankov
Nikolay Yankov
Jira Cloud
Toast
Google Calendar
Messages
Messages
Add canvas
Add canvas
Add and Edit Channel Tabs
Canvas
List
Folder
Jump to date
Today at 10:35:08 AM
10:35
php artisan automated-reports
Nikolay Yankov
Today at 10:35:39 AM
10:35 AM
значи не създава веднага по принцип, в някакъв час на деня ли стъздава?
Lukas Kovalik
Today at 10:36:11 AM
10:36 AM
това ще гледа всичко applicable за днес (ако не понедлник или начало на месец е само daily)
Today at 10:36:27 AM
10:36
крон го пуска през нощ
Today at 10:37:19 AM
10:37
така че мануално пусни при тестване
Today at 10:38:26 AM
10:38
ако трябва да тестваме други репорти може да променя команда за тестване да приема параметър за report template и д си пускаме определен когато тестваме
Nikolay Yankov
Today at 10:41:03 AM
10:41 AM
можеш ли да я ръннеш ти командата
Lukas Kovalik
Today at 10:43:05 AM
10:43 AM
да
Nikolay Yankov
Today at 10:45:52 AM
10:45 AM
пиши кат оя ръннеш
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Lukas Kovalik
Today at 10:52:52 AM
10:52 AM
забавих се че ми се разбазикаха settings за среди
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 10:53:07 AM
10:53
пуснах и мина и fail-на
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 10:53:20 AM
10:53
има result но е failed
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 10:58:08 AM
10:58
значи
REASON_NOT_ENOUGH_ACTIVITIES
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 10:58:57 AM
10:58
виж дали има нещо в OD със този филтър
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Nikolay Yankov
Today at 11:01:28 AM
11:01 AM
Добре
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Nikolay Yankov
Today at 11:39:27 AM
11:39 AM
я рънни пак
Lukas
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Lukas Kovalik
Today at 11:43:00 AM
11:43 AM
готово
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 11:44:24 AM
11:44
същото
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 11:47:25 AM
11:47
Competitive pitches беше втория нали така
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions...
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"Jiminny Inc","depth":12,"bounds":{"left":0.23867187,"top":1.0,"width":0.0125,"height":-0.05486107},"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true,"is_expanded":false},{"role":"AXRadioButton","text":"Jiminny (Staging)","depth":12,"bounds":{"left":0.23867187,"top":1.0,"width":0.0125,"height":-0.090972185},"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"Add workspaces","depth":12,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"Home","depth":14,"bounds":{"left":0.26054686,"top":1.0,"width":0.0203125,"height":-0.048611164},"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true,"is_expanded":false},{"role":"AXStaticText","text":"Home","depth":16,"bounds":{"left":0.26484376,"top":1.0,"width":0.01171875,"height":-0.08124995},"role_description":"text"},{"role":"AXRadioButton","text":"DMs","depth":14,"bounds":{"left":0.26054686,"top":1.0,"width":0.0203125,"height":-0.0958333},"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"DMs","depth":16,"role_description":"text"},{"role":"AXRadioButton","text":"Activity","depth":14,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Activity","depth":16,"role_description":"text"},{"role":"AXRadioButton","text":"Files","depth":14,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Files","depth":16,"role_description":"text"},{"role":"AXRadioButton","text":"Later","depth":14,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Later","depth":16,"role_description":"text"},{"role":"AXRadioButton","text":"More…","depth":14,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"More","depth":16,"role_description":"text"},{"role":"AXStaticText","text":"Unreads","depth":21,"bounds":{"left":0.3,"top":1.0,"width":0.022265624,"height":-0.079861164},"role_description":"text"},{"role":"AXStaticText","text":"Threads","depth":21,"bounds":{"left":0.3,"top":1.0,"width":0.020703126,"height":-0.079861164},"role_description":"text"},{"role":"AXStaticText","text":"Huddles","depth":21,"bounds":{"left":0.3,"top":1.0,"width":0.021484375,"height":-0.079861164},"role_description":"text"},{"role":"AXStaticText","text":"Drafts & sent","depth":21,"bounds":{"left":0.3,"top":1.0,"width":0.034375,"height":-0.079861164},"role_description":"text"},{"role":"AXStaticText","text":"Directories","depth":21,"bounds":{"left":0.3,"top":1.0,"width":0.028515626,"height":-0.079861164},"role_description":"text"},{"role":"AXStaticText","text":"platform-inner-team","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"ai-chapter","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"alerts","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"backend","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"confusion-clinic","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"curiosity_lab","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"engineering","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"frontend","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"general","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"infra-changes","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"jiminny-bg","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"platform-tickets","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"product_launches","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"random","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"releases","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"sofia-office","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"support","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"thank-yous","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"the_people_of_jiminny","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Aneliya Angelova","depth":23,"role_description":"text"},{"role":"AXStaticText","text":",","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Nikolay Yankov","depth":23,"role_description":"text"},{"role":"AXStaticText","text":",","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Steliyan Georgiev","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Steliyan Georgiev","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Adelina Petrova","depth":23,"role_description":"text"},{"role":"AXStaticText","text":",","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Ilian Kyuchukov","depth":23,"role_description":"text"},{"role":"AXStaticText","text":",","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Steliyan Georgiev","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Adelina Petrova","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Galya Dimitrova","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Vasil Vasilev","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Nikolay Nikolov","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Galya Dimitrova","depth":23,"role_description":"text"},{"role":"AXStaticText","text":",","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Nikolay Nikolov","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Galya Dimitrova","depth":23,"role_description":"text"},{"role":"AXStaticText","text":",","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Nikolay Yankov","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Nikolay Yankov","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Jira Cloud","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Toast","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Google Calendar","depth":23,"role_description":"text"},{"role":"AXRadioButton","text":"Messages","depth":17,"bounds":{"left":0.3765625,"top":1.0,"width":0.036328126,"height":-0.079861164},"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true,"is_expanded":false},{"role":"AXStaticText","text":"Messages","depth":19,"bounds":{"left":0.3875,"top":1.0,"width":0.022265624,"height":-0.087499976},"role_description":"text"},{"role":"AXRadioButton","text":"Add canvas","depth":18,"bounds":{"left":0.4140625,"top":1.0,"width":0.040234376,"height":-0.079861164},"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Add canvas","depth":20,"bounds":{"left":0.425,"top":1.0,"width":0.026171874,"height":-0.087499976},"role_description":"text"},{"role":"AXPopUpButton","text":"Add and Edit Channel Tabs","depth":17,"bounds":{"left":0.45546874,"top":1.0,"width":0.012890625,"height":-0.079861164},"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Canvas","depth":17,"role_description":"text"},{"role":"AXStaticText","text":"List","depth":17,"role_description":"text"},{"role":"AXStaticText","text":"Folder","depth":17,"role_description":"text"},{"role":"AXPopUpButton","text":"Jump to date","depth":23,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Today at 10:35:08 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:35","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"php artisan automated-reports","depth":25,"role_description":"text"},{"role":"AXButton","text":"Nikolay Yankov","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 10:35:39 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:35 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"значи не създава веднага по принцип, в някакъв час на деня ли стъздава?","depth":25,"role_description":"text"},{"role":"AXButton","text":"Lukas Kovalik","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 10:36:11 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:36 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"това ще гледа всичко applicable за днес (ако не понедлник или начало на месец е само daily)","depth":25,"role_description":"text"},{"role":"AXLink","text":"Today at 10:36:27 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:36","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"крон го пуска през нощ","depth":25,"role_description":"text"},{"role":"AXLink","text":"Today at 10:37:19 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:37","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"така че мануално пусни при тестване","depth":25,"role_description":"text"},{"role":"AXLink","text":"Today at 10:38:26 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:38","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"ако трябва да тестваме други репорти може да променя команда за тестване да приема параметър за report template и д си пускаме определен когато тестваме","depth":25,"role_description":"text"},{"role":"AXButton","text":"Nikolay Yankov","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 10:41:03 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:41 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"можеш ли да я ръннеш ти командата","depth":25,"role_description":"text"},{"role":"AXButton","text":"Lukas Kovalik","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 10:43:05 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:43 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"да","depth":25,"role_description":"text"},{"role":"AXButton","text":"Nikolay Yankov","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 10:45:52 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:45 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"пиши кат оя ръннеш","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Lukas Kovalik","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 10:52:52 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:52 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"забавих се че ми се разбазикаха settings за среди","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Today at 10:53:07 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:53","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"пуснах и мина и fail-на","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Today at 10:53:20 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:53","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"има result но е failed","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Today at 10:58:08 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:58","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"значи","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"REASON_NOT_ENOUGH_ACTIVITIES","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Today at 10:58:57 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10:58","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"виж дали има нещо в OD със този филтър","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Nikolay Yankov","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 11:01:28 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"11:01 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"Добре","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Nikolay Yankov","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 11:39:27 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"11:39 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"я рънни пак","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"Lukas","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Lukas Kovalik","depth":24,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":24,"role_description":"text"},{"role":"AXLink","text":"Today at 11:43:00 AM","depth":24,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"11:43 AM","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"готово","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Today at 11:44:24 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"11:44","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"същото","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Today at 11:47:25 AM","depth":25,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"11:47","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"Competitive pitches беше втория нали така","depth":25,"role_description":"text"},{"role":"AXCheckBox","text":"React with white_check_mark","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with eyes","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"React with raised_hands","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Add reaction…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Reply in thread","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Forward message…","depth":26,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXCheckBox","text":"Save for later","depth":26,"role_description":"toggle button","subrole":"AXToggleButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXPopUpButton","text":"More actions","depth":26,"role_description":"pop-up button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false}]...
|
5224298373417127386
|
-1284909242320238256
|
visual_change
|
hybrid
|
NULL
|
Jiminny Inc
Jiminny (Staging)
Add workspaces
Home
Jiminny Inc
Jiminny (Staging)
Add workspaces
Home
Home
DMs
DMs
Activity
Activity
Files
Files
Later
Later
More…
More
Unreads
Threads
Huddles
Drafts & sent
Directories
platform-inner-team
ai-chapter
alerts
backend
confusion-clinic
curiosity_lab
engineering
frontend
general
infra-changes
jiminny-bg
platform-tickets
product_launches
random
releases
sofia-office
support
thank-yous
the_people_of_jiminny
Aneliya Angelova
,
Nikolay Yankov
,
Steliyan Georgiev
Steliyan Georgiev
Adelina Petrova
,
Ilian Kyuchukov
,
Steliyan Georgiev
Adelina Petrova
Galya Dimitrova
Vasil Vasilev
Nikolay Nikolov
Galya Dimitrova
,
Nikolay Nikolov
Galya Dimitrova
,
Nikolay Yankov
Nikolay Yankov
Jira Cloud
Toast
Google Calendar
Messages
Messages
Add canvas
Add canvas
Add and Edit Channel Tabs
Canvas
List
Folder
Jump to date
Today at 10:35:08 AM
10:35
php artisan automated-reports
Nikolay Yankov
Today at 10:35:39 AM
10:35 AM
значи не създава веднага по принцип, в някакъв час на деня ли стъздава?
Lukas Kovalik
Today at 10:36:11 AM
10:36 AM
това ще гледа всичко applicable за днес (ако не понедлник или начало на месец е само daily)
Today at 10:36:27 AM
10:36
крон го пуска през нощ
Today at 10:37:19 AM
10:37
така че мануално пусни при тестване
Today at 10:38:26 AM
10:38
ако трябва да тестваме други репорти може да променя команда за тестване да приема параметър за report template и д си пускаме определен когато тестваме
Nikolay Yankov
Today at 10:41:03 AM
10:41 AM
можеш ли да я ръннеш ти командата
Lukas Kovalik
Today at 10:43:05 AM
10:43 AM
да
Nikolay Yankov
Today at 10:45:52 AM
10:45 AM
пиши кат оя ръннеш
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Lukas Kovalik
Today at 10:52:52 AM
10:52 AM
забавих се че ми се разбазикаха settings за среди
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 10:53:07 AM
10:53
пуснах и мина и fail-на
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 10:53:20 AM
10:53
има result но е failed
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 10:58:08 AM
10:58
значи
REASON_NOT_ENOUGH_ACTIVITIES
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 10:58:57 AM
10:58
виж дали има нещо в OD със този филтър
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Nikolay Yankov
Today at 11:01:28 AM
11:01 AM
Добре
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Nikolay Yankov
Today at 11:39:27 AM
11:39 AM
я рънни пак
Lukas
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Lukas Kovalik
Today at 11:43:00 AM
11:43 AM
готово
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 11:44:24 AM
11:44
същото
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
Today at 11:47:25 AM
11:47
Competitive pitches беше втория нали така
React with white_check_mark
React with eyes
React with raised_hands
Add reaction…
Reply in thread
Forward message…
Save for later
More actions
FirefoxFileEditViewHistoryBookmarks)ProfilesToolsWindowHelpSaved searchesapp.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4You are currently impersonating Nikolay Yankov <)14 activitiesSort by: Most recentPlatform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloleamSearch teamsiZ Configure SSH access to multipleHost@ Console Home | Console Home | usSearch team membersiSecurityGroup | EC2 |us-east-2niso searen as particioantJY-20543 add AJ reports User pilcParuicipantSRD-6779 | JY-20632 | Unable to$searcn leam memdersJy 19798 evaluation for ai activity& JiminnyAsk Jiminny test report - 8 Aor 20Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc& Configure SSH access to multiple eCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabCustomer ®Customer or SubjectTranscript ©• Search transcript |Said byAnyonePeriodAll timeTopicsCompetiActivity typlSearch activity typesDuration ©Min (minutes)Max (minutes)Al call scoreselect Ai call scoreMulomalea call scoreSelect automated calliCoaching scoreSelect coaching scoreCoach ®Search coaches.Stage at callSearch stagesCurrent stageSearch stages+ Add RecordingTopics: Competitors XShow internal and external activities: Show internal only X)Save SearchClear allHostIActivityContactActivityCurrent StagestatsTypeJWJiminny MSalestorce App IrainingFirefoxJY-18909-automated-reports-ask-iiminny = 869720Jiminny MBekkie/ Jules - renewals and Contract…Jiminny MHandover training part 1Unknown Customer Md 6 Deal Insights playbook d $Exclaimer MExclaimer handoverPSAll -hands Jan 9thUnknown Customer MNotetaker added on 11-28-23 @ 04:01Unknown Customer played MTraining ? - Jiminny App for Salesfor….8)Unknown Customer MAll-hands - Thank Yous, What Went, L...Unknown Customer (played MAll-hands - Nov /thiUnknown Customer 1All Hands - October 31st ©Unknown Customer MDeal Insights Referesher/Training w/T...unlikelv toRenew$42,126$I00 D 4I 19 0D300D 2$0 228.DO DO0D6$0 92•0 D 42 1ĐOD7{0 83Đ0 D350920 D4$092Đ0 D1S1 c 2D11Duration4/m44m34m17m43m28m51m25m39m41mA Get NotifiedDate11/0/2024.2:28 PMI25/06/2024, 3:09 PM10/06/2024, 12:02 PM18/05/9014. 19.96 PMI13/03/2024, 11:28 AMSupport Daily • in 2h 55 m(БГ)Tue 14 Apr 12:05:59Q InspectorP Filter URLsConsoleD DebuggerN Network{} Style Editor( PerformanceO: Memory© 99+ImagesMediaotheStatus200200206200200200200200200200200200200200200200200200200HlMLOSSMethodPosPOSTPOSTPOSTGETGETGETGETGETGETPOSTPOSTPOSTPoslPOSTPOSTPOSTPOSTPOSTDomainInitiatorA D 036719.ing...ao1b02S0envelode/"sentry versionssentry xe tetchA Y 036719.ing.../api/5627310/envelope/?sentry_version=7&sentry_ke fetch036/19.ing..ap1/562/310/envelope/?sentryversion=/&sentry_ke tetchA B 036719.ing.../api/5627310/envelope/?sentry_version=7&sentry_ke fetchapo.stagino.l..search?statusl|=completed&sort_by=dateHeld& * xhrA app.staging.ji...recentA app. staging.j...saved-searchA xhrA app.stagingji...integrationsA app.stagingji...on-demand?topic_idll=e02f0932-cb76-41b6-ac +a xhrttind, userollot.loNX-0940e17A app.stagingji...authenticateA xhrYa=ponxat plattorm-staging&r=b-019d8b28-3eft-/c xhrAr.logr-in.comr.locl-in.comAr.logr-in.comrlocl-in.comAr.logr-in.comrlogt-in.comAr.logr-in.comi?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/olatform-stagina&r=6-019d8b28-3eff-7c xhnE Storage_ Disable Cache No Throttling + 50:TypeTransferredjsonIsonb008843 ms500 B2 B | 43 msb00 B2 B 44 ms500 B2 B | 43 ms6.28 kB24.21 kB | 1537 ms5.65 kB15.26 kB | 211 ms3.62 kB1.42 kB | 1508 ms3.83 kB5.53 kB | 1253 ms55.53 kB 196.86...| 2299 mscacheo3.12 kB96 B | 620 ms126.39 KB7.89 kB6.41 kB3.48 kB|158 ms153 ms| 150 ms2.96 kB3.45 kB3.45 kB2.95 kBOBOBOB2.98 kB3.46 kBо в3.47 kB| 151 ms157 ms1155 ms| 159 ms| 176 ms| 155 ms3.47 kB2.96 kB| 148 ms09/01/2024, 11:45 AM9911099 11•0AM22/11/2023, 11:56 AM14/11/2023, 11:27 AM0/119O/3.11:42 AMI31/10/2023, 11:35 AM25/10/2023, 11:46 AM24 requests243.44 KB 253.36 KB transterredFinish: 1.01 min DOMContentLoaded: 42 ms load: 195 ms...
|
10961
|
|
10964
|
217
|
36
|
2026-04-14T09:06:01.747083+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776157561747_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEditViewHistoryBookmarks)ProfilesToolsW FirefoxFileEditViewHistoryBookmarks)ProfilesToolsWindowHelpSaved searchesapp.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4You are currently impersonating Nikolay Yankov <)14 activitiesSort by: Most recent+ Add RecordingPlatform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloleamSearch teamsiTopics: Competitors XShow internal and external activities: Show internal only X)Save SearchClear allZ Configure SSH access to multipleHostIActivityHostContactActivityCurrent StagestatsType@ Console Home | Console Home | usSearch team membersiSecurityGroup | EC2 |us-east-2niso searen as DarticloanuJWJiminny MSalestorce App IrainingJY-20543 add AJ reports User pilcParuicipant5 SRD-6779 | JY-20632 | Unable to$searcn leam memdersJy 19798 evaluation for ai activity& JiminnyAsk Jiminny test report - 8 Aor 20Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc& Configure SSH access to multiple eCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabCustomer ®Customer or SubjectTranscript ©• Search transcript |Said byMnyonePeriodAll timeTopicsCompetiActivity typlSearch activity typesDuration ©Min (minutes)Max (minutes)Al call scoreselect Ai call scoreMulomalea call scoreSelect automated calliCoaching scoreSelect coaching scoreCoach ®Search coaches.Stage at callSearch stagesCurrent stageSearch stagesJiminny WBekkie/ Jules - renewals and Contract…Jiminny MHandover training part 1Unknown Customer Md 6 Deal Insights playbook d $Exclaimer MExclaimer handoverPSrneolornAll -hands Jan 9thUnknown Customer MNotetaker added on 11-28-23 @ 04:01Unknown Customer played MTraining ? - Jiminny App for Salesfor….Unknown Customer MAll-hands - Thank Yous, What Went, L...Unknown Customer (played MAll-hands - Nov /thiUnknown Customer MpAll Hands - October 31st ©Unknown Customer MDeal Insights Referesher/Training w/T...JY-18909-automated-reports-ask-iiminny = 869720unlikelv toRenew$42,126$I00 D 4I 19 0D300D 2$0 228.DO DO0D6$0 92•0 D 42 1ĐOD7{0 83Đ0 D35092Đ0 D4$092Đ0 D1S1 c 2D11Duration4/m44m34m17m43m28m51m25m39m41mA Get NotifiedDate11/0/2024.2:28 PMI25/06/2024, 3:09 PM10/06/2024, 12:02 PM18/05/9014. 19.96 PMI13/03/2024, 11:28 AM09/01/2024, 11:45 AM9911099 11•0AM22/11/2023, 11:56 AM14/11/2023, 11:27 AM0/119O/3.11:42 AMI31/10/2023, 11:35 AM25/10/2023, 11:46 AMloblSupport Daily - in 2 h 54 m(БГ)Tue 14 Apr 12:06:01Q InspectorP Filter URLsConsoleD DebuggerN Network{} Style Editor( PerformanceO: Memory© 99+MediaotheStatus200200206200200200200200200200200200200200200200200200200HlMLOSSMethodPosPOSTPOSTPOSTGETGETGETGETGETGETPOSTPOSTPOSTPoslPOSTPOSTPOSTPOSTPOSTDomainInitiatorA D 036719.ing...ao1b02S0envelode/"sentry versionssentry xe tetchA Y 036719.ing.../api/5627310/envelope/?sentry_version=7&sentry_ke fetch036/19.ing..ap1/562/310/envelope/?sentryversion=/&sentry_ke tetchA B 036719.ing.../api/5627310/envelope/?sentry_version=7&sentry_ke fetchapo.stagino.l..search?statusl|=completed&sort_by=dateHeld& * xhrA app.staging.ji...recentA app. staging.j...saved-searchA xhrA app.stagingji...integrationsA app.stagingji...on-demand?topic_idll=e02f0932-cb76-41b6-ac +a xhrttind, userollot.loNX-0940e17A app.stagingji...authenticateA xhrYa=ponxat plattorm-staging&r=b-019d8b28-3eft-/c xhrAr.logr-in.comr.locl-in.comAr.logr-in.comrlocl-in.comAr.logr-in.comrlogt-in.comAr.logr-in.comi?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhrNE Storage_ Disable Cache No Throttling + 50:TypeTransferredjsonIsonb008843 ms500 B2 B | 43 msb00 B2 B 44 ms500 B2 B | 43 ms6.28 kB24.21 kB | 1537 ms5.65 kB15.26 kB | 211 ms3.62 kB1.42 kB | 1508 ms3.83 kB5.53 kB | 1253 ms55.53 kB 196.86...| 2299 mscacheo3.12 kB96 B | 620 ms126.39 KB7.89 kB6.41 kB3.48 kB|158 ms153 ms| 150 ms2.96 kB3.45 kB3.45 kB2.95 kBOBOBOB2.98 kB3.46 kBо в3.47 kB| 151 ms157 ms1155 ms| 159 ms| 176 ms| 155 ms3.47 kB2.96 kB| 148 ms24 requests243.44 KB 253.36 KB transterredFinish: 1.01 min DOMContentLoaded: 42 ms load: 195 ms...
|
NULL
|
-5126687471076522476
|
NULL
|
click
|
ocr
|
NULL
|
FirefoxFileEditViewHistoryBookmarks)ProfilesToolsW FirefoxFileEditViewHistoryBookmarks)ProfilesToolsWindowHelpSaved searchesapp.staging.jiminny.com/ondemand?topic_id[]=e02f0932-cb76-41b6-ac4f-6b8db1392146&include_internal_conversations=1&sequence_number=4You are currently impersonating Nikolay Yankov <)14 activitiesSort by: Most recent+ Add RecordingPlatform Sprint 1 Q2 - Platform TeaJY-20543 add AJ reports User piloleamSearch teamsiTopics: Competitors XShow internal and external activities: Show internal only X)Save SearchClear allZ Configure SSH access to multipleHostIActivityHostContactActivityCurrent StagestatsType@ Console Home | Console Home | usSearch team membersiSecurityGroup | EC2 |us-east-2niso searen as DarticloanuJWJiminny MSalestorce App IrainingJY-20543 add AJ reports User pilcParuicipant5 SRD-6779 | JY-20632 | Unable to$searcn leam memdersJy 19798 evaluation for ai activity& JiminnyAsk Jiminny test report - 8 Aor 20Service-Desk - Queues - PlatformC JY-20543 add AJ reports User pilc& Configure SSH access to multiple eCa CloudWatch | us-east-2New TabCa CloudWatch | us-east-2+ New TabCustomer ®Customer or SubjectTranscript ©• Search transcript |Said byMnyonePeriodAll timeTopicsCompetiActivity typlSearch activity typesDuration ©Min (minutes)Max (minutes)Al call scoreselect Ai call scoreMulomalea call scoreSelect automated calliCoaching scoreSelect coaching scoreCoach ®Search coaches.Stage at callSearch stagesCurrent stageSearch stagesJiminny WBekkie/ Jules - renewals and Contract…Jiminny MHandover training part 1Unknown Customer Md 6 Deal Insights playbook d $Exclaimer MExclaimer handoverPSrneolornAll -hands Jan 9thUnknown Customer MNotetaker added on 11-28-23 @ 04:01Unknown Customer played MTraining ? - Jiminny App for Salesfor….Unknown Customer MAll-hands - Thank Yous, What Went, L...Unknown Customer (played MAll-hands - Nov /thiUnknown Customer MpAll Hands - October 31st ©Unknown Customer MDeal Insights Referesher/Training w/T...JY-18909-automated-reports-ask-iiminny = 869720unlikelv toRenew$42,126$I00 D 4I 19 0D300D 2$0 228.DO DO0D6$0 92•0 D 42 1ĐOD7{0 83Đ0 D35092Đ0 D4$092Đ0 D1S1 c 2D11Duration4/m44m34m17m43m28m51m25m39m41mA Get NotifiedDate11/0/2024.2:28 PMI25/06/2024, 3:09 PM10/06/2024, 12:02 PM18/05/9014. 19.96 PMI13/03/2024, 11:28 AM09/01/2024, 11:45 AM9911099 11•0AM22/11/2023, 11:56 AM14/11/2023, 11:27 AM0/119O/3.11:42 AMI31/10/2023, 11:35 AM25/10/2023, 11:46 AMloblSupport Daily - in 2 h 54 m(БГ)Tue 14 Apr 12:06:01Q InspectorP Filter URLsConsoleD DebuggerN Network{} Style Editor( PerformanceO: Memory© 99+MediaotheStatus200200206200200200200200200200200200200200200200200200200HlMLOSSMethodPosPOSTPOSTPOSTGETGETGETGETGETGETPOSTPOSTPOSTPoslPOSTPOSTPOSTPOSTPOSTDomainInitiatorA D 036719.ing...ao1b02S0envelode/"sentry versionssentry xe tetchA Y 036719.ing.../api/5627310/envelope/?sentry_version=7&sentry_ke fetch036/19.ing..ap1/562/310/envelope/?sentryversion=/&sentry_ke tetchA B 036719.ing.../api/5627310/envelope/?sentry_version=7&sentry_ke fetchapo.stagino.l..search?statusl|=completed&sort_by=dateHeld& * xhrA app.staging.ji...recentA app. staging.j...saved-searchA xhrA app.stagingji...integrationsA app.stagingji...on-demand?topic_idll=e02f0932-cb76-41b6-ac +a xhrttind, userollot.loNX-0940e17A app.stagingji...authenticateA xhrYa=ponxat plattorm-staging&r=b-019d8b28-3eft-/c xhrAr.logr-in.comr.locl-in.comAr.logr-in.comrlocl-in.comAr.logr-in.comrlogt-in.comAr.logr-in.comi?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhri?a=ponxaf/platform-staging&r=6-019d8b28-3eff-7c xhrNE Storage_ Disable Cache No Throttling + 50:TypeTransferredjsonIsonb008843 ms500 B2 B | 43 msb00 B2 B 44 ms500 B2 B | 43 ms6.28 kB24.21 kB | 1537 ms5.65 kB15.26 kB | 211 ms3.62 kB1.42 kB | 1508 ms3.83 kB5.53 kB | 1253 ms55.53 kB 196.86...| 2299 mscacheo3.12 kB96 B | 620 ms126.39 KB7.89 kB6.41 kB3.48 kB|158 ms153 ms| 150 ms2.96 kB3.45 kB3.45 kB2.95 kBOBOBOB2.98 kB3.46 kBо в3.47 kB| 151 ms157 ms1155 ms| 159 ms| 176 ms| 155 ms3.47 kB2.96 kB| 148 ms24 requests243.44 KB 253.36 KB transterredFinish: 1.01 min DOMContentLoaded: 42 ms load: 195 ms...
|
NULL
|