E1 without signaling, only 30 voice timeslot, can DAHDI handle this situation?

We have a device that only has 30 voice timeslots, without signaling timeslot. In otherwords, there are only voices in the E1 line, no PRI or other protocols. The voice is always online. We need to get these voices to send to another data server via UDP.

We want to know how DAHDI handle this? Or there is other solutions available?

It is probably best to ask your vendor, but I’m pretty sure that DAHDI can handle it, although Asterisk would need a signalling channel.

Why do you only have 30 channels for media, if you don’t have a signalling channel?

Thanks a lot for your kindly reply.

Acctually, signals come from a TCP link, which is a private protocol and much complicated. My vendor has no more information for me.

We plan to use DAHDI directly in our code, without Asterisk. But there seems no programming guide for accessing DAHDI, except the standared Linux fs interface. Is there any programming guide of DAHDI?

I would say that was a developer question, rather than an end user one, so try the developer mailing list or IRC channel. I wouldn’t expect DAHDI to understand enough about signalling to know which channels where signalling ones.

I suspect this may be the only real documentation: https://github.com/brycied00d/dahdi-linux/blob/master/include/dahdi/user.h

Yes, we have also found ‘user.h’ refferred by ‘chan_dahdi.c’ who defines DAHDI channel for Asterisk. Actually, after DAHDI installation, we find ‘user.h’ in path ‘/usr/include/dahdi’.

By the way, ‘channels/chan_dahdi.c’ of Asterisk may be a good tutorial for coding with DAHDI.

Thanks again :slight_smile:

Just coding with standared Linux file interface:

  1. Open a channel for read and write:
    int fd = open("/dev/dahdi/channel", O_RDWR | O_NONBLOCK);
    ioctl(fd, DAHDI_SPECIFY, &channel_no) ;
  2. Read:
    read(fd, …)
  3. Write:
    write(fd, …)
  4. Close:
    close(fd, …)

The only thing should be taken care of is: One must use “ioctl(fd, DAHDI_SPECIFY, &channel_no) ;” to specify a channel to attach to the fd.

We write our conclusions here to help other people who would face the same problem with us.

It´s gaudy and cause to ask how a device could be possible to server 30 voices with no PRI and other protocols.
Questions becomes:
30 voice timeslots is based CCS or CAS.
Voice channels where are pointed?
what is the status signalling on voice channels?
How to know if voice channel is in use? how it suppose to connect to voice channel if no signalling?
If user connect to one of 30 voice channels, it listen to message or whatever?, and how about next user?
Sorry to hear these kind of request it touch off questions about this atypical case.