[Freeswitch-users] T.38 gateway and peer/self

Peter Steinbach lists at telefaks.de
Fri Feb 24 16:29:42 MSK 2017


Hello Brian,

I just updated to latest GIT. Dialplan ist still

Dialplan: sofia/internalvpn2/492927aaaaaa at 10.7.0.1 Action
set(fax_enable_t38=true)
Dialplan: sofia/internalvpn2/492927aaaaaa at 10.7.0.1 Action
set(fax_enable_t38_request=true)
Dialplan: sofia/internalvpn2/492927aaaaaa at 10.7.0.1 Action
set(execute_on_answer=t38_gateway self)
Dialplan: sofia/internalvpn2/492927aaaaaa at 10.7.0.1 Action ring_ready()
Dialplan: sofia/internalvpn2/492927aaaaaa at 10.7.0.1 Action
bridge(sofia/gateway/sip.provider.com/4940bbbbbbbbbbbbbbb at sip.provider.com)

However the behavour changed now
2017-02-24 13:50:18.913016 [NOTICE] switch_ivr_originate.c:3633 Channel
[sofia/internalvpn2/492927aaaaaa at 10.7.0.1] has been answered
2017-02-24 13:50:18.913016 [DEBUG] sofia.c:7241 Channel
sofia/internalvpn2/492927aaaaaa at 10.7.0.1 entering state [completed][200]
*EXECUTE sofia/internalvpn2/492927aaaaaa at 10.7.0.1 t38_gateway(peer)*
2017-02-24 13:50:18.913016 [DEBUG] switch_core_media_bug.c:841 Attaching
BUG to sofia/internalvpn2/492927aaaaaa at 10.7.0.1
2017-02-24 13:50:18.913016 [DEBUG] switch_channel.c:3780
(sofia/internalvpn2/492927aaaaaa at 10.7.0.1) Callstate Change RINGING ->
ACTIVE
2017-02-24 13:50:18.913016 [DEBUG] switch_ivr_originate.c:3691 Originate
Resulted in Success: [sofia/external/4940bbbbbbbbbbbbbbb at sip.provider.com]
2017-02-24 13:50:18.913016 [DEBUG] switch_ivr_bridge.c:1696
(sofia/external/4940bbbbbbbbbbbbbbb at sip.provider.com) State Change
CS_CONSUME_MEDIA -> CS_EXCHANGE_MEDIA
2017-02-24 13:50:18.913016 [DEBUG] switch_core_state_machine.c:584
(sofia/external/4940bbbbbbbbbbbbbbb at sip.provider.com) Running State
Change CS_EXCHANGE_MEDIA (Cur 2 Tot 10)
2017-02-24 13:50:18.913016 [DEBUG] switch_core_state_machine.c:653
(sofia/external/4940bbbbbbbbbbbbbbb at sip.provider.com) State EXCHANGE_MEDIA
2017-02-24 13:50:18.913016 [DEBUG] mod_sofia.c:645 SOFIA EXCHANGE_MEDIA
2017-02-24 13:50:18.953025 [DEBUG] sofia.c:7241 Channel
sofia/internalvpn2/492927aaaaaa at 10.7.0.1 entering state [ready][200]
2017-02-24 13:50:18.953025 [DEBUG] switch_rtp.c:7021 Correct audio
ip/port confirmed.
2017-02-24 13:50:19.333126 [DEBUG] switch_rtp.c:7021 Correct audio
ip/port confirmed.
2017-02-24 13:50:19.333126 [DEBUG] switch_core_io.c:448 Setting BUG
Codec PCMA:8
2017-02-24 13:50:26.013047 [DEBUG] sofia.c:7241 Channel
sofia/external/4940bbbbbbbbbbbbbbb at sip.provider.com entering state
[received][100]
2017-02-24 13:50:26.013047 [DEBUG] sofia.c:7251 Remote SDP:
v=0
o=HuaweiSoftX3000 1487923856 1487923858 IN IP4 185.39.xx.yy
s=HuaweiSoftX3000
c=IN IP4 185.39.xx.yy
t=0 0
m=image 16762 udptl t38
a=T38FaxVersion:0
a=T38MaxBitRate:14400
a=T38FaxRateManagement:transferredTCF
a=T38FaxMaxBuffer:500
a=T38FaxMaxDatagram:500
a=T38FaxUdpEC:t38UDPRedundancy

