Skip to content

Bug in ONVIF events #2302

Description

@Bigmanekb

budget OEM cameras (e.g. OMNY)
return an empty <wsa:Address/> in the SubscriptionReference of a
CreatePullPointSubscription response. pkg/onvif/events.go then errors with
onvif: no subscription address in response and ONVIF motion never works. Falling
back to the event service endpoint URL (which accepts PullMessages directly) fixes
it:

 	addr := FindTagValue(b, "Address")
+	var resolved string
 	if addr == "" {
-		return nil, errors.New("onvif: no subscription address in response")
+		// Empty <wsa:Address/> (some OEM firmware): fall back to the event
+		// service endpoint, which accepts PullMessages directly.
+		resolved = c.eventURL
+	} else {
+		resolved = c.resolveEventAddress(addr)
 	}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions