Files
onvif/functionmap.go
Cedric Verstraeten add8ae2bad Revert "disable imaging"
This reverts commit 6c5db5fed6.
2023-12-25 21:26:55 +01:00

37 lines
955 B
Go

package onvif
import (
"fmt"
)
func FunctionByServiceAndFunctionName(serviceName, functionName string) (Function, error) {
var functionMap map[string]Function
switch serviceName {
case DeviceWebService:
functionMap = DeviceFunctionMap
case MediaWebService:
functionMap = MediaFunctionMap
case Media2WebService:
functionMap = Media2FunctionMap
case PTZWebService:
functionMap = PTZFunctionMap
case EventWebService:
functionMap = EventFunctionMap
case AnalyticsWebService:
functionMap = AnalyticsFunctionMap
case ImagingWebService:
functionMap = ImagingFunctionMap
case RecordingWebService:
functionMap = RecordingFunctionMap
default:
return nil, fmt.Errorf("the web service '%s' is not supported", serviceName)
}
if function, found := functionMap[functionName]; !found {
return nil, fmt.Errorf("the web service '%s' does not support the function '%s'", serviceName, functionName)
} else {
return function, nil
}
}