Download Latest Version flashirc-bin-2011-04-17.tgz (308.8 kB)
Email in envelope

Get an email when there's a new version of 3wIRC flash

Home / bin
Name Modified Size InfoDownloads / Week
Parent folder
flashirc-bin-2011-04-17.tgz 2011-04-17 308.8 kB
README.txt 2011-04-17 5.1 kB
IRC_client.swf 2011-04-17 107.9 kB
config.xml 2011-04-17 287 Bytes
Totals: 4 Items   422.1 kB 0
3wIRC - flashIRC client
	visit: http://flashirc.sourceforge.net/

Build by Viktor Lucza <ghostwik@gmail.com>



--------------------------------------------------------------------------------
I provide no warranty for any of this application.
And at all... If you want to use this... It's your mass :))


--------------------------------------------------------------------------------
So what's 3wIRC?
It's simple IRC client which uses capability of flash player to connect
directly to the socket and read data.



--------------------------------------------------------------------------------
What I need to do to make it work?
Take a look at directory `bin-debug` (it's name generated in early time of
development by Eclipse with Flex plug-in), there's some mass generated by Flex
but there's several important files you definitely want to know:
IRC_client.swf	- actually the application, you wouldn't do much without it :)
config.xml	- main configuration (take a look at section config.xml)
index.php	- dynamic configuration... example how to add 3wIRC to your
			environment
IRC_client.html	- mostly used for local testing with static html
styles/
	list.xml	- list of styles that should be available in application
				if you want to make any change, it's simple
				XML and you should be able to Ctrl+{C,V}
	*.css		- :)) actually style... Do me a favor... Learn it :)
locales/*.swf	- locale file, you need to match file name masked with asterisk
			to match with value in config.xml locales to make it
			work



--------------------------------------------------------------------------------
config.xml
It should look like this (I hope you know that <!-- --> means comment in xml):

<?xml version="1.0"?>
<settings>
	<!-- Server to connect to -->
	<server		value="irc.post.sk" />
	
	<!-- NON SLL IRC port on server -->
	<port		value="6667" />
	
	<!-- policydPort, see policyd :)) -->
	<policyPort	value="843" />
	
	<!-- nick@<indent>@your.host, IRC information-->
	<ident		value="flashIRC" />
	
	<!-- Autojoin channels -->
	<autojoin	value="#chan1,#chan2" />
	
	<!-- If there's (anope) services "nick" of NickServ -->
	<nickServ	value="NickServ" />
	
	<!-- Available locales for your version -->
	<locales	value="sk_SK,en_US" />
	
	<!-- Locale loaded by default -->
	<locale		value="sk_SK" />
</settings>



--------------------------------------------------------------------------------
PolicyD
Ah, crap... Flash's trying to be safe when talking about sockets (imagine
someone posting small flash video (1x1px) into some discussion board which would
just connect to sockets and guess passwords or something...) and requires
confirmation from server before allowing socket connection.
The piece of "code" which is allowing this is flash policyd daemon (or basically
any script that can handle tcp xml request and response with other XML).
Take a look at: http://code.google.com/p/flashpolicyd/
So you need it to configure to response to (internal) flash request for policy
request.
Example of directly sent request (content of policy.xml starts on second line):
[vyktor@grepfruit ~]$ echo -e "<policy-file-request/>\0" | nc irc.example.com 843
<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy
	SYSTEM "http://www.adobe.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy> 
	<site-control permitted-cross-domain-policies="master-only" />
	<allow-access-from domain="*" to-ports="6667" /> 
</cross-domain-policy> 



--------------------------------------------------------------------------------
SSL?
No ;(
Flash doesn't provide implementation of SSL socket and I'm not crazy enough to
implement FFT to be able do math in modular arithmetic with 4096b long base. :)



--------------------------------------------------------------------------------
Compiling sources, other files
Let's make this quick :)
locale/<locale>/	- localization for <locale> language (use utf8)
	Functions.as	- Functions that cannot be implemented via properties
			  (so far it's just seconds -> human readable text)
	*.properties	- basically... Ini files containing key=value pairs
res/			- mostly images that will be compiled INTO final swf
src/			- Sources? If you fuck this up, I WON'T help you! ]:-}
	IRC_client.mxml	- MX Markup Language - Main "form" window...
	irc/*.as	- ActionScript files... Actual SOURCE CODE
Makefile		- http://en.wikipedia.org/wiki/Makefiles
			  I know the guy... And he don't know what ,,make`` is.
			  Guys, seriously... Learn something before doing this.

How to compile...
1) Edit Makefile. Editing following variables should be enough:
	ROOT=$(shell pwd)
	TARGET=$(ROOT)/bin-debug/IRC_client.swf
	LOCALES_TARGET_DIR=$(ROOT)/bin-debug/locales
	LOCALES=en_US,sk_SK
	LOCALE=en_US
	F_ROOT=/opt/flex-sdk

2) Run ,,make build``

3) You may rebuild locales separately by running ,,make locales`` or one locale
	by running ,,make locale-en_US``

--------------------------------------------------------------------------------
TODO:
- replace policidy with policyd :))) in locales
- Quite idealist task: Allow application to change theme on "flex theme" level



Source: README.txt, updated 2011-04-17