Programming with arts

Jorge j.windmeisser at elogix.info
Sun Sep 14 21:24:13 BST 2003


Am Sonntag, 14. September 2003 20.50 schrieb Arnold Krille:
> On Sunday 14 September 2003 19:03, Jorge wrote:
> > I'm trying to develop a telephony program on KDE. How do I pass the ttyI
> > audio data to the arts server?
>
> \me thinks we are the ones who talked at linuxtag...

Hi Arnold, I'm afraid that you're confusing me with someone else, I've never
been to linuxtag.

> > I've programmed a server and for testing purpouses I've redirected the
> > ttyI output (uLaw format) through my server to a file called test. Then
> > I've written the following code:
>
> If the output you can give is wav (or something similar) you could use
> artscat instead of writing an own one. If your programm is using kde, you
> could use the (new) class KAudioPlayStream. Unfortunatly it does only
> support polling so you have to build your own queue (You will see what I
> mean if you look at the code;-) ).

That sounds horribly complicated! ;) Isn't there something easier?

I will explain how isdnserver (this is the name of the server) works. Isdnserver
decodes the HEX values provided by the /dev/isdnctrl device(s). When 
decoded it sends the pertinent infos (phonenumber, callID, costs, time, etc...) 
to the connected client(s). The client, kisdnmonitor (a KDE app), then can look 
up the name attached to that phonenumber in KABC and it will output it to a list 
and a popup widget.

Now I've implemented a "call init xxxxxx" command to initiate an audio call.
The client sends the command to isdnserver, isdnserver detaches a thread
which connects and configures a ttyIx device. When the other side answers
the isdnserver thread begins to send the ttyIx audio data to a port so that the 
client can retrieve it and then play it over the sound card.

I don't need any fancy stuff, I only want to playback the served audio data. That
data is delivered in the uLaw format, for now. Further I also need an input, so
that you can speak through a microphone. Then the client delivers the data
to isdnserver thread and this thread writes it to the ttyIx device.

I'm also planning to add voice mail functionality to isdnserver, but that should be
easier, I guess.


> > I've waded through the internet to look for furter information on arts
> > programming, but it seems that it's very scarce and incomplete.
>
> For me the help of a friend was the most useful...
>
> Arnold

Thank you for your quick response

Jorge



More information about the kde-multimedia mailing list