moar stuff.
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
-- +goose Up
|
||||
-- +goose StatementBegin
|
||||
ALTER TABLE script_trigger ADD COLUMN name VARCHAR(255) NOT NULL DEFAULT '';
|
||||
-- +goose StatementEnd
|
||||
|
||||
-- +goose Down
|
||||
-- +goose StatementBegin
|
||||
ALTER TABLE script_trigger DROP COLUMN IF EXISTS name;
|
||||
-- +goose StatementEnd
|
||||
@@ -49,6 +49,7 @@ type ScriptTrigger struct {
|
||||
ScriptName string
|
||||
ScriptPre json.RawMessage
|
||||
ScriptPost json.RawMessage
|
||||
Name string
|
||||
}
|
||||
|
||||
type ScriptVariable struct {
|
||||
|
||||
@@ -22,7 +22,7 @@ func (q *Queries) DeleteScriptTrigger(ctx context.Context, id uuid.UUID) error {
|
||||
}
|
||||
|
||||
const listScriptTriggers = `-- name: ListScriptTriggers :many
|
||||
SELECT id, event, device_match, parameter, script_target, script_name, script_pre, script_post FROM script_trigger
|
||||
SELECT id, event, device_match, parameter, script_target, script_name, script_pre, script_post, name FROM script_trigger
|
||||
`
|
||||
|
||||
func (q *Queries) ListScriptTriggers(ctx context.Context) ([]ScriptTrigger, error) {
|
||||
@@ -43,6 +43,7 @@ func (q *Queries) ListScriptTriggers(ctx context.Context) ([]ScriptTrigger, erro
|
||||
&i.ScriptName,
|
||||
&i.ScriptPre,
|
||||
&i.ScriptPost,
|
||||
&i.Name,
|
||||
); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -112,12 +113,13 @@ func (q *Queries) ListScripts(ctx context.Context) ([]Script, error) {
|
||||
}
|
||||
|
||||
const replaceScriptTrigger = `-- name: ReplaceScriptTrigger :exec
|
||||
REPLACE INTO script_trigger (id, event, device_match, parameter, script_target, script_name, script_pre, script_post)
|
||||
VALUES (?, ?, ?, ?, ?, ?, ?, ?)
|
||||
REPLACE INTO script_trigger (id, name, event, device_match, parameter, script_target, script_name, script_pre, script_post)
|
||||
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)
|
||||
`
|
||||
|
||||
type ReplaceScriptTriggerParams struct {
|
||||
ID uuid.UUID
|
||||
Name string
|
||||
Event string
|
||||
DeviceMatch string
|
||||
Parameter string
|
||||
@@ -130,6 +132,7 @@ type ReplaceScriptTriggerParams struct {
|
||||
func (q *Queries) ReplaceScriptTrigger(ctx context.Context, arg ReplaceScriptTriggerParams) error {
|
||||
_, err := q.exec(ctx, q.replaceScriptTriggerStmt, replaceScriptTrigger,
|
||||
arg.ID,
|
||||
arg.Name,
|
||||
arg.Event,
|
||||
arg.DeviceMatch,
|
||||
arg.Parameter,
|
||||
|
||||
@@ -14,8 +14,8 @@ REPLACE INTO script_variable (scope, name, value) VALUES (?, ?, ?);
|
||||
SELECT * FROM script_trigger;
|
||||
|
||||
-- name: ReplaceScriptTrigger :exec
|
||||
REPLACE INTO script_trigger (id, event, device_match, parameter, script_target, script_name, script_pre, script_post)
|
||||
VALUES (?, ?, ?, ?, ?, ?, ?, ?);
|
||||
REPLACE INTO script_trigger (id, name, event, device_match, parameter, script_target, script_name, script_pre, script_post)
|
||||
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?);
|
||||
|
||||
-- name: DeleteScriptTrigger :exec
|
||||
DELETE FROM script_trigger WHERE id = ?;
|
||||
@@ -34,7 +34,7 @@ func (d *database) HandleEvent(bus *lucifer3.EventBus, event lucifer3.Event) {
|
||||
|
||||
switch event := event.(type) {
|
||||
case events.Started:
|
||||
timeout, cancel := context.WithTimeout(context.Background(), time.Second*10)
|
||||
timeout, cancel := context.WithTimeout(context.Background(), time.Second*90)
|
||||
defer cancel()
|
||||
|
||||
// Fetch all aliases first
|
||||
@@ -185,6 +185,7 @@ func (d *database) HandleEvent(bus *lucifer3.EventBus, event lucifer3.Event) {
|
||||
for _, trig := range scriptTriggers {
|
||||
bus.RunCommand(script.UpdateTrigger{
|
||||
ID: trig.ID,
|
||||
Name: trig.Name,
|
||||
Event: script.TriggerEvent(trig.Event),
|
||||
DeviceMatch: trig.DeviceMatch,
|
||||
Parameter: trig.Parameter,
|
||||
@@ -389,6 +390,7 @@ func (d *database) HandleCommand(bus *lucifer3.EventBus, command lucifer3.Comman
|
||||
ScriptName: command.ScriptName,
|
||||
ScriptPre: toJSON(command.ScriptPre),
|
||||
ScriptPost: toJSON(command.ScriptPost),
|
||||
Name: command.Name,
|
||||
})
|
||||
if err != nil {
|
||||
bus.RunEvent(events.Log{
|
||||
|
||||
Reference in New Issue
Block a user