Benutzer-Werkzeuge

Webseiten-Werkzeuge


lemmy-bot

Obsolet durch Anubis Bot Protection

Lemmybot für 200 Hochwählys

Node 18 oder höher, git und npm installieren

sudo apt install nodejs npm git -y

Denn Lemmybot von Github clonen

git clone https://github.com/SleeplessOne1917/lemmy-bot.git

Lemmybot Arbeitsverzeichnis öffnen

cd lemmy-bot

Die nötige Library im Arbeitsverzeichnis installieren

npm install lemmy-bot

Den Bot erstellen

nano main.js
import LemmyBot from 'lemmy-bot';
 
const bot = new LemmyBot.LemmyBot({
  instance: 'feddit.org',
  credentials: {
    username: 'Ranslite',
    password: 'Password hier eintragen'
  },
  connection: {
    minutesUntilReprocess: 5,
    secondsBetweenPolls: 120
  },
  dbFile: 'db.sqlite3',
  federation: {
    allowList: [
      {
        instance: 'feddit.org',
        communities: ['ich_iel']
      }
    ]
  },
  handlers: {
    post: {
      sort: 'TopWeek',
      handle: ({
        postView: {
          counts: { score },
          post: { id }
        },
        botActions: { createComment },
        preventReprocess
      }) => {
        if (score > 199) {
          createComment({
            post_id: id,
            content:
              '![](https://feddit.org/pictrs/image/3e1224dd-5cad-49e3-b8b9-99ceec27df06.jpeg)'
          });
          preventReprocess();
        }
      }
    }
  }
});
 
bot.start();

Ein Systemd Service für den Bot erstellen

sudo nano /etc/systemd/system/lemmybot-auszeichner.service
[Unit]
Description=Lemmy-Bot Auszeichner
After=network.target
 
[Service]
Type=simple
WorkingDirectory=/home/ranslite/lemmy-bot
User=ranslite
ExecStart=node main.js
Restart=on-failure
StartLimitInterval=60
 
[Install]
WantedBy=multi-user.target

Lemmybot Systemd Service aktivieren und starten

sudo systemctl enable lemmybot-auszeichner.service
sudo systemctl start lemmybot-auszeichner.service

Schauen ob alles geklappt hat

sudo systemctl status lemmybot-auszeichner.service

Ein Neustart-Script erstellen, da sich der Bot gerne aufhängt

nano /home/ranslite/botrestart.sh
#!/bin/bash
sudo systemctl stop lemmybot-auszeichner.service 
sleep 1m
sudo systemctl start lemmybot-auszeichner.service 

Das Script ausführbar machen

chmod +x /home/ranslite/botrestart.sh

Einen Cronjob ertsellen, der den Bot einmal am Tag neustartet, vertrau mir Brudy

sudo crontab -e
# Lemmybot neustart
0 1   *   *   *    /home/ranslite/botrestart.sh
lemmy-bot.txt · Zuletzt geändert: von ranslite