       case Serverboards.Plugin.Runner.call( plugin_id, method, params ) do
         {:ok, stop_id} ->
           stop_id = if stop_id do stop_id else uuid end
+          Logger.info("Starting rule #{inspect uuid}.", rule_uuid: uuid)
 
           {:ok, %{
             trigger: trigger,

      } = step, state) do

    eval_res = ExEval.eval(condition, [state])
    if step["debug"] do
      Logger.debug("Check condition #{inspect condition}: #{inspect eval_res}.", state: state, rule_id: uuid)
    end
    case eval_res do
      {:ok, condition_result} ->
        if condition_result do

  def handle_cast({:trigger, params}, state) do
    if state.running == false do # already runing, no retriggers
      {:ok, trigger_type} = Serverboards.Utils.map_get(state.rule.rule, ["when", "trigger"])
      Logger.info("Triggered #{inspect {state.rule.name, trigger_type}}", params: params, rule_uuid: state.rule.uuid)
      when_id = Map.get(state.rule.rule["when"], "id", "A")
      params = Map.merge( state.rule.rule["when"]["params"] || %{}, params )
      uuid = state.rule.uuid
