From 430f957711344f9b27f47b2b37fd0681d271a8a6 Mon Sep 17 00:00:00 2001 From: Hao-kang Den Date: Fri, 18 Apr 2014 13:07:13 +0800 Subject: [PATCH] allow multiple parameters --- SocketIO.h | 2 ++ SocketIO.m | 19 +++++++++++++++++++ 2 files changed, 21 insertions(+) diff --git a/SocketIO.h b/SocketIO.h index 2fbb12e..d218f16 100755 --- a/SocketIO.h +++ b/SocketIO.h @@ -115,6 +115,8 @@ typedef enum { - (void) sendJSON:(NSDictionary *)data withAcknowledge:(SocketIOCallback)function; - (void) sendEvent:(NSString *)eventName withData:(id)data; - (void) sendEvent:(NSString *)eventName withData:(id)data andAcknowledge:(SocketIOCallback)function; +- (void) sendEvent:(NSString *)eventName withMultepleData:(NSArray *)list; +- (void) sendEvent:(NSString *)eventName withMultepleData:(NSArray *)list andAcknowledge:(SocketIOCallback)function; - (void) sendAcknowledgement:(NSString*)pId withArgs:(NSArray *)data; - (void) setResourceName:(NSString *)name; diff --git a/SocketIO.m b/SocketIO.m index 61ff67a..215b68b 100755 --- a/SocketIO.m +++ b/SocketIO.m @@ -249,6 +249,25 @@ - (void) sendEvent:(NSString *)eventName withData:(id)data andAcknowledge:(Socke [self send:packet]; } +- (void) sendEvent:(NSString *)eventName withMultepleData:(NSArray *)list +{ + [self sendEvent:eventName withMultepleData:list andAcknowledge:nil]; +} + +- (void) sendEvent:(NSString *)eventName withMultepleData:(NSArray *)list andAcknowledge:(SocketIOCallback)function +{ + NSMutableDictionary *dict = [NSMutableDictionary dictionaryWithObject:eventName forKey:@"name"]; + + [dict setObject:list forKey:@"args"]; + SocketIOPacket *packet = [[SocketIOPacket alloc] initWithType:@"event"]; + packet.data = [SocketIOJSONSerialization JSONStringFromObject:dict error:nil]; + packet.pId = [self addAcknowledge:function]; + if (function) { + packet.ack = @"data"; + } + [self send:packet]; +} + - (void) sendAcknowledgement:(NSString *)pId withArgs:(NSArray *)data { SocketIOPacket *packet = [[SocketIOPacket alloc] initWithType:@"ack"];