Skip to content

5monkeys/socker-ios

Repository files navigation

Socker iOS client

Build Status

An iOS client for communicating with a socker websocket server which supports subscribing on multiple channels on a single connection. It is based on the very good SocketRocket library.

Installation

Add the following to your Podfile and run pod install

pod 'FMSocker'

Usage

Import the library:

#import <FMSocker/FMSocker.h>

Initiate the client with a url to your socker server:

FMSockerClient *sockerClient = [[FMSockerClient alloc] initWithURL:[NSURL URLWithString:@"wss://example.com"]]; // Connect to the server [sockerClient connect];

Subscribe on channels:

// Subscribe on foo channel [sockerClient subscribeOnChannel:@"foo" onMessage:^(FMSockerMessage *message, NSError *error){ if (!error) { NSLog(@"Got message on channel %@ with payload %@", message.name, message.data); } else { NSLog(@"Failed to parse message %@", [error localizedDescription]); } }]; // Subscribe on bar channel [sockerClient subscribeOnChannel:@"bar" onMessage:^(FMSockerMessage *message, NSError *error){ if (!error) { NSLog(@"Got message on channel %@ with payload %@", message.name, message.data); } else { NSLog(@"Failed to parse message %@", [error localizedDescription]); } }];

Send messages:

// Create a socker message FMSockerMessage *message = [[FMSockerMessage alloc] initWithName:@"testchannel" andData:@[ @"foo", @"bar" ]]; // Initiate the client with a url to your socker server FMSockerClient *sockerClient = [[FMSockerClient alloc] initWithURL:[NSURL URLWithString:@"wss://example.com"]]; // Connect to the server [sockerClient connect]; // Send the message NSError *error; [sockerClient sendSockerMessage:message error:&error]; 

Unsubscribe channels:

// Unsubscribe channel named foo [sockerClient unsubscribeChannel:@"foo"];

Unsubscribe all channels:

[sockerClient unsubscribeAll];

Disconnect websocket:

[sockerClient disconnect];

About

An iOS socker client for handling multiple channels on a single websocket connection

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors