44 lines
1.7 KiB
Mathematica
44 lines
1.7 KiB
Mathematica
|
/*
|
||
|
* Copyright 2014 The WebRTC Project Authors. All rights reserved.
|
||
|
*
|
||
|
* Use of this source code is governed by a BSD-style license
|
||
|
* that can be found in the LICENSE file in the root of the source
|
||
|
* tree. An additional intellectual property rights grant can be found
|
||
|
* in the file PATENTS. All contributing project authors may
|
||
|
* be found in the AUTHORS file in the root of the source tree.
|
||
|
*/
|
||
|
|
||
|
#import "RTCIceServer+JSON.h"
|
||
|
|
||
|
static NSString const *kRTCICEServerUsernameKey = @"username";
|
||
|
static NSString const *kRTCICEServerPasswordKey = @"password";
|
||
|
static NSString const *kRTCICEServerUrisKey = @"uris";
|
||
|
static NSString const *kRTCICEServerUrlKey = @"urls";
|
||
|
static NSString const *kRTCICEServerCredentialKey = @"credential";
|
||
|
|
||
|
@implementation RTCIceServer (JSON)
|
||
|
|
||
|
+ (RTCIceServer *)serverFromJSONDictionary:(NSDictionary *)dictionary {
|
||
|
NSString *url = dictionary[kRTCICEServerUrlKey];
|
||
|
NSString *username = dictionary[kRTCICEServerUsernameKey];
|
||
|
NSString *credential = dictionary[kRTCICEServerCredentialKey];
|
||
|
username = username ? username : @"";
|
||
|
credential = credential ? credential : @"";
|
||
|
return [[RTCIceServer alloc] initWithURLStrings:@[url]
|
||
|
username:username
|
||
|
credential:credential];
|
||
|
}
|
||
|
|
||
|
+ (RTCIceServer *)serverFromCEODJSONDictionary:(NSDictionary *)dictionary {
|
||
|
NSString *username = dictionary[kRTCICEServerUsernameKey];
|
||
|
NSString *password = dictionary[kRTCICEServerPasswordKey];
|
||
|
NSArray *uris = dictionary[kRTCICEServerUrisKey];
|
||
|
RTCIceServer *server =
|
||
|
[[RTCIceServer alloc] initWithURLStrings:uris
|
||
|
username:username
|
||
|
credential:password];
|
||
|
return server;
|
||
|
}
|
||
|
|
||
|
@end
|