Mahir never indicated which (webRTC or SIP) he would use. He specifically asked “For this, should I implement SIP or WebRTC protocol?”.
However, the GitHub project indicates -
- Use pure dart-lang
- SIP over WebSocket (use real SIP in your flutter mobile, desktop, web apps)
- Audio/video calls (flutter-webrtc) and instant messaging
- Support with standard SIP servers such as OpenSIPS, Kamailio, Asterisk and FreeSWITCH.
- Support RFC2833 or INFO to send DTMF.
Which to use is really a choice based on what is to be accomplished. On the one hand, Mahir indicated his app would be used inside a closed wifi ecosystem, but then went on to indicate the app would also do nav, mapping, etc., in addition to making calls. I am not sure what or how the two indications jive with each other, but I do not profess to know what the goal is in any detail.
However, I tend to agree with Telcomsolutions in that SIP seems to be the path needed. WAVE is a closed system and one can always get an SBC to address the security issue.
If chat, video or other functionality is needed, then webRTC may be the one better suited. Mahir never stated the latter being required, only to make calls.