|
|
IRC-Notify für neue Posts |
|
hab in der makefile die spaces durch tabs ersetzt
|
|
24.10.2003 11:19 |
|
|
|
Zitat: |
Original von LX
Bevor es noch mehr Probleme gibt, hänge ich die beiden Dateien jetzt einfach mal an. Die Datei heißt remote.txt, weil der Uploader hier *.tar.gz als Endung net mag. Also bitte in remote.tar.gz umbenennen. |
saug dir die txt aus dem post bennen sie in remote.tar.gz um
da is die richtige makefile drinne, hat auch bei mir gefunzelt
|
|
02.11.2003 10:22 |
|
|
DSD
Neuling
Dabei seit: 03.08.2003
Beiträge: 4
|
|
erm kann es sein das etwas aufm webspace verbietet das das board das zum irc bot sendn kann? wenn ja wie kann ichs ausschalten (ich hab root)
|
|
02.12.2003 01:21 |
|
|
LX
El Comandante en Jefe
Dabei seit: 25.11.2001
Beiträge: 5.372
Herkunft: Berliner Bronx
|
|
Der beim Bot angegebene Port muss natürlich nach außen offen sein. Kann man recht einfach prüfen, wenn man mal mit Telnet von demjenigen Rechner versucht, auf dem jeweiligen Port zu connecten.
__________________ JS-Games.de - Misled Scripting Skills Gone Mad | Meine Filmkritiken | Urban Photography
Kommt mal in den IRC-Channel: irc.eu.freenode.net | Port 6667 | #blackboard
"Ever tried. Ever failed. No matter.
Try again. Fail again. Fail better."
- Samuel Beckett
|
|
02.12.2003 01:30 |
|
|
magician
Neuling
Dabei seit: 12.02.2004
Beiträge: 1
|
|
hi, erstmal danke für die remote.mod.
erste sahne.
dann mal meine Frage habe folgendes Script:
php: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
|
function get_crewinfo($crewid) {
global $egg_host,$egg_port,$egg_pass,$db,$n,$crewid,$nick,$channel;
if ($fp=fsockopen($egg_host,$egg_port,$errno,$errstr,30)) {
fputs($fp,$egg_pass."\r\n");
fputs($fp,"PRIVMSG $channel From User: \037$nick\037");
fputs($fp,"From User: \037$nick\037\r\n");
fclose($fp);
}
} |
|
soo das geht auch wunderbar.
er postet mir dann folgendes ins irc
aber er soll nach der Crewid:1 nen zeilenumbruch machen, wie bekomme ich das hin?
Danke für ihre hilfe.
MFG MAGiC
|
|
12.02.2004 23:45 |
|
|
SHAB
Neuling
Dabei seit: 20.06.2004
Beiträge: 4
|
|
Vielen Dank für die ausführliche Anleitung
Leider bekomm' ich das aber irgendwie nicht zum laufen...evtl weil ich eine neuere wbb version benutze (wbb 2.1.3) ?
mir ist nämlich aufgefallen, dass bei den beiden files, die gepatched werden müssen - addreply.php + newthread.php - nicht mehr alles so ist wie in der Anleitung...
die Zeile require("./irc_notify.php"); am Anfang dürfte ja kein Problem sein...das bleibt ja sicher gleich....
das andere ( irc_notify($wbbuserdata['username'],$postid,$threadid);
) hab ich, wie vorgegeben direkt unter:
$postid = $db->insert_id();
eingefügt....
allerdings stimmt die Zeile davor nicht mehr überein...
if(!isset($threadid)) eval("error("".$tpl->get("error_falselink")."");");
bzw
if($_REQUEST['action']=="announce") {
gibt es in meinen files nicht....
ansonsten...das remote module wurde erfolgreich hinzugefügt!
irc_notify hab ich auch mit allen Daten gefüttert....
(allerdings, bei $egg_host="my.bots.host.net"; ---> als host hab ich eben die IP des servers auf dem der eggdrop installiert ist angegeben , aber das passt ja schon, oder ?)
wäre klasse wenn irgendjemand Rat wüsste...ich würd das gerne zum laufen bringen
Merci
|
|
15.09.2004 14:57 |
|
|
SHAB
Neuling
Dabei seit: 20.06.2004
Beiträge: 4
|
|
die files fürs wbb die gepatched werden müssen sind ja nur
- addreply.php
- newthread.php
ich bräuchte das fürs wbb2.1.3...
allerdings weiss ich nicht so genau ob es auch wirklich daran liegt...
aber alles andere hab ich eigneltich schon probiert...
|
|
15.09.2004 16:38 |
|
|
LX
El Comandante en Jefe
Dabei seit: 25.11.2001
Beiträge: 5.372
Herkunft: Berliner Bronx
|
|
Der Einbau des Patches in die WBB-Software war eigentlich kein Problem, auch bei der aktuellen Version nicht. Hast du denn schonmal versucht, eine Nachricht an den Bot zu schicken, um das Remote-Modul zu testen? Ansonsten melde dich mal im IRC bei mir, ich bin meistens da.
__________________ JS-Games.de - Misled Scripting Skills Gone Mad | Meine Filmkritiken | Urban Photography
Kommt mal in den IRC-Channel: irc.eu.freenode.net | Port 6667 | #blackboard
"Ever tried. Ever failed. No matter.
Try again. Fail again. Fail better."
- Samuel Beckett
|
|
16.09.2004 13:53 |
|
|
SHAB
Neuling
Dabei seit: 20.06.2004
Beiträge: 4
|
|
so, ich nochmal
Ich bin einen großen Schritt weiter, aber leider klappts immer noch nicht.
Stand der Dinge ist, dass das remote module eingebaut ist und läuft, alles einwandfrei soweit...
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
|
[ 16:14:07 ] :: <SHAB> .module
[ 16:14:08 ] :: <EggBert> [16:30] #SHAB|busy# module
[ 16:14:08 ] :: <EggBert> Loaded module information:
[ 16:14:08 ] :: <EggBert> Module: remote, v 0.1
[ 16:14:08 ] :: <EggBert> Module: uptime, v 1.2
[ 16:14:08 ] :: <EggBert> requires: eggdrop, v 106.11
...............
...............usw
|
|
überprüfung des ports auf dem server:
code: |
1:
2:
3:
4:
5:
6:
|
[root@host root]# lsof -i:XXXX
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
eggdrop 10127 shab 6u IPv4 5935986 TCP *:XXXX (LISTEN)
[root@host root]#
|
|
in der notify.php ist (habs 3mal überprüft) der gleiche port/pass wie in der remote.c angegeben, der Pfad zur thread.php ist richtig, als egghost ist die IP des servers angegeben auf dem der eggdrop installiert ist.
Eigentlich kann es ja jetzt nur noch am Einbau ins wbb liegen oder ?
Im Anhang mal meine addreply.php | newthread.php .......
evtl findet dort ja einer 'nen Fehler..?
ich weiss sonst nämlich nicht mehr weiter
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von SHAB: 17.09.2004 16:57.
|
|
17.09.2004 16:56 |
|
|
LX
El Comandante en Jefe
Dabei seit: 25.11.2001
Beiträge: 5.372
Herkunft: Berliner Bronx
|
|
Die Dateien scheinen okay zu sein.
Hast du denn schonmal versucht, das Remote-Modul zu testen? Am besten machste das mit Telnet:
telnet <host> <port>
Dann erwartet er in einer Zeile das Passwort, und in der nächsten ein IRC-Kommando, also beispielsweise
blahblubb
privmsg #channel :hallo welt
Für diese Eingaben hast du nur eine Sekunde Zeit, daher empfiehlt es sich, die vorher inklusive Zeilenumbrüche in der Zwischenablage abzulegen und dann einfach reinzukopieren.
Wenn das klappt, müsste der Bot dann im angegebenen Channel "hallo welt" sagen. Ansonsten könnte es höchstens noch sein, dass der Server, auf dem der Bot läuft, per Firewall/Paketfilter geschützt ist und der angegebene Port eben blockiert wird.
__________________ JS-Games.de - Misled Scripting Skills Gone Mad | Meine Filmkritiken | Urban Photography
Kommt mal in den IRC-Channel: irc.eu.freenode.net | Port 6667 | #blackboard
"Ever tried. Ever failed. No matter.
Try again. Fail again. Fail better."
- Samuel Beckett
|
|
17.09.2004 18:19 |
|
|
SHAB
Neuling
Dabei seit: 20.06.2004
Beiträge: 4
|
|
tjo...
was soll ich sagen..
über telnet direkt geht das module wunderbar, damit bringt er mir die msg in den channel...muss also doch am board bzw boardeinbau liegen..nur weiss ich leider nicht mehr wo ich noch nach Fehlern gucken könnte.
|
|
20.09.2004 12:36 |
|
|
LX
El Comandante en Jefe
Dabei seit: 25.11.2001
Beiträge: 5.372
Herkunft: Berliner Bronx
|
|
Demnach muss es ja mit den Boardscripten oder dem Server, auf dem das Board läuft, zusammenhängen. Da die Scripte in meinen Augen okay sind, tippe ich mal auf den Server. Eventuell unterbinden einige Provider Socketverbindungen auf fremde Rechner. Schau mal in phpinfo(), ob "Sockets Support" aktiviert ist. Ansonsten versuche mal, mit fsockopen() eine Verbindung zu einem anderen Host herzustellen, von dem du weißt, dass er online ist.
__________________ JS-Games.de - Misled Scripting Skills Gone Mad | Meine Filmkritiken | Urban Photography
Kommt mal in den IRC-Channel: irc.eu.freenode.net | Port 6667 | #blackboard
"Ever tried. Ever failed. No matter.
Try again. Fail again. Fail better."
- Samuel Beckett
|
|
20.09.2004 14:53 |
|
|
LX
El Comandante en Jefe
Dabei seit: 25.11.2001
Beiträge: 5.372
Herkunft: Berliner Bronx
|
|
RE: IRC-Notify für neue Posts |
|
Soderle, da wir hier auf dem Board ja mittlerweile eine ganze Menge Themenpräfixe eingestellt haben und einige Threadtitel ohne die Präfixe recht zusammenhangslos erscheinen, hier mal die modifizierte irc_notify.php, damit die Präfixe auch angekündigt werden:
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
|
<?php
/* irc_notify.php
* 12/2002 by Zirias
*
* announces new threads in IRC via an eggdrop using my remote module
* 20041012: added announcement of prefixes - LX
*/
//Config:
$thread_url="http://my.boards.host.net/thread.php";
$egg_host="my.bots.host.net";
$egg_port="12345";
$egg_pass="Password";
$channel="#mychan";
//END Config.
function irc_notify($poster,$postid,$threadid) {
global $thread_url,$egg_host,$egg_port,$egg_pass,$channel,$db,$n;
$thread=$db->query_first("SELECT prefix,topic,boardid FROM bb".$n."_threads WHERE threadid=".$threadid);
$board=$db->query_first("SELECT title,invisible FROM bb".$n."_boards WHERE boardid=".$thread['boardid']);
$trans=array_flip(get_html_translation_table(HTML_ENTITIES));
$boardname=strtr($board['title'],$trans);
$prefixname=($thread['prefix']!='') ? '['.strtr($thread['prefix'],$trans).'] ' : '';
$threadname=strtr($thread['topic'],$trans);
if ($board['invisible']==0) {
if ($fp=@fsockopen($egg_host,$egg_port,$errno,$errstr,30)) {
fputs($fp,$egg_pass."\r\n");
fputs($fp,"PRIVMSG $channel :Neuer Post von \037$poster\037: ");
fputs($fp,"$thread_url?postid=$postid#post$postid ");
fputs($fp,"\002Forum\002: $boardname ");
fputs($fp,"\002Thread\002: $prefixname$threadname\r\n");
fclose($fp);
}
}
}
?> |
|
__________________ JS-Games.de - Misled Scripting Skills Gone Mad | Meine Filmkritiken | Urban Photography
Kommt mal in den IRC-Channel: irc.eu.freenode.net | Port 6667 | #blackboard
"Ever tried. Ever failed. No matter.
Try again. Fail again. Fail better."
- Samuel Beckett
|
|
12.10.2004 22:51 |
|
|
LX
El Comandante en Jefe
Dabei seit: 25.11.2001
Beiträge: 5.372
Herkunft: Berliner Bronx
|
|
RE: IRC-Notify für neue Posts |
|
Eine weitere Anpassung: Die Auswahl, welche Foren angekündigt werden und welche nicht, richtet sich jetzt nicht mehr nach der 'invisible'-Flag, sondern danach, ob ein Gast das Forum sehen kann. Eventuell muss dazu das Script modifiziert werden, wenn Gäste eine andere Gruppen-ID als die 5 haben (kann ich ACP eingesehen werden). Alternativ kann man natürlich auch eine andere Gruppe angeben, z.B. die der registrierten und angemeldeten Nutzer.
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
|
<?php
/* irc_notify.php
* 12/2002 by Zirias
*
* announces new threads in IRC via an eggdrop using my remote module
* 20041012: added announcement of prefixes - LX
* 20041215: forums are excluded if Guests cannot see them instead of 'invisible' flag set
*/
//Config:
$thread_url='http://my.boards.host.net/thread.php';
$egg_host='my.bots.host.net';
$egg_port='12345';
$egg_pass='Password';
$channel='#mychan';
$allowedgroup='5';
//END Config.
function irc_notify($poster,$postid,$threadid) {
global $thread_url,$egg_host,$egg_port,$egg_pass,$channel,$db,$n,$allowedgroup;
$thread=$db->query_first("SELECT a.prefix, a.topic, b.title, a.boardid FROM bb{$n}_threads a, bb{$n}_boards b WHERE a.boardid=b.boardid AND a.threadid={$threadid}");
$perm=$db->query_first("SELECT can_view_board FROM bb{$n}_permissions WHERE boardid={$thread[boardid]} AND groupid={$allowedgroup}");
$trans=array_flip(get_html_translation_table(HTML_ENTITIES));
$boardname=strtr($thread['title'],$trans);
$prefixname=($thread['prefix'] != '') ? '['.strtr($thread['prefix'],$trans).'] ' : '';
$threadname=strtr($thread['topic'],$trans);
if ($perm['can_view_board']==1) {
if ($fp=@fsockopen($egg_host,$egg_port,$errno,$errstr,20)) {
fputs($fp,$egg_pass."\r\n");
fputs($fp,"PRIVMSG $channel :Neuer Post von \037$poster\037: ");
fputs($fp,"$thread_url?postid=$postid#post$postid ");
fputs($fp,"\002Forum\002: $boardname ");
fputs($fp,"\002Thread\002: $prefixname$threadname\r\n");
fclose($fp);
}
}
}
?>
|
|
__________________ JS-Games.de - Misled Scripting Skills Gone Mad | Meine Filmkritiken | Urban Photography
Kommt mal in den IRC-Channel: irc.eu.freenode.net | Port 6667 | #blackboard
"Ever tried. Ever failed. No matter.
Try again. Fail again. Fail better."
- Samuel Beckett
|
|
15.12.2004 20:54 |
|
|
|
Hallo,
auf der Suche, nach einem Script was die neuesten Beiträge aus einem Board auslesen kann und dann im IRC postet, bin ich auf diesen Thread hier gestoßen.
Nur habe ich ein paar Fragen dazu:
1. So wie ich es verstanden habe ist hier der Egg und das Board auf einem Server. Funktioniert das auch wenn der Eggdrop auf einem anderen Server liegt?
Wo und was müßte man dann ändern?
2. Mit welcher WBB-Version funktioniert die Ausgabe? Mit jeder oder nur bestimmten?
Vielen Dank schonmal für eure Infos.
MFG
Splatterman
|
|
09.10.2005 15:48 |
|
|
|
|
|
|