Host Maintenance With Start Time and End Time

This is a problem of the monitoring core. The classic Nagios core only knows if a host is in Downtime (maintenance) or not. But it don’t know directly how long.
The “Downtimes” a separate “objects” for the monitoring core with some dependencies to hosts or services. If you use the Enterprise edition you can build some type of report that is triggered if a Downtime starts and produce all affected objects in this report. There you can also see how long the Downtime takes until it ends.