Use case when the call contains two `Geolocation` headers. Related `geoheader_type` param.
Example
Geolocation: <http://example.org/held-link> Geolocation: <cid:7607331117@10.3.90.20>
Technically such a call contains Geolocacation by_value and does not require deference first Geolocation header by_reference.
From my point of view. When used `emergencyRouting` routing need to prefer Geolocation by_value. This alow delivered call with minimal delays but maybe with low accuracy. When used `emergencyDispatch` routing needs to prefer Geolocation by_reference. This alow send HELD request to a mobile carrier and get latest mobile device location.
Technically on Kamailio maybe used `emergencyRouting` and on `PSAP` used `emergencyDispatch`.
So as idea, in lost request check the number of present Geolocation headers, if present more than one header:
1. and used `emergencyRouting` then try search `by_value` Geolocation; 2. and used `emergencyDispatch` then try to search and dereference `by_reference` Geolocation.
@sergey-safarov: basically that is what `lost_query` (lost_function) does. You may set the param `geoheader_type` to get only cid values (LocByValue) - in case there are several Geoloc header providing a cid you may either pick the first or the last one (`geoheader_order`).