Timer Event Source¶
You can schedule a timer to invoke your code based on a fixed rate of minutes, hours, or days or a cron expression.
For the use of Timer triggers, please refer to Using a Timer Trigger.
Timer example event¶
{
"version": "v1.0",
"time": "2023-06-01T08:30:00+08:00",
"trigger_type": "TIMER",
"trigger_name": "Timer_001",
"user_event": "{\"message\": \"timer triggered event\", \"topic\":\"test\"}"
}
Parameter description¶
Parameter |
Type |
Description |
|---|---|---|
version |
String |
Event version |
time |
String |
Time when an event occurs. |
trigger_type |
String |
Trigger type: TIMER |
trigger_name |
String |
Trigger name |
user_event |
String |
Additional information of the trigger |
Example¶
<?php
require_once __DIR__ . '/../vendor/autoload.php';
use OTC\fg_timer_event\TimerEvent;
function initializer($context)
{
$logger = $context->getLogger();
$output = 'Initializer called for function: ' . $context->getFunctionName();
$logger->debug($output);
return $output;
}
function handler($event, $context)
{
$logger = $context->getLogger();
$logger->info('Function name: ' . $context->getFunctionName());
$timerEvent = new TimerEvent($event);
$logger->info('Trigger name from event: ' . $timerEvent->getTriggerName());
$output = [
'statusCode' => 200,
'headers' => [
'Content-Type' => 'application/json',
],
'isBase64Encoded' => false,
'body' => json_encode($event),
];
return $output;
}
Full sample code is available in the samples-doc/scratch-event-timer.