• Guides & Articles
  • API Documentation

    Show / Hide Table of Contents
    • VpnSDK.Public
      • OpenVpnConfiguration
      • OpenVpnConnectionConfigurationBuilder
      • PositionInfoEventArgs
      • RasConfiguration
      • RasConnectionConfigurationBuilder
      • SDKBuilder
    • VpnSDK.Public.Enums
      • AuthenticationStatus
      • ConnectionStatus
      • NetworkConnectionType
      • NetworkProtocolType
      • OpenVpnCipherType
      • PositionInfoStatus
      • RefreshLocationListStatus
    • VpnSDK.Public.Exceptions
      • VpnSDKAPIException
      • VpnSDKAuthenticationException
      • VpnSDKBaseException
      • VpnSDKConnectionAlreadyEstablishedException
      • VpnSDKConnectionException
      • VpnSDKConnectionTerminatedException
      • VpnSDKCoreException
      • VpnSDKEmptyAvailableVpnProtocolsException
      • VpnSDKFetchLocationsException
      • VpnSDKInvalidConfigurationException
      • VpnSDKNotAuthorizedException
      • VpnSDKNullLocationException
      • VpnSDKOAuthException
      • VpnSDKUnsupportedProtocolException
      • VpnSDKVPNAuthenticationException
    • VpnSDK.Public.Extensions
      • ExceptionExtensions
      • LoadLevel
      • RegionLoadChecker
    • VpnSDK.Public.Helpers
      • VpnProtocolDiagnostics
    • VpnSDK.Public.Interfaces
      • IBestAvailable
      • IConnectionConfiguration
      • ILocation
      • IOpenVpnConnectionConfiguration
      • IRasConnectionConfiguration
      • IRegion
      • ISDK
      • IServer
      • IUser
    • VpnSDK.Public.Messages
      • RefreshLocationListMessage

    Interface ISDK

    Interface ISDK. Provides an interface for the SDK APIs.

    Namespace: VpnSDK.Public.Interfaces
    Assembly: VpnSDK.dll
    Syntax
    public interface ISDK

    Properties

    AllowLANTraffic

    Gets or sets a value indicating whether to allow LAN traffic even when AllowOnlyVPNConnectivity is enabled.

    Declaration
    bool AllowLANTraffic { get; set; }
    Property Value
    Type Description
    Boolean

    true if [allow lan traffic]; otherwise, false.

    AllowOnlyVPNConnectivity

    Gets or sets a value indicating whether to allow only VPN connectivity and block standard internet connections.

    Declaration
    bool AllowOnlyVPNConnectivity { get; set; }
    Property Value
    Type Description
    Boolean

    true if [allow only VPN connectivity]; otherwise, false.

    RegionsList

    Gets a value that represents the observable list of regions

    Declaration
    SourceList<ILocation> RegionsList { get; }
    Property Value
    Type Description
    DynamicData.SourceList<ILocation>

    the observable list

    WhenAccountInfoChanged

    Gets the observable responsible for when the user account information changed.

    Declaration
    IObservable<IUser> WhenAccountInfoChanged { get; }
    Property Value
    Type Description
    IObservable<IUser>

    An observable that fires when the user account information changed.

    WhenLocationListChanged

    Gets an observable for when the location list has changed. This must be subscribed to for RegionsList updates.

    Declaration
    IObservable<RefreshLocationListMessage> WhenLocationListChanged { get; }
    Property Value
    Type Description
    IObservable<RefreshLocationListMessage>

    Observable providing when the server location list has changed.

    WhenUserLocationChanged

    Gets an observable for when the user location has changed.

    Declaration
    IObservable<PositionInfoEventArgs> WhenUserLocationChanged { get; }
    Property Value
    Type Description
    IObservable<PositionInfoEventArgs>

    Observable providing when the user location has changed.

    Methods

    CancelConnectionProcess()

    Cancels any current connection process handled by the ISDK instance.

    Declaration
    void CancelConnectionProcess()

    Connect(ILocation, IConnectionConfiguration)

    Connects the user to the VPN location specified using the specified configuration

    Declaration
    IObservable<ConnectionStatus> Connect(ILocation location, IConnectionConfiguration connectionConfiguration)
    Parameters
    Type Name Description
    ILocation location

    The target location.

    IConnectionConfiguration connectionConfiguration

    The protocol configuration parameters for the connection.

    Returns
    Type Description
    IObservable<ConnectionStatus>

    An observable to allow the invoker to monitor the status of the connection.

    Disconnect()

    Disconnect the user from the active VPN connection.

    Declaration
    IObservable<ConnectionStatus> Disconnect()
    Returns
    Type Description
    IObservable<ConnectionStatus>

    An observable to allow the invoker to monitor the status of the disconnection process.

    GetAvailableVpnTypes()

    Gets the available VPN types.

    Declaration
    Dictionary<NetworkConnectionType, bool> GetAvailableVpnTypes()
    Returns
    Type Description
    Dictionary<NetworkConnectionType, Boolean>

    Dictionary<NetworkConnectionType, System.Boolean>.

    Login(String, String)

    Logins the specified username and provides an observable process.

    Declaration
    IObservable<AuthenticationStatus> Login(string username, string password)
    Parameters
    Type Name Description
    String username

    The username.

    String password

    The password.

    Returns
    Type Description
    IObservable<AuthenticationStatus>

    IObservable<AuthenticationStatus>.

    Logout()

    Logouts this instance and provides an observable process.

    Declaration
    IObservable<AuthenticationStatus> Logout()
    Returns
    Type Description
    IObservable<AuthenticationStatus>

    IObservable<AuthenticationStatus>.

    Back to top Pre-release documentation. These do not represent the final product and are subject to change.