New Check URLTest

This commit is contained in:
chen08209
2024-05-05 21:40:12 +08:00
parent 5c71992174
commit feb9688a29
13 changed files with 482 additions and 289 deletions

View File

@@ -7,6 +7,7 @@ import (
"fmt"
"github.com/metacubex/mihomo/adapter"
"github.com/metacubex/mihomo/adapter/outboundgroup"
"github.com/metacubex/mihomo/adapter/provider"
"github.com/metacubex/mihomo/common/utils"
"github.com/metacubex/mihomo/config"
"github.com/metacubex/mihomo/constant"
@@ -243,8 +244,7 @@ func getProviders() *C.char {
func getProvider(name *C.char) *C.char {
providerName := C.GoString(name)
providers := tunnel.Providers()
var provider = providers[providerName]
data, err := json.Marshal(provider)
data, err := json.Marshal(providers[providerName])
if err != nil {
return C.CString("")
}
@@ -257,3 +257,29 @@ func initNativeApiBridge(api unsafe.Pointer, port C.longlong) {
i := int64(port)
bridge.Port = &i
}
func init() {
provider.HealthcheckHook = func(name string, delay uint16) {
delayData := &Delay{
Name: name,
}
if delay == 0 {
delayData.Value = -1
} else {
delayData.Value = int32(delay)
}
bridge.SendMessage(bridge.Message{
Type: bridge.Delay,
Data: delayData,
})
}
adapter.NowChangeHook = func(name, value string) {
bridge.SendMessage(bridge.Message{
Type: bridge.Now,
Data: Now{
Name: name,
Value: value,
},
})
}
}