Jitsi-Meet Jigasi + Freeswitch

hello,
i installed jitsi-meet and jigasi, jigasi is also registered to my freeswitch server. i can make calls from a jitsi-meet room to my freeswitch, but i can´t get calls from my freeswitch to the jitsi-meet room. i know i need to add a custom header with the room id. but can/should it be an additional field or should it be in the TO field of the SIP header?
maybe somebody with a freeswitch could post here an example of the freeswitch dialplan to make a call from a freeswitch to a jitsi-meet room.
thank you so much!
thomas

net.java.sip.communicator.impl.protocol.sip.acc1.JITSI_MEET_ROOM_HEADER_NAME=X-Room-Name
[...]
net.java.sip.communicator.impl.protocol.sip.SKIP_REINVITE_ON_FOCUS_CHANGE_PROP=true

in jigasi/sip-communicator.properties and then:

  <extension name="conference_jitsi">
    <condition field="destination_number" expression="^[number reserved for jitsi]$">
      <action application="set" data="inherit_codec=true"/>
      <action application="set" data="proxy_media=true"/>
      <action inline="true" application="set" data="sip_h_X-Room-Name=[room-name]@muc.meet.jitsi"/>
      <action application="bridge" data="user/jitsi@${domain_name}"/>
    </condition>
  </extension>

Replace [number reserved for jitsi] and [room-name] with actual number and name. Later you will probably use some IVR for meeting number to room name mapping.

BTW: inherit_codec and proxy_media came from tests with codec related issues. They are not necessary and proxy_media must not be enabled if you want to use FS IVR.

hello,
thank you very much for posting your dialplan to make an inbound call to jitsi-meet. i did try it, but my calls are still getting in the siptest room and not in the destination conference room. in the sip-log i can see the required header field, but jigasi doesnt interpret the header in the correct way. here is the pcap log from the inbound call:

Via: SIP/2.0/UDP 185.164.4.41;rport=5060;branch=z9hG4bK20r4X0g7D936S;received=185.164.4.41
Route: sip:2036@193.170.143.130:47744;transport=udp;registering_acc=sip5_peterseil_com
Max-Forwards: 69
From: “Thomas DECT” sip:1038@185.164.4.41;tag=Fr1QZrBm1740c
To: sip:2036@10.1.1.130:5060;transport=udp;registering_acc=sip5_peterseil_com
Call-ID: 6326c5d8-f5de-1238-42b6-339c5c4a0bb5
CSeq: 18711521 INVITE
Contact: sip:mod_sofia@185.164.4.41:5060
User-Agent: FreeSWITCH-mod_sofia/1.6.20-37-987c9b9~64bit
Allow: INVITE,ACK,BYE,CANCEL,OPTIONS,MESSAGE,INFO,UPDATE,REGISTER,REFER,NOTIFY,PUBLISH,SUBSCRIBE
Supported: timer,path,replaces
Allow-Events: talk,hold,conference,presence,as-feature-event,dialog,line-seize,call-info,sla,include-session-description,presence.winfo,message-summary,refer
Content-Type: application/sdp
Content-Disposition: session
X-Room-Name: thomas3@muc.meet.jitsi
X-FS-Support: update_display,send_info
Remote-Party-ID: “Thomas DECT” sip:1038@185.164.4.41;party=calling;screen=yes;privacy=off
Content-Length: 400

