Hi!!
I am Enrico and would like to say hello to all of you, PJSIP community!!
First of all, thank you for your work in PJSIP. I am impressed by the capabilities of the library!
So I am trying to build a SIP UA acting as a GSM gateway, more or less.
In particular, my idea is to build an application connectin to a PBX, and allowing to use 3G/4G modems with suitable funcitonality to make/receive phone calls.
I would need to be able to handle more than one modem at a time possibly. It seems PJSIP is the right library for the task, but I am very new to it and would need some guidance on how to proceed, and what functionality, and functions, I could use.
the simple_pjsua.c example looks similar to what I need, except for the fact I don't need to interact with sound devices. I know
pjsua_set_nno_nd_dev
is what I need for this, but I am not able to understand the logic flow of things, and how to use them.
the setup I have in mind is as follows:
1 - I would need to develope a port to read/write to a GSM modem serial device: it produces RAW PCM audio, which I can read with a command like:
play -t raw -r 8k -e signed -b 16
where 2play" is from sox. Is there already a port for doing something like that?
I tried to look at the wav_player / wav_writer, but don't yet know if this is what I need.
2 - I would need to react to SIP events and Modemmanager events, making and receiving calls accordingly.
What tools do I need to acomplish this?
For me, even understanding how PJProject's memory pools work seem a challenge.
Can you help me? :)
The project I am working is GPL V2+ code, so I plan to share it once it's working!
My objective is to do my best, and understand how things work to use them properly.
Thank you!!
Enrico