- features: LoST redirect, dynamic HELD url resolving (#2574), LoST NAPTR,
POST request to dereference loation
- attributes: reponse_time (-1:emergencyDispatch, 0:emergencyRouting, >0[ms]);
post_request (POST method to dereference location #2641); recursion (yes/no);
location_profile (PIDF/LO profile selection: first/last/geo/civic);
verbose (detailed LoST response as log INFO);
geoheader_type (filter schema: any/cid/http/https);
geoheader_order (first/last)
- function: lost_held_dereference (specific function to dereference location
using POST method); attributes are url (r), resp.-time (r), resp.-type (r),
pidf (r/w) and error (r/w)
- general: The extension of the module allows dynamic querying of LIS/HELD
and LOST services via NAPTR lookup. In the case of LOST, a redirect
response is evaluated. In case a lost_held_request (used to connect
to a LIS via POST or GET) is passed with an empty string ("") for the
connection parameter, then P-A-I or From header value hostnames are used
for NAPTR lookup to get a corresponding service.
- parameters are exact_type, response_time, and location_type
- the module function lost_held_query now supports proper
handling of location types 'any', 'civic', 'geodetic' or
'locationURI' (or any combination).
- besides: README update and code refactoring.
... | ... |
@@ -32,8 +32,11 @@ |
32 | 32 |
#ifndef LOST_FUNCTIONS_H |
33 | 33 |
#define LOST_FUNCTIONS_H |
34 | 34 |
|
35 |
-int lost_function_held( |
|
35 |
+char *lost_held_type(char *, int *, int *); |
|
36 |
+ |
|
37 |
+int lost_held_function( |
|
36 | 38 |
struct sip_msg *, char *, char *, char *, char *, char *); |
39 |
+ |
|
37 | 40 |
int lost_function( |
38 | 41 |
struct sip_msg *, char *, char *, char *, char *, char *, char *); |
39 | 42 |
|
... | ... |
@@ -1,40 +1,40 @@ |
1 |
-/* |
|
2 |
- * lost module functions |
|
3 |
- * |
|
4 |
- * Copyright (C) 2019 Wolfgang Kampichler |
|
5 |
- * DEC112, FREQUENTIS AG |
|
6 |
- * |
|
7 |
- * This file is part of Kamailio, a free SIP server. |
|
8 |
- * |
|
9 |
- * Kamailio is free software; you can redistribute it and/or modify |
|
10 |
- * it under the terms of the GNU General Public License as published by |
|
11 |
- * the Free Software Foundation; either version 2 of the License, or |
|
12 |
- * (at your option) any later version |
|
13 |
- * |
|
14 |
- * Kamailio is distributed in the hope that it will be useful, |
|
15 |
- * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
16 |
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
17 |
- * GNU General Public License for more details. |
|
18 |
- * |
|
19 |
- * You should have received a copy of the GNU General Public License |
|
20 |
- * along with this program; if not, write to the Free Software |
|
21 |
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
|
22 |
- * |
|
23 |
- */ |
|
24 |
- |
|
25 |
-/*! |
|
26 |
- * \file |
|
27 |
- * \brief Kamailio lost :: functions |
|
28 |
- * \ingroup lost |
|
29 |
- * Module: \ref lost |
|
30 |
- */ |
|
31 |
- |
|
32 |
-#ifndef LOST_FUNCTIONS_H |
|
33 |
-#define LOST_FUNCTIONS_H |
|
34 |
- |
|
35 |
-int lost_function_held( |
|
36 |
- struct sip_msg *, char *, char *, char *, char *, char *); |
|
37 |
-int lost_function( |
|
38 |
- struct sip_msg *, char *, char *, char *, char *, char *, char *); |
|
39 |
- |
|
40 |
-#endif |
|
1 |
+/* |
|
2 |
+ * lost module functions |
|
3 |
+ * |
|
4 |
+ * Copyright (C) 2019 Wolfgang Kampichler |
|
5 |
+ * DEC112, FREQUENTIS AG |
|
6 |
+ * |
|
7 |
+ * This file is part of Kamailio, a free SIP server. |
|
8 |
+ * |
|
9 |
+ * Kamailio is free software; you can redistribute it and/or modify |
|
10 |
+ * it under the terms of the GNU General Public License as published by |
|
11 |
+ * the Free Software Foundation; either version 2 of the License, or |
|
12 |
+ * (at your option) any later version |
|
13 |
+ * |
|
14 |
+ * Kamailio is distributed in the hope that it will be useful, |
|
15 |
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
16 |
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
17 |
+ * GNU General Public License for more details. |
|
18 |
+ * |
|
19 |
+ * You should have received a copy of the GNU General Public License |
|
20 |
+ * along with this program; if not, write to the Free Software |
|
21 |
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
|
22 |
+ * |
|
23 |
+ */ |
|
24 |
+ |
|
25 |
+/*! |
|
26 |
+ * \file |
|
27 |
+ * \brief Kamailio lost :: functions |
|
28 |
+ * \ingroup lost |
|
29 |
+ * Module: \ref lost |
|
30 |
+ */ |
|
31 |
+ |
|
32 |
+#ifndef LOST_FUNCTIONS_H |
|
33 |
+#define LOST_FUNCTIONS_H |
|
34 |
+ |
|
35 |
+int lost_function_held( |
|
36 |
+ struct sip_msg *, char *, char *, char *, char *, char *); |
|
37 |
+int lost_function( |
|
38 |
+ struct sip_msg *, char *, char *, char *, char *, char *, char *); |
|
39 |
+ |
|
40 |
+#endif |
- lost_held_query() takes specific id (pvar, P-A-I, or From), assembles a
locationRequest (XML), and sends it to an http_client connection, responses
are parsed (pidf-lo and location reference are returned)
- lost_query() takes pidf-lo (pvar, msg body, or de-referenced), a service urn
(pvar, request line) assembles a findService request (XML), and sends it to
an http_client connection, responses are parsed (target uri and display name
are returned)
1 | 1 |
new file mode 100755 |
... | ... |
@@ -0,0 +1,40 @@ |
1 |
+/* |
|
2 |
+ * lost module functions |
|
3 |
+ * |
|
4 |
+ * Copyright (C) 2019 Wolfgang Kampichler |
|
5 |
+ * DEC112, FREQUENTIS AG |
|
6 |
+ * |
|
7 |
+ * This file is part of Kamailio, a free SIP server. |
|
8 |
+ * |
|
9 |
+ * Kamailio is free software; you can redistribute it and/or modify |
|
10 |
+ * it under the terms of the GNU General Public License as published by |
|
11 |
+ * the Free Software Foundation; either version 2 of the License, or |
|
12 |
+ * (at your option) any later version |
|
13 |
+ * |
|
14 |
+ * Kamailio is distributed in the hope that it will be useful, |
|
15 |
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
16 |
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
17 |
+ * GNU General Public License for more details. |
|
18 |
+ * |
|
19 |
+ * You should have received a copy of the GNU General Public License |
|
20 |
+ * along with this program; if not, write to the Free Software |
|
21 |
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
|
22 |
+ * |
|
23 |
+ */ |
|
24 |
+ |
|
25 |
+/*! |
|
26 |
+ * \file |
|
27 |
+ * \brief Kamailio lost :: functions |
|
28 |
+ * \ingroup lost |
|
29 |
+ * Module: \ref lost |
|
30 |
+ */ |
|
31 |
+ |
|
32 |
+#ifndef LOST_FUNCTIONS_H |
|
33 |
+#define LOST_FUNCTIONS_H |
|
34 |
+ |
|
35 |
+int lost_function_held( |
|
36 |
+ struct sip_msg *, char *, char *, char *, char *, char *); |
|
37 |
+int lost_function( |
|
38 |
+ struct sip_msg *, char *, char *, char *, char *, char *, char *); |
|
39 |
+ |
|
40 |
+#endif |