diff --git a/.github/README.md b/.github/README.md index 8f55684b6..d0895f4e4 100644 --- a/.github/README.md +++ b/.github/README.md @@ -183,6 +183,7 @@ | 🟢 | | 唐僧叨叨 | https://tsdaodao.com/ | 让企业轻松拥有自己的即时通讯 | | | 🟢 | | Teemii | https://www.teemii.io/ | 漫画阅读器和管理器 | | | 🟢 | | Telegram Bot Api | https://telegram.org/ | 自建 Telegram Bot API 服务器 | | +| 🟢 | | Telegram Search | https://search.lingogram.app/ | Telegram 聊天搜索工具 | | | 🟢 | | Tissue | https://github.com/chris-2s/tissue/ | 老师教材刮削工具,提供海报下载、元数据匹配等功能 | | | 🟢 | | TOPIAM | https://topiam.cn/ | IAM/IDaaS 身份管理平台 | | | 🟢 | | Traccar 轨迹 | https://www.traccar.org/ | 现代 GPS 追踪系统 | | diff --git a/README.md b/README.md index 6554c4b33..16ffda421 100644 --- a/README.md +++ b/README.md @@ -98,6 +98,7 @@ | 🟢 | | Komga | https://komga.org/ | 漫画、漫画、蓝光光盘、杂志和电子书的媒体服务器 | | | 🟢 | | Kotatsu | https://kotatsu.app/ | 口袋里的漫画 | | | 🟢 | | KSpeeder | https://kspeeder.istoreos.com/ | Docker镜像加速专家 | | +| 🟢 | | Kvrocks | https://kvrocks.apache.org/ | 分布式键值 NoSQL 数据库 | | | 🟢 | | LibreTV | https://libretv.is-an.org/ | 免费在线视频搜索与观看平台 | | | 🟢 | | 问卷星 | https://www.limesurvey.org/ | 在线问卷调查程序 | | | 🟢 | | LinkDing | https://github.com/sissbruecker/linkding/ | 自托管书签管理器 | | @@ -177,6 +178,7 @@ | 🟢 | | 唐僧叨叨 | https://tsdaodao.com/ | 让企业轻松拥有自己的即时通讯 | | | 🟢 | | Teemii | https://www.teemii.io/ | 漫画阅读器和管理器 | | | 🟢 | | Telegram Bot Api | https://telegram.org/ | 自建 Telegram Bot API 服务器 | | +| 🟢 | | Telegram Search | https://search.lingogram.app/ | Telegram 聊天搜索工具 | | | 🟢 | | Tissue | https://github.com/chris-2s/tissue/ | 老师教材刮削工具,提供海报下载、元数据匹配等功能 | | | 🟢 | | TOPIAM | https://topiam.cn/ | IAM/IDaaS 身份管理平台 | | | 🟢 | | Traccar 轨迹 | https://www.traccar.org/ | 现代 GPS 追踪系统 | | diff --git a/apps/telegram-search/1.1.9/config/config.yaml b/apps/telegram-search/1.1.9/config/config.yaml new file mode 100644 index 000000000..3ca9b3161 --- /dev/null +++ b/apps/telegram-search/1.1.9/config/config.yaml @@ -0,0 +1,34 @@ +database: + # Database type: postgres, pglite + type: postgres + host: telegram_search_pgvector + port: 5432 + user: postgres + password: 'telegram_search' + database: postgres + +api: + telegram: + apiId: '611335' + apiHash: d524b414d21f4d37f08684c1df41ac9c + receiveMessage: false + proxy: + ip: '' + port: 0 + MTProxy: false + secret: '' + socksType: 5 + timeout: 2 + username: '' + password: '' + embedding: + # Embedding provider (openai or ollama) + provider: openai + # Embedding model + model: text-embedding-3-small + # API key for provider + apiKey: your_openai_api_key + # Optional, available dimensions: 1536, 1024, 768. Default dimension is 1536. #If using gemini-embedding-exp-03-07, choose 768 + dimension: 1536 + # Optional, for custom API providers + apiBase: 'https://api.openai.com/v1' diff --git a/apps/telegram-search/1.1.9/config/init.sql b/apps/telegram-search/1.1.9/config/init.sql new file mode 100644 index 000000000..f4063dfa7 --- /dev/null +++ b/apps/telegram-search/1.1.9/config/init.sql @@ -0,0 +1,4 @@ +ALTER SYSTEM SET vectors.pgvector_compatibility=on; + +DROP EXTENSION IF EXISTS vectors; +CREATE EXTENSION vectors; diff --git a/apps/telegram-search/1.1.9/data.yml b/apps/telegram-search/1.1.9/data.yml new file mode 100644 index 000000000..d1d4ed61f --- /dev/null +++ b/apps/telegram-search/1.1.9/data.yml @@ -0,0 +1,52 @@ +additionalProperties: + formFields: + - default: "/home/telegram-search" + edit: true + envKey: TELEGRAM_SEARCH_ROOT_PATH + labelZh: 数据持久化路径 + labelEn: Data persistence path + required: true + type: text + - default: 3333 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelZh: WebUI 端口 + labelEn: WebUI port + required: true + rule: paramPort + type: number + - default: "telegram_search" + edit: true + envKey: POSTGRES_DATABASE + labelZh: 数据库 名称 + labelEn: Database Name + required: true + type: text + - default: "telegram_search" + edit: true + envKey: POSTGRES_USER + labelZh: 数据库 用户名 + labelEn: Database Username + required: true + type: text + - default: "telegram_search" + edit: true + envKey: POSTGRES_PASSWORD + labelZh: 数据库 密码 + labelEn: Database Password + required: true + type: password + - default: "" + edit: true + envKey: TELEGRAM_API_ID + labelZh: Telegram 应用程序 ID + labelEn: Telegram APPID + required: false + type: text + - default: "" + edit: true + envKey: TELEGRAM_API_HASH + labelZh: Telegram 应用程序 哈希 + labelEn: Telegram APP HASH + required: false + type: text diff --git a/apps/telegram-search/1.1.9/docker-compose.yml b/apps/telegram-search/1.1.9/docker-compose.yml new file mode 100644 index 000000000..68ee83881 --- /dev/null +++ b/apps/telegram-search/1.1.9/docker-compose.yml @@ -0,0 +1,48 @@ +networks: + 1panel-network: + external: true + +services: + telegram_search: + image: ghcr.io/groupultra/telegram-search:1.1.9 + depends_on: + telegram_search_pgvector: + condition: service_healthy + container_name: ${CONTAINER_NAME} + labels: + createdBy: "Apps" + restart: always + networks: + - 1panel-network + ports: + - ${PANEL_APP_PORT_HTTP}:3333 + env_file: + - ${GLOBAL_ENV_FILE:-/etc/1panel/envs/global.env} + - ${ENV_FILE:-/etc/1panel/envs/default.env} + volumes: + - ${TELEGRAM_SEARCH_ROOT_PATH}/data:/app/data + environment: + - TZ=Asia/Shanghai + - DATABASE_TYPE=postgres + - DATABASE_URL=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@telegram_search_pgvector:5432/${POSTGRES_DATABASE} + telegram_search_pgvector: + image: ghcr.io/tensorchord/pgvecto-rs:pg17-v0.4.0 + container_name: db-${CONTAINER_NAME} + restart: always + networks: + - 1panel-network + env_file: + - ${GLOBAL_ENV_FILE:-/etc/1panel/envs/global.env} + - ${ENV_FILE:-/etc/1panel/envs/default.env} + volumes: + - ./config/init.sql:/docker-entrypoint-initdb.d/init.sql + - ${TELEGRAM_SEARCH_ROOT_PATH}/db:/var/lib/postgresql/data + environment: + - POSTGRES_USER=${POSTGRES_USER} + - POSTGRES_PASSWORD=${POSTGRES_PASSWORD} + - POSTGRES_DATABASE=${POSTGRES_DATABASE} + healthcheck: + test: [ CMD-SHELL, pg_isready -d postgres -U postgres ] + interval: 10s + timeout: 5s + retries: 5 diff --git a/apps/telegram-search/1.1.9/envs/default.env b/apps/telegram-search/1.1.9/envs/default.env new file mode 100644 index 000000000..cd05f46e6 --- /dev/null +++ b/apps/telegram-search/1.1.9/envs/default.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +ENV_FILE=.env diff --git a/apps/telegram-search/1.1.9/envs/global.env b/apps/telegram-search/1.1.9/envs/global.env new file mode 100644 index 000000000..e10989fe4 --- /dev/null +++ b/apps/telegram-search/1.1.9/envs/global.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +TZ=Asia/Shanghai diff --git a/apps/telegram-search/1.1.9/scripts/init.sh b/apps/telegram-search/1.1.9/scripts/init.sh new file mode 100644 index 000000000..07fb8c3fe --- /dev/null +++ b/apps/telegram-search/1.1.9/scripts/init.sh @@ -0,0 +1,17 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + # setup-1 add default values + CURRENT_DIR=$(pwd) + sed -i '/^ENV_FILE=/d' .env + sed -i '/^GLOBAL_ENV_FILE=/d' .env + echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env + echo "GLOBAL_ENV_FILE=${CURRENT_DIR}/envs/global.env" >> .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/telegram-search/1.1.9/scripts/uninstall.sh b/apps/telegram-search/1.1.9/scripts/uninstall.sh new file mode 100644 index 000000000..c86c4fbca --- /dev/null +++ b/apps/telegram-search/1.1.9/scripts/uninstall.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/telegram-search/1.1.9/scripts/upgrade.sh b/apps/telegram-search/1.1.9/scripts/upgrade.sh new file mode 100644 index 000000000..07fb8c3fe --- /dev/null +++ b/apps/telegram-search/1.1.9/scripts/upgrade.sh @@ -0,0 +1,17 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + # setup-1 add default values + CURRENT_DIR=$(pwd) + sed -i '/^ENV_FILE=/d' .env + sed -i '/^GLOBAL_ENV_FILE=/d' .env + echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env + echo "GLOBAL_ENV_FILE=${CURRENT_DIR}/envs/global.env" >> .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/telegram-search/README.md b/apps/telegram-search/README.md new file mode 100644 index 000000000..ce8b97449 --- /dev/null +++ b/apps/telegram-search/README.md @@ -0,0 +1,15 @@ +# Telegram Search + +Telegram 聊天搜索工具,具有矢量搜索和语义匹配功能 + +![Telegram Search](https://file.lifebus.top/imgs/telegram-search_cover.png) + +![](https://img.shields.io/badge/%E6%96%B0%E7%96%86%E8%90%8C%E6%A3%AE%E8%BD%AF%E4%BB%B6%E5%BC%80%E5%8F%91%E5%B7%A5%E4%BD%9C%E5%AE%A4-%E6%8F%90%E4%BE%9B%E6%8A%80%E6%9C%AF%E6%94%AF%E6%8C%81-blue) + +## 简介 + +功能强大的 Telegram 聊天搜索工具,具有矢量搜索和语义匹配功能。 + +--- + +![Ms Studio](https://file.lifebus.top/imgs/ms_blank_001.png) diff --git a/apps/telegram-search/data.yml b/apps/telegram-search/data.yml new file mode 100644 index 000000000..6a6bad5fe --- /dev/null +++ b/apps/telegram-search/data.yml @@ -0,0 +1,14 @@ +additionalProperties: + key: telegram-search + name: Telegram Search + tags: + - WebSite + - Local + shortDescZh: Telegram 聊天搜索工具 + shortDescEn: Telegram Chat Search Tool + type: website + crossVersionUpdate: true + limit: 0 + website: https://search.lingogram.app/ + github: https://github.com/groupultra/telegram-search/ + document: https://github.com/groupultra/telegram-search/ diff --git a/apps/telegram-search/logo.png b/apps/telegram-search/logo.png new file mode 100644 index 000000000..2512e2b9c Binary files /dev/null and b/apps/telegram-search/logo.png differ