Raspberry Pi - MFBot Konsolenversion

Octodad
Beiträge: 6
Registriert: Do 28. Apr 2016, 18:20
Hat sich bedankt: 3 Mal
Danksagung erhalten: 0

Re: Raspberry Pi - MFBot Konsolenversion

Beitrag von Octodad »

Hallo nochmal,

Ich habe aus Spaß den Bot nochmal auf meinem PI1 getestet. Dort scheint es bei mir noch nicht zu funktionieren. Folgendes habe ich getestet.

Code: Alles auswählen

pi@raspberrypi:~/MFBot $ ls -la
total 14172
drwxr-xr-x  2 pi pi     4096 Apr 30 22:57 .
drwxr-xr-x 19 pi pi     4096 Apr 30 22:46 ..
-rwxr-xr-x  1 pi pi 14500524 Apr 30 22:57 MFBot_442_Konsole_ARM32
pi@raspberrypi:~/MFBot $ ./MFBot_442_Konsole_ARM32
Illegal instruction
pi@raspberrypi:~/MFBot $ mono MFBot_442_Konsole_ARM32
Cannot open assembly 'MFBot_442_Konsole_ARM32': File does not contain a valid CIL image.
pi@raspberrypi:~/MFBot $ sudo ./MFBot_442_Konsole_ARM32
pi@raspberrypi:~/MFBot $ sudo mono MFBot_442_Konsole_ARM32
Cannot open assembly 'MFBot_442_Konsole_ARM32': File does not contain a valid CIL image.
pi@raspberrypi:~/MFBot $
Gruß Octodad
c1xx
Beiträge: 23
Registriert: Mi 6. Apr 2016, 07:12
Hat sich bedankt: 3 Mal
Danksagung erhalten: 15 Mal

Re: Raspberry Pi - MFBot Konsolenversion

Beitrag von c1xx »

Octodad hat geschrieben:Hallo nochmal,

Ich habe aus Spaß den Bot nochmal auf meinem PI1 getestet. Dort scheint es bei mir noch nicht zu funktionieren. Folgendes habe ich getestet.

Code: Alles auswählen

pi@raspberrypi:~/MFBot $ ls -la
total 14172
drwxr-xr-x  2 pi pi     4096 Apr 30 22:57 .
drwxr-xr-x 19 pi pi     4096 Apr 30 22:46 ..
-rwxr-xr-x  1 pi pi 14500524 Apr 30 22:57 MFBot_442_Konsole_ARM32
pi@raspberrypi:~/MFBot $ ./MFBot_442_Konsole_ARM32
Illegal instruction
pi@raspberrypi:~/MFBot $ mono MFBot_442_Konsole_ARM32
Cannot open assembly 'MFBot_442_Konsole_ARM32': File does not contain a valid CIL image.
pi@raspberrypi:~/MFBot $ sudo ./MFBot_442_Konsole_ARM32
pi@raspberrypi:~/MFBot $ sudo mono MFBot_442_Konsole_ARM32
Cannot open assembly 'MFBot_442_Konsole_ARM32': File does not contain a valid CIL image.
pi@raspberrypi:~/MFBot $
Gruß Octodad
Hi Octodad,

versuche es auf deinem Raspberry Pi 1 mit dieser Version: http://www.mfbot.de/Download/MFBot_442_Konsole_ARM32v6

Gruß,
c1xx
Folgende Benutzer bedankten sich beim Autor c1xx für den Beitrag:
Octodad (Mi 11. Mai 2016, 15:12)
Benutzeravatar
geheim
Beiträge: 10
Registriert: Mi 11. Mai 2016, 12:25
Hat sich bedankt: 2 Mal
Danksagung erhalten: 7 Mal

Re: Raspberry Pi - MFBot Konsolenversion

Beitrag von geheim »

Hier mal kurz beschrieben, wie man den Bot im Hintergrund laufen lassen kann und bei Absturz automatisch neu gestartet wird.
:idea: Läuft der Bot im Hintergrund, muss das Terminalfenster auch nicht mehr geöffnet bleiben. Nützlich falls z.B. nur mit ssh Zugang gearbeitet wird. :idea:

Das Skript wurde mit Raspbian Wheezy getestet, sollte aber auch mit Jessie laufen.

Anleitung

Das Paket "screen" installieren.

Code: Alles auswählen

sudo apt-get install screen
Im Ordner in welchem der Bot hinterlegt wurde, müssen zwei Dateien erstellt werden. Bitte in den Botordner wechseln.

Code: Alles auswählen

nano mfbot.sh
Folgendes in die Datei "mfbot.sh" schreiben.

