0
votes

I am using a Kamailio 4.4 server. And I would like to install http_async_client module to this server. I have looked on the module directory(/usr/local/lib64/kamailio/modules) to check wheather this http_async _client module already exist there, but it was not there.

And I searched for a solution and only found the method to include new module at the compile time.

I could find the modules source code on GitHub. But I don't know the steps to install a new module to the existing Kamailio.

Update: I have tried with running the two commands below from directory /usr/local/src/kamailio-4.4/kamailio. but got the following error

make modules-cfg include_modules="http_async_client"
make modules

Errors are:

CC (gcc) [M http_async_client.so]               async_http.o
async_http.c:42:26: fatal error: event2/event.h: No such file or directory
compilation terminated.
../../Makefile.rules:97: recipe for target 'async_http.o' failed
make[1]: *** [async_http.o] Error 1
Makefile:511: recipe for target 'modules' failed
make: *** [modules] Error 1
1

1 Answers

2
votes

Steps to load new module to Kamailio server. ( It may not be a direct way to do, but it works)

  1. Check the modules is exist in the default module directly /usr/local/lib64/kamailio/modules.
    If found, add loadmodule "module_name.so" in load module section in kamailio.cfg file.
  2. If the module is not found in default module directory, you can check for the source code of that module in the default module source code directory /usr/local/src/kamailio-4.4/kamailio/modules.
  3. If source code found, enter to the module directory. Then create modules' shared object file(.so) by following commands.

    ./configure
    make
    make test
    make install

  4. Then you will get a shared object file(.so). Copy that file into the default module directory. and load this module from the kamailio.cfg file as mentioned in step 1.

  5. If module source code does not exist in the default source code directory, You need to download the source code from the web. And follow step 3 and 4.