XMPP.Framework simple client example
Header file:
#import <XMPP/XMPP.h>
@interface OurClass : NSObject
{
XMPPConn *conn;
}
-(id)init;
-(void)dealloc;
-(void)connection:(XMPPConn *)con isInState:(XMPPConnState)state;
-(void)gotMessage:(XMPPMsg *)msg fromConnection:(XMPPConn *)con;
@end
And source file
@implementation OurClass
-(id)init
{
BXJID *jid = [[BXJID alloc] initWithJIDString:@"guest@home.com"];
conn = [[XMPPConn alloc] initWithJID:jid];
[jid release];
[conn setDelegate:self];
[conn connect];
}
-(void)dealloc
{
if ([conn isConnected])
{
[conn disconnect];
}
[conn release];
}
-(void)connection:(XMPPConn *)con isInState:(XMPPConnState)state
{
XMPPMsg *msg = nil;
BXJID *jid = nil;
if (state == XMPPConnStateConnected)
{
[[jid alloc] initWithJIDString:@"landlord@home.com/Somewhere"];
[conn setPresence:XMPPPresenceAvaliable status:@"Searching..." andPriority:5];
[[msg alloc] initWithTo:jid];
[[msg setSubject:@"Hello?"];
[[msg setBody:@"Anyone there?"];
[conn sendMsg:msg];
[msg release];
[jid release];
}
}
-(void)gotMessage:(XMPPMsg *)msg fromConnection:(XMPPConn *)con
{
NSLog(@"Got message from %@\n Subject: %@\n Body:\n %@\n", [[msg from] toString], [msg subject], [msg body]);
}
@end
Simple, isn't it? :D