Code: Alles auswählen

screen -A -m -d -S mfbot ./MFBot_442_Konsole_ARM32
Das Startskript erstellen.

Code: Alles auswählen

nano cron_mfbot.sh
Gegebenenfalls den Ordner, in welchem der Bot hinterlegt ist, im Skript Zeile 2 anpassen. In meinem Fall: /home/pi/mfbot. Der aktuelle Pfad kann mit dem Befehl "pwd" herausgefunden werden.
Folgendes in die Datei "cron_mfbot.sh" schreiben.

Code: Alles auswählen

#!/bin/bash
mfbotdir="/home/pi/mfbot"
binname="MFBot_442_Konsole_ARM32"
cd $mfbotdir

process=` ps auxwww | grep './MFBot_442_Konsole_ARM32' | grep -v grep | awk '{ print $2 }'`
if [[ -z $process ]]; then
    ./mfbot.sh
    echo `date` started mfbot
fi
Die beiden Skripte ausführbar machen.

Code: Alles auswählen

 chmod +x mfbot.sh cron_mfbot.sh
Danach kann der Bot gestartet werden.

Code: Alles auswählen

./cron_mfbot.sh
Das Cronscript in die Crontab Datei mit aufnehmen.

Code: Alles auswählen

crontab -e
In die Crontab Datei folgendes schreiben.

Code: Alles auswählen

SHELL=/bin/bash
PATH=/usr/local/bin:/usr/local/sbin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/bin/X11

*/5 * * * * /home/pi/mfbot/cron_mfbot.sh
Die Shelldatei überprüft alle 5 Minuten, ob der Bot gestartet ist. Wenn nicht, wird dieser wieder automatisch gestartet. Sollten andere Zeiten gewünscht sein, bitte hier die Beispiele anschauen.

Um den Bot aus dem Hintergrund zu holen, gibt man folgendes ein.

Code: Alles auswählen

screen -r mfbot
Um ihn wieder in den Hintergrund zu schicken:

Code: Alles auswählen

Tastenkombination STRG + A drücken und danach Taste D drücken
Folgende Benutzer bedankten sich beim Autor geheim für den Beitrag (Insgesamt 5):
c1xx (Mi 11. Mai 2016, 13:16) • Octodad (Mi 11. Mai 2016, 15:12) • N-E-M-A-N (Sa 11. Jun 2016, 19:14) • Benutzername (Sa 20. Okt 2018, 20:37) • Rauschelbart (Mo 29. Apr 2019, 11:57)
c1xx
Beiträge: 23
Registriert: Mi 6. Apr 2016, 07:12
Hat sich bedankt: 3 Mal
Danksagung erhalten: 15 Mal

Re: Raspberry Pi - MFBot Konsolenversion

Beitrag von c1xx »

Top, danke dir für die Anleitung! Nehme es auf der ersten Seite mit auf, ok? (als Verweis auf diesen Beitrag von dir)

Code: Alles auswählen

binname="MFBot_442_Konsole_ARM32"
Wolltest du das im cron_mfbot.sh Skript mit verwenden? :-)
Benutzeravatar
geheim
Beiträge: 10
Registriert: Mi 11. Mai 2016, 12:25
Hat sich bedankt: 2 Mal
Danksagung erhalten: 7 Mal

Re: Raspberry Pi - MFBot Konsolenversion

Beitrag von geheim »

Ehmm ja wollte ich mal. Also kann eigentlich raus, aber stört ja erstmal nicht weiter. Du kannst es gerne verlinken, dafür habe ich es ja geschrieben. :lol:
c1xx
Beiträge: 23
Registriert: Mi 6. Apr 2016, 07:12
Hat sich bedankt: 3 Mal
Danksagung erhalten: 15 Mal

Re: Raspberry Pi - MFBot Konsolenversion

Beitrag von c1xx »

Danke dir :-) Ist aufgenommen. Zu finden in der Anleitung unter Punkt "6. [NOTWENDIG] MFBot starten:"

Gruß,
c1xx
Folgende Benutzer bedankten sich beim Autor c1xx für den Beitrag (Insgesamt 2):
geheim (Mi 11. Mai 2016, 14:27) • Benutzername (Sa 20. Okt 2018, 20:38)
Benutzeravatar
geheim
Beiträge: 10
Registriert: Mi 11. Mai 2016, 12:25
Hat sich bedankt: 2 Mal
Danksagung erhalten: 7 Mal

Re: Raspberry Pi - MFBot Konsolenversion

Beitrag von geheim »

Ein Fehler hat sich bei deiner Verlinkung eingeschlichen.
Information