v=0
o=FreeSWITCH 1945466611 1945466612 IN IP4 185.164.4.41
s=FreeSWITCH
c=IN IP4 185.164.4.41
t=0 0
m=audio 16634 RTP/AVP 8 0 2 102 100 99 97 101 18
a=rtpmap:2 G726-32/8000
a=rtpmap:102 G726-32/8000
a=rtpmap:100 G726-40/8000
a=rtpmap:99 G726-24/8000
a=rtpmap:97 iLBC/8000
a=fmtp:97 mode=30
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
a=fmtp:18 annexb=no
a=rtcp:7083
a=ptime:20
B��^`�^K^@^X^B^@^@^X^B^@^@^@^@^@^@^@^@^@^@^@^@^@^@^H^@E^@^B
�^T^@^@5^Q�^A^@^@^@^@��^D)^S�^S�^A�^@^@SIP/2.0 180 Ringing
CSeq: 18711521 INVITE
Call-ID: 6326c5d8-f5de-1238-42b6-339c5c4a0bb5
From: “Thomas DECT” sip:1038@185.164.4.41;tag=Fr1QZrBm1740c
To: sip:2036@10.1.1.130:5060;transport=udp;registering_acc=sip5_peterseil_com;tag=89ba5150
Via: SIP/2.0/UDP 185.164.4.41;rport=5060;branch=z9hG4bK20r4X0g7D936S;received=185.164.4.41
Contact: “2036” sip:2036@10.1.1.130:5060;transport=udp;registering_acc=sip5_peterseil_com
User-Agent: Jigasi1.1.38-g8f3c241Linux
Content-Length: 0

C��^(^K^D^@^X^B^@^@^X^B^@^@^@^@^@^@^@^@^@^@^@^@^@^@^H^@E^@^B
�^T^@^@5^Q�^A^@^@^@^@��^D)^S�^S�^A�^@^@SIP/2.0 180 Ringing
CSeq: 18711521 INVITE
Call-ID: 6326c5d8-f5de-1238-42b6-339c5c4a0bb5
From: “Thomas DECT” sip:1038@185.164.4.41;tag=Fr1QZrBm1740c
To: sip:2036@10.1.1.130:5060;transport=udp;registering_acc=sip5_peterseil_com;tag=89ba5150
Via: SIP/2.0/UDP 185.164.4.41;rport=5060;branch=z9hG4bK20r4X0g7D936S;received=185.164.4.41
Contact: “2036” sip:2036@10.1.1.130:5060;transport=udp;registering_acc=sip5_peterseil_com
User-Agent: Jigasi1.1.38-g8f3c241Linux
Content-Length: 0

thank you very much for your help!
thomas

Can you post the jigasi log during a dial in try?

hello,
here is the jigasi.log:
2020-04-17 21:16:32.687 INFORMATION: [66] org.jitsi.jigasi.SipGateway.incomingCallReceived().196 [ctx=158715099267961409378] Incoming call received…
2020-04-17 21:16:33.737 INFORMATION: [68] org.jitsi.jigasi.SipGatewaySession.run().1464 [ctx=158715099267961409378]Using default JVB room name property siptest
2020-04-17 21:16:33.742 INFORMATION: [68] org.jitsi.jigasi.JvbConference.start().422 [ctx=158715099267961409378] Starting JVB conference room: siptest
2020-04-17 21:16:33.939 INFORMATION: [68] org.jitsi.jigasi.JvbConference.setXmppProvider().553 [ctx=158715099267961409378] Using ProtocolProviderServiceJabberImpl(Jabber:26bd25fb@meet.cooltools.education/26bd25fb)
2020-04-17 21:16:34.140 INFORMATION: [71] impl.protocol.jabber.OperationSetBasicTelephonyJabberImpl.registrationStateChanged().127 Jingle : ON
2020-04-17 21:16:34.140 INFORMATION: [71] org.jitsi.jigasi.JvbConference.registrationStateChanged().606 [ctx=158715099267961409378] Registering XMPP.
2020-04-17 21:16:34.161 INFORMATION: [71] impl.protocol.jabber.ProtocolProviderServiceJabberImpl.authenticated().2535 Authenticated: false
2020-04-17 21:16:34.174 INFORMATION: [71] org.jitsi.jigasi.JvbConference.joinConferenceRoom().685 [ctx=158715099267961409378] Joining JVB conference room: siptest
2020-04-17 21:16:34.334 INFORMATION: [76] impl.protocol.jabber.ChatRoomJabberImpl.joined().1256 siptest@conference.meet.cooltools.education/focus has joined the siptest@conference.meet.cooltools.education chat room.
2020-04-17 21:16:36.748 INFORMATION: [92] org.jitsi.jigasi.SipGatewaySession.handleCallState().1318 [ctx=158715099267961409378] SIP call ended: CallPeerChangeEvent: type=CallPeerStatusChange oldV=net.java.sip.communicator.serv$
2020-04-17 21:16:36.749 INFORMATION: [92] org.jitsi.jigasi.SipGatewaySession.peerStateChanged().1384 [ctx=158715099267961409378] SIP peer state: Disconnected

it seems to me that jigasi doesnt collect any information from the sip-header, it just sends the call to the default room (siptest).
thank you so much for your help!
thomas

Can you please double check the sip.properties JITSI_MEET_ROOM_HEADER_NAME=X-Room-Name setting (or post the relevant part of your sip.properties)

Is this pcap from the jigasi incoming interface? If so, you have to find why jigasi does not recognise the room name header. If not, make a pcap there and check. Maybe some provider remove custom headers.

Hello
I use freeswitch to connect with jigasi, use softphone to dial into the video conference room through freeswitch, and the call quality is normal, but I forward it to freeswitch through the trunk line, and after using the phone number to dial into the conference room, there will be a buzzing sound
The information after dialing in is as follows:
m=audio 65448 RTP/AVP 0 101
a=rtpmap:0 PCMU/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=ptime:20
a=sendrecv

Hi, following the instructions above, editing sip-communicator.properties and adding an extension to bridge the jigasi works well. However, it will only work on the default siptest room (org.jitsi.jigasi.DEFAULT_JVB_ROOM_NAME=siptest). Is there a way that we can define and get the header so that any room on jigasi could allow them to join?

Thanks,

Can you help me.i have the same issue.

2020-10-02 22:40:35.643 INFO: [55] org.jitsi.jigasi.SipGateway.registrationStateChanged().120 REG STATE CHANGE ProtocolProviderServiceSipImpl(SIP:waqas-jigasi@jigasi-waqas.waqas-jigasi.n2.voximplant.com) -> RegistrationStateChangeEvent[ oldState=Registering; newState=RegistrationState=Registered; userRequest=false; reasonCode=-1; reason=null]
2020-10-02 22:40:35.645 WARNING: [55] org.jitsi.jigasi.health.SipHealthPeriodicChecker.log() No health check started, no HEALTH_CHECK_SIP_URI prop.
2020-10-02 22:41:36.151 INFO: [64] org.jitsi.jigasi.SipGateway.incomingCallReceived().216 [ctx=1601678496144383973781] Incoming call received…
2020-10-02 22:41:37.158 INFO: [65] org.jitsi.jigasi.SipGatewaySession.run().1524 [ctx=1601678496144383973781] Wait thread cancelled
2020-10-02 22:41:37.169 INFO: [64] org.jitsi.jigasi.JvbConference.start().437 [ctx=1601678496144383973781] Starting JVB conference room: voximplant@conference.artaticsxauuio.com
2020-10-02 22:41:37.231 INFO: [64] org.jitsi.jigasi.JvbConference.setXmppProvider().576 [ctx=1601678496144383973781] Using ProtocolProviderServiceJabberImpl(Jabber:2a1c5ae0@artaticsxauuio.com/2a1c5ae0)
2020-10-02 22:41:37.451 INFO: [67] impl.protocol.jabber.OperationSetBasicTelephonyJabberImpl.registrationStateChanged().127 Jingle : ON
2020-10-02 22:41:37.451 INFO: [67] org.jitsi.jigasi.JvbConference.registrationStateChanged().627 [ctx=1601678496144383973781] Registering XMPP.
2020-10-02 22:41:37.480 INFO: [67] impl.protocol.jabber.ProtocolProviderServiceJabberImpl.authenticated().2423 Authenticated: false
2020-10-02 22:41:37.495 INFO: [67] org.jitsi.jigasi.JvbConference.joinConferenceRoom().714 [ctx=1601678496144383973781] Joining JVB conference room: voximplant@conference.artaticsxauuio.com
2020-10-02 22:41:37.512 WARNING: [75] impl.protocol.jabber.OperationSetPersistentPresenceJabberImpl.firePresenceStatusChanged().1675 No source contact found for id=xkgmpi7tg6dczgxc@artaticsxauuio.com
2020-10-02 22:41:37.624 INFO: [73] impl.protocol.jabber.ChatRoomJabberImpl.joined().1256 voximplant@conference.artaticsxauuio.com/focus has joined the voximplant@conference.artaticsxauuio.com chat room.
2020-10-02 22:42:07.613 SEVERE: [78] org.jitsi.jigasi.JvbConference.run().1578 [ctx=1601678496144383973781] Did not received session invite (30000 ms)
2020-10-02 22:42:07.614 INFO: [78] org.jitsi.jigasi.JvbConference.memberPresenceChanged().1006 [ctx=1601678496144383973781] Member left : GUEST 2a1c5ae0@artaticsxauuio.com
2020-10-02 22:42:07.614 INFO: [78] org.jitsi.jigasi.JvbConference.memberPresenceChanged().1006 [ctx=1601678496144383973781] Member left : OWNER focus@auth.artaticsxauuio.com/focus916563587896
2020-10-02 22:42:07.614 INFO: [78] org.jitsi.jigasi.JvbConference.memberPresenceChanged().1014 [ctx=1601678496144383973781] Focus left! - stopping
2020-10-02 22:42:07.614 SEVERE: [78] org.jitsi.jigasi.JvbConference.stop().498 [ctx=1601678496144383973781] Already stopped !
2020-10-02 22:42:07.615 INFO: [78] org.jitsi.jigasi.JvbConference.stop().536 [ctx=1601678496144383973781] Removing account Jabber:2a1c5ae0@artaticsxauuio.com/2a1c5ae0
2020-10-02 22:42:07.645 INFO: [78] impl.protocol.jabber.OperationSetBasicTelephonyJabberImpl.registrationStateChanged().134 Jingle : OFF
2020-10-02 22:42:07.656 INFO: [85] org.jitsi.jigasi.SipGatewaySession.handleCallState().1425 [ctx=1601678496144383973781] SIP call ended: CallPeerChangeEvent: type=CallPeerStatusChange oldV=net.java.sip.communicator.service.protocol.CallPeerState:Incoming Call newV=net.java.sip.communicator.service.protocol.CallPeerState:Failed for peer=923355800019 (+923355800019) 923355800019@jigasi-waqas.waqas-jigasi.n2.voximplant.com;status=Failed
2020-10-02 22:42:07.656 INFO: [85] org.jitsi.jigasi.SipGatewaySession.sipCallEnded().616 [ctx=1601678496144383973781] Sip call ended: Call: id=16016784960951998303265 peers=0
2020-10-02 22:42:07.663 INFO: [85] org.jitsi.jigasi.AbstractGateway.notifyCallEnded().128 [ctx=1601678496144383973781] Removed session for call. Sessions:0
2020-10-02 22:42:07.663 INFO: [85] org.jitsi.jigasi.SipGatewaySession.peerStateChanged().1491 null SIP peer state: Failed

I’m having trouble getting that far. In the self hosting instructions it says to install jigasi and put in your sip username and password. Once you do that I understand that a phone call button is supposed to appear in the web interface. I don’t get a button even though I can register as a sip client using the same credentials in a softphone desktop app.

Where can I go to see the jigasi logs to find clues about what is going wrong?

@danwize there’s a ‘+’ icon, at bottom right hand corner. Click on that. If jigasi is installed, you will see extra option, on top of ‘share the meeting link to invite others’.

We can enter sip user details there and then it will show phone call button.

@danwize you may check meet.jit.si, by joining a meeting there. If you click on plus sign, there’s no extra option. So if you see same interface on your meeting too, then jigasi is either not installed properly or not configured properly.

On meet.jit.si there is no dial out configured

@damencho am I incorrect in saying, when jigasi is not installed/configured properly, the interface when clicked on ‘+’ would be same as what we are seeing right now on meet.jit.si?

Here is what it looks like:

(post withdrawn by author, will be automatically deleted in 24 hours unless flagged)

@danwize if jigasi is installed and configured for calling out, it looks like this…

Yep, that is correct.

Thanks. I finally got that Add phone numbers ui to show up, though my sip user doesn’t have access to calling out. Sometimes when I try to call out, that input goes away until I restart jigasi after a failed call.