<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Hi,<br>
    <br>
    I would like to propose [and manage] an effort with the primary
    Kamailio developers to simplify the configuration syntax.  I'm not a
    developer, but used lot's of different applications and I'm familiar
    with various configuration formats.<br>
    <br>
    Based on what I've seen, there are five (5) types of configuration
    directives used with Kamailio.  <br>
    <br>
    - C-Style Control Directives<br>
    - Apache-Like Name/Value Pairs<br>
    - Normal Name/Value Pairs<br>
    - Modify Parameter Procedures<br>
    - Routing Logic Scripting<br>
    <br>
    I do understand some of this may be the result of merging multiple
    projects.  But this mixture of syntax slows adoption, drastically
    increases the learning curve for the user base.  By implementing a
    consistent standard to the configuration syntax, it will make using
    the application less complicated.<br>
    <br>
    --<br>
    <br>
    My first recommendation, would be to separate the routing logic from
    the primary configuration file.  This can easily be done with
    import/include.  However, I feel that a fixed path should be added
    during compile.  <br>
    <br>
    ‘<samp>--with-routing=/etc/kamailio/routing/</samp>’<br>
    <br>
    Then it would possible to modify the configuration parser to read
    all the files in that directory.  Allowing the separation of the
    route logic into individual files.  relay.cfg, reqinit.cfg, ...
    xmlrpc.cfg, tovoicemail.cfg, etc...  Making individual logic changes
    a bit easier.<br>
    <br>
    To reach a fixed path solution, and keep some backwards
    compatibility, the first step should be... Use import/include and
    move all the route logic into /etc/kamailio/routing/basic.cfg<br>
    <br>
    We can discuss on the mailing list or feel free to contact me
    directly.<br>
    <br>
    <br>
    Sincerely,<br>
    Brian LaVallee
  </body>
</html>