<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=EN-US link="#0563C1" vlink="#954F72" style='word-wrap:break-word'><div class=WordSection1><p class=MsoNormal>If/ when you kill the process or pull the plug on the client, there is no longer code running to send a message back to the server. <o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>I use a method on my own system that you could adopt to continually monitor your clients. In my client/server RTP based audio system, to start the client pipeline the code ssh-es into the client machine, launches a gstreamer process, and then find the pid of the process. The pid is written to a file. Later, when I want to stop the streaming RX on the client side, the code again logs into the client machine, obtains the pid, from the file, checks to see if it is running, and then kills it. You could have code on your server do something like that at a regular interval to just check to see if the machine is reachable and the process is still alive. Alternately, the client could send back a message to the server at some regular interval after checking the pid status, to let it know that the process is still running. If messages stop, that would indicate that the communication is down or the client is dead, etc. <o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal><b>From:</b> gstreamer-devel <gstreamer-devel-bounces@lists.freedesktop.org> <b>On Behalf Of </b>Sapna kumari via gstreamer-devel<br><b>Sent:</b> Wednesday, July 14, 2021 11:19 AM<br><b>To:</b> gstreamer-android@lists.freedesktop.org; Discussion of the development of and with GStreamer <gstreamer-devel@lists.freedesktop.org>; Nirbheek Chauhan <nirbheek.chauhan@gmail.com><br><b>Cc:</b> Sapna kumari <sapna344@gmail.com><br><b>Subject:</b> RTSP client abrupt disconnection doesnt remove connection with rtsp server<o:p></o:p></p></div><p class=MsoNormal><o:p> </o:p></p><div><p class=MsoNormal>Dear Team,<o:p></o:p></p><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>I have a running gst rtsp server on android device . I can connect to any number of clients successfully.<o:p></o:p></p></div><div><p class=MsoNormal>But if any of the client closes abruptly , for ex : kill the task from task manager, then i am not receiving disconnection in rtsp server.<o:p></o:p></p></div><div><p class=MsoNormal>Is there a way to remove rtsp client connection which no longer exists?<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>Thanks & Regards,<o:p></o:p></p></div><div><p class=MsoNormal>Sapna<o:p></o:p></p></div></div></div></body></html>