Hi all,
I'm developing an application using Pjsua2 since it provides a nice high
level API for audio and video calls. Thanks for your effort on that!
In my application, I have good reasons (security reasons) for:
- Not using a global sip server like OpenSips
- Using a custom presence mechanism
- Using a "generic" signaling channel
Let's say we have two peers Alice and Bob. Alice and Bob don't have public
IPs. Thats why I have a presence/signaling infrastructure (not a SIP
server) in which Alice can send arbitrary messages to Bob (and vice-versa).
Suppose I'm Alice and I want to call Bob. First, I need to create a SIP
proxy (listening at port XYZ) for Bob at my side. Then, I'll make a call to
URI sip:Bob@localhost:XYZ. This make_call will generate an INVITE request,
which will be relayed (through the proxy server) to my custom signaling
channel.
Bob is also listening to the signaling channel, and eventually will get the
INVITE request through Alice's proxy at his side. Alice's proxy relays the
INVITE request to Bob's actual SIP TCP port.
I'm doing some tests with both Alice and Bob @localhost and that's (almost)
working fine. It's seems in my tests, when Bob sends a "RINGING" for
Alice, he's trying to send to the original Alice's address, rather than
using Alices's proxy's address at his side.
If I got correctly, Alice's INVITE request contains it address and port.
Bob will use those info for creating subsequent SIP requests to Alice.
However, I'd like to use URI for Alice's proxy at Bob's side for subsequent
Bob's SIP requests.
My question is:
Once I got an INVITE, is that possible to use a proxy for the subsequent
SIP messages based on the alias of the field "from" from the initial INVITE
request?
Hi all,
I'm developing an application using Pjsua2 since it provides a nice high
level API for audio and video calls. Thanks for your effort on that!
In my application, I have good reasons (security reasons) for:
- Not using a global sip server like OpenSips
- Using a custom presence mechanism
- Using a "generic" signaling channel
Let's say we have two peers Alice and Bob. Alice and Bob don't have public
IPs. Thats why I have a presence/signaling infrastructure (not a SIP
server) in which Alice can send arbitrary messages to Bob (and vice-versa).
Suppose I'm Alice and I want to call Bob. First, I need to create a SIP
proxy (listening at port XYZ) for Bob at my side. Then, I'll make a call to
URI sip:Bob@localhost:XYZ. This make_call will generate an INVITE request,
which will be relayed (through the proxy server) to my custom signaling
channel.
Bob is also listening to the signaling channel, and eventually will get the
INVITE request through Alice's proxy at his side. Alice's proxy relays the
INVITE request to Bob's actual SIP TCP port.
I'm doing some tests with both Alice and Bob @localhost and that's (almost)
working fine. It's seems in my tests, when Bob sends a "RINGING" for
Alice, he's trying to send to the original Alice's address, rather than
using Alices's proxy's address at his side.
If I got correctly, Alice's INVITE request contains it address and port.
Bob will use those info for creating subsequent SIP requests to Alice.
However, I'd like to use URI for Alice's proxy at Bob's side for subsequent
Bob's SIP requests.
My question is:
Once I got an INVITE, is that possible to use a proxy for the subsequent
SIP messages based on the alias of the field "from" from the initial INVITE
request?