Du darfst keine Beiträge in diesem Forum ändern.
Folgende Benutzer bedankten sich beim Autor geheim für den Beitrag:
c1xx (Mi 11. Mai 2016, 14:34)
c1xx
Beiträge: 23
Registriert: Mi 6. Apr 2016, 07:12
Hat sich bedankt: 3 Mal
Danksagung erhalten: 15 Mal

Re: Raspberry Pi - MFBot Konsolenversion

Beitrag von c1xx »

Danke für den Hinweis, habe den Link nun richtig gesetzt :-)
Folgende Benutzer bedankten sich beim Autor c1xx für den Beitrag:
geheim (Mi 11. Mai 2016, 14:27)
Octodad
Beiträge: 6
Registriert: Do 28. Apr 2016, 18:20
Hat sich bedankt: 3 Mal
Danksagung erhalten: 0

Re: Raspberry Pi - MFBot Konsolenversion

Beitrag von Octodad »

Ich habe den Bot auch über screen im Hintergrund laufen. Jetzt habe ich es aber mal mit systemd versucht, jedoch scheint da irgendwas schief zu laufen. Vielleicht habt ihr eine Idee wieso das nicht funktioniert.

Das ist die ausgabe von journalctl
SPOILER

Code: Alles auswählen

Mai 11 14:54:45 raspberrypi systemd[1]: Started MFBot Daemon.
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: 11.05.2016 14:54:51 Info Core ------@W8.SFGAME.NET Logging in...
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: > MFBot Konsole, Version 4.4.2.0
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: > Geben Sie "exit" ein um den Bot zu beenden.
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: 11.05.2016 14:54:51 Warn Core General
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: !##Object reference not set to an instance of an object
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: !##  at _5l._jL () <0x73610f18 + 0x000e0> in <filename unknown>:0
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: at de.mfbot.MFBot_NG.Basisbibliothek.BaseProgram.start () <0x73610478 + 0x001ab> in <filename unknown
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: > MFBot Konsole, Version 4.4.2.0
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: > Geben Sie "exit" ein um den Bot zu beenden.
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: 11.05.2016 14:54:51 Warn Core General
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: !##Object reference not set to an instance of an object
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: !##  at _5l._jL () <0x73610f18 + 0x000e0> in <filename unknown>:0
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: at de.mfbot.MFBot_NG.Basisbibliothek.BaseProgram.start () <0x73610478 + 0x001ab> in <filename unknown
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: 11.05.2016 14:54:51 Warn Core General
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: !##Object reference not set to an instance of an object
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: !##  at _5l._jL () <0x73610f18 + 0x000e0> in <filename unknown>:0
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: at de.mfbot.MFBot_NG.Basisbibliothek.BaseProgram.start () <0x73610478 + 0x001ab> in <filename unknown
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: > MFBot Konsole, Version 4.4.2.0
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: > Geben Sie "exit" ein um den Bot zu beenden.
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: 11.05.2016 14:54:51 Warn Core General
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: !##Object reference not set to an instance of an object
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: !##  at _5l._jL () <0x73610f18 + 0x000e0> in <filename unknown>:0
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: at de.mfbot.MFBot_NG.Basisbibliothek.BaseProgram.start () <0x73610478 + 0x001ab> in <filename unknown
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: 11.05.2016 14:54:51 Warn Core General
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: !##Object reference not set to an instance of an object
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: !##  at _5l._jL () <0x73610f18 + 0x000e0> in <filename unknown>:0
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: at de.mfbot.MFBot_NG.Basisbibliothek.BaseProgram.start () <0x73610478 + 0x001ab> in <filename unknown
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: 11.05.2016 14:54:51 Warn Core General
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: !##Object reference not set to an instance of an object
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: !##  at _5l._jL () <0x73610f18 + 0x000e0> in <filename unknown>:0
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: at de.mfbot.MFBot_NG.Basisbibliothek.BaseProgram.start () <0x73610478 + 0x001ab> in <filename unknown
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: > MFBot Konsole, Version 4.4.2.0
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: > Geben Sie "exit" ein um den Bot zu beenden.
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: 11.05.2016 14:54:51 Warn Core General
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: !##Object reference not set to an instance of an object
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: !##  at _5l._jL () <0x73610f18 + 0x000e0> in <filename unknown>:0
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: at de.mfbot.MFBot_NG.Basisbibliothek.BaseProgram.start () <0x73610478 + 0x001ab> in <filename unknown
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: 11.05.2016 14:54:51 Warn Core General
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: !##Object reference not set to an instance of an object
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: !##  at _5l._jL () <0x73610f18 + 0x000e0> in <filename unknown>:0
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: at de.mfbot.MFBot_NG.Basisbibliothek.BaseProgram.start () <0x73610478 + 0x001ab> in <filename unknown
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: 11.05.2016 14:54:51 Warn Core General
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: !##Object reference not set to an instance of an object
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: !##  at _5l._jL () <0x73610f18 + 0x000e0> in <filename unknown>:0
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: at de.mfbot.MFBot_NG.Basisbibliothek.BaseProgram.start () <0x73610478 + 0x001ab> in <filename unknown
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: 11.05.2016 14:54:51 Warn Core General
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: !##Object reference not set to an instance of an object
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: !##  at _5l._jL () <0x73610f18 + 0x000e0> in <filename unknown>:0
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: at de.mfbot.MFBot_NG.Basisbibliothek.BaseProgram.start () <0x73610478 + 0x001ab> in <filename unknown
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: Unhandled Exception:
Mai 11 14:54:51 raspberrypi systemd[1]: mfbot.service: main process exited, code=exited, status=1/FAILURE
Mai 11 14:54:51 raspberrypi systemd[1]: Unit mfbot.service entered failed state.
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: System.NullReferenceException: Object reference not set to an instance of an object
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: at _5l._jL () <0x73610f18 + 0x000e0> in <filename unknown>:0
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: at de.mfbot.MFBot_NG.Basisbibliothek.BaseProgram.start () <0x73610478 + 0x001ab> in <filename unknown
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: [ERROR] FATAL UNHANDLED EXCEPTION: System.NullReferenceException: Object reference not set to an inst
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: at _5l._jL () <0x73610f18 + 0x000e0> in <filename unknown>:0
Mai 11 14:54:51 raspberrypi MFBot_442_Konsole_ARM32[24942]: at de.mfbot.MFBot_NG.Basisbibliothek.BaseProgram.start () <0x73610478 + 0x001ab> in <filename unknown
Mai 11 14:54:52 raspberrypi systemd[1]: mfbot.service holdoff time over, scheduling restart.
Mai 11 14:54:52 raspberrypi systemd[1]: Stopping MFBot Daemon...
Hier mal meine mfbot.service datei
SPOILER

