op-packages/deepbot/files/etc/init.d/deepbot
github-actions[bot] b2ad010c6f 🎨 Sync 2026-06-11 21:20:11
2026-06-11 21:20:11 +08:00

54 lines
2.1 KiB
Bash

#!/bin/sh /etc/rc.common
START=99
STOP=10
USE_PROCD=1
PROG="/usr/bin/deepbot.lua"
start_service() {
local token deepseek_key deepseek_url proxy database \
token_limit rate_limit group_mention_only debug \
model admin_id whitelist_mode
config_load deepbot
config_get token main token ''
config_get deepseek_key main deepseek_key ''
config_get deepseek_url main deepseek_url 'https://api.deepseek.com/v1/chat/completions'
config_get model main model 'deepseek-chat'
config_get proxy main proxy ''
config_get database main database '/usr/share/deepbot/chat_history.db'
config_get token_limit main token_limit '10000'
config_get rate_limit main rate_limit '5'
config_get group_mention_only main group_mention_only '1'
config_get debug main debug '0'
config_get admin_id main admin_id ''
config_get whitelist_mode main whitelist_mode 'none'
procd_open_instance
procd_set_param command lua "$PROG"
procd_set_param env \
TELEGRAM_BOT_TOKEN="$token" \
DEEPSEEK_API_KEY="$deepseek_key" \
DEEPSEEK_API_URL="$deepseek_url" \
AI_MODEL="$model" \
PROXY_URL="$proxy" \
DATABASE_NAME="$database" \
TOKEN_LIMIT_PER_DAY="$token_limit" \
RATE_LIMIT="$rate_limit" \
GROUP_MENTION_ONLY="$group_mention_only" \
DEBUG="$debug" \
ADMIN_ID="$admin_id" \
WHITELIST_MODE="$whitelist_mode"
procd_set_param stdout 1
procd_set_param stderr 1
procd_set_param respawn 30 5 0
procd_close_instance
logger -t deepbot "Started with mode: $whitelist_mode, model: $model"
}
service_triggers() {
procd_add_reload_trigger "deepbot"
}