Ringgroup vs Early Media (video)

Status
Not open for further replies.

NoFate

Member
Sep 17, 2021
51
0
6
43
Hi,

we have setup as test FusionPBX, all is working fine, we use it for our intercom (hikvision), on our sip clients, when someone presses the doorbell, we see the early media (video) before we pickup/answer, so far so good

But we dont see the video, if we add extensions to a ringgroup, and call the ringgoup, we dont see early video

is this possible?

thnx in advance
 

NoFate

Member
Sep 17, 2021
51
0
6
43
I tried with different phones , line linphone, acrobits... It's not phone related... I think fusionpbx needs a change to send video also in ring groups?
 

hfoster

Active Member
Jan 28, 2019
676
80
28
34
Have you tried Enterprise strategy?

The ring_group.lua script includes a lot of 'ignore_early_media' as I imagine it would be a cacophony to mux several early media streams otherwise.
 

NoFate

Member
Sep 17, 2021
51
0
6
43
yes, when creating the ringgroup, i indeed used "entrprise"
what is that script you are talking about? thats new to me?
 

NoFate

Member
Sep 17, 2021
51
0
6
43
also found this, someone was talking about media_bypass ?
fusionpbx is new to me... where can i find that setting?
also, how can i change that script?

thats something i can try indeed
thnx
 

hfoster

Active Member
Jan 28, 2019
676
80
28
34
ring_groups/index.lua - FusionPBX Github Repo

LUA scripts are how Freeswitch PBXs do anything more complex than calling another user.

I only guessed Enterprise because the LUA script refers to a section to not include ignore_early_media if the strategy is enterprise. I haven't actually tested this myself.

Code:
                        if (dial_string ~= nil) then
                            --freeswitch.consoleLog("notice", "[ring group] dial_string: " .. dial_string .. "\n");
                            if (x == 1) then
                                if (ring_group_strategy == "enterprise") then
                                    app_data = dial_string;
                                else
                                    app_data = "{ignore_early_media=true}"..dial_string;
                                end
                            else
                                if (app_data == nil) then
                                    if (ring_group_strategy == "enterprise") then
                                        app_data = dial_string;
                                    else
                                        app_data = "{ignore_early_media=true}"..dial_string;
                                    end
                                else
                                    app_data = app_data .. delimiter .. dial_string;
                                end
                            end
                        end

I've got no experience with video phones though, so I might just be barking up completely the wrong tree. I might have to invest in two or three at some point.
 

NoFate

Member
Sep 17, 2021
51
0
6
43
Ok i can just change that script and setup those 2 true values to false? Is that script stored in a folder somewhere? Or do I also need to recompile afterwards?


Also, that media_bypass setting from that other thread I posted earlier, where can I find that?

Appreciate the help!!!
 

NoFate

Member
Sep 17, 2021
51
0
6
43
this thread i mean :


seems you posted there too , but noone actually replied if it was working :)
 

hfoster

Active Member
Jan 28, 2019
676
80
28
34
The location of the script will be: /usr/share/freeswitch/scripts/app/ring_groups/index.lua

You don't need to do anything after modifying a LUA script. It's called each time it's needed. (Well, for most cases).

To enable bypass media, in the internal SIP profile enable: inbound-bypass-media, then flush the cache and restart the SIP profile. You'll have to test everything after doing this.
 

NoFate

Member
Sep 17, 2021
51
0
6
43
ok, tried both , changed the script => no luck either
then changed this below to true , that made it even worse, still no early video, but there was also no video after i pickup
1635845680363.png
 

agree

Member
Aug 26, 2018
135
24
18
For video to work on ring group enterprise, you'll need to set in the dial string. absolute_codec_string The reason is that the enterprise legs are running in their own thread, so they don't take the codecs from the A-leg.
 

bdmonsey

Member
Jul 23, 2019
146
6
18
42
ok, tried both , changed the script => no luck either
then changed this below to true , that made it even worse, still no early video, but there was also no video after i pickup
View attachment 2629
i just did this on my live server, for some reason I lost audio on all calls. i went and I switched it back to false reloaded the sip profile internal and audio came back.
 

NoFate

Member
Sep 17, 2021
51
0
6
43
For video to work on ring group enterprise, you'll need to set in the dial string. absolute_codec_string The reason is that the enterprise legs are running in their own thread, so they don't take the codecs from the A-leg.
ok, gonna try later
so i dont need to change a script in this file? /usr/share/freeswitch/scripts/app/ring_groups/index.lua , also dont need to touch the media_bypass then?

But what exactly do i need to change here? absolute_codec_string and where? , sorry , new to me... thnx!
 

NoFate

Member
Sep 17, 2021
51
0
6
43
do you mean this option within the advanced setup for the extensio?
what do i need to enter there? thnx!!

1636390569540.png
 

NoFate

Member
Sep 17, 2021
51
0
6
43
ok, tried , entered "H264" in that "absolute codec string" field for every extension that was part of the entrprise ring group, but still no early media when dialing ring group, ... then modified that script, to "false" , see some posts above, but no luck either

what are we missing here?

thx in advance, appreciated for all help
 

agree

Member
Aug 26, 2018
135
24
18
No, you need to set it on the dial string of the ring group originate. It will require some code modification in the Lua script. I have it working on my servers.
 
Status
Not open for further replies.