[Freeswitch-dev] TDM questions: OZ, signaling on digital spans
Michael Collins
mcollins at fcnetwork.com
Tue Feb 5 19:34:50 EST 2008
________________________________
From: freeswitch-dev-bounces at lists.freeswitch.org
[mailto:freeswitch-dev-bounces at lists.freeswitch.org] On Behalf Of
Anthony Minessale
Sent: Tuesday, February 05, 2008 6:19 AM
To: freeswitch-dev at lists.freeswitch.org
Subject: Re: [Freeswitch-dev] TDM questions: OZ, signaling on digital
spans
It's a trickle-up methodology.
The low level driver interprets the voltage change
or the bits flipping or whatever and turns it into
driver specific events which in turn are changed
into openzap specific events by the zap_<whatver>.c
zap_zt.c, zap_pika.c etc. when you apply a signaling
to a span in the mod_openzap config the signal specific
module will monitor the span for these events and decide
what they mean in reference to whatever signaling type
it represents.
Okay, so the driver-specific events get captured and translated...
Makes sense. Curious: does this all happen at OSI layer 2?
so
voltage changes on zaptel card
zaptel specific ring event is caught by zap_zt.c
openzap ring event is queued on the channel and
event data flag is set on the span.
zap_analog.c sees the event data flag and gets the
ring event on the channel
ring event is sent up to mod_openzap who starts a channel
in freeswitch.
so implementing another sig type like e&m just requires
zap_em.c and proper interpretation of the bit shifting
events. I belive zaptel drivers and pika
can do it but I don't know if the native sangoma can yet.
I think I get it. Next question: on a digital span that is set up in
the <analog spans> section of openzap.conf.xml - does zap_analog.c do
the signal translation even though the span is technically digital? It
almost sounds like zap_analog.c is agnostic to the analog/digital nature
of the span simply because it's receiving events from the driver via
openzap... Last question: if zap_analog.c is handling the translation of
FXO/FXS signaling then couldn't we almost just copy zap_analog.c to
zap_em.c and then redefine the bit patterns that represent on-hook,
ringing, hangup, etc.? Or am I oversimplifying again? ;)
Thanks for the explanation - I will distill this thread into it's
components and add it to the wiki when we're done.
-MC
P.S. - the zaptel drivers do support E&M, E&M wink, etc. I've used E&M
with the orange splat and connected to my NEC PBX with the exact same
tor2 and trunk-side T1 card.
Anthony Minessale II
FreeSWITCH http://www.freeswitch.org/
ClueCon http://www.cluecon.com/
AIM: anthm
MSN:anthony_minessale at hotmail.com
GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com
IRC: irc.freenode.net #freeswitch
FreeSWITCH Developer Conference
sip:888 at conference.freeswitch.org
iax:guest at conference.freeswitch.org/888
googletalk:conf+888 at conference.freeswitch.org
pstn:213-799-1400
----- Original Message ----
From: Michael Collins <mcollins at fcnetwork.com>
To: freeswitch-dev at lists.freeswitch.org
Sent: Tuesday, February 5, 2008 1:39:13 AM
Subject: [Freeswitch-dev] TDM questions: OZ, signaling on digital spans
Guys,
You better run for cover because Mikey has been reading technical books
again and now he has questions! :-)
First, I was reading in Matthew Gast's T1 - A Survival Guide about
channelized T1's and channel associated signaling. Just to make sure I
am understanding it correctly - CAS and robbed bit essentially refer to
the same thing on a channelized T1 don't they? The bits that are robbed
include the signaling bits - AB or ABCD depending on whether you have SF
or ESF. Please confirm if I am understanding this correctly.
Second, aren't FXO and FXS signaling on a digital channel really just a
matter of interpreting the meanings of the A and B bits being high or
low? Obviously there isn't an actual loop start or ground start on a
digital channel, but rather just a nomenclature for deciding that a
particular combination of A and B bits being high and/or low has a
meaning, like A high + B low means on-hook in one signaling type but
could mean ringing in another signaling type. Again, correct me if I'm
wrong...
Third, if FXO/FXS signaling is just a matter of manipulating the AB bits
in CAS, then shouldn't it be relatively easy to add E&M signaling since
that is essentially just another set of meanings for each AB bit
pattern? Or am I oversimplifying it?
Last question - how does OZ, in zap_zt.c, determine the signal start
type? (E.g. see code starting at line 87.) AFAIK it is not set in
openzap.conf.xml nor in openzap.conf. Does it get that info from the
zaptel driver? I know the start type is set in zaptel.conf, I just
didn't know if the OZ was smart enough to figure out the start type
without requiring the user to specify it in a conf file.
Thanks for letting me ask all these questions! I'll do my best to
update the wiki as appropriate as I get the answers...
-MC
-----Inline Attachment Follows-----
_______________________________________________
Freeswitch-dev mailing list
Freeswitch-dev at lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev
http://www.freeswitch.org
________________________________
Be a better friend, newshound, and know-it-all with Yahoo! Mobile. Try
it now.
<http://us.rd.yahoo.com/evt=51733/*http:/mobile.yahoo.com/;_ylt=Ahu06i62
sR8HDtDypao8Wcj9tAcJ%20>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20080205/0f7e4bcd/attachment.html
More information about the Freeswitch-dev
mailing list