Code: Alles auswählen

[Unit]
Description=MFBot Daemon
After=network.target
Requires=network.target

[Service]
User=michael
Group=michael
Type=simple
WorkingDirectory=/home/michael/MFBot
ExecStart=/home/michael/MFBot/MFBot_442_Konsole_ARM32
Restart=always

[Install]
WantedBy = multi-user.target
Habe schon einige Zeit mit Google verbracht konnte bisher noch keine Lösung finden.

Gruß
Octodad
Zuletzt geändert von Robin am Mi 11. Mai 2016, 21:16, insgesamt 1-mal geändert.
Grund: Accountname aus Datei zur Sicherheit entfernt
N-E-M-A-N
Spender
Beiträge: 14
Registriert: Do 31. Mär 2016, 03:30
Hat sich bedankt: 2 Mal
Danksagung erhalten: 0

Re: Raspberry Pi - MFBot Konsolenversion

Beitrag von N-E-M-A-N »

Ich schreibs auch hier nochmal drunter, da es hier eher jemand liest der mir weiterhelfen kann :

Ich habe den Bot jetzt seit ein paar tagen auf dem Raspberry laufen habe mich an die Anleitung gehalten und auch die Erweiterung um den Bot im Hintergrund laufen zu lassen mit einbezogen, er läuft jetzt also seit einigen tagen problemlos über den Raspberry .. nur die nutzung mit TeamViewer funktioniert nicht keine ahnung wie ich Teamviewer überhaupt auf den Raspberry bekomme, habe eine exagear lizenz und so aber keine ahnung wie das ganze funktioniert ...

ausserdem würde ich den Bot bzw den Raspberry gerne mit meinem Handy fernsteuern ( nur starten und stoppen ) können am liebsten über whatsapp wenn das machbar ist wäre cool wenn mir da jemand helfen könnte


Edit: mir ist gerade noch was eingefallen
Um ihn wieder in den Hintergrund zu schicken:
CODE: ALLES AUSWÄHLEN
Tastenkombination STRG + A drücken und danach Taste D drücken
gibt es dafür auch einen ausgeschriebenenen befehl damit man das z.b. auch mit dem handy machen kann wenn man mit dem handy via ssh zugreift ??


Gruß Flo
Antworten

Wer ist online?

Mitglieder in diesem Forum: DotBot [Crawler] und 6 Gäste