Example Custom Channel Drivers, or Hints?


I was wondering if anyone has ever made a channel driver in Asterisk that uses a VoIP phone (mine is a Digium D70), that can get frames of voice and then send it off to another service, and then that service will send back frames and then those get pushed out to the VoIP phone’s earpiece.

It can be a SIP protocol or whatever, but I was just wondering if anyone have any examples maybe of interfacing/customizing a asterisk driver.

Ryan C.

That sounds like a developer question. It is certainly not a general discussion item. Develper questions are handled on the developer mailing list and IRC channels.

This sounds like a very complicated audiohook, rather than a channel driver.

I looked into audiohooks and you might be right. I am using the func_volume as a baseline to work with because it shouldnt be hard to stream in and out because of the audiohook direction parameter. I was wondering though how in the dialplan you would invoke the Volume audiohook because I could not find any example.

Do I only have to do this?

exten => 1,n,Set(AUDIOHOOK_INHERIT(Volume)=yes)

Or is there another step before where I would do this:

exten => 1,n,Volume()

Also should I want to be doing a WHISPER or MANIPULATE audiohook type? Because I want to be overwriting what is being written back to the persons earpeice, so an ast_audiohook_write_frame would be what I would use. Correct?


These all need to be directed to develop resources. You probably need to create an application to insert the audiohook.