about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorBen Morrison <ben@gbmor.dev>2019-05-30 02:42:34 -0400
committerBen Morrison <ben@gbmor.dev>2019-05-30 02:42:34 -0400
commit78fe4cbb3eddb166f0bf6a52299e3e37c5761deb (patch)
treeed754ff06d847f77607ecae982523fff13f235e1
parent542251de6f737432e9e824b68ddd5640399deb3a (diff)
downloadgoofbot-78fe4cbb3eddb166f0bf6a52299e3e37c5761deb.tar.gz
using logged in user script rather than who|awk
-rw-r--r--main.go19
1 files changed, 3 insertions, 16 deletions
diff --git a/main.go b/main.go
index f5b1e05..fabfa43 100644
--- a/main.go
+++ b/main.go
@@ -5,7 +5,6 @@ import (
 	"encoding/json"
 	"flag"
 	"fmt"
-	"io"
 	"io/ioutil"
 	"log"
 	"os"
@@ -146,23 +145,11 @@ func main() {
 		if strings.HasPrefix(e.Last(), "!users") {
 			// execs: who -q | awk 'NR==1'
 			// then saves the output to bytestream
-			who := exec.Command("who", "-q")
-			awk := exec.Command("awk", "NR==1")
-			r, w := io.Pipe()
-			who.Stdout = w
-			awk.Stdin = r
+			who := exec.Command("/usr/local/bin/showwhoison", "")
 			var bytestream bytes.Buffer
-			awk.Stdout = &bytestream
-			err := who.Start()
+			who.Stdout = &bytestream
+			err := who.Run()
 			checkerr(err)
-			err = awk.Start()
-			checkerr(err)
-			err = who.Wait()
-			checkerr(err)
-			w.Close()
-			err = awk.Wait()
-			checkerr(err)
-			r.Close()
 
 			c.Cmd.Reply(e, "Check your private messages!")
 			c.Cmd.Message(e.Source.Name, bytestream.String())