# VPNCMD

<badges>[![version](https://img.shields.io/pypi/v/vpncmd.svg)](https://pypi.org/project/vpncmd/)
[![license](https://img.shields.io/pypi/l/vpncmd.svg)](https://pypi.org/project/vpncmd/)
[![pyversions](https://img.shields.io/pypi/pyversions/vpncmd.svg)](https://pypi.org/project/vpncmd/)  
[![powered](https://img.shields.io/badge/Say-Thanks-ddddff.svg)](https://saythanks.io/to/foxe6)
[![donate](https://img.shields.io/badge/Donate-Paypal-0070ba.svg)](https://paypal.me/foxe6)
[![made](https://img.shields.io/badge/Made%20with-PyCharm-red.svg)](https://paypal.me/foxe6)
</badges>

<i>API for Softether VPN (vpncmd) with automatic connection to VPNs provided by VPN Gate.</i>

# Hierarchy

```
vpncmd
|---- setup_cmd()
|---- cmd()
|---- connect_known_vpn()
|---- connect_random_vpn()
|---- disconnect_vpn()
|---- is_connected_to_vpn()
|---- filter_vpns()
|---- VPN_Server_VPN_Bridge_Management_For_Entire_Server
|   |---- About()
|   |---- ServerInfoGet()
|   |---- ServerStatusGet()
|   |---- ListenerCreate()
|   |---- ListenerDelete()
|   |---- ListenerList()
|   |---- ListenerEnable()
|   |---- ListenerDisable()
|   |---- ServerPasswordSet()
|   |---- ClusterSettingGet()
|   |---- ClusterSettingStandalone()
|   |---- ClusterSettingController()
|   |---- ClusterSettingMember()
|   |---- ClusterMemberList()
|   |---- ClusterMemberInfoGet()
|   |---- ClusterMemberCertGet()
|   |---- ClusterConnectionStatusGet()
|   |---- ServerCertGet()
|   |---- ServerKeyGet()
|   |---- ServerCertSet()
|   |---- ServerCipherGet()
|   |---- ServerCipherSet()
|   |---- Debug()
|   |---- Crash()
|   |---- Flush()
|   |---- KeepEnable()
|   |---- KeepDisable()
|   |---- KeepSet()
|   |---- KeepGet()
|   |---- SyslogEnable()
|   |---- SyslogDisable()
|   |---- SyslogGet()
|   |---- ConnectionList()
|   |---- ConnectionGet()
|   |---- ConnectionDisconnect()
|   |---- BridgeDeviceList()
|   |---- BridgeList()
|   |---- BridgeCreate()
|   |---- BridgeDelete()
|   |---- Caps()
|   |---- Reboot()
|   |---- ConfigGet()
|   |---- ConfigSet()
|   |---- RouterList()
|   |---- RouterAdd()
|   |---- RouterDelete()
|   |---- RouterStart()
|   |---- RouterStop()
|   |---- RouterIfList()
|   |---- RouterIfAdd()
|   |---- RouterIfDel()
|   |---- RouterTableList()
|   |---- RouterTableAdd()
|   |---- RouterTableDel()
|   |---- LogFileList()
|   |---- LogFileGet()
|   |---- HubCreate()
|   |---- HubCreateDynamic()
|   |---- HubCreateStatic()
|   |---- HubDelete()
|   |---- HubSetStatic()
|   |---- HubSetDynamic()
|   |---- HubList()
|   |---- Hub()
|   |---- MakeCert()
|   |---- TrafficClient()
|   |---- TrafficServer()
|   |---- Check()
|   |---- IPsecEnable()
|   |---- IPsecGet()
|   |---- EtherIpClientAdd()
|   |---- EtherIpClientDelete()
|   |---- EtherIpClientList()
|   |---- OpenVpnEnable()
|   |---- OpenVpnGet()
|   |---- OpenVpnMakeConfig()
|   |---- SstpEnable()
|   |---- SstpGet()
|   |---- ServerCertRegenerate()
|   |---- VpnOverIcmpDnsEnable()
|   |---- VpnOverIcmpDnsGet()
|   |---- DynamicDnsGetStatus()
|   |---- DynamicDnsSetHostname()
|   |---- VpnAzureGetStatus()
|   '---- VpnAzureSetEnable()
|---- VPN_Server_VPN_Bridge_Management_For_Virtual_Hub
|   |---- Online()
|   |---- Offline()
|   |---- SetMaxSession()
|   |---- SetHubPassword()
|   |---- SetEnumAllow()
|   |---- SetEnumDeny()
|   |---- OptionsGet()
|   |---- RadiusServerSet()
|   |---- RadiusServerDelete()
|   |---- RadiusServerGet()
|   |---- StatusGet()
|   |---- LogGet()
|   |---- LogEnable()
|   |---- LogDisable()
|   |---- LogSwitchSet()
|   |---- LogPacketSaveType()
|   |---- CAList()
|   |---- CAAdd()
|   |---- CADelete()
|   |---- CAGet()
|   |---- CascadeList()
|   |---- CascadeCreate()
|   |---- CascadeSet()
|   |---- CascadeGet()
|   |---- CascadeDelete()
|   |---- CascadeUsernameSet()
|   |---- CascadeAnonymousSet()
|   |---- CascadePasswordSet()
|   |---- CascadeCertSet()
|   |---- CascadeCertGet()
|   |---- CascadeEncryptEnable()
|   |---- CascadeEncryptDisable()
|   |---- CascadeCompressEnable()
|   |---- CascadeCompressDisable()
|   |---- CascadeProxyNone()
|   |---- CascadeProxyHttp()
|   |---- CascadeProxySocks()
|   |---- CascadeServerCertEnable()
|   |---- CascadeServerCertDisable()
|   |---- CascadeServerCertSet()
|   |---- CascadeServerCertDelete()
|   |---- CascadeServerCertGet()
|   |---- CascadeDetailSet()
|   |---- CascadePolicySet()
|   |---- PolicyList()
|   |---- CascadeStatusGet()
|   |---- CascadeRename()
|   |---- CascadeOnline()
|   |---- CascadeOffline()
|   |---- AccessAdd()
|   |---- AccessAddEx()
|   |---- AccessAdd6()
|   |---- AccessAddEx6()
|   |---- AccessList()
|   |---- AccessDelete()
|   |---- AccessEnable()
|   |---- AccessDisable()
|   |---- UserList()
|   |---- UserCreate()
|   |---- UserSet()
|   |---- UserDelete()
|   |---- UserGet()
|   |---- UserAnonymousSet()
|   |---- UserPasswordSet()
|   |---- UserCertSet()
|   |---- UserCertGet()
|   |---- UserSignedSet()
|   |---- UserRadiusSet()
|   |---- UserNTLMSet()
|   |---- UserPolicyRemove()
|   |---- UserPolicySet()
|   |---- UserExpiresSet()
|   |---- GroupList()
|   |---- GroupCreate()
|   |---- GroupSet()
|   |---- GroupDelete()
|   |---- GroupGet()
|   |---- GroupJoin()
|   |---- GroupUnjoin()
|   |---- GroupPolicyRemove()
|   |---- GroupPolicySet()
|   |---- SessionList()
|   |---- SessionGet()
|   |---- SessionDisconnect()
|   |---- MacTable()
|   |---- MacDelete()
|   |---- IpTable()
|   |---- IpDelete()
|   |---- SecureNatEnable()
|   |---- SecureNatDisable()
|   |---- SecureNatStatusGet()
|   |---- SecureNatHostGet()
|   |---- SecureNatHostSet()
|   |---- NatGet()
|   |---- NatEnable()
|   |---- NatDisable()
|   |---- NatSet()
|   |---- NatTable()
|   |---- DhcpGet()
|   |---- DhcpEnable()
|   |---- DhcpDisable()
|   |---- DhcpSet()
|   |---- DhcpTable()
|   |---- AdminOptionList()
|   |---- AdminOptionSet()
|   |---- ExtOptionList()
|   |---- ExtOptionSet()
|   |---- CrlList()
|   |---- CrlAdd()
|   |---- CrlDel()
|   |---- CrlGet()
|   |---- AcList()
|   |---- AcAdd()
|   |---- AcDel()
|   '---- AcAdd6()
|---- VPN_Client_Management
|   |---- About()
|   |---- VersionGet()
|   |---- PasswordSet()
|   |---- PasswordGet()
|   |---- CertList()
|   |---- CertAdd()
|   |---- CertDelete()
|   |---- CertGet()
|   |---- SecureList()
|   |---- SecureSelect()
|   |---- SecureGet()
|   |---- NicCreate()
|   |---- NicDelete()
|   |---- NicUpgrade()
|   |---- NicGetSetting()
|   |---- NicSetSetting()
|   |---- NicEnable()
|   |---- NicDisable()
|   |---- NicList()
|   |---- AccountList()
|   |---- AccountCreate()
|   |---- AccountSet()
|   |---- AccountGet()
|   |---- AccountDelete()
|   |---- AccountUsernameSet()
|   |---- AccountAnonymousSet()
|   |---- AccountPasswordSet()
|   |---- AccountCertSet()
|   |---- AccountCertGet()
|   |---- AccountEncryptDisable()
|   |---- AccountEncryptEnable()
|   |---- AccountCompressEnable()
|   |---- AccountCompressDisable()
|   |---- AccountProxyNone()
|   |---- AccountProxyHttp()
|   |---- AccountProxySocks()
|   |---- AccountServerCertEnable()
|   |---- AccountServerCertDisable()
|   |---- AccountServerCertSet()
|   |---- AccountServerCertDelete()
|   |---- AccountServerCertGet()
|   |---- AccountDetailSet()
|   |---- AccountRename()
|   |---- AccountConnect()
|   |---- AccountDisconnect()
|   |---- AccountStatusGet()
|   |---- AccountNicSet()
|   |---- AccountStatusShow()
|   |---- AccountStatusHide()
|   |---- AccountSecureCertSet()
|   |---- AccountRetrySet()
|   |---- AccountStartupSet()
|   |---- AccountStartupRemove()
|   |---- AccountExport()
|   |---- AccountImport()
|   |---- RemoteEnable()
|   |---- RemoteDisable()
|   |---- KeepEnable()
|   |---- KeepDisable()
|   |---- KeepSet()
|   |---- KeepGet()
|   |---- MakeCert()
|   |---- TrafficClient()
|   |---- TrafficServer()
|   '---- Check()
'---- VPN_Tools
    |---- About()
    |---- MakeCert()
    |---- TrafficClient()
    |---- TrafficServer()
    '---- Check()
```

# Example

## python
See `test`.