*2017-02-24 13:50:26.013047 [DEBUG] switch_core_media.c:4634
sofia/external/4940bbbbbbbbbbbbbbb at sip.provider.com T38 REFUSE on request*
2017-02-24 13:50:26.013047 [DEBUG] sofia.c:8152 Reinvite resulted in
codec negotiation failure.
*2017-02-24 13:50:26.033201 [DEBUG] sofia.c:7234 Channel
sofia/external/4940bbbbbbbbbbbbbbb at sip.provider.com skipping state
[ready][488]*
*2017-02-24 13:50:31.993164 [DEBUG] mod_spandsp_fax.c:2212 Fax Tone
Detected. [peer][]*
*2017-02-24 13:50:31.993164 [DEBUG] mod_spandsp_fax.c:2080
sofia/internalvpn2/492927aaaaaa at 10.7.0.1 starting gateway mode to
sofia/external/4940bbbbbbbbbbbbbbb at sip.provider.com*
2017-02-24 13:50:31.993164 [DEBUG] mod_spandsp_fax.c:2098
(sofia/internalvpn2/492927aaaaaa at 10.7.0.1) State Change CS_EXECUTE ->
CS_RESET
2017-02-24 13:50:31.993164 [DEBUG] mod_spandsp_fax.c:2101
(sofia/external/4940bbbbbbbbbbbbbbb at sip.provider.com) State Change
CS_EXCHANGE_MEDIA -> CS_RESET
2017-02-24 13:50:31.993164 [DEBUG] switch_core_media_bug.c:1208 Removing
BUG from sofia/internalvpn2/492927aaaaaa at 10.7.0.1
2017-02-24 13:50:31.993164 [DEBUG] switch_ivr_bridge.c:792
sofia/external/4940bbbbbbbbbbbbbbb at sip.provider.com ending bridge by
request from write function

In this case the sip provider comes back with T.38 reinvite and
Freeswitch refuses it.

As you mentioned that there are further settings and variables (I see
e.g. "fax_t38_tx_reinvite_packet_count" in the release notes), I am
wondering how I will neeed to set this up in order to have in one single
dialplan:

  * send fax to SIP Provider(b leg) and have T.38 Re-invite from SIP
    Provider and pass it to a-leg
  * send fax to SIP Provider(b leg), do NOT receive T.38 Re-invite from
    SIP Provider and then do T.38 Gateway in FS.


Best regards Peter


On 02/24/17 08:52, Peter Steinbach wrote:
> Hello Brian,
>
> this Version of Freeswitch is from 09-Feb-2016. So I think, we should
> update.
>
> We need to cover 2 scenarios
>
>   * send fax to SIP Provider(b leg) and have T.38 Re-invite from SIP
>     Provider and pass it to a-leg
>   * send fax to SIP Provider(b leg), do NOT receive T.38 Re-invite
>     from SIP Provider and then do T.38 Gateway in FS.
>
> And no: We cannot foresee, whether the SIp provider will do T.38 and
> not. Here in Germany, the main incumbant PSTN provider did not
> implement T.38, so it depends on the target number and actual route,
> if this will be T.38 or not. A call to a certain number can be T.38
> today and tomorrow it will be T.30 only, as some peering partner
> changed the routes in the meantime.
>
> Best regards
> Peter
>
>
> On 02/23/17 20:38, Brian West wrote:
>> What revision of FreeSWITCH are you on?  These behaviors have been
>> solidified in 1.6.15, Sadly MOST of the details of how it all works
>> is locked up in my head, I've just not had the time to write it all
>> down and update the documentation.  Can you outline all the scenarios
>> you need to cover and if you have the ability know ahead of time
>> which one needs to apply?
>>
>> /b
>>
>>
>> On Thu, Feb 23, 2017 at 8:23 AM, Peter Steinbach <lists at telefaks.de
>> <mailto:lists at telefaks.de>> wrote:
>>
>>     Hello,
>>
>>     we have the following screnario
>>
>>       * The caller, a local fax machine (Fax, ATA and Freeswitch)
>>         with T.38, is behind a slow line so therefore T.38 is needed here
>>       * a central Freeswitch fax server serves as a central gateway
>>         to the SIP provider
>>       * the SIP provider sometimes reinvites T.38 and sometimes not.
>>       * In case, the SIP provider does NOT answer with T.38, the
>>         central Freeswitch fax server shall act as a T.38 gateway and
>>         transcode between local fax (T.38) and SIP provider (T.30)
>>       * In case, the SIP provider does answer with T.38, the central
>>         Freeswitch fax server shall pass T.38 to the local fax
>>         ,machine (T.38)
>>
>>     How we set this up
>>
>>       * according to the wiki we have a dialplan as follows: (this is
>>         what CLI shows)
>>
>>     Dialplan: sofia/internalvpn2/49274xxxxx at 10.7.0.1
>>     <mailto:sofia/internalvpn2/49274xxxxx at 10.7.0.1> Action
>>     set(fax_enable_t38=true)
>>     Dialplan: sofia/internalvpn2/49274xxxxx at 10.7.0.1
>>     <mailto:sofia/internalvpn2/49274xxxxx at 10.7.0.1> Action
>>     set(fax_enable_t38_request=true)
>>     Dialplan: sofia/internalvpn2/49274xxxxx at 10.7.0.1
>>     <mailto:sofia/internalvpn2/49274xxxxx at 10.7.0.1> Action
>>     set(execute_on_answer=t38_gateway self)
>>     Dialplan: sofia/internalvpn2/49274xxxxx at 10.7.0.1
>>     <mailto:sofia/internalvpn2/49274xxxxx at 10.7.0.1> Action ring_ready()
>>     Dialplan: sofia/internalvpn2/49274xxxxx at 10.7.0.1
>>     <mailto:sofia/internalvpn2/49274xxxxx at 10.7.0.1> Action
>>     bridge(sofia/gateway/sip.provider.com/xxxxxxxxxxxxxxx at sip.provider.com
>>     <mailto:sofia/gateway/sip.provider.com/xxxxxxxxxxxxxxx at sip.provider.com>)
>>
>>     In all profiles, we have
>>     <param name="t38-passthru" value="true"/>
>>
>>     In case, the SIP provider does NOT answer with T.38, it works.
>>     The caller's side is reinvited with T.38, the SIP provider side
>>     is T.30
>>
>>     What the problem is: When the SIP provider' side IS answering
>>     with T.38, then (sometimes, when I send it via cli from the local
>>     freeswitch near the sending fax machine, it works)
>>
>>       * caller initiates a call
>>       * call is bridged to the SIP provider' side
>>       * we receive a T.38 Reinvite from the SIP provider' side
>>       * Freeswitch sends Trying back to the the SIP provider' side
>>       * Freeswitch logs: set(execute_on_answer=t38_gateway self)
>>       * Freeswitch sends a T.38 Reinvite to the caller, establishes
>>         T.38 on this side.
>>       * But the T.38 Reinvite from the SIP provider' side is not
>>         answerered
>>       * So the SIP provider' sidehangs up after 10 sec of timeout.
>>
>>     What are we doing wrong here? Is it possible to act as a t.38
>>     passthrough router and a T.38 gateway in the same dialplan?
>>
>>
>>
>>     -- 
>>     With kind regards
>>     Peter Steinbach 
>>
>>     Telefaks Services GmbH
>>     mailto:lists (att) telefaks.de <http://telefaks.de>
>>     Internet: www.telefaks.de <http://www.telefaks.de>
>>
>>
>>     _________________________________________________________________________
>>     Professional FreeSWITCH Consulting Services:
>>     consulting at freeswitch.org <mailto:consulting at freeswitch.org>
>>     http://www.freeswitchsolutions.com
>>     <http://www.freeswitchsolutions.com>
>>
>>     Official FreeSWITCH Sites
>>     http://www.freeswitch.org
>>     http://confluence.freeswitch.org <http://confluence.freeswitch.org>
>>     http://www.cluecon.com
>>
>>     FreeSWITCH-users mailing list
>>     FreeSWITCH-users at lists.freeswitch.org
>>     <mailto:FreeSWITCH-users at lists.freeswitch.org>
>>     http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>     <http://lists.freeswitch.org/mailman/listinfo/freeswitch-users>
>>     UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>>     <http://lists.freeswitch.org/mailman/options/freeswitch-users>
>>     http://www.freeswitch.org
>>
>>
>>
>>
>> -- 
>>
>> */Brian West/*
>> brian at freeswitch.org <mailto:brian at freeswitch.org>
>>
>> */Twitter: @FreeSWITCH , @briankwest/*
>>
>> http://www.freeswitchbook.com 
>> http://www.freeswitchcookbook.com
>>
>> Allison prompts for FreeSWITCH:
>>
>> *https://www.gofundme.com/allison-prompts-for-freeswitch*
>>
>> Wish to schedule a meeting?
>>
>> http://app.timebridge.com/#/meet/freeswitch
>>
>> Got Bugs? Report them here <https://freeswitch.org/jira>! |
>> Reddit: /r/freeswitch <https://www.reddit.com/r/freeswitch>
>>
>> *T:*+19184209001 | *F:*+19184209002 | *M:*+1918424WEST (9378)
>> *Skype:*briankwest
>>
>>
>>
>> _________________________________________________________________________
>> Professional FreeSWITCH Consulting Services: 
>> consulting at freeswitch.org
>> http://www.freeswitchsolutions.com
>>
>> Official FreeSWITCH Sites
>> http://www.freeswitch.org
>> http://confluence.freeswitch.org
>> http://www.cluecon.com
>>
>> FreeSWITCH-users mailing list
>> FreeSWITCH-users at lists.freeswitch.org
>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>> http://www.freeswitch.org
>
>
> -- 
> With kind regards
> Peter Steinbach 
>
> Telefaks Services GmbH
> mailto:lists (att) telefaks.de
> Internet: www.telefaks.de
>
>
>
> _________________________________________________________________________
> Professional FreeSWITCH Consulting Services: 
> consulting at freeswitch.org
> http://www.freeswitchsolutions.com
>
> Official FreeSWITCH Sites
> http://www.freeswitch.org
> http://confluence.freeswitch.org
> http://www.cluecon.com
>
> FreeSWITCH-users mailing list
> FreeSWITCH-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org


-- 
With kind regards
Peter Steinbach 

Telefaks Services GmbH
mailto:lists (att) telefaks.de
Internet: www.telefaks.de

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20170224/3c779c7a/attachment-0001.html 


Join us at ClueCon 2016 Aug 8-12, 2016
More information about the FreeSWITCH-users mailing list