mirror of
https://github.com/vishapoberon/vipak.git
synced 2026-04-05 20:42:26 +00:00
vocbot is able to join the room. -- noch
This commit is contained in:
parent
fe9a02f600
commit
efb4460ce9
2 changed files with 21 additions and 8 deletions
28
IRC.Mod
28
IRC.Mod
|
|
@ -86,6 +86,8 @@ BEGIN
|
|||
END terminateLine;
|
||||
|
||||
PROCEDURE formUserNickLine(VAR user, owner, nick, res: ARRAY OF CHAR);
|
||||
VAR
|
||||
l : INTEGER;
|
||||
BEGIN
|
||||
COPY(cmdUser, res);
|
||||
Strings.Append(" ", res);
|
||||
|
|
@ -93,7 +95,12 @@ BEGIN
|
|||
Strings.Append(" 0 * :", res);
|
||||
Strings.Append(owner, res);
|
||||
(* by the spec the command is terminated by \r\n *)
|
||||
Strings.Append(eol, res);
|
||||
|
||||
l := Strings.Length(res);
|
||||
res[l] := LF;
|
||||
res[l+1] := CR;
|
||||
res[l+2] := 0X;
|
||||
(*Strings.Append(eol, res);*)
|
||||
|
||||
Strings.Append (cmdNick, res);
|
||||
Strings.Append(" ", res);
|
||||
|
|
@ -120,12 +127,19 @@ BEGIN
|
|||
END formJoinLine;
|
||||
|
||||
PROCEDURE formModeJoinLine(VAR str, nick, chan: ARRAY OF CHAR);
|
||||
VAR
|
||||
l: INTEGER;
|
||||
BEGIN
|
||||
COPY (cmdMode, str);
|
||||
Strings.Append(" ", str);
|
||||
Strings.Append(nick, str);
|
||||
Strings.Append(" +C", str);
|
||||
Strings.Append(eol, str);
|
||||
|
||||
l := Strings.Length(str);
|
||||
str[l] := LF;
|
||||
str[l+1] := CR;
|
||||
str[l+2] := 0X;
|
||||
(*Strings.Append(eol, str);*)
|
||||
|
||||
Strings.Append(cmdJoin, str);
|
||||
Strings.Append(" ", str);
|
||||
|
|
@ -175,6 +189,7 @@ PROCEDURE rplWelcome(VAR line : ARRAY OF CHAR): BOOLEAN;
|
|||
VAR
|
||||
found: BOOLEAN;
|
||||
pos : INTEGER;
|
||||
tmp: ARRAY 128 OF CHAR;
|
||||
BEGIN
|
||||
Strings.FindNext(numRPLWELCOME, line, 0, found, pos);
|
||||
IF found THEN RETURN TRUE ELSE RETURN FALSE END
|
||||
|
|
@ -214,7 +229,7 @@ PROCEDURE Send*(VAR inst: instance; str: ARRAY OF CHAR): BOOLEAN;
|
|||
VAR
|
||||
b : BOOLEAN;
|
||||
BEGIN
|
||||
terminateLine(str);
|
||||
(*terminateLine(str);*)
|
||||
b := Internet.Write(inst.connection, str);
|
||||
IF b THEN
|
||||
Out.String("sent:"); Out.Ln;
|
||||
|
|
@ -285,7 +300,6 @@ BEGIN
|
|||
formJoinLine(str, inst.channelList^[0]);
|
||||
Out.String("SENDING JOIN LINE"); Out.Ln;
|
||||
b := Send(inst, str);
|
||||
(*b := Internet.Write(inst.connection, str);*)
|
||||
END Join;
|
||||
|
||||
PROCEDURE processResponse(VAR inst: instance; VAR line: ARRAY OF CHAR): BOOLEAN;
|
||||
|
|
@ -300,7 +314,7 @@ BEGIN
|
|||
Disconnect(inst);
|
||||
b := FALSE;
|
||||
ELSE
|
||||
(*IF serverMsg(line) THEN*)
|
||||
IF serverMsg(line) THEN
|
||||
IF rplWelcome(line) THEN
|
||||
(*IF contains(line, eofMOTD) THEN*)
|
||||
(*Mode(inst);
|
||||
|
|
@ -309,7 +323,7 @@ BEGIN
|
|||
ELSE
|
||||
inst.callback(line);
|
||||
END;
|
||||
(*END;*)
|
||||
END;
|
||||
END;
|
||||
RETURN b;
|
||||
END processResponse;
|
||||
|
|
@ -326,5 +340,5 @@ BEGIN
|
|||
END Loop;
|
||||
|
||||
BEGIN
|
||||
eol[0] := LF; eol[1] := CR; eol[2] := 0X;
|
||||
eol[0] := LF; eol[1] := CR;
|
||||
END IRC.
|
||||
|
|
|
|||
1
test.Mod
1
test.Mod
|
|
@ -32,7 +32,6 @@ BEGIN
|
|||
|
||||
IF IRC.Connect(inst) # FALSE THEN
|
||||
b := IRC.Auth(inst);
|
||||
|
||||
IRC.Loop(inst);
|
||||
END;
|
||||
END testBot;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue