A ResolveMatches message is a WS-Discovery message sent in response to a client's Resolve message by a matching service. For more information about ResolveMatches messages, see section 6.2 of the WS-Discovery Specification.
A ResolveMatches message is sent by UDP unicast to port 3702 (the port from which the client's Resolve message was sent). ResolveMatches must be sent within 4 seconds of the Resolve message; otherwise, Windows Firewall may drop the packet.
Any DPWS application that sends Resolve messages will receive ResolveMatches messages.
This topic shows a sample DPWS message generated by WSDAPI clients and hosts. WSDAPI will parse and accept other DPWS-compliant messages that do not conform to this sample. Do not use this sample to verify DPWS interoperability; use the WSDAPI Basic Interoperability Tool (WSDBIT) instead.
The following SOAP message shows a sample ResolveMatches message.
<?xml version="1.0" encoding="utf-8" ?> <soap:Envelope xmlns:soap="https://www.w3.org/2003/05/soap-envelope" xmlns:wsa="https://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsd="https://schemas.xmlsoap.org/ws/2005/04/discovery" xmlns:wsdp="https://schemas.xmlsoap.org/ws/2006/02/devprof"> <soap:Header> <wsa:To> https://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous </wsa:To> <wsa:Action> https://schemas.xmlsoap.org/ws/2005/04/discovery/ResolveMatches </wsa:Action> <wsa:MessageID> urn:uuid:64ddd01c-b0d6-4afd-aba6-6f1f161ce9d4 </wsa:MessageID> <wsa:RelatesTo> urn:uuid:38d1c3d9-8d73-4424-8861-6b7ee2af24d3 </wsa:RelatesTo> <wsd:AppSequence InstanceId="1" SequenceId="urn:uuid:369a7d7b-5f87-48a4-aa9a-189edf2a8772" MessageNumber="6"> </wsd:AppSequence> </soap:Header> <soap:Body> <wsd:ResolveMatches> <wsd:ResolveMatch> <wsa:EndpointReference> <wsa:Address> urn:uuid:37f86d35-e6ac-4241-964f-1d9ae46fb366 </wsa:Address> </wsa:EndpointReference> <wsd:Types>wsdp:Device</wsd:Types> <wsd:XAddrs> https://192.168.0.2:5357/37f86d35-e6ac-4241-964f-1d9ae46fb366 </wsd:XAddrs> <wsd:MetadataVersion>2</wsd:MetadataVersion> </wsd:ResolveMatch> </wsd:ResolveMatches> </soap:Body> </soap:Envelope>
A ResolveMatches message has the following focus points.
||The ResolveMatches SOAP action identifies the message as a ResolveMatches message.|
||The identifier of the message to which the service is responding. This header matches the MessageId in the Resolve message.|
|AppSequence||Contains application sequencing information, which helps to maintain the sequence of messages even if they are received out of order. The AppSequence is validated as described in AppSequence Validation Rules.|
||Contains the address of the endpoint being resolved.|
||XAddrs are transport addresses that may be used for communication between client and service. Addrs are validated as described in XAddr Validation Rules.|