Post Version change - No RTP engine was found

FreePBX 14.0.1.20 / SNG 7

Hello,

https://wiki.freepbx.org/display/PPS/Changing+Major+Asterisk+Versions+on+the+Fly

I just tried switching Asterisk versions on the fly, from 14 to 13, and now when I dial an inbound route am getting a fast busy the asterisk CLI shows:

[2017-11-03 12:21:29] ERROR[13509][C-00000002]: rtp_engine.c:435 ast_rtp_instance_new: No RTP engine was found. Do you have one loaded?
[2017-11-03 12:21:29] NOTICE[13509][C-00000002]: chan_sip.c:26313 handle_request_invite: Failed to authenticate device ā€œRedactedā€

What happened? Any ideas on how to fix this? I jumped back to Asterisk 14 using the above method and am still having the same issue.

Little more info.

Running ls /usr/lib64/asterisk/modules/ -l | grep res_rtp_

I get:
-rwxr-xr-x 1 root root 131024 Oct 31 15:26 res_rtp_asterisk.so
-rwxr-xr-x 1 root root 24640 Oct 31 15:26 res_rtp_multicast.so

So it looks like it is there, but I donā€™t really have a clue on where to go from here. Is there an option to restore to the base image that was installed? I just got this server setup, and do not want to have to reinstall the distro, if possible.

On a 14 or 13 machine from asterisk you should have

*CLI> module show like rtp
Module                         Description                              Use Count  Status      Support Level
bridge_native_rtp.so           Native RTP bridging module               0          Running              core
chan_rtp.so                    RTP Media Channel                        0          Running              core
res_pjsip_sdp_rtp.so           PJSIP SDP RTP/AVP stream handler         0          Running              core
res_rtp_asterisk.so            Asterisk RTP Stack                       0          Running              core
res_rtp_multicast.so           Multicast RTP Engine                     0          Running              core
res_srtp.so                    Secure RTP (SRTP)                        0          Running              core
6 modules loaded

notice you need chan_rtp loaded also

try for diagnostics

module unload chan_rtp
module load chan_rtp

1 Like

Thanks Dicko,

Looks like I am missing one:
afs1*CLI> module show like rtp

Module                         Description                              Use Count  Status      Support Level
bridge_native_rtp.so           Native RTP bridging module               0          Running              core
chan_rtp.so                    RTP Media Channel                        0          Running              core
res_pjsip_sdp_rtp.so           PJSIP SDP RTP/AVP stream handler         0          Running              core
res_rtp_multicast.so           Multicast RTP Engine                     0          Running              core
res_srtp.so                    Secure RTP (SRTP)                        0          Running              core

5 modules loaded

res_rtp_asterisk.so is missing (but showing in /usr/lib64/asterisk/modules/)

I tried to load res_rtp_asterisk.so and got the following error:

[2017-11-03 14:29:59] WARNING[8594]: loader.c:530 load_dynamic_module: Error loading module ā€˜res_rtp_asterisk.soā€™: /usr/lib64/asterisk/modules/res_rtp_asterisk.so: undefined symbol: __ast_unregister_file

[2017-11-03 14:29:59] WARNING[8594]: loader.c:1054 load_resource: Module ā€˜res_rtp_asterisk.soā€™ could not be loaded.

Any Ideas?

that show that your module doesnā€™t match your current kernel build.

How would one rectify this if they are using the official Sangoma distro?

Is your distro current?
https://wiki.freepbx.org/display/PPS/Updating+FreePBX+Official+Distro

Itā€™s FreePBX/Asterisk 14/SNG 7, downloaded about 1.5 months ago.

That doesnā€™t answer the question, are there any updates pending in Module Admin?

The modules are up to date, but the system is not activated yet. I was going to do that today, by moving our module licenses from our old machine (freepbx 13) to the new server.

Do you think activating the server and running system update will resolve the kernel mismatch?

Get current with

yum upgrade

Then reboot.

Not having the box activated meant I didnā€™t get the System Updates in Module Admin. Activated box, ran system updates, load res_rtp_asterisk.so from the CLI and we are back. Thanks again Dicko and Lorne!

For future readers, do not switch major releases of Asterisk on the fly without activating the box.

1 Like

The real problem was lack of system updates.

Just had this error happen on a FPBX 14.0.3.1 virtual SNG7 instance. System is activated, with all module updates installed. Installed the latest system updates from the FPBX updates tool under admin. This updated my asterisk15 from 15.2.2.1 to 15.4.0. After restarting the system, rtp module would not load. Did a yum downgrade on all asterisk15 rpmā€™s and did an fwconsole restart, and the res_rtp_asterisk module loads. I did try to load it manually while 15.4.0 was installed from the asterisk cli, and I got the loader.c dependency error.

You need to enable channel driver pjsip. Itā€™s disabled in advanced settings.

2 Likes

This worked.

Same issue. Did ā€˜yum update/upgradeā€™ and went to FPBX 14.0.3.1 / Asterisk 15.4.0. Could not make or receive calls. Error: ā€œNo RTP engine was found. Do you have one loaded?ā€

Advanced Settings / SIP Channel Driver was set to ā€œchan_sipā€. Changed to ā€œbothā€ and rebooted to resolve.

2 Likes

same solution, set driver to both and reboot

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.