diff --git a/ts-control b/ts-control
index 3c28369..faf5766 100755
--- a/ts-control
+++ b/ts-control
@@ -9,7 +9,13 @@ not away
 back
 message
 message-user"
-action=$(echo "$actions" | $DMENU)
+
+action="$1"
+if [ -n "$1" ]; then
+	shift
+else
+	action=$(echo "$actions" | $DMENU)
+fi
 
 _ts_control_get_entity() {
 	entity=$(teamspeak-query-lib "$1s" | $DMENU)
@@ -66,7 +72,11 @@ case $action in
 		;;
 	"back")
 		teamspeak-query-lib update --back
-		_ts_control_move_self
+		if [ -n "$1" ]; then
+			teamspeak-query-lib move "$1"
+		else
+			_ts_control_move_self "$1"
+		fi
 		teamspeak-query-lib update --microphone=true --speakers=true
 		;;
 	"message")