jiti-meet/ios
Daniel Ornelas 8a01067b62 Added post-script to the Release configuraiton to build iOS SDK as Universal framework 2017-06-23 19:39:53 -05:00
..
app [iOS] Link with WebRTC.framework at the top level 2017-06-19 11:03:13 -05:00
jitsi-meet.xcworkspace [RN] Consistency in Jitsi Meet SDK for iOS 2017-06-08 01:13:12 -05:00
scripts [iOS] Link with WebRTC.framework at the top level 2017-06-19 11:03:13 -05:00
sdk Added post-script to the Release configuraiton to build iOS SDK as Universal framework 2017-06-23 19:39:53 -05:00
Podfile [RN] Consistency in Jitsi Meet SDK for iOS 2017-06-08 01:13:12 -05:00
README.md [RN] Naming 2017-06-09 14:51:31 -05:00
apple-app-site-association [iOS] Prepare for App Store release 2016-11-13 18:45:40 -06:00

README.md

Jitsi Meet SDK for iOS

This directory contains the source code of the Jitsi Meet app and the Jitsi Meet SDK for iOS.

Jitsi Meet SDK

JitsiMeet is an iOS framework which embodies the whole Jitsi Meet experience and makes it reusable by third-party apps.

To get started:

  1. Add a JitsiMeetView to your app using a Storyboard or Interface Builder, for example.

  2. Then, once the view has loaded, set the delegate in your controller and load the desired URL:

- (void)viewDidLoad {
  [super viewDidLoad];

  JitsiMeetView *view = (JitsiMeetView *) self.view;

  view.delegate = self;
  [view loadURL:nil];
}

JitsiMeetView class

The JitsiMeetView class is the entry point to the SDK. It a subclass of UIView which renders a full conference in the designated area.

delegate

Property for getting / setting the JitsiMeetViewDelegate on JitsiMeetView.

welcomePageEnabled

Property for getting / setting whether the Welcome page is enabled. If NO, a black empty view will be rendered when not in a conference. Defaults to NO.

NOTE: Must be set before calling loadURL for it to take effect.

loadURL(URL)

[meetView loadURL:[NSURL URLWithString:@"https://meet.jit.si/test123"]];

Loads the given URL and joins the room. If null is specified, the welcome page is displayed instead.

Universal / deep linking

In order to support Universal / deep linking, JitsiMeetView offers 2 class methods that you app's delegate should call in order for the app to follow those links.

-  (BOOL)application:(UIApplication *)application
continueUserActivity:(NSUserActivity *)userActivity
  restorationHandler:(void (^)(NSArray *restorableObjects))restorationHandler
{
  return [JitsiMeetView application:application
               continueUserActivity:userActivity
                 restorationHandler:restorationHandler];
}

- (BOOL)application:(UIApplication *)application
            openURL:(NSURL *)url
  sourceApplication:(NSString *)sourceApplication
         annotation:(id)annotation
{
  return [JitsiMeetView application:application
                            openURL:url
                  sourceApplication:sourceApplication
                         annotation:annotation];
}

JitsiMeetViewDelegate

This delegate is optional, and can be set on the JitsiMeetView instance using the delegate property.

It provides information about the conference state: was it joined, left, did it fail?

All methods in this delegate are optional.

conferenceFailed

Called when a joining a conference was unsuccessful or when there was an error while in a conference.

The data dictionary contains an "error" key describing the error and a "url" key with the conference URL.

conferenceJoined

Called when a conference was joined.

The data dictionary contains a "url" key with the conference URL.

conferenceLeft

Called when a conference was left.

The data dictionary contains a "url" key with the conference URL.

conferenceWillJoin

Called before a conference is joined.

The data dictionary contains a "url" key with the conference URL.

conferenceWillLeave

Called before a conference is left.

The data dictionary contains a "url" key with the conference URL.