summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--notification/notify.go20
1 files changed, 20 insertions, 0 deletions
diff --git a/notification/notify.go b/notification/notify.go
new file mode 100644
index 0000000..4617a38
--- /dev/null
+++ b/notification/notify.go
@@ -0,0 +1,20 @@
+package notification
+
+import (
+	"os/exec"
+)
+
+// Notif struct holds information about the notification. Other
+// parameters like urgency & timeout could be added when required.
+type Notif struct {
+	Title   string
+	Message string
+}
+
+// Notify sends a desktop notification to the user using libnotify. It
+// handles information in the form of Notif struct. It returns an
+// error (if exists).
+func (n Notif) Notify() error {
+	err := exec.Command("notify-send", n.Title, n.Message).Run()
+	return err
+}