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

"""
Sample timer event handler for FunctionGraph.
"""

from fg_timer_event import TimerEvent


def handler(event, context):
    """
    Main handler function for the timer event.
    
    Args:
        event (dict): The timer event data
        context: FunctionGraph execution context
        
    Returns:
        str: Response message
    """
    logger = context.getLogger()

    logger.info("Function Name: %s", context.getFunctionName())

    timer_event = TimerEvent(event)

    logger.info("Timer Event: %s", timer_event.get_trigger_name())

    return "ok"

Full sample code is available in the samples-doc/scratch-event-timer.

Package description

Public package exports for fg_timer_event.

class fg_timer_event.TimerEvent(event)

Bases: object

Represents a Timer event for FunctionGraph.

Attributes:

version (str): Event version time (str): Event time trigger_type (str): Trigger type trigger_name (str): Trigger name user_event (str): User event data

Initialize TimerEvent.

Args:

event (dict): The timer event data

get_version()

Returns the event version.

Returns:

str: Event version

get_time()

Returns the event time.

Returns:

str: Event time

get_trigger_type()

Returns the trigger type.

Returns:

str: Trigger type

get_trigger_name()

Returns the trigger name.

Returns:

str: Trigger name

get_user_event()

Returns the user event.

Returns:

str: User event

get_user_event_parsed()

Returns the parsed user event, or None if parsing fails.

Returns:

dict or None: The parsed user event data, or None if invalid JSON

to_json()

Returns the event as a dictionary.

Returns:

dict: The raw event data