Сайт | Скачать | Видео | Wiki

Последние сообщения

Страницы: [1] 2 3 ... 10
1
Надо будет глянуть, что за tamtam и какой там api. Может, чего скумекаем


Код
#!/bin/bash
set -x


# Access token
ACCESS_TOKEN="подставить токен бота"

# Get file path from clipboard
FILE_PATH=$(xsel --clipboard --output)

# Check if FILE_PATH is not empty
if [ -z "$FILE_PATH" ]; then
    echo "File path not found in clipboard."
    exit 1
fi

echo "File path: $FILE_PATH"

# Request upload URL
UPLOAD_URL=$(curl -s -X POST "https://botapi.tamtam.chat/uploads?access_token=${ACCESS_TOKEN}&type=file" \
    -H "Content-Type: application/json" | jq -r '.url')

# Check if URL was obtained successfully
if [ -z "$UPLOAD_URL" ]; then
    echo "Failed to get upload URL."
    exit 1
fi

echo "Upload URL: $UPLOAD_URL"

# Upload the file
response=$(curl -s -i -X POST -H "Content-Type: multipart/form-data" -F "data=@${FILE_PATH}" "$UPLOAD_URL")

# Check if upload was successful
if echo "$response" | grep -q "HTTP/2 200"; then
    echo "File uploaded successfully."
    # Extract fileId and token from response
    FILE_ID=$(echo "$response" | grep -oP '"fileId":\K\d+')
    TOKEN=$(echo "$response" | grep -oP '"token":"\K[^"]+')
    echo "File ID: $FILE_ID"
    echo "Token: $TOKEN"
else
    echo "Failed to upload file."
    echo "Response:"
    echo "$response"
    exit 1
fi

до этого создал бота ,файл шлет ошибок нет, а файла в чате бота тоже нет--весь мозг себе сьел... :(
2
Надо будет глянуть, что за tamtam и какой там api. Может, чего скумекаем
3
Я чисто о телеге говорю. Никогда не буду для нее питон юзать.
И действительно он тут не нужен удалось написать скрипт на bash который напрямую дёргает API telegram, сам распознаёт текст, либо файл . В переменую TOKEN вписываем токен чата , а дальше как в прошлых скриптах копируем в буфер либо файл либо текст в буфер и запускаем скрипт, скрипт в зависимостях имеет xsel
Код
#!/bin/bash

# Ваш токен бота
TOKEN="тут нужно вставить Ваш токен бота"

# Получение содержимого из буфера обмена с использованием xsel
content="$(xsel --clipboard --output)"

# Определение, является ли содержимое путем к файлу или текстом
if [ -f "$content" ]; then
    # Если это файл, отправляем его как документ
    file_path="$content"
    echo "Обнаружен файл: $file_path"

    # Попытка получения Chat ID
    response="$(curl -s "https://api.telegram.org/bot$TOKEN/getUpdates")"

    # Извлечение первого Chat ID из ответа
    CHAT_ID="$(echo $response | grep -o '"chat":{"id":[0-9]*' | grep -o '[0-9]*' | head -n 1)"

    if [ -z "$CHAT_ID" ]; then
        echo "Не удалось получить Chat ID. Пожалуйста, отправьте сообщение вашему боту и повторите попытку."
        exit 1
    fi

    echo "Получен Chat ID: $CHAT_ID"

    # Отправка файла как документ
    curl -F "chat_id=$CHAT_ID" -F "document=@$file_path" "https://api.telegram.org/bot$TOKEN/sendDocument"

    # Проверка результата отправки
    if [ $? -eq 0 ]; then
        echo "Файл успешно отправлен."
    else
        echo "Ошибка при отправке файла."
    fi
else
    # Если это не файл, отправляем как текстовое сообщение
    echo "Обнаружен текст: $content"

    # Попытка получения Chat ID
    response="$(curl -s "https://api.telegram.org/bot$TOKEN/getUpdates")"

    # Извлечение первого Chat ID из ответа
    CHAT_ID="$(echo $response | grep -o '"chat":{"id":[0-9]*' | grep -o '[0-9]*' | head -n 1)"

    if [ -z "$CHAT_ID" ]; then
        echo "Не удалось получить Chat ID. Пожалуйста, отправьте сообщение вашему боту и повторите попытку."
        exit 1
    fi

    echo "Получен Chat ID: $CHAT_ID"

    # Отправка текста как сообщение
    curl -s --data "chat_id=$CHAT_ID&text=$content" "https://api.telegram.org/bot$TOKEN/sendMessage"

    # Проверка результата отправки
    if [ $? -eq 0 ]; then
        echo "Текст успешно отправлен."
    else
        echo "Ошибка при отправке текста."
    fi
fi


imp и в который раз ваш вовремя под... спасибо с меня +
я зацепился за curl -F photo=@/путь/картинка.png "https://api.telegram.org/bot$TOKEN/sendPhoto?chat_id=$chat_id"  и пошло поехало!  :) и дело пошло!
4
Я чисто о телеге говорю. Никогда не буду для нее питон юзать. Лучше в асинхронный баш поиграться) Или вспомнить, что такое объект в программировании (да-да, на баше тоже можно организовать что-то похожее )
  для меня это настолько сложно, что непостижимо. Не отрицаю что они есть но мне не попадались  боты на bash но читал что они есть, удивителен мир божий, только чего нет, но учитывая насколько bash мощный... всё равно удивлюсь. Бог с ней с телегой, её мне кажется попробуют пустить под нож, написать бы бот для tamtam, там апи мудреное и я залез туда и не в зуб ногой, удалось только бота создать, а что он делает как к нему обращаться? расколоть бы этот орешек...
5
Я чисто о телеге говорю. Никогда не буду для нее питон юзать. Лучше в асинхронный баш поиграться) Или вспомнить, что такое объект в программировании (да-да, на баше тоже можно организовать что-то похожее :))
6
Если есть доступ к апи - curl-a хватит.
в том то и дело, через API и curl , там очень уж мудрёно будет, если нужен чистый bash чутка выше есть скрипт для bashupload.com он вообще по размеру файла 50гиг за раз принимает, но только на одно скачивание, и хранит файл только 3 дня. А насчет решения на чистом bash с использованием API и curl для telegram я и сам бы рад посмотреть, но использую то что проще и работает, можно вообще не заморачиватся и использовать браузер, и даже не telegram а tamtam например, там тоже 2 гига принимают.
7
Поговорим о возможности быстрой передачи файлов  через Telegram.
К черту ваш этот питон. Есть же встроенный баш. ничего и ставить не надо и с версиями расширений от васи пупкина долбиться.
Если есть доступ к апи - curl-a хватит. Если уже кнопочки нарисовать - рисуем модуль приема сообщений на питоне, передаем команду на внутренний интерпретатор. На баше кнопочки не нарисовал, хотя, можно подумать...
https://forum.puppyrus.org/index.php?topic=24111.msg187737#msg187737
8
Сборки Linux от пользователей / Re: FAS (Frugal Alt Sisyphus) x86_64
« Последний ответ от imp 30 Август 2024, 15:40:55 »
Вы про вложенность?
Я про то, что параметров более чем много
9
Сборки Linux от пользователей / Re: AC24 - Alt Club LXDE (Sisyphus) x86_64
« Последний ответ от sfs 29 Август 2024, 09:16:55 »
Видать пора менять железо
Да
10
Сборки Linux от пользователей / Re: AC24 - Alt Club LXDE (Sisyphus) x86_64
« Последний ответ от sfs 29 Август 2024, 09:15:47 »
Нужен инструмент для компиляции под арм, желательно переносной
buildroot? Без инета будет работать, только если предварительно скачать нужные исходники
Страницы: [1] 2 3 ... 10