---
title: "init(name:fireDate:timeZone:recurrence:recurrenceCalendar:)"
framework: homekit
role: symbol
role_heading: Initializer
path: "homekit/hmtimertrigger/init(name:firedate:timezone:recurrence:recurrencecalendar:)"
---

# init(name:fireDate:timeZone:recurrence:recurrenceCalendar:)

Initializes a timer trigger with specified timing information.

## Declaration

```swift
init(name: String, fireDate: Date, timeZone: TimeZone?, recurrence: DateComponents?, recurrenceCalendar: Calendar?)
```

## Parameters

- `name`: The name of the timer trigger.
- `fireDate`: The first fire date.
- `timeZone`: The time zone for the first fire date. Pass nil to use the default time zone. See doc://com.apple.homekit/documentation/HomeKit/HMTimerTrigger/timeZone for a description of how the time zone is interpreted.
- `recurrence`: The recurrence interval on which to fire the trigger. nil indicates a one-time trigger.
- `recurrenceCalendar`: The calendar in which to evaluate the recurrence interval of a timer trigger. May be nil, in which case the current calendar doc://com.apple.documentation/documentation/Foundation/NSCalendar/current is used.

## Return Value

Return Value A newly-initialized timer trigger with the specified values.

## Discussion

Discussion A new timer trigger starts out disabled, and must be enabled using enable(_:completionHandler:) before use.

## See Also

### Deprecated symbols

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