Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Skylink: iOS SDK for Native WebRTC Implementation

Skylink: iOS SDK for Native WebRTC Implementation

Avatar for Sudeep Agarwal

Sudeep Agarwal

May 18, 2015

Other Decks in Technology

Transcript

  1. Registration Dependencies Configuration Initialization Implementation Frameworks AudioToolbox AVFoundation CFNetwork CoreGraphics

    CoreMedia CoreVideo Foundation GLKit OpenGLES QuartzCore Security SystemConfiguration UIKit Skylink Libraries libicucore.dylib libm.dylib libsqlite3.dylib libsqlite3.dylib libstdc++.dylib libtemasys.a Dependencies SocketRocket ios-ntp pod ‘SKYLINK’
  2. Registration Dependencies Configuration Initialization Implementation skylinkConfig = [SKYLINKConnectionConfig new]; skylinkConfig.audio

    = YES; skylinkConfig.video = YES; skylinkConfig.fileTransfer = YES; skylinkConfig.dataChannel = YES; skylinkConfig.timeout = 30;
  3. Registration Dependencies Configuration Initialization Implementation skylink = [[SKYLINKConnection alloc] initWithConfig:

    skylinkConfig appKey:kAPIKey]; skylink.lifeCycleDelegate = self; skylink.remotePeerDelegate = self; skylink.mediaDelegate = self; skylink.messagesDelegate = self; skylink.fileTransferDelegate = self;
  4. Registration Dependencies Configuration Initialization Implementation Delegates // Life cycle delegate

    - (void)connection:(SKYLINKConnection*)connection didConnectWithMessage:(NSString*)errorMessage success:(BOOL)isSuccess // Remote peer delegate - (void)connection:(SKYLINKConnection *)connection didJoinPeer:(id)userInfo mediaProperties: (SKYLINKPeerMediaProperties *)pmProperties peerId:(NSString *)peerId // Messages delegate - (void)connection: (SKYLINKConnection*)connection didReceiveCustomMessage:(id)message public: (BOOL)isPublic peerId:(NSString*)peerId
  5. Registration Dependencies Configuration Initialization Implementation Delegates // Media delegate -

    (void)connection:(SKYLINKConnection*)connection didRenderPeerVideo:(UIView*)peerVideoView peerId:(NSString*)peerId // File transfer delegate - (void)connection:(SKYLINKConnection *)connection didCompleteTransfer (NSString *)filename fileData:(NSData *)fileData peerId:(NSString *)peerId
  6. skylink.io/ios documentation sample app skylink sdk [email protected] [email protected] iOS Senior

    Software Engineer iOS Engineering Intern Sajid Sudeep [email protected] Mobile SDK Lead Janidu tinyurl.com/skylinkios slides