Don't want to drag this thread out, but there is a (very) technical aspect that I want to state because it fits here.
@user8963
I did some more testing on what you said.
My VTO2000A running latest FW from this years july, is capable of handling 4 rtsp streams in parallel.
This makes possible to use at least 4 devices (who has more indoor stn. for a single door?) that show the visitors video BEFORE the call gets answered when running on asterisk/any sip server. The destination devices establishes a RTSP connection as soon as a call (INVITE) from the preconfigured VTO number gets received - dahua's VTH displays as well. So as already mentioned from my side, this has nothing to do with SIP nor the used 3rd pty server, it's a "end device to VTO" thing.
So I was curious how dahuas built in SIP server handles this.
Hooking up a VTH1660 on my VTO's internal SIP server with group call enabled and starting wireshark revealed the secret: It's a multicast/IGMP group!
The VTO creates a IGMP group, VTH joins this multicast group.
When a call get's set up, the INVITE to the VTH includes a proprietary sip header element called "Group-Call" with the multicast stream's address.
The VTH then simply picks up this stream. Off course, this can be done by any device in the same network and do not put any more load on the VTO.
As the IGMP group is set up by the VTO even when hooked up on a 3rd pty server (saw that in my traces), you can manually add the header to let the VTO pick up the multicast stream.
With asterisk pjsip this looks like that:
Code:
same => n,Set(PJSIP_HEADER(add,Group-Call)=224.0.2.14\;30001\;30000);
So dahua's and any other device is able to make use of this multicast group and does not need rtsp.
Dunno if linphone or other sip softclients have IGMP functions built in, but would be at least desirable.