mirror of
https://github.com/EasyTier/EasyTier.git
synced 2024-11-16 03:32:43 +08:00
858ade2eee
1. Add vpnservice tauri plugin for android. 2. add workflow for android. 3. Easytier Core support android, allow set tun fd.
36 lines
952 B
TypeScript
36 lines
952 B
TypeScript
import { invoke } from '@tauri-apps/api/core'
|
|
|
|
export async function ping(value: string): Promise<string | null> {
|
|
return await invoke<{ value?: string }>('plugin:vpnservice|ping', {
|
|
payload: {
|
|
value,
|
|
},
|
|
}).then((r) => (r.value ? r.value : null));
|
|
}
|
|
|
|
export interface InvokeResponse {
|
|
errorMsg?: string;
|
|
}
|
|
|
|
export interface StartVpnRequest {
|
|
ipv4Addr?: string;
|
|
routes?: string[];
|
|
dns?: string;
|
|
disallowedApplications?: string[];
|
|
mtu?: number;
|
|
}
|
|
|
|
export async function prepare_vpn(): Promise<InvokeResponse | null> {
|
|
return await invoke<InvokeResponse>('plugin:vpnservice|prepare_vpn', {})
|
|
}
|
|
|
|
export async function start_vpn(request: StartVpnRequest): Promise<InvokeResponse | null> {
|
|
return await invoke<InvokeResponse>('plugin:vpnservice|start_vpn', {
|
|
...request,
|
|
})
|
|
}
|
|
|
|
export async function stop_vpn(): Promise<InvokeResponse | null> {
|
|
return await invoke<InvokeResponse>('plugin:vpnservice|stop_vpn', {})
|
|
}
|