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