123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160 |
- <?xml version="1.0" encoding='ISO-8859-1'?>
- <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
- "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
- <!-- Include general documentation entities -->
- <!ENTITY % docentities SYSTEM "../../../docbook/entities.xml">
- %docentities;
- ]>
- <!-- Module User's Guide -->
- <chapter>
- <title>User's Guide</title>
- <section>
- <title>Overview</title>
- <para>
- This is a module which provides Oracle connectivity for &kamailio;.
- It implements the DB API defined in &kamailio;. If you want to use
- the nathelper module, or any other modules that calls the
- get_all_ucontacts API export from usrloc, then you need to set
- the <emphasis>DORACLE_USRLOC</emphasis> define in the Makefile.defs
- file before compilation.
- </para>
- </section>
- <section>
- <title>Dependencies</title>
- <section>
- <title>&kamailio; Modules</title>
- <para>
- The following modules must be loaded before this module:
- <itemizedlist>
- <listitem>
- <para>
- <emphasis>No dependencies on other &kamailio; modules</emphasis>.
- </para>
- </listitem>
- </itemizedlist>
- </para>
- </section>
- <section>
- <title>External Libraries or Applications</title>
- <para>
- The following libraries or applications must be installed before running
- &kamailio; with this module loaded:
- <itemizedlist>
- <listitem>
- <para>
- <emphasis>instantclient-sdk-10.2.0.3</emphasis> - the development headers and libraries of OCI.
- </para>
- </listitem>
- </itemizedlist>
- </para>
- </section>
- </section>
- <section>
- <title>Parameters</title>
- <section>
- <title><varname>timeout</varname> (fixedpoint)</title>
- <para>
- Timeout value for any operation with BD.
- </para>
- <para>
- Possible values is from 0.1 to 10.0 seconds.
- </para>
- <para>
- <emphasis>
- Default value is 3.0 (3 second).
- </emphasis>
- </para>
- <para>
- If value of timeout parameter set to 0, module use synchronous
- mode (without timeout).
- </para>
- <example>
- <title>Set <varname>timeout</varname> parameter</title>
- <programlisting format="linespecific">
- ...
- modparam("db_oracle", "timeout", 1.5)
- ...
- </programlisting>
- </example>
- <example>
- <title>Disable asynchronous mode</title>
- <programlisting format="linespecific">
- ...
- modparam("db_oracle", "timeout", 0)
- ...
- </programlisting>
- </example>
- </section>
- <section>
- <title><varname>reconnect</varname> (fixedpoint)</title>
- <para>
- Timeout value for connect (create session) operation.
- </para>
- <para>
- Possible values is from 0.1 to 10.0 seconds.
- </para>
- <para>
- <emphasis>
- Default value is 0.2 (200 milliseconds).
- </emphasis>
- </para>
- <example>
- <title>Set <varname>reconnect</varname> parameter</title>
- <programlisting format="linespecific">
- ...
- modparam("db_oracle", "reconnect", 0.5)
- ...
- </programlisting>
- </example>
- </section>
- </section>
- <section>
- <title>Functions</title>
- <para>
- No function exported to be used from configuration file.
- </para>
- </section>
- <section>
- <title>Installation</title>
- <para>
- Because it dependes on an external library, the oracle module is not
- compiled and installed by default. You can use one of the next options.
- </para>
- <itemizedlist>
- <listitem>
- <para>
- - edit the "Makefile" and remove "db_oracle" from "excluded_modules"
- list. Then follow the standard procedure to install &kamailio;:
- "make all; make install".
- </para>
- </listitem>
- <listitem>
- <para>
- - from command line use: 'make all include_modules="db_oracle";
- make install include_modules="db_oracle"'.
- </para>
- </listitem>
- </itemizedlist>
- </section>
- <section>
- <title>Utility openser_orasel</title>
- <para>
- For working with &ctltool; script, should be able to print the 'query'
- results to the terminal in a user-readable form. The standard command-line
- Oracle client (sqlplus) is not quite suitable for this, as it cannot align
- row width to real (received) data's (it always prints a cell width as
- described in the db scheme). This problem has been solved by inclusion the
- utility openser_orasel, which formats printing approximately in the same
- way as the 'mysql' client utility. In addition, this utility known about
- the "agreements and types" in DB that are used in &kamailio; for the work
- with Oracle and formats printing taking these into account.
- </para>
- </section>
- </chapter>
|