Просмотр исходного кода

Start some monitoring scripts for equipment integration

Zachary Kotlarek 14 лет назад
Родитель
Сommit
f10dab8134
3 измененных файлов с 51 добавлено и 0 удалено
  1. 49 0
      plexMonitor
  2. 1 0
      plexMonitor-gui
  3. 1 0
      plexMonitor-playing

+ 49 - 0
plexMonitor

@@ -0,0 +1,49 @@
+#!/bin/bash
+
+# Config
+EXEC_DIR="${HOME}/bin/video"
+TEMP_DIR="`getconf DARWIN_USER_TEMP_DIR`"
+
+# Sanity check
+if [ ! -d "${EXEC_DIR}" ] || [ ! -d "${TEMP_DIR}" ]; then
+	echo "Bad config" 1>&2
+	exit 1
+fi
+
+# Determine who we are
+MODE="PLAYING"
+CMD="plex-playing"
+if basename "${0}" | grep -qi GUI; then
+	MODE="GUI"
+	CMD="plex-gui"
+fi
+
+# Construct our runtime paths
+DATA_DIR="${TEMP_DIR}/plexMonitor"
+TEMP_FILE="`mktemp -t plexMonitor.XXXXXXXX`"
+
+# Get into position
+if [ ! -d "${DATA_DIR}" ]; then
+	mkdir "${DATA_DIR}"
+fi
+cd "${DATA_DIR}"
+
+# Compare the current state to the last one
+CHANGED=1
+"${EXEC_DIR}/${CMD}" > "${TEMP_FILE}"
+if [ -r "${MODE}" ]; then
+	diff "${TEMP_FILE}" "${MODE}" > /dev/null
+	if [ $? -eq 0 ]; then
+		CHANGED=0
+	fi
+fi
+
+# If anything changed, note the update time and store the current state for future reference
+if [ $CHANGED -gt 0 ]; then
+	date '+%s' > "${MODE}.lastUpdate"
+	mv "${TEMP_FILE}" "${MODE}"
+fi
+
+# Cleanup
+rm -f "${TEMP_FILE}"
+exit 0

+ 1 - 0
plexMonitor-gui

@@ -0,0 +1 @@
+plexMonitor

+ 1 - 0
plexMonitor-playing

@@ -0,0 +1 @@
+plexMonitor