ISDN4BSD / ihfc0 in NT-mode setup

Daniel Hartmeier daniel at benzedrine.cx
Wed Nov 8 17:53:50 UTC 2006


On Wed, Nov 08, 2006 at 04:13:03PM +0100, Hans Petter Selasky wrote:

> It seems like you have configure the NT-side to P2P mode.
> 
> Try running "isdnconfig -u 0 -p DRVR_DSS1_NT".
> 
> Then "cat /dev/i4b > /dev/null &" or run "capitest -u 0 -i 1 -o 1".
> 
> Then pickup the phone. Have "isdndecode" running concurrently. Do you hear the 
> dialtone ?

Yes, that was it. Now with P2MP and opening /dev/i4b it works.

I wrote a little reader for the device, and when I pick up the receiver
on the phone, I get a dialtone, and I see MSG_CONNECT_IND messages with
the numbers dialed. The other way around, running capitest to dial the
phone, it rings.

So the cabling seems fine and the basics are working, thank you very
much!

Is the ioctl protocol (the MSG_* messages) something ISDN4BSD specific?
They seem to resemble Q.931 as far as event types go. Is there a way to
get access to the Q.931 layer directly from userland, without going
through any abstraction?

What I'd like to do is write (in userland) a Q.931 <-> SIP relay, and
use ISDN4BSD for the ISDN side. Ideally, I could read/write Q.931 frames
to the device (having ISDN4BSD do the lower layers itself), i.e. get
access to the raw binary frames.

It looks like i4btrc might already allow to read the Q.931 frames, is
there a way to inject frames on that level?

Before I go dive into the kernel side of the ISDN4BSD ioctls, is this
already available (I'm still not sure what the effect of the P_*
protocols is on the userland interface)? Do you think it would be
difficult to implement?

Daniel


More information about the freebsd-isdn mailing list