00001 
00064 #import <Cocoa/Cocoa.h>
00065 #import "IRCClientSessionDelegate.h"
00066 #include "libircclient.h"
00067 
00080 @class IRCClientChannel;
00081 @interface IRCClientSession : NSObject {
00082         id                                      delegate;
00083         irc_callbacks_t         callbacks;
00084         irc_session_t           *session;
00085         NSThread                        *thread;
00086         
00087         NSString                        *version;
00088         NSString                        *server;
00089         NSString                        *port;
00090         NSString                        *password;
00091 
00092         NSString                        *nickname;
00093         NSString                        *username;
00094         NSString                        *realname;
00095         
00096         NSMutableDictionary     *channels;
00097         NSMutableDictionary *nicks;
00098         NSStringEncoding        encoding;
00099 }
00100 
00102 @property (assign) id delegate;
00103 
00105 @property (assign) irc_session_t *session;
00106 
00108 @property (copy) NSString *version;
00109 
00111 @property (copy) NSString *server;
00112 
00114 @property (copy) NSString *port;
00115 
00117 @property (copy) NSString *password;
00118 
00122 @property (copy) NSString *nickname;
00123 
00128 @property (copy) NSString *username;
00129 
00133 @property (copy) NSString *realname;
00134 
00138 @property (assign,readonly) NSMutableDictionary *channels;
00139 
00146 @property (assign) NSStringEncoding encoding;
00147 
00155 - (int)connect;
00156 
00162 - (void)disconnect;
00163 
00167 - (bool)isConnected;
00168 
00173 - (void)run;
00174 
00178 - (int)sendRawWithFormat:(NSString *)format, ...;
00179 
00186 - (int)quit:(NSString *)reason;
00187 
00194 - (int)join:(NSString *)channel key:(NSString *)key;
00195 
00201 - (int)list:(NSString *)channel;
00202 
00208 - (int)userMode:(NSString *)mode;
00209 
00215 - (int)nick:(NSString *)newnick;
00216 
00222 - (int)whois:(NSString *)nick;
00223 
00230 - (int)message:(NSString *)message to:(NSString *)target;
00231 
00238 - (int)action:(NSString *)action to:(NSString *)target;
00239 
00246 - (int)notice:(NSString *)notice to:(NSString *)target;
00247 
00254 - (int)ctcpRequest:(NSString *)request target:(NSString *)target;
00255 
00262 - (int)ctcpReply:(NSString *)reply target:(NSString *)target;
00263 
00264 @end