# yaml-language-server: $schema=https://schema.zeabur.app/template.json
apiVersion: zeabur.com/v1
kind: Template
metadata:
    name: Teleforwarder
spec:
    description: A private Telegram bot for extracting and forwarding content from public and private channels/groups.
    coverImage: https://upload.wikimedia.org/wikipedia/commons/8/82/Telegram_logo.svg
    icon: https://upload.wikimedia.org/wikipedia/commons/8/82/Telegram_logo.svg
    variables:
        - key: API_ID
          type: STRING
          name: API_ID
          description: Telegram API ID
        - key: API_HASH
          type: STRING
          name: API_HASH
          description: Telegram API HASH
        - key: BOT_TOKEN
          type: STRING
          name: BOT_TOKEN
          description: Telegram Bot Token
        - key: OWNER_ID
          type: STRING
          name: OWNER_ID
          description: Admin User ID
    tags:
        - Tool
        - Bot
    readme: |-
        # Teleforwarder
        A private Telegram bot for extracting and forwarding content from public and private channels/groups.

        ## Required variables
        - **API_ID / API_HASH** — Your Telegram API credentials. Get them at my.telegram.org → API development tools → create an app.
        - **BOT_TOKEN** — Your bot token from @BotFather (/newbot).
        - **OWNER_ID** — Your Telegram numeric user ID. Get it from @getidsbot. Supports multiple IDs separated by spaces.
        - **MONGO_DB** — MongoDB connection string. Get a free instance at [MongoDB Atlas](https://mongodb.com/cloud/atlas/register).

        Optional variables (STRING, LOG_GROUP, MASTER_KEY, IV_KEY) are documented in the [GitHub README](https://github.com/yoashau/Teleforwarder).
    services:
        - name: db-node
          icon: https://upload.wikimedia.org/wikipedia/commons/8/82/Telegram_logo.svg
          template: PREBUILT
          spec:
            id: db-node
            source:
                image: mongo:latest
            ports:
                - id: database
                  port: 27017
                  type: TCP
        - name: core-node
          icon: https://upload.wikimedia.org/wikipedia/commons/8/82/Telegram_logo.svg
          dependencies:
            - db-node
          template: PREBUILT
          spec:
            id: core-node
            source:
                image: ghcr.io/yoashau/teleforwarder:latest
            ports: []
            env:
                API_HASH:
                    default: ${API_HASH}
                API_ID:
                    default: ${API_ID}
                BOT_TOKEN:
                    default: ${BOT_TOKEN}
                DB_NAME:
                    default: payload_vault
                MONGO_DB:
                    default: mongodb://db-node.zeabur.internal:27017
                OWNER_ID:
                    default: ${OWNER_ID}
