Current section
Files
Jump to
Current section
Files
lib/sensor/sensor_relhum.ex
defmodule SensorRelHum do
@moduledoc """
The SensorTemperature module provides individual temperature readings for
a Sensor
"""
require Logger
use Ecto.Schema
import Ecto.Query, only: [from: 2]
import Repo, only: [delete_all: 2]
alias TimeSupport
schema "sensor_relhum" do
field(:rh, :float)
field(:ttl_ms, :integer)
belongs_to(:sensor, Sensor)
timestamps(usec: true)
end
# 15 minutes (as milliseconds)
@delete_timeout_ms 15 * 60 * 1000
def purge_readings([days: days] = opts) when days < 0 do
before = TimeSupport.utc_now() |> Timex.shift(opts)
from(sr in SensorRelHum, where: sr.inserted_at < ^before)
|> delete_all(timeout: @delete_timeout_ms)
end
end