[SIP SIMPLE client] A usable version

Adrian Georgescu ag at ag-projects.com
Sun Jan 25 01:06:40 CET 2009


Hi Willem,


I am getting an exception on both sides when I try to establish the  
desktop sharing session scripts, it seems that the programs cannot  
find the ringing wav files to play.

Initiating SIP session from "Adrian G." <sip:31208005169 at ag- 
projects.com> to sip:ag at ag-projects.com through proxy  
85.17.186.7:5060...
Early SIP session to sip:ag at ag-projects.com (180 Ringing)
Ringing from sip:31208005169 at 80.101.96.20:61385
Traceback (most recent call last):
   File "/Library/Python/2.5/site-packages/eventlet-0.9pre-py2.5.egg/ 
eventlet/hubs/twistedr.py", line 246, in run
     self.mainLoop(reactor)
   File "/Library/Python/2.5/site-packages/eventlet-0.9pre-py2.5.egg/ 
eventlet/hubs/twistedr.py", line 264, in mainLoop
     reactor.runUntilCurrent()
--- <exception caught here> ---
   File "/Library/Python/2.5/site-packages/Twisted-8.1.0-py2.5- 
macosx-10.5-i386.egg/twisted/internet/base.py", line 705, in  
runUntilCurrent
     call.func(*call.args, **call.kw)
   File "/Library/Python/2.5/site-packages/eventlet-0.9pre-py2.5.egg/ 
eventlet/proc.py", line 503, in _run
     result = function(*args, **kwargs)
   File "/Library/Python/2.5/site-packages/pypjua/enginebuffer.py",  
line 257, in _run
     self.play_wav(*self.args, **self.kwargs)
   File "core.ua.pxi", line 405, in pypjua.core.PJSIPUA.play_wav_file  
(pypjua/core.c:16132)

   File "core.sound.pxi", line 260, in pypjua.core.WaveFile.__cinit__  
(pypjua/core.c:8411)

pypjua.core.PJSIPError: Could not open WAV file: Not found  
(PJ_ENOTFOUND)
Traceback (most recent call last):
   File "./sip_offer_desktop", line 87, in <module>
     main()
   File "./sip_offer_desktop", line 72, in main
     session = MSRPSession.invite(inv, msrp_connector,  
make_make_RFB_SDPMedia(desktop_request), ringer=ringer)
   File "/Library/Python/2.5/site-packages/pypjua/clients/ 
msrpsession.py", line 96, in invite
     invite_response, msrp = invite(inv, msrp_connector,  
SDPMedia_factory, ringer)
   File "/Library/Python/2.5/site-packages/pypjua/clients/ 
msrpsession.py", line 46, in invite
     invite_response = inv.invite(ringer=ringer)
   File "/Library/Python/2.5/site-packages/pypjua/enginebuffer.py",  
line 436, in invite
     event_name, params = q.wait()
   File "/Library/Python/2.5/site-packages/eventlet-0.9pre-py2.5.egg/ 
eventlet/coros.py", line 1034, in wait
     self.sem.acquire()
   File "/Library/Python/2.5/site-packages/eventlet-0.9pre-py2.5.egg/ 
eventlet/coros.py", line 302, in acquire
     api.get_hub().switch()
   File "/Library/Python/2.5/site-packages/eventlet-0.9pre-py2.5.egg/ 
eventlet/hubs/twistedr.py", line 227, in switch
     return self.greenlet.switch()
eventlet.proc.LinkedFailed: '<bound method Ringer._run of  
<pypjua.enginebuffer.Ringer instance at 0x2a06d78>>' failed with  
PJSIPError

Regards,
Adrian

On Jan 24, 2009, at 11:46 PM, Willem Toorop wrote:

> Hi Adrian, Michiel, Ruud & Denis,
>
> Attached is a version that actually works quiet well. It is slow,  
> but usable (less then a second response time). Cleanups are handled  
> nicely (no crashing scripts) and they use the "m=application <port>  
> TCP/TLS/MSRP/RFB *" media line in the SDP.
>
> While debugging packet order, going in and out, I noticed that  
> sometimes an empty MSRP message is received, although the Byte-Range  
> header indicates differently. Once those messages were filtered out,  
> everything started working fine.
>
> Here is such a message:
>
> MSRP BnWVQ0OmGQBNgqMYT3KqvlYR SEND
> To-Path: msrps://192.168.178.33:38731/b4APciEdQfmw;tcp
> From-Path: msrps://node03.dns-hosting.info:2855/ 
> k5yd231nlUJOLUXKR1yz0DEyMzI4MzYwOTAuNjU5OjgyLjk1LjE0MS4xMjc=;tcp  
> msrps://node03.dns-hosting.info:2855/ 
> R0g1LsWuyTYghdQyDUIcOzEyMzI4MzYwODguNzI0OjgyLjk1LjE0MS4xMjc=;tcp  
> msrps://192.168.178.33:38730/YFdsfYLisv1V;tcp
> Message-ID: vRlGOYQEyF
> Byte-Range: 1-42/42
> Content-Type: application/x-rfb
>
>
> -------BnWVQ0OmGQBNgqMYT3KqvlYR+
>
> The + on the end of the end-line<transaction id> indicates that more  
> is coming, but in that case the Byte-Range should have been 1-*/42  
> (i think, because 1-1/42 would incidate one byte of data and 1-0/42  
> is just silly), or the message should not have been sent at all.
>
> So I was wrong thinking that the order of the messages was altered  
> by MSRP-Relay. The garbage I saw in earlier versions where due to  
> receiving those MSRP messages with no content; The socket connecting  
> to the viewer was closed by them halfway in an update of several  
> rectangles. When the connection was closed, the rectangles on the  
> screen would be updated with data that was already in the buffer  
> where the update data should have been loaded.
> MSRP-Relay is forwarding the messages in the order it received it in.
>
> Sorry about the confusion.
> Cheers,
>
> Willem
>
> <sip_desktop_sharing-0.02.tgz>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ag-projects.com/pipermail/sipbeyondvoip/attachments/20090125/ef784b45/attachment-0001.html>


More information about the SIPBeyondVoIP mailing list