1 | Cognet++ is a series of improvements made to Cognet including:
|
---|
2 |
|
---|
3 | - Smiley support. /emoticons off|on to toggle.
|
---|
4 |
|
---|
5 | - Leigh Klotz's auto reconnect
|
---|
6 |
|
---|
7 | - On reconnect, show the window you were talking on rather than %server
|
---|
8 |
|
---|
9 | - if a new window is created while your in the app, it will display
|
---|
10 | a bubble notification
|
---|
11 |
|
---|
12 | - new messages in any window are indicated by a cog icon in the space
|
---|
13 | where the email notification goes
|
---|
14 |
|
---|
15 | - a new command /marquee <seconds> will allow you to set a window to
|
---|
16 | display a marquee when your not in the application. The seconds paramenter
|
---|
17 | indicates the limit on how often a marquee is displayed. for example /marquee
|
---|
18 | 30 will only display 1 marquee every 30 seconds. Messages in between will be
|
---|
19 | dropped. /marquee 0 will disable marquees.
|
---|
20 |
|
---|
21 | - font support. see http://developer.danger.com/wiki/space/fonts for a list
|
---|
22 | of fonts. /font <fontname> is the command.
|
---|
23 |
|
---|
24 | Enjoy,
|
---|
25 | Jake Bordens
|
---|
26 | jake@twodot.org
|
---|
27 |
|
---|
28 | ***** Below is the original cognet client README file:
|
---|
29 |
|
---|
30 | Please direct any questions about the cognet client and server to <sachs@uiuc.edu>.
|
---|
31 |
|
---|
32 | Cognet Chat Engine v0.1
|
---|
33 | ------------------------
|
---|
34 |
|
---|
35 | This application is a front-end for a irc proxy server called cognetd.
|
---|
36 | The server handles virtually all of the logic and all the client knows
|
---|
37 | about is how to display messages in windows and send user commands to
|
---|
38 | the server.
|
---|
39 |
|
---|
40 | The server caches all messages even if the client is not connected.
|
---|
41 |
|
---|
42 | The following commands are understood by the client:
|
---|
43 |
|
---|
44 | /query <name> creates a new window named <name> and shows it
|
---|
45 | /win <name> switch to window <name> if it exists
|
---|
46 | /zap log out of the server
|
---|
47 | /bind <number> binds a quickkey (0-9) to this window
|
---|
48 | /clear erases the contents of the current window
|
---|
49 | (on the server as well as the client)
|
---|
50 |
|
---|
51 | Any other commands are sent to the server for processing.
|
---|
52 |
|
---|
53 | The application menu lists all active windows (windows with
|
---|
54 | messages that have arrived since you were there last are marked
|
---|
55 | with an arrow glyph). There are a few handy shortcuts not shown
|
---|
56 | in the menu (for space reasons):
|
---|
57 |
|
---|
58 | MENU-n cycle to the next window
|
---|
59 | MENU-p cycle to the previous window
|
---|
60 | MENU-, jump to a window with new messages
|
---|
61 |
|
---|
62 | Currently, server messages show up in the special "%server" window
|
---|
63 | (which you can never delete). Modules running on the server create
|
---|
64 | windows of their own.
|
---|
65 |
|
---|
66 | Flags to the side of the display indicate traffic in other windows.
|
---|
67 | Indicators like "[3]" mean that there is a new message in a window bound
|
---|
68 | to the number in the brackets. A "[?]" indicator means that there are
|
---|
69 | new messages in some unbound window (check the menu for details).
|
---|
70 |
|
---|
71 | Protocol Details
|
---|
72 | ----------------
|
---|
73 |
|
---|
74 | client protocol, server->client:
|
---|
75 | <serial>:<tag>:<source>:<target>:<text>
|
---|
76 |
|
---|
77 | The first field (serial number) may be omitted or ignored. It allows
|
---|
78 | for resynchronization, so the client should keep track of the last
|
---|
79 | serial number it has seen for when it reconnects
|
---|
80 |
|
---|
81 | #:dmsg:nick:#channel:text # display message in target window
|
---|
82 | #:smsg:nick:yournick:text # display message in source window
|
---|
83 | #:dmsg:yournick:nick:text # display message in target window
|
---|
84 | #:dmsg/act:nick:#channel:text # display emote'd message in target window
|
---|
85 | #:clear:window: # erase all lines from window
|
---|
86 | #:info:window:text # display server message
|
---|
87 | #:fail:window:text # display error message
|
---|
88 | #:repl:window:text # display command reply
|
---|
89 | #:sync:token: # client should keep token for next serial
|
---|
90 |
|
---|
91 | special windows:
|
---|
92 | %server -- messages from the server
|
---|
93 |
|
---|
94 | client protocol, client->server:
|
---|
95 | <serial>:<tag>:<target>:<text>
|
---|
96 |
|
---|
97 | :serial:serialnumber:token # indicates last serial number and token seen
|
---|
98 | # (send before logging in)
|
---|
99 | :auth:username:password # log in
|
---|
100 |
|
---|
101 | In all of these, 'ctxt' is the current window the command
|
---|
102 | was typed in. Lines without a leading '/' get transformed into
|
---|
103 | a send command, all others lose the '/' and are split so that the
|
---|
104 | text between the '/' and the first whitespace become the 'tag',
|
---|
105 | the current window is the 'ctxt', and the rest of the line is the
|
---|
106 | 'text'
|
---|