Hi
I have tried various possible configurations for the CallIDPattern in
etc/config.FS but none of them are working. Perhaps, I would need an
example of how to configure CallIDPattern such that the caller id is passed
from FreeSWITCH to Hylafax.
It would be great to hear from someone who has done this on FreeSWITCH and
mod_spandsp.
In case of
CallIDPattern: SHIELDED_DTMF
CallIDAnswerLength: 4
or
CallIDPattern: "NDID="
CallIDPattern: "NMBR="
CallIDPattern: "NAME="
I am not getting any CallID in the logs.
When I configure as
ModemRingResponse: "AT#CLS=8\nAT#VLS=4\nATA"
CallIDPattern: SHIELDED_DTMF
CallIDAnswerLength: 4
ModemAnswerCmd: "<delay:100>AT+FCLASS=1\nATA"
I get the following error in the log
Jun 14 17:21:30.15: [15237]: SESSION BEGIN 000000079 19995551212
Jun 14 17:21:30.15: [15237]: HylaFAX (tm) Version 6.0.5
Jun 14 17:21:30.15: [15237]: CallID: " "
Jun 14 17:21:30.15: [15237]: DELAY 1000 ms
Jun 14 17:21:31.15: [15237]: <-- [14:AT+FCLASS=1;A\r]
Jun 14 17:21:31.17: [15237]: --> [5:ERROR]
Jun 14 17:21:31.17: [15237]: ANSWER: Ring detected without successful
handshake
Jun 14 17:21:31.17: [15237]: Ring detected without successful handshake
Jun 14 17:21:31.17: [15237]: SESSION END
In FreeSWITCH, I am bridging all incoming calls to modem/1/a/a where a
means the available modem.
My complete automatically generated config is
CountryCode: 91
AreaCode: 124
FAXNumber: +1.999.555.1212
LongDistancePrefix: 1
InternationalPrefix: 011
DialStringRules: etc/dialrules
ServerTracing: 1
SessionTracing: 11
RecvFileMode: 0666
LogFileMode: 0666
DeviceMode: 0666
RingsBeforeAnswer: 1
SpeakerVolume: off
GettyArgs: "-h %l dx_%s"
LocalIdentifier: "NothingSetup"
TagLineFont: etc/lutRS18.pcf
TagLineFormat: "From %%l|%c|Page %%P of %%T"
MaxRecvPages: 50
#
#
# Modem-related stuff: should reflect modem command interface
# and hardware connection/cabling (e.g. flow control).
#
# We use "ModemType: Class1" with "Class1Cmd: AT+FCLASS=1.0" for now
#
ModemType: Class1 # use this to supply a hint
#ModemRate: 19200 # rate for DCE-DTE communication
#ModemFlowControl: xonxoff # XON/XOFF flow control assumed
#
#ModemSetupDTRCmd: AT&D2 # setup so DTR drop resets modem
#ModemSetupDCDCmd: AT&C1 # setup so DCD follows carrier
#GettyArgs: "-h %l dx_%s" # modem must auto-detect fax/data
#
# We can append the "@" symbol to the dial string so that
# the modem will wait 5 seconds before attempting to connect
# and return result codes that distinguish between no carrier
# and no answer. This makes it possible to avoid problems with
# repeatedly dialing a number that doesn't have a fax machine
# (kudos to Stuart Lynne for this trick.)
#
# NB: If you need to prefix phone numbers to get through a PBX,
# put it in the ModemDialCmd; e.g. "DT9%s@".
#
#ModemDialCmd: ATDT%s # T for tone dialing
#
# Other possible configuration stuff. The default strings are
# shown below. Only those that are different from the defaults
# need to be included in the configuration file.
#
#ModemResetCmds: "" # stuff to do when modem is
reset
#ModemAnswerCmd: ATA # use this to answer phone
#ModemNoFlowCmd: AT&K # disable flow control cmd
#ModemHardFlowCmd: AT&K3 # hardware flow control cmd
#ModemSoftFlowCmd: AT&K4 # software flow control cmd
#ModemNoAutoAnswerCmd: ATS0=0 # disable auto-answer
#
# Set modem speaker volume commands: OFF QUIET LOW MEDIUM HIGH.
# Note that we both turn the speaker on/off and set volume.
#
#ModemSetVolumeCmd: "ATM0 ATL0M1 ATL1M1 ATL2M1 ATL3M1"
#ModemEchoOffCmd: ATE0 # disable command echo
#ModemVerboseResultsCmd: ATV1 # enable verbose command
results
#ModemResultCodesCmd: ATQ0 # enable result codes
#ModemOnHookCmd: ATH0 # place phone on hook
(hangup)
#ModemSoftResetCmd: ATZ # do soft reset of modem
#ModemSoftResetCmdDelay: 3000 # pause after soft reset
#ModemWaitTimeCmd: ATS7=60 # wait 60 seconds for carrier
#ModemCommaPauseTimeCmd: ATS8=2 # comma pause time is 2
seconds
#ModemRecvFillOrder: LSB2MSB # bit order of received facsimile
#ModemSendFillOrder: LSB2MSB # bit order modem expects for
transmit
#
Class1Cmd: AT+FCLASS=1.0 # command to enter class 1.0
Class1PPMWaitCmd: AT+FTS=7 # command to stop and wait before
PPM
Class1TCFWaitCmd: AT+FTS=7 # command to stop and wait before
TCF
Class1EOPWaitCmd: AT+FTS=9 # command to stop and wait before
EOP
Class1SwitchingCmd: AT+FRS=7 # command to stop and listen for
silence
Class1RecvAbortOK: 200 # wait 200ms for abort response
Class1FrameOverhead: 4 # 4 byte overhead in recvd HDLC
frames
Class1RecvIdentTimer: 40000 # 35+5secs waiting for ident frames
Class1TCFMaxNonZero: 10 # max 10% of data may be non-zero
Class1TCFMinRun: 1000 # min run is 2/3rds of TCF duration
Thanks for any more pointers or examples!
regards,
Anita