diff --git a/control/triggers.cpp b/control/triggers.cpp
index 3cddce6..5662f3f 100644
--- a/control/triggers.cpp
+++ b/control/triggers.cpp
@@ -23,7 +23,7 @@
     };
 }
 
-Trigger signal(const std::string& match, Handler&& handler)
+Trigger signal(const std::string& match, SignalHandler&& handler)
 {
     return [match = std::move(match),
             handler = std::move(handler)](control::Zone& zone,
@@ -77,7 +77,7 @@
     };
 }
 
-Trigger init(Handler&& handler)
+Trigger init(MethodHandler&& handler)
 {
     return [handler = std::move(handler)](control::Zone& zone,
                                           const Group& group,
@@ -86,10 +86,9 @@
         // A handler function is optional
         if (handler)
         {
-            sdbusplus::message::message nullMsg{nullptr};
-            // Execute the given handler function prior to running the actions
-            handler(zone.getBus(), nullMsg, zone);
+            handler(zone, group);
         }
+
         // Run action functions for initial event state
         std::for_each(
             actions.begin(),
