<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def sendWakeOnLan(self, macAddress, lanInterfaceId=1, timeout=1):
 """Send a wake up package to a device specified by its MAC address. :param str macAddress: MAC address in the form ``38:C9:86:26:7E:38``; be aware that the MAC address might be case sensitive, depending on the router :param int lanInterfaceId: the id of the LAN interface :param float timeout: the timeout to wait for the action to be executed :return: the amount of known hosts. :rtype: int .. seealso:: :meth:`~simpletr64.actions.Lan.getHostDetailsByMACAddress` """

        namespace = Fritz.getServiceType("sendWakeOnLan") + str(lanInterfaceId)
        uri = self.getControlURL(namespace)

        self.execute(uri, namespace, "X_AVM-DE_WakeOnLANByMACAddress", timeout=timeout,
                     NewMACAddress=macAddress)