private void Login(string accessToken, string connectorHandle, AsyncNoResult ar, SubscriptionMode?mode = null) { vx_req_account_anonymous_login_t request = new vx_req_account_anonymous_login_t { account_handle = _accountHandle, connector_handle = connectorHandle, enable_buddies_and_presence = mode == null ? 0 : 1, acct_name = Key.AccountName, displayname = Key.DisplayName, languages = string.Join(",", Key.SpokenLanguages), access_token = accessToken, participant_property_frequency = (int)_participantPropertyFrequency }; if (mode != null) { request.buddy_management_mode = (vx_buddy_management_mode)mode.Value; } VxClient.Instance.BeginIssueRequest(request, result => { try { VxClient.Instance.EndIssueRequest(result); State = LoginState.LoggedIn; ar.SetComplete(); } catch (Exception e) { VivoxDebug.Instance.VxExceptionMessage($"{request.GetType().Name} failed: {e}"); State = LoginState.LoggedOut; ar.SetComplete(e); if (VivoxDebug.Instance.throwInternalExcepetions) { throw; } return; } }); }
internal static global::System.Runtime.InteropServices.HandleRef getCPtr(vx_req_account_anonymous_login_t obj) { return((obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr); }