Post by MegaLoler on Apr 29, 2012 20:53:22 GMT
I wrote a Tinychat connection library in Python and terminal-interface to go with it. Then I ported it to work with Chatango.
Screenshots:

I know it works in Mac OS X and Linux. I'm sure it will work on any Unix like system. I'm not sure if it will work in Windows because the program uses the curses library and the DOS prompt doesn't support the same kinds of manipulations. Maybe it will work in Cygwin? I can't test it because I don't have Windows, so I don't know.
Chatango Client [v0.4]
Active Development
The client: pastebin.com/DrrNNbUc
It depends on this library by Lumirayz: github.com/theholder/ch.py
This is the one that I have mainly been working on.
Note: From my experience, when people use non ascii characters in the chat, it crashes the chatango library. Apparently not everyone has this problem, though. I fixed by changing the two lines labeled "# numnumz ;3" to this:
Features:
- Graphical command line interface via Curses
- Multiple chatroom management
- Private message support
- Raw chat logging
- Name and font color setting
- Styled messages via HTML in raw mode
- Intentional HTML misparsing (as Tempy puts it) via raw mode
- Paging users (queues messages to send to users the next time they are seen)
- Secret messages with disguises (sends secret messages that only people with the same client can see, other chatters will only see the "disguise" message)
Coming Soon Features:
- Better message styling in the console (bold, underline, blink, and reverse tags will be recognized and show up)
- Separate screen for private messages (currently you can only private message users that are in a chatroom that you are in)
- Friends list integration
- Secret private messages (like secret messages, except you can choose so that only certain people with the same client can see them)
- Commands for moderators/admins
- Custom skins
- Configuration file
- Log loading (allows you to review the local chat log)
- Miscellaneous features
- Bug fixes (always)
Known Bugs:
- User list doesn't update until an event occurs
- Leaving a chatroom sometimes crashes
- Pages to yourself do not show up in Echo mode, nor do any messages that you say on a separate connection
- Received private messages only show up in the current chat room
- Sometimes large messages mess up the screen
Help:
Here's to get an idea of the general usage:
Taken from the /help command:
Tinychat Client and Library [v0.1]
Inactive Development
The client: pastebin.com/iLVfKYkP
Tinychat library: pastebin.com/aVJuiLK4
The library depends on this RTMP library: shiftlock.wordpress.com/2010/10/27/rtmp-library-for-python/
And the RTMP library in turn depends on this AMF library: www.pyamf.org/index.html
I was accidentally banned from Tinychat due to a spam bug in some code I was testing... so I have no way to work on this one further.
Screenshots:




I know it works in Mac OS X and Linux. I'm sure it will work on any Unix like system. I'm not sure if it will work in Windows because the program uses the curses library and the DOS prompt doesn't support the same kinds of manipulations. Maybe it will work in Cygwin? I can't test it because I don't have Windows, so I don't know.
Chatango Client [v0.4]
Active Development
The client: pastebin.com/DrrNNbUc
It depends on this library by Lumirayz: github.com/theholder/ch.py
This is the one that I have mainly been working on.
Note: From my experience, when people use non ascii characters in the chat, it crashes the chatango library. Apparently not everyone has this problem, though. I fixed by changing the two lines labeled "# numnumz ;3" to this:
self._process(food.decode("ascii", "ignore").rstrip("\r\n"))
Features:
- Graphical command line interface via Curses
- Multiple chatroom management
- Private message support
- Raw chat logging
- Name and font color setting
- Styled messages via HTML in raw mode
- Intentional HTML misparsing (as Tempy puts it) via raw mode
- Paging users (queues messages to send to users the next time they are seen)
- Secret messages with disguises (sends secret messages that only people with the same client can see, other chatters will only see the "disguise" message)
Coming Soon Features:
- Better message styling in the console (bold, underline, blink, and reverse tags will be recognized and show up)
- Separate screen for private messages (currently you can only private message users that are in a chatroom that you are in)
- Friends list integration
- Secret private messages (like secret messages, except you can choose so that only certain people with the same client can see them)
- Commands for moderators/admins
- Custom skins
- Configuration file
- Log loading (allows you to review the local chat log)
- Miscellaneous features
- Bug fixes (always)
Known Bugs:
- User list doesn't update until an event occurs
- Leaving a chatroom sometimes crashes
- Pages to yourself do not show up in Echo mode, nor do any messages that you say on a separate connection
- Received private messages only show up in the current chat room
- Sometimes large messages mess up the screen
Help:
Here's to get an idea of the general usage:
Taken from the /help command:
Press TAB to switch between the three text fields at the bottom. Type in room names on the left to connect to rooms. Once connected, type in messages in the middle. Type in private messages on the right. To toggle between open rooms press ` (under the escape key on US layouts). To toggle between private message recipients press ~ (the same as before but with shift). The selected recipient will be highlighted in red. Type /commands in the middle when connected to a room to get a list of commands that you can use. Press ESC twice to exit the client.
Tinychat Client and Library [v0.1]
Inactive Development
The client: pastebin.com/iLVfKYkP
Tinychat library: pastebin.com/aVJuiLK4
The library depends on this RTMP library: shiftlock.wordpress.com/2010/10/27/rtmp-library-for-python/
And the RTMP library in turn depends on this AMF library: www.pyamf.org/index.html
I was accidentally banned from Tinychat due to a spam bug in some code I was testing... so I have no way to work on this one further.