Since build 2.6.8 it is possible to add custom HTTP headers while establishing Websocket connection to WCS server. To do this, use the following function

FPWCSApi2Session connectWithHeaders:(NSDictionary<NSString *, NSString *> *) headers

Suppose that Websocket traffic proxying with user authentication is configured on the server using nginx. In this case, user credentials should be passed in Websocket URL

wss://login:password@test.flashphoner.com/wss

In this case, Authorization HTTP header should be formed from Websocket URL and should be sent while connecting to the server as follows:

code

        NSURL* nsURL = [NSURL URLWithString:_urlInput.text];
        if (nsURL.user && nsURL.password) {
            NSString* auth = [NSString stringWithFormat:@"%@:%@", nsURL.user, nsURL.password];
            NSData *authData = [auth dataUsingEncoding:NSUTF8StringEncoding];
            NSString *authBase64 = [NSString stringWithFormat:@"Basic %@", [authData base64EncodedStringWithOptions:kNilOptions]];
            NSDictionary *headers = [[NSDictionary alloc] initWithObjectsAndKeys: authBase64, @"Authorization", nil];
            [_session connectWithHeaders: headers];
        } else {
            [_session connect];
        }