<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-gb">
	<link rel="self" type="application/atom+xml" href="https://forum.eggheads.org/app.php/feed/topic/8534" />

	<title>egghelp/eggheads community</title>
	<subtitle>Discussion of eggdrop bots, shell accounts and tcl scripts.</subtitle>
	<link href="https://forum.eggheads.org/index.php" />
	<updated>2004-11-10T11:36:44-04:00</updated>

	<author><name><![CDATA[egghelp/eggheads community]]></name></author>
	<id>https://forum.eggheads.org/app.php/feed/topic/8534</id>

		<entry>
		<author><name><![CDATA[stdragon]]></name></author>
		<updated>2004-11-10T11:36:44-04:00</updated>

		<published>2004-11-10T11:36:44-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=42627#p42627</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=42627#p42627"/>
		<title type="html"><![CDATA[Starting a Project - Advice requested]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=42627#p42627"><![CDATA[
Hi,<br><br>One thing that may make things harder is that libmsn seems to be a C++ library, not a C library. I think your best bet is to use something like libgaim. I don't think you have to bother with gtk and all that, from what I've read -- libgaim is just the gaim library, there is no user interface.<br><br>I have no idea where to get it, although I would guess it's available through gaim.sf.net somehow.<br><br>On the other hand, you can write a module in C++, you just have to do some fancy things with the extern "C" directive.<br><br>Have you looked at amsn? It's a tcl client.<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=8">stdragon</a> — Wed Nov 10, 2004 11:36 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Ulath]]></name></author>
		<updated>2004-11-09T08:46:45-04:00</updated>

		<published>2004-11-09T08:46:45-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=42606#p42606</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=42606#p42606"/>
		<title type="html"><![CDATA[Starting a Project - Advice requested]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=42606#p42606"><![CDATA[
Ok, I've been playing around a bit the last week trying to find the best way of getting a connection to MSN to work, Ive looked at:<br><br>GAIM (C) - Has all the functionality required, but trying to extract it out of the mix of GTK and other non useful parts seems like suicide for an inexperienced C programmer. <br><br>libmsn - Documentation sucks which makes it very difficult to understand, it seems to do everything I want it to, but once again my limited C experience is hindering me, but seems to be the best bet.<br><br>I've looked at the TCL script posted above, loaded it into my eggdrop, but it dosnt seem to work (replaced all the user variables etc), it does a <br>"MSN &lt;&lt;&lt; VER 0 CV0" which gets followed by a <br>"MSN&lt;&lt;&lt; (Dispatch closed connection)<br><br>Which looks like its having problems connecting to the msn server, or am I on totally the wrong track? <br><br>I think the best way for me to get something working would be to map libmsn functions into TCL, I have aquaired Welches "Practical Programming in TCL and TK" which I have been reading, but without much sucess, it seems I may have bitten off a bit more than I can chew for a first time C/TCL project <img class="smilies" src="https://forum.eggheads.org/images/smilies/icon_redface.gif" width="15" height="15" alt=":oops:" title="Embarassed">  . Anyone out there fancy giving me a hand?  <br><br>I think the best bet at the moment is to devote my attention to linking libmsn into TCL, once I have access to the functions I need (connect to server, send msg etc), I think I should be able to code up some TCL to do something with them.  Any guides, advice or critisism appreciated<br><br>Thanks In advance<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=5605">Ulath</a> — Tue Nov 09, 2004 8:46 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Galadhrim]]></name></author>
		<updated>2004-11-01T14:46:50-04:00</updated>

		<published>2004-11-01T14:46:50-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=42465#p42465</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=42465#p42465"/>
		<title type="html"><![CDATA[Starting a Project - Advice requested]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=42465#p42465"><![CDATA[
Personally I would use TCL as little as possible. I have picked up a TCL script and they language is quite nasty. Unless you are good at it and you know how to markup the code you might be able to keep it going for a while.<br><br>At the other hand C is easy to use alot of people know how C and there are alot of libraries ready for use like the centericq's libmsn. So anyone can pick up your project and extend it. The last is, imo, the biggest pro. If there is one thing us open-source coders need is reusability!<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=2999">Galadhrim</a> — Mon Nov 01, 2004 2:46 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[greenbear]]></name></author>
		<updated>2004-11-01T14:23:49-04:00</updated>

		<published>2004-11-01T14:23:49-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=42462#p42462</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=42462#p42462"/>
		<title type="html"><![CDATA[Starting a Project - Advice requested]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=42462#p42462"><![CDATA[
Here's some online resources:<br><br><a href="http://tmml.sourceforge.net/doc/tcl/" class="postlink">Tcl Reference Manual</a><br><a href="http://tcl.tk/man/" class="postlink">Tcl/Tk Manual Pages</a><br><a href="http://en.wikipedia.org/wiki/Tcl" class="postlink">Tcl Wikipedia</a><br><a href="http://www.suninet.nl/tclguide/" class="postlink">Guide to TCL scripting for Eggdrop 1.6</a><br><a href="http://www.baschny.de/eggdrop/faq/faq-f.html" class="postlink"> The Eggdrop FAQ:  TCL-Scripting</a><br><a href="http://www.peterre.com/characters.html" class="postlink">How to write eggdrop scripts that won't choke on special characters</a><p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=24">greenbear</a> — Mon Nov 01, 2004 2:23 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Ulath]]></name></author>
		<updated>2004-11-01T13:48:34-04:00</updated>

		<published>2004-11-01T13:48:34-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=42454#p42454</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=42454#p42454"/>
		<title type="html"><![CDATA[Starting a Project - Advice requested]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=42454#p42454"><![CDATA[
Thanks for the responses.<br><br>I will play with that script and see how it goes after talking to my supervisor next week, the only problem I can see with it is it is hard to add additional protocols, for example AIM, but its a good starting point.<br><br>One last question, any one know any good books for C / TCL? <br>I took out "the C Programming Language" book today as a starting point for C, as it seems to be the definative reference, is there a similar one for TCL?<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=5605">Ulath</a> — Mon Nov 01, 2004 1:48 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[demond]]></name></author>
		<updated>2004-11-01T11:40:02-04:00</updated>

		<published>2004-11-01T11:40:02-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=42450#p42450</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=42450#p42450"/>
		<title type="html"><![CDATA[Starting a Project - Advice requested]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=42450#p42450"><![CDATA[
<blockquote class="uncited"><div>i guess you should be changing your msn password now  <img class="smilies" src="https://forum.eggheads.org/images/smilies/icon_confused.gif" width="15" height="15" alt=":-?" title="Confused"></div></blockquote>wrong guess <img class="smilies" src="https://forum.eggheads.org/images/smilies/icon_razz.gif" width="15" height="15" alt=":P" title="Razz"><p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=5056">demond</a> — Mon Nov 01, 2004 11:40 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[greenbear]]></name></author>
		<updated>2004-10-31T21:51:28-04:00</updated>

		<published>2004-10-31T21:51:28-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=42442#p42442</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=42442#p42442"/>
		<title type="html"><![CDATA[Starting a Project - Advice requested]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=42442#p42442"><![CDATA[
i guess you should be changing your msn password now  <img class="smilies" src="https://forum.eggheads.org/images/smilies/icon_confused.gif" width="15" height="15" alt=":-?" title="Confused"><p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=24">greenbear</a> — Sun Oct 31, 2004 9:51 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[demond]]></name></author>
		<updated>2004-10-31T20:09:59-04:00</updated>

		<published>2004-10-31T20:09:59-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=42441#p42441</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=42441#p42441"/>
		<title type="html"><![CDATA[Starting a Project - Advice requested]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=42441#p42441"><![CDATA[
you might want to check out centericq's libmsn as well<br><br>the proper way of implementing this would be an eggdrop interface module, which would add TCL commands interfacing gaim/libmsn functions, plus an eggdrop TCL script which would utilize these commands to create MSN functionality for IRC users<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=5056">demond</a> — Sun Oct 31, 2004 8:09 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[demond]]></name></author>
		<updated>2004-10-31T19:54:50-04:00</updated>

		<published>2004-10-31T19:54:50-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=42439#p42439</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=42439#p42439"/>
		<title type="html"><![CDATA[Starting a Project - Advice requested]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=42439#p42439"><![CDATA[
here's an unreleased script of mine which I've been using to get notified via MSN when a friend joins IRC; feel free to use it as you wish:<br><div class="codebox"><p>Code: </p><pre><code>set msn_version "v1.1"set msn_watchlist "+astra +MARI-ANA +foobar"set msn_passport "demond@gmx.net"set msn_password "parola"set msn_who "lubomirr@hotmail.com"set msn_header "MIME-Version: 1.0\r\nContent-Type: text/plain; charset=UTF-8\r\n"set msn_header2 "X-MMS-IM-Format: FN=Microsoft%20Sans%20Serif; EF=B; CO=0000FF; CS=0; PF=22\r\n"set msn_didx 0set msn_nidx 0set msn_sidx 0set msn_inuse 0proc msn {message} {global msn_didx msn_messageglobal msn_inuseif {$msn_inuse} {return}set msn_message $messageset msn_didx [connect messenger.hotmail.com 1863]control $msn_didx msn_controlputdcc $msn_didx "VER 0 MSNP7 MSNP6 MSNP5 MSNP4 CVR0"set msn_inuse 1utimer 15 "set msn_inuse 0"}proc msn_control {idx text} {global msn_didx msn_nidx msn_sidxglobal msn_passport msn_passwordglobal msn_message msn_whoglobal msn_header msn_header2if {$text != ""} {putlog "MSN&lt;&lt;&lt; $text"}set reply [lrange $text 0 1]if {$idx == $msn_didx} {if {$text == ""} {putlog "MSN&lt;&lt;&lt; (Dispatch closed connection)"; set msn_didx 0}switch $reply {"VER 0" {putdcc $msn_didx "INF 1"}"INF 1" {putdcc $msn_didx "USR 2 MD5 I $msn_passport"}"XFR 2" {set msn_nhost [lindex [split [lindex $text 3] :] 0]set msn_nport [lindex [split [lindex $text 3] :] 1]set msn_nidx [connect $msn_nhost $msn_nport]control $msn_nidx msn_controlputdcc $msn_nidx "VER 3 MSNP7 MSNP6 MSNP5 MSNP4 CVR0"}}}if {$idx == $msn_nidx} {if {$text == ""} {putlog "MSN&lt;&lt;&lt; (Notification closed connection)"; set msn_nidx 0}switch $reply {"VER 3" {putdcc $msn_nidx "INF 4"}"INF 4" {putdcc $msn_nidx "USR 5 MD5 I $msn_passport"}"USR 5" {set msn_hash [lindex $text 4]putdcc $msn_nidx "USR 6 MD5 S [md5 "${msn_hash}${msn_password}"]"}"USR 6" {putdcc $msn_nidx "CHG 7 NLN"}"CHG 7" {putdcc $msn_nidx "SYN 8 0"}"SYN 8" {utimer 5 "putdcc $msn_nidx \"ADD 9 AL $msn_who $msn_who\""}"ADD 9" {putdcc $msn_nidx "XFR 10 SB"}"215 9" {putdcc $msn_nidx "XFR 10 SB"}"XFR 10" {set msn_shost [lindex [split [lindex $text 3] :] 0]set msn_sport [lindex [split [lindex $text 3] :] 1]set msn_hash [lindex $text 5]set msn_sidx [connect $msn_shost $msn_sport]control $msn_sidx msn_controlputdcc $msn_sidx "USR 11 $msn_passport $msn_hash"}"CHL 0" {putdcc $msn_nidx "OUT"}}}if {$idx == $msn_sidx} {if {$text == ""} {putlog "MSN&lt;&lt;&lt; (Switchboard closed connection)"; set msn_sidx 0}switch -glob $reply {"USR 11" {putdcc $msn_sidx "CAL 12 $msn_who"}"JOI *" {set message "${msn_header}${msn_header2}\r\n${msn_message}"putdcc $msn_sidx "MSG 13 A [string length $message]"putdcc $msn_sidx $messageputlog "MSG 13 A [string length $message]\n$message"}}}}proc msn_initserver {type} {global msn_watchlistputhelp "WATCH $msn_watchlist"}proc msn_rawwatch {from keyword args} {set args [lindex $args 0]set nick [lindex $args 1]set user [lindex $args 2]set host [lindex $args 3]switch $keyword {"600" {set what "is on IRC!"}"601" {set what "has left IRC"}}msn "${nick}!${user}@${host} $what"}proc msn_msnsay {hand idx args} {set args [lindex $args 0]if {$args == ""} {putdcc $idx "Usage: .msnsay &lt;message&gt;"; return}putlog "#$hand# msnsay $args"msn "&lt;$hand&gt; $args"}bind evnt - init-server msn_initserverbind raw - 600 msn_rawwatchbind raw - 601 msn_rawwatchbind dcc o|o msnsay msn_msnsayputlog "MSN notify pager $msn_version by demond loaded"</code></pre></div>(IRC notification is done via WATCH command, which you might not have on your server; I ported it from DALnet's df to my ircd-hybrid-7-bg)<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=5056">demond</a> — Sun Oct 31, 2004 7:54 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Ulath]]></name></author>
		<updated>2004-10-31T17:06:54-04:00</updated>

		<published>2004-10-31T17:06:54-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=42436#p42436</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=42436#p42436"/>
		<title type="html"><![CDATA[Starting a Project - Advice requested]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=42436#p42436"><![CDATA[
I'm a third year CS student in England, and am starting my dissertation project, which I have the topic for myself, I intend to write something that in its simplest form allows messages to be sent from the MSN messenger network (or any IM network in theory), and arrive in a IRC channel, and back again - More features and so forth depend on how long it takes me to get this working.<br><br>I intend to use the gaim source code for connecting to the IM network, and an Eggdrop bot to handle the IRC side of things.<br><br>I've not yet coded anything, but hope to start this week. Just a few questions I'd like answers or opinons on:<br><br>1) Is it feasible? I have until next April, working on my own with my supervisors limited help. I'd say I'm an average programmer, not a genius one, but not someone who gets scared of anything apart from Java on Windows (what we get taught and that many of my classmates love, shunning everything else) - My fave language is Perl and I have done little bits of C, TCL, Python, shell. <br><br>2) What would be the best way of linking the 2 parts of the project together? My thoughts are either:<br> a TCL script that calls C functions (from gaim) for the IM connection &amp; msg sending/recieveing probably via an extension (or other method - Read something about procs?) <br><br>or:<br><br> An Eggdrop module which directly uses the gaim code. I'm not really sure about either, I have had a look at sample TCL scripts and Woobie (sample module), and can't decide which is better<br><br>3)Would there be interest If I released the project (after marking/moderation/whatever else they need to do), under GPL or similar license? My main reason for picking this topic is that it would be useful to me, just wondering if anyone else would have a use for it?<br><br>Any hints, suggestions, critisisms gratefully accepted. If you need any additional Info just ask.<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=5605">Ulath</a> — Sun Oct 31, 2004 5:06 pm</p><hr />
]]></content>
	</entry>
	</feed>
