¿Cómo puedo leer datos usando CocoaAsyncSocket?

He creado una connection TCP Socket en mi método appDelegate didFinishLaunchingWithOptions . Esa fue la parte fácil, y me he conectado con éxito a mi server. Estoy teniendo grandes dificultades para leer los datos del server en mi Vista. He estado buscando a través de tutoriales sobre cómo leer de manera apropiada (paso a paso) los datos usando CocoaAsyncSocket , pero no he encontrado nada útil.

Este es mi código desde mi appDelegate:

 -(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { socket = [[AsyncSocket alloc] initWithDelegate:self]; [self connect]; self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease]; // Override point for customization after application launch. self.viewController = [[[tekMatrixViewController alloc] initWithNibName:@"tekMatrixViewController" bundle:nil] autorelease]; self.window.rootViewController = self.viewController; [self.window makeKeyAndVisible]; return YES; } 

Y aquí está mi método de connection, en la parte inferior del file appDelegate:

 - (void)connect { [socket connectToHost:@"9.5.3.3" onPort:11005 error:nil]; } 

Esa fue la parte fácil. Ahora necesito leer datos del server. Sé que se debe crear algún tipo de object NSData o NSMutableData para tomar el valor de los datos que leo del server. Simplemente no he tenido éxito en encontrar algún tutorial o documentation que me indique en la dirección correcta. Hay varias funciones de lectura diferentes, algunas con diferentes parameters, etc. Si alguien puede apuntarme a un recurso que lo explique en profundidad * (Soy un novato, después de todo = P) * Realmente lo agradecería – O si alguien sabe de una manera fácil de lograr este objective y no le importaría proporcionar código de muestra aquí: D

Esta es la biblioteca que estoy usando: CocoaAsyncSocket . Estoy usando la biblioteca AsyncSocket.h y AsyncSocket.m

He estado atrapado en esto durante horas, así que cualquier ayuda sería muy apreciada.

¡Gracias!

Esto debería funcionar:

 - (void)onSocket:(AsyncSocket *)sock didReadData:(NSData *)data withTag:(long)tag { NSData *strData = [data subdataWithRange:NSMakeRange(0, [data length])]; NSString *msg = [[NSString alloc] initWithData:strData encoding:NSUTF8StringEncoding]; if(msg) { NSLog(@"RX:%@",msg); } } 

También debe implementar algunos otros methods de delegado, por ejemplo:

 - (void)onSocket:(AsyncSocket *)sock willDisconnectWithError:(NSError *)err { NSLog(@"error - disconnecting"); //you'd probably want to start reconnecting procedure here... } - (void)onSocketDidDisconnect:(AsyncSocket *)sock { NSLog(@"disconnected"); } - (void)onSocket:(AsyncSocket *)sock didConnectToHost:(NSString *)host port:(UInt16)port { NSLog(@"connected"); } 

EDITAR: si la memory me sirve, hay cierta documentation y algunos ejemplos disponibles con la biblioteca.