generated from zj/archlinux-pkg
fix unzipkdm
This commit is contained in:
6
PKGBUILD
6
PKGBUILD
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
pkgname=tms-bbt-config
|
pkgname=tms-bbt-config
|
||||||
pkgver=26.01
|
pkgver=26.01
|
||||||
pkgrel=02
|
pkgrel=12
|
||||||
pkgdesc="SmartTMS application conifg."
|
pkgdesc="SmartTMS application conifg."
|
||||||
arch=('x86_64')
|
arch=('x86_64')
|
||||||
url="https://yuyujing.cn/smarttms"
|
url="https://yuyujing.cn/smarttms"
|
||||||
@@ -53,8 +53,8 @@ package() {
|
|||||||
install -m755 hostname "${pkgdir}/usr/bin/hostname"
|
install -m755 hostname "${pkgdir}/usr/bin/hostname"
|
||||||
install -m755 smart-organizer-service-install.sh "${pkgdir}/home/smart/smart-organizer-service-install.sh"
|
install -m755 smart-organizer-service-install.sh "${pkgdir}/home/smart/smart-organizer-service-install.sh"
|
||||||
install -m644 tms-tools.desktop "${pkgdir}/usr/share/applications/tms-tools.desktop"
|
install -m644 tms-tools.desktop "${pkgdir}/usr/share/applications/tms-tools.desktop"
|
||||||
install -m755 unzipKDM.png "${pkgdir}/home/smart/unzipKDM.png"
|
install -m755 unzipKDM.png "${pkgdir}${_starter_dir}/unzipKDM.png"
|
||||||
install -m755 unzipKDMs.sh "${pkgdir}/home/smart/unzipKDMs.sh"
|
install -m755 unzipKDMs.sh "${pkgdir}${_starter_dir}/unzipKDMs.sh"
|
||||||
install -m644 uzipkdm.desktop "${pkgdir}/usr/share/applications/uzipkdm.desktop"
|
install -m644 uzipkdm.desktop "${pkgdir}/usr/share/applications/uzipkdm.desktop"
|
||||||
install -m644 tms.desktop "${pkgdir}/usr/share/applications/tms.desktop"
|
install -m644 tms.desktop "${pkgdir}/usr/share/applications/tms.desktop"
|
||||||
|
|
||||||
|
|||||||
209
tms-bbt-config/menus/xfce-applications.menu
Executable file
209
tms-bbt-config/menus/xfce-applications.menu
Executable file
@@ -0,0 +1,209 @@
|
|||||||
|
<!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN"
|
||||||
|
"http://www.freedesktop.org/standards/menu-spec/1.0/menu.dtd">
|
||||||
|
|
||||||
|
<Menu>
|
||||||
|
<Name>Xfce</Name>
|
||||||
|
|
||||||
|
<DefaultAppDirs/>
|
||||||
|
<DefaultDirectoryDirs/>
|
||||||
|
|
||||||
|
<Include>
|
||||||
|
<Category>X-Xfce-Toplevel</Category>
|
||||||
|
<Category>TMS</Category>
|
||||||
|
</Include>
|
||||||
|
<Exclude>
|
||||||
|
<Or>
|
||||||
|
<Filename>xfce4-mail-reader.desktop</Filename>
|
||||||
|
<Filename>xfce4-web-browser.desktop</Filename>
|
||||||
|
<Filename>barco-commander.desktop</Filename>
|
||||||
|
<Filename>barco-communicator.desktop</Filename>
|
||||||
|
<Filename>dcc.desktop</Filename>
|
||||||
|
<Filename>dcc2.desktop</Filename>
|
||||||
|
<Filename>zm.desktop</Filename>
|
||||||
|
<Filename>tms-tools.desktop</Filename>
|
||||||
|
<Filename>tmsrestart.desktop</Filename>
|
||||||
|
<Filename>org.remmina.Remmina.desktop</Filename>
|
||||||
|
<Filename>dcpomatic2.desktop</Filename>
|
||||||
|
<Filename>xfce4-run.desktop</Filename>
|
||||||
|
<Filename>uzipkdm.desktop</Filename>
|
||||||
|
</Or>
|
||||||
|
</Exclude>
|
||||||
|
|
||||||
|
|
||||||
|
<Layout>
|
||||||
|
<Filename>xfce4-run.desktop</Filename>
|
||||||
|
<Separator/>
|
||||||
|
<Filename>xfce4-terminal-emulator.desktop</Filename>
|
||||||
|
<Filename>xfce4-file-manager.desktop</Filename>
|
||||||
|
<Filename>tms.desktop</Filename>
|
||||||
|
<Separator/>
|
||||||
|
<Menuname>TMS</Menuname>
|
||||||
|
<Separator/>
|
||||||
|
<Menuname>Settings</Menuname>
|
||||||
|
<Separator/>
|
||||||
|
<Merge type="all"/>
|
||||||
|
<Separator/>
|
||||||
|
<Filename>xfce4-about.desktop</Filename>
|
||||||
|
<Filename>xfce4-session-logout.desktop</Filename>
|
||||||
|
</Layout>
|
||||||
|
|
||||||
|
<Menu>
|
||||||
|
<Name>TMS</Name>
|
||||||
|
<Directory>tms.directory</Directory>
|
||||||
|
<Include>
|
||||||
|
<Category>TMS</Category>
|
||||||
|
</Include>
|
||||||
|
</Menu>
|
||||||
|
|
||||||
|
<Menu>
|
||||||
|
<Name>Settings</Name>
|
||||||
|
<Directory>xfce-settings.directory</Directory>
|
||||||
|
<Include>
|
||||||
|
<Category>Settings</Category>
|
||||||
|
</Include>
|
||||||
|
|
||||||
|
<Layout>
|
||||||
|
<Filename>xfce-settings-manager.desktop</Filename>
|
||||||
|
<Separator/>
|
||||||
|
<Merge type="all"/>
|
||||||
|
</Layout>
|
||||||
|
|
||||||
|
<Menu>
|
||||||
|
<Name>Screensavers</Name>
|
||||||
|
<Directory>xfce-screensavers.directory</Directory>
|
||||||
|
<Include>
|
||||||
|
<Category>Screensaver</Category>
|
||||||
|
</Include>
|
||||||
|
</Menu>
|
||||||
|
</Menu>
|
||||||
|
|
||||||
|
<Menu>
|
||||||
|
<Name>Accessories</Name>
|
||||||
|
<Directory>xfce-accessories.directory</Directory>
|
||||||
|
<Include>
|
||||||
|
<Or>
|
||||||
|
<Category>Accessibility</Category>
|
||||||
|
<Category>Core</Category>
|
||||||
|
<Category>Legacy</Category>
|
||||||
|
<Category>Utility</Category>
|
||||||
|
</Or>
|
||||||
|
</Include>
|
||||||
|
<Exclude>
|
||||||
|
<Or>
|
||||||
|
<Filename>xfce4-file-manager.desktop</Filename>
|
||||||
|
<Filename>xfce4-terminal-emulator.desktop</Filename>
|
||||||
|
<Filename>xfce4-about.desktop</Filename>
|
||||||
|
<Filename>xfce4-run.desktop</Filename>
|
||||||
|
</Or>
|
||||||
|
</Exclude>
|
||||||
|
</Menu>
|
||||||
|
|
||||||
|
<Menu>
|
||||||
|
<Name>Development</Name>
|
||||||
|
<Directory>xfce-development.directory</Directory>
|
||||||
|
<Include>
|
||||||
|
<Category>Development</Category>
|
||||||
|
</Include>
|
||||||
|
</Menu>
|
||||||
|
|
||||||
|
<Menu>
|
||||||
|
<Name>Education</Name>
|
||||||
|
<Directory>xfce-education.directory</Directory>
|
||||||
|
<Include>
|
||||||
|
<Category>Education</Category>
|
||||||
|
</Include>
|
||||||
|
</Menu>
|
||||||
|
|
||||||
|
<Menu>
|
||||||
|
<Name>Games</Name>
|
||||||
|
<Directory>xfce-games.directory</Directory>
|
||||||
|
<Include>
|
||||||
|
<Category>Game</Category>
|
||||||
|
</Include>
|
||||||
|
</Menu>
|
||||||
|
|
||||||
|
<Menu>
|
||||||
|
<Name>Graphics</Name>
|
||||||
|
<Directory>xfce-graphics.directory</Directory>
|
||||||
|
<Include>
|
||||||
|
<Category>Graphics</Category>
|
||||||
|
</Include>
|
||||||
|
</Menu>
|
||||||
|
|
||||||
|
<Menu>
|
||||||
|
<Name>Multimedia</Name>
|
||||||
|
<Directory>xfce-multimedia.directory</Directory>
|
||||||
|
<Include>
|
||||||
|
<Category>Audio</Category>
|
||||||
|
<Category>Video</Category>
|
||||||
|
<Category>AudioVideo</Category>
|
||||||
|
</Include>
|
||||||
|
<Exclude>
|
||||||
|
<Or>
|
||||||
|
<Filename>qv4l2.desktop</Filename>
|
||||||
|
<Filename>qvidcap.desktop</Filename>
|
||||||
|
</Or>
|
||||||
|
</Exclude>
|
||||||
|
</Menu>
|
||||||
|
|
||||||
|
<Menu>
|
||||||
|
<Name>Network</Name>
|
||||||
|
<Directory>xfce-network.directory</Directory>
|
||||||
|
<Include>
|
||||||
|
<Category>Network</Category>
|
||||||
|
</Include>
|
||||||
|
<Exclude>
|
||||||
|
<Or>
|
||||||
|
<Filename>bssh.desktop</Filename>
|
||||||
|
<Filename>bvnc.desktop</Filename>
|
||||||
|
<Filename>xfce4-web-browser.desktop</Filename>
|
||||||
|
<Filename>xfce4-mail-reader.desktop</Filename>
|
||||||
|
</Or>
|
||||||
|
</Exclude>
|
||||||
|
|
||||||
|
</Menu>
|
||||||
|
|
||||||
|
<Menu>
|
||||||
|
<Name>Office</Name>
|
||||||
|
<Directory>xfce-office.directory</Directory>
|
||||||
|
<Include>
|
||||||
|
<Category>Office</Category>
|
||||||
|
</Include>
|
||||||
|
</Menu>
|
||||||
|
|
||||||
|
<Menu>
|
||||||
|
<Name>Science</Name>
|
||||||
|
<Directory>xfce-science.directory</Directory>
|
||||||
|
<Include>
|
||||||
|
<Category>Science</Category>
|
||||||
|
</Include>
|
||||||
|
</Menu>
|
||||||
|
|
||||||
|
<Menu>
|
||||||
|
<Name>System</Name>
|
||||||
|
<Directory>xfce-system.directory</Directory>
|
||||||
|
<Include>
|
||||||
|
<Or>
|
||||||
|
<Category>Emulator</Category>
|
||||||
|
<Category>System</Category>
|
||||||
|
</Or>
|
||||||
|
</Include>
|
||||||
|
<Exclude>
|
||||||
|
<Or>
|
||||||
|
<Filename>xfce4-session-logout.desktop</Filename>
|
||||||
|
</Or>
|
||||||
|
</Exclude>
|
||||||
|
</Menu>
|
||||||
|
|
||||||
|
<Menu>
|
||||||
|
<Name>Other</Name>
|
||||||
|
<Directory>xfce-other.directory</Directory>
|
||||||
|
<OnlyUnallocated/>
|
||||||
|
<Include>
|
||||||
|
<All/>
|
||||||
|
</Include>
|
||||||
|
</Menu>
|
||||||
|
|
||||||
|
<DefaultMergeDirs/>
|
||||||
|
|
||||||
|
</Menu>
|
||||||
103
tms-bbt-config/unzipKDMs.sh
Normal file → Executable file
103
tms-bbt-config/unzipKDMs.sh
Normal file → Executable file
@@ -1,62 +1,85 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
# 定义保存编码的文件路径
|
# 定义保存cookie的文件路径
|
||||||
CONFIG_FILE="$HOME/.my_key_encoding" # 建议放在用户主目录下的隐藏文件,避免与脚本混淆
|
COOKIE_FILE="/home/smart/cookie.txt"
|
||||||
|
|
||||||
# 检查是否存在已保存的编码
|
# 1. 登录 SmartTMS_S3 系统
|
||||||
if [ -f "$CONFIG_FILE" ]; then
|
echo "正在登录 SmartTMS_S3 系统以获取会话..."
|
||||||
# 如果文件存在,读取编码
|
curl -s -X POST -d 'userName=admin&userPassword=admin' -c "$COOKIE_FILE" http://127.0.0.1:8080/SmartTMS_S3/LoginController/login.do >/dev/null 2>&1
|
||||||
KEY_ENCODING=$(cat "$CONFIG_FILE")
|
|
||||||
echo "使用已保存的密钥编码: $KEY_ENCODING"
|
|
||||||
else
|
|
||||||
# 如果文件不存在,提示用户输入并保存
|
|
||||||
read -p "首次运行,请输入密钥编码 (例如: 35054321): " USER_INPUT_ENCODING
|
|
||||||
|
|
||||||
# 简单验证输入是否为空
|
if [ $? -ne 0 ]; then
|
||||||
if [ -z "$USER_INPUT_ENCODING" ]; then
|
echo "错误: 登录 SmartTMS_S3 失败。请检查服务是否运行或网络连接。"
|
||||||
echo "错误: 未输入密钥编码。脚本退出。"
|
rm -f "$COOKIE_FILE" # 清理可能不完整的cookie文件
|
||||||
|
sleep 60
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
echo "登录成功。"
|
||||||
|
|
||||||
KEY_ENCODING="$USER_INPUT_ENCODING"
|
# 2. 从 SettingManagementController 接口提取密钥编码 (code)
|
||||||
echo "$KEY_ENCODING" > "$CONFIG_FILE"
|
echo "正在获取编码..."
|
||||||
echo "密钥编码 '$KEY_ENCODING' 已保存,下次运行将自动使用此编码。"
|
JSON_RESPONSE=$(curl -s -X POST -b "$COOKIE_FILE" 'http://127.0.0.1:8080/SmartTMS_S3/SettingManagementController/queryCinemaModel.do')
|
||||||
|
|
||||||
|
if [ $? -ne 0 ] || [ -z "$JSON_RESPONSE" ]; then
|
||||||
|
echo "错误: 无法获取系统配置信息或返回为空。检查tms是否启动"
|
||||||
|
rm -f "$COOKIE_FILE"
|
||||||
|
sleep 60
|
||||||
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
KEY_ENCODING=$(echo "$JSON_RESPONSE" | sed -n 's/.*"result":{[^}]*"code":"\([^"]*\)".*/\1/p')
|
||||||
|
|
||||||
|
if [ -z "$KEY_ENCODING" ]; then
|
||||||
|
echo "错误: 无法从接口响应中提取到有效的密钥编码。检查配置中是否填写影院编码"
|
||||||
|
rm -f "$COOKIE_FILE"
|
||||||
|
sleep 60
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "已成功获取影院编码: $KEY_ENCODING"
|
||||||
|
|
||||||
# 开始解压操作
|
# 开始解压操作
|
||||||
echo "开始解压文件..."
|
echo "开始解压密钥文件..."
|
||||||
|
|
||||||
cd /home/smart/下载/
|
# 定义需要扫描的目录
|
||||||
ls $USER_INPUT_ENCODING*.zip 2>/dev/null | xargs -r -n1 unzip -o -d /media/kdm/
|
declare -a DIRS=("/home/smart/下载/" "/home/smart/Downloads/" "/media/kdm/" "/tmp/")
|
||||||
echo "已处理 /home/smart/下载/ 中的ZIP文件。"
|
TARGET_DIR="/media/kdm/"
|
||||||
|
|
||||||
cd /home/smart/Downloads/
|
for dir in "${DIRS[@]}"; do
|
||||||
ls $USER_INPUT_ENCODING*.zip 2>/dev/null | xargs -r -n1 unzip -o -d /media/kdm/
|
echo "正在处理目录: $dir 中的ZIP文件..."
|
||||||
echo "已处理 /home/smart/Downloads/ 中的ZIP文件。"
|
find "$dir" -maxdepth 1 -name "${KEY_ENCODING}*.zip" -print0 | xargs -0 -r -n1 unzip -o -d "$TARGET_DIR"
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
cd /media/kdm/
|
echo "警告: 在 $dir 中解压文件时可能出现问题,或没有找到匹配的文件。"
|
||||||
ls $USER_INPUT_ENCODING*.zip 2>/dev/null | xargs -r -n1 unzip -o -d /media/kdm/
|
fi
|
||||||
echo "已处理 /media/kdm/ 中的ZIP文件。"
|
done
|
||||||
|
|
||||||
cd /tmp/
|
|
||||||
ls $USER_INPUT_ENCODING*.zip 2>/dev/null | xargs -r -n1 unzip -o -d /media/kdm/
|
|
||||||
echo "已处理 /media/kdm/ 中的ZIP文件。"
|
|
||||||
|
|
||||||
echo "解压操作完成。"
|
echo "解压操作完成。"
|
||||||
|
|
||||||
echo "删除密钥压缩包..."
|
echo "删除密钥压缩包..."
|
||||||
# 使用之前获取或保存的 KEY_ENCODING 变量
|
# 使用之前获取的 KEY_ENCODING 变量来查找并删除压缩包
|
||||||
find /media/kdm/ -name "${KEY_ENCODING}*.zip" -delete
|
for dir in "${DIRS[@]}"; do
|
||||||
find /home/smart/下载/ -name "${KEY_ENCODING}*.zip" -delete
|
echo "正在删除 $dir 中的 ${KEY_ENCODING}*.zip 文件..."
|
||||||
find /home/smart/Downloads/ -name "${KEY_ENCODING}*.zip" -delete
|
find "$dir" -maxdepth 1 -name "${KEY_ENCODING}*.zip" -delete
|
||||||
|
done
|
||||||
|
# 确保 /media/kdm/ 下的也删除
|
||||||
|
echo "正在删除 /media/kdm/ 中的 ${KEY_ENCODING}*.zip 文件..."
|
||||||
|
find "$TARGET_DIR" -maxdepth 1 -name "${KEY_ENCODING}*.zip" -delete
|
||||||
|
|
||||||
echo "密钥压缩包删除完成。"
|
echo "密钥压缩包删除完成。"
|
||||||
|
|
||||||
sleep 3
|
sleep 3
|
||||||
echo "刷新密钥..."
|
echo "刷新密钥..."
|
||||||
# 登录并刷新密钥,保持原样
|
# 刷新KDM,使用之前登录获取的cookie
|
||||||
curl -X POST -d 'userName=admin&userPassword=admin' -c /home/smart/cookie.txt http://127.0.0.1:8080/SmartTMS_S3/LoginController/login.do 2>&1 >/dev/null
|
curl -s http://127.0.0.1:8080/SmartTMS_S3/kdmController/updateKdm.do -X POST -b "$COOKIE_FILE" >/dev/null 2>&1
|
||||||
curl http://127.0.0.1:8080/SmartTMS_S3/kdmController/updateKdm.do -X POST -b /home/smart/cookie.txt 2>&1 >/dev/null
|
|
||||||
echo "刷新成功。"
|
if [ $? -ne 0 ]; then
|
||||||
|
echo "错误: 刷新密钥失败。"
|
||||||
|
else
|
||||||
|
echo "刷新成功。"
|
||||||
|
fi
|
||||||
sleep 5
|
sleep 5
|
||||||
|
|
||||||
|
# 清理cookie文件
|
||||||
|
rm -f "$COOKIE_FILE"
|
||||||
|
echo "已清理临时cookie文件。"
|
||||||
|
|
||||||
echo "脚本执行完毕。"
|
echo "脚本执行完毕。"
|
||||||
|
|||||||
6
tms-bbt-config/uzipkdm.desktop
Normal file → Executable file
6
tms-bbt-config/uzipkdm.desktop
Normal file → Executable file
@@ -5,8 +5,8 @@ Version=1.0
|
|||||||
Type=Application
|
Type=Application
|
||||||
Categories=TMS
|
Categories=TMS
|
||||||
Terminal=true
|
Terminal=true
|
||||||
Icon[zh_CN]=/home/smart/unzipKDM.png
|
Icon[zh_CN]=/home/smart/.tms3/starter/unzipKDM.png
|
||||||
Name[zh_CN]=解压密钥
|
Name[zh_CN]=解压密钥
|
||||||
Exec=sh /home/smart/unzipKDMs.sh
|
Exec=sh /home/smart/.tms3/starter/unzipKDMs.sh
|
||||||
Name=unzipkdm
|
Name=unzipkdm
|
||||||
Icon=/home/smart/unzipKDM.png
|
Icon=/home/smart/.tms3/starter/unzipKDM.png
|
||||||
|
|||||||
Reference in New Issue
Block a user