1
0
2025-08-11 18:43:12 +02:00
2025-08-11 18:43:12 +02:00
2025-08-10 11:54:40 +02:00
2025-08-11 18:43:12 +02:00

Postauto

Pour poster automatiquement avec une simple commande depuis un VPS , serveur dédié ou seedbox.

Postauto est un script permettant via une simple commande d'ajouter un fichier à traiter dans une base de données. Une fois votre fichier ajouté il sera traité automatiquement.

Possibilités.

  • Création des PAR2
  • Post via NYUU ( obfuscation totale)
  • Envoi automatique sur le site (avec MediaInfo/BDInfo directement ajouté)
  • Suivi sur une page web

Limitations.

  • Le script est écrit en bash il ne tourne donc que sous linux.
  • Il faut impérativement un accès SSH sur /home/$USER
  • VPS et Dédié pas de souci de ce coté.
  • Seedbox nous avons testé via ultracc whatbox et dediseedbox ( ultracc et whatbox ok, dediseedbox pas ok).
  • Il faut avoir les applications suivantes de disponibles.
Commande README
basename Normalement installé par défaut
curl à installer si nécessaire
screen à installer si nécessaire
nginx à installer si vous désirez utiliser l'interface de suivi

Installation.

2 solutions possible
  • vous disposez des droits sudo :
wget -qO install.sh https://tig.unfr.pw/UNFR/postauto/raw/branch/main/install.sh && chmod +x install.sh && sudo --preserve-env=HOME ./install.sh

Cela installera via les paquets debian sqlite et mediinfo (meilleur compatibilité)

  • vous ne disposez pas des droits sudo :
wget -qO install.sh https://tig.unfr.pw/UNFR/postauto/raw/branch/main/install.sh && chmod +x install.sh && ./install.sh

Update

postauto stop && wget -qO update.sh https://tig.unfr.pw/UNFR/postauto/raw/branch/main/update.sh && chmod +x update.sh && ./update.sh
Update passage EN 7z (12/03/2024)
cd autopost 
wget -qO compress.sh https://tig.unfr.pw/UNFR/postauto/raw/branch/main/autopost/compress.sh && chmod +x compress.sh && ./compress.sh

Configuration.

Éditer le fichier /home/$USER/autopost/conf.sh

#!/bin/bash
#CONFIG A MODIF
URL_API="A NOUS DEMANDER SUR DISCORD"
APIKEY="A RETROUVER DANS VOTRE PROFIL"
DB_FILE="/home/$USER/autopost/base_autopost.db"
DOSSIER_GLOBAL="/home/$USER/"
DOSSIER_NFO="/home/$USER/autopost/mediainfo/"
DOSSIER_LOGS="/home/$USER/autopost/logs/"
DOSSIER_NZB_ATTENTE="/home/$USER/ATTENTE/"
DOSSIER_NZB_FINAL="/home/$USER/FINIS/"

#CONFIG FOURNISSEUR USENET DE POST
NG_HOST=""
NG_PORT=""
NG_USER=""
NG_PASS=""
NG_NBR_CONN=""

dbtype="sqlite"    # ou "mysql"
DB_FILE="/home/$USER/autopost/base_autopost.db"
MYSQL_HOST=""
MYSQL_PORT=
MYSQL_USER=""
MYSQL_PASS=""
MYSQL_DB=""

Création du fichier de base de données.

postauto createdb

Commande

commande README
start Permet de démarrer le script.
stop Permet d'arrêter le script.
restart Permet de redémarrer le script.
show Permet de rentrer dans la fenêtre d'exécution du script (ctrl a+d pour en sortir).
status Voir les 500 derniers enregistrements du fichier DB avec leur status (Attente, Echec, Succès) (Attente, Echec, Succès).
add Ajouté un fichier MKV à traiter dans la base (doit être suivi du chemin complet de votre fichier).
createdb Permet de créer la DB (si vous souhaitez écraser la DB une confirmation vous sera demandé).
log Permet de voir le log de ppost d'un fichier précis.
check Permet de vérifier la présence d'un fichier sur le site.
update Permet d'updater le script.

interface web

Une interface est disponible, il vous faut nginx pour que celle-ci fonctionne

Configuration de l'interface web.

Éditer le fichier /home/$USER/autopost/config.js

const path = require('path');

module.exports = {
  // Port sur lequel le serveur écoute
  // Attention si vous êtes sur une seedbox de bien choisir un port laisser libre par votre hébergeur
  // chez ultracc par exemple la commande est app-ports free
  port: Voir indications ci dessus,

  // Chemin vers le fichier de base de données SQLite
  dbFile: path.join(__dirname, 'base_autopost.db'),
  
  //MySQL
  DB_HOST: '',
  DB_PORT: ,
  DB_USER: '',
  DB_PASSWORD: '',
  DB_DATABASE: '',

  // Chemins personnalisables pour les dossiers
  finishdirectory: path.join(__dirname, 'FINIS'),
  logdirectory: path.join(__dirname, 'logs'),
  infodirectory: path.join(__dirname, 'mediainfo'),

  // Secret pour la configuration des sessions "curl -L pw.vdx.sh/w/32"
  sessionSecret: 'Voir commande ci dessus',

  // Informations d'authentification
  auth: {
    username: 'user',
    password: 'pass'
  }
};
Configuration de nginx

Ajouter ce bloc dans la configuration de votre nom de domaine

location /autopost/ {
    proxy_pass              http://127.0.0.1:XXXXX;
    proxy_http_version      1.1;
    proxy_set_header        X-Forwarded-Host        $http_host;
}
location /js/ {
    proxy_pass              http://127.0.0.1:XXXXX;
    proxy_http_version      1.1;
    proxy_set_header        X-Forwarded-Host        $http_host;
}
location /jquery/ {
    proxy_pass              http://127.0.0.1:XXXXX;
    proxy_http_version      1.1;
    proxy_set_header        X-Forwarded-Host        $http_host;
}

Pensez à bien remplacer XXXXX par le port que vous avez mis dans votre config.js

Désinstallation.

wget -qO uninstall.sh https://tig.unfr.pw/UNFR/postauto/raw/branch/main/uninstall.sh && chmod +x uninstall.sh && ./uninstall.sh

Dévelopement.

Comme toujours vos idées et axes d'amélioration sont les bienvenus.

Description
No description provided
Readme 908 KiB
Languages
JavaScript 46.4%
Shell 39.7%
HTML 11.7%
CSS 2.2%