[Serusers] CPL error

lakmal silva ruwan_lakmal at yahoo.fr
Fri Oct 8 08:03:16 CEST 2004


Hi all,

I'm using ser 0.8.12 and trying to work with cpl-c
module. I'm getting the following error when trying to
start ser. Any ideas? Thanks in advance.

regards,

Lakmal


----------------------------------------------------
Oct  8 13:50:14 sip1 ser: WARNING: could not rev.
resolve 10.65.94.34
Oct  8 13:50:14 sip1 ser[10347]: mod_init(): Database
connection opened successfuly
Oct  8 13:50:14 sip1 ser[10347]: CPL - initializing
Oct  8 13:50:14 sip1 ser[10347]:
ERROR:cpl-c:init_CPL_parser: DTD not parsed
successfully
Oct  8 13:50:14 sip1 ser[10347]: ERROR:cpl_init:
init_CPL_parser failed!
Oct  8 13:50:14 sip1 ser[10347]: init_mod(): Error
while initializing module cpl-c
Oct  8 13:50:14 sip1 ser[10347]: INFO:cpl_c:cpl_exit:
aux process hasn't been created -> nothing to kill :-(

-------------------------------------------------------
My ser.cfg is as follows.


#
# $Id: ser.cfg,v 1.24 2003/11/11 15:32:36 andrei Exp $
#
# simple quick-start config script
#

# ----------- global configuration parameters
------------------------

# log into /var/log/messages
debug=9                 # debug level (cmd line:
-dddddddddd)
fork=yes
log_stderror=no                # (cmd line: -E)

check_via=no        # (cmd. line: -v)
dns=no           # (cmd. line: -r)
rev_dns=no      # (cmd. line: -R)
#port=5060
#children=4
fifo="/tmp/ser_fifo"

# Additional Alias
alias="sip.xx.xx"

# ------------------ module loading
----------------------------------

# Uncomment this if you want to use SQL database
loadmodule "/usr/local/lib/ser/modules/mysql.so"

loadmodule "/usr/local/lib/ser/modules/sl.so"
loadmodule "/usr/local/lib/ser/modules/tm.so"
loadmodule "/usr/local/lib/ser/modules/rr.so"
loadmodule "/usr/local/lib/ser/modules/maxfwd.so"
loadmodule "/usr/local/lib/ser/modules/usrloc.so"
loadmodule "/usr/local/lib/ser/modules/registrar.so"
loadmodule "/usr/local/lib/ser/modules/textops.so"

# CPL-C module
loadmodule "/usr/local/lib/ser/modules/cpl-c.so"

# Uncomment this if you want digest authentication
# mysql.so must be loaded !
loadmodule "/usr/local/lib/ser/modules/auth.so"
loadmodule "/usr/local/lib/ser/modules/auth_db.so"
# ----------------- setting module-specific parameters
---------------

# -- usrloc params --

#modparam("usrloc", "db_mode",   0)

# Uncomment this if you want to use SQL database
# for persistent storage and comment the previous line
modparam("usrloc", "db_mode", 2)

# -- auth params --
# Uncomment if you are using auth module
#
modparam("auth_db", "calculate_ha1", yes)
#
# If you set "calculate_ha1" parameter to yes (which
true in this config),
# uncomment also the following parameter)
#
modparam("auth_db", "password_column", "password")

# -- rr params --
# add value to ;lr param to make some broken UAs happy
modparam("rr", "enable_full_lr", 1)

# -- cpl-c params --
modparam("cpl-c","cpl_db","mysql://xxxx:xxxx@localhost/ser")
modparam("cpl-c","cpl_table","cpl")
modparam("cpl-c","cpl_dtd_file","/usr/local/etc/ser/cpl-06.dtd")
modparam("cpl-c","log_dir","/var/log/ser/cpl")
modparam("cpl-c","proxy_recurse",2)
modparam("cpl-c","proxy_route",1)
modparam("cpl-c","lookup_domain","location")

# -- timer settings --
modparam("tm","noisy_ctimer",1) # this will force
timeout
modparam("tm","fr_inv_timer",30) # sets the timeout
for INVITE to 30 sec (default is 120)

# -------------------------  request routing logic
-------------------

# main routing logic

route{

        # initial sanity checks -- messages with


if (!mf_process_maxfwd_header("10")) {
                sl_send_reply("483","Too Many Hops");
                break;
        };
        if (msg:len >=  max_len ) {
                sl_send_reply("513", "Message too
big");
                break;
        };

        # we record-route all messages -- to make sure
that
        # subsequent messages will go through our
proxy; that's
        # particularly good if upstream and downstream
entities
        # use different transport protocol
        if (!method=="REGISTER") record_route();

        # subsequent messages withing a dialog should
take the
        # path determined by record-routing
        if (loose_route()) {
                # mark routing logic in request
                append_hf("P-hint: rr-enforced\r\n");
                route(1);
                break;
        };

        if (!uri==myself) {
                # mark routing logic in request
                append_hf("P-hint: outbound\r\n");
                route(1);
                break;
        };

        # if the request is for other domain use
UsrLoc
        # (in case, it does not work, use the
following command
        # with proper names and addresses in it)
        if (uri==myself) {

                if (method=="REGISTER") {

                        # Uncomment this if you want
to use digest authentication
                        if
(!www_authorize("sip.xx.xx", "subscriber")) {
                               
www_challenge("sip1.xx.xx", "0");

# handle REGISTER messages containing a CPL script
                        cpl_process_register();

                        save("location");
                        break;
                };

                # process CPL script
                log("cpl: start script processing
now");
               
cpl_run_script("incoming","FORCE_STATEFUL");
                log("cpl: script processing has been
finished");

                lookup("aliases");
                if (!uri==myself) {
                        append_hf("P-hint: outbound
alias\r\n");
                        route(1);
                        break;
                };

                # native SIP destinations are handled
using our USRLOC DB
                if (!lookup("location")) {
                        sl_send_reply("404", "Not
Found");
                        break;
                };
        };
        append_hf("P-hint: usrloc applied\r\n");
        route(1);
}

route[1]
{
        # send it out now; use stateful forwarding as
it works reliably
        # even for UDP2TCP
        if (!t_relay()) {
                sl_reply_error();
        };
}



	

	
		
Vous manquez d’espace pour stocker vos mails ? 
Yahoo! Mail vous offre GRATUITEMENT 100 Mo !
Créez votre Yahoo! Mail sur http://fr.benefits.yahoo.com/

Le nouveau Yahoo! Messenger est arrivé ! Découvrez toutes les nouveautés pour dialoguer instantanément avec vos amis. A télécharger gratuitement sur http://fr.messenger.yahoo.com




More information about the sr-users mailing list