3.1.4.1 GetLocations

The following excerpt from this protocol's WSDL specifies the messages that constitute this operation.

<wsdl:operation name="GetLocations">
  <wsdl:input wsaw:Action="LIService/GetLocations" name="GetLocationsRequest" message="tns:GetLocationsRequest" />
  <wsdl:output wsaw:Action="LIService/GetLocationsResponse" name="GetLocationsResponse" message="tns:GetLocationsResponse" />
</wsdl:operation>

When a client needs to request a location, a Transmission Control Protocol (TCP) connection MUST be made to the server and Secure Sockets Layer (SSL) MUST be negotiated. The address of the server that makes the TCP connection can be obtained through a different channel, such as SIP. After successful SSL negotiation, a SOAP HTTP request, GetLocationsRequest message, MUST be constructed with a SOAP body containing the GetLocationsRequest element.

On receiving a GetLocationsRequest request, the server queries its repository of locations to get all of the locations that match the network identifiers specified in the request. The order in which these locations are looked up by using the network identifiers is WAPBSSID, ChassisID+PortID, ChassisID, SubnetID, MAC. This order, however, is implementation-specific and depends on what is considered the most-appropriate location match by the server. After obtaining a location match, the server MUST construct the GetLocationsResponse message, containing the GetLocationsResponse element, and it MUST send the message in the SOAP HTTP response, which is a 2xx response to a SOAP HTTP request. In case of errors, the GetLocationsResponse message MUST specify the error that was encountered by the server, and the error MUST be sent in the 2xx SOAP HTTP response. The GetLocationsResponse message is specified in section 3.1.4.1.1.2. Errors in protocols and in the security model described in section 2.1 and section 1.4 SHOULD be handled per their own specifications.