---
title: HMTimerTrigger
framework: homekit
role: symbol
role_heading: Class
path: homekit/hmtimertrigger
---

# HMTimerTrigger

A trigger to activate an action set based on a periodic timer.

## Declaration

```swift
class HMTimerTrigger
```

## Overview

Overview When a timer trigger is enabled using enable(_:completionHandler:), the system checks to verify that the timer trigger’s fire date, time zone, and recurrence rules yield a next fire date that is in the future.

## Topics

### Creating a timer trigger

- [init(name:fireDate:recurrence:)](homekit/hmtimertrigger/init(name:firedate:recurrence:).md)

### Choosing the fire date

- [fireDate](homekit/hmtimertrigger/firedate.md)
- [updateFireDate(_:completionHandler:)](homekit/hmtimertrigger/updatefiredate(_:completionhandler:).md)

### Using recurrence

- [recurrence](homekit/hmtimertrigger/recurrence.md)
- [updateRecurrence(_:completionHandler:)](homekit/hmtimertrigger/updaterecurrence(_:completionhandler:).md)

### Deprecated symbols

- [init(name:fireDate:timeZone:recurrence:recurrenceCalendar:)](homekit/hmtimertrigger/init(name:firedate:timezone:recurrence:recurrencecalendar:).md)
- [timeZone](homekit/hmtimertrigger/timezone.md)
- [updateTimeZone(_:completionHandler:)](homekit/hmtimertrigger/updatetimezone(_:completionhandler:).md)
- [recurrenceCalendar](homekit/hmtimertrigger/recurrencecalendar.md)

## Relationships

### Inherits From

- [HMTrigger](homekit/hmtrigger.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Action Sets

- [HMActionSet](homekit/hmactionset.md)
- [HMEventTrigger](homekit/hmeventtrigger.md)
