Integrating PJSIP into Mozilla Framework

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Roland,
    can you share the code for packing PJSIP into XPCOM? It could be 
great to have a XUL interface for PJSIP.

Regards

Roland Klabunde wrote:
> The better approach for Mozilla is to pack PJSIP into a XPCOM. I already 
> made that. It is not that easy as an ActiveX is, but does the job.
>
> Regards
>
> ----- Original Message ----- 
> From: "Benny Prijono" <bennylp@xxxxxxxxx>
> To: "pjsip list" <pjsip at lists.pjsip.org>
> Sent: Friday, February 22, 2008 9:54 AM
> Subject: Re: Integrating PJSIP into Mozilla Framework
>
>
>   
>> On 2/21/08, Adeyeye O. Michael <micadeyeye at crg.ee.uct.ac.za> wrote:
>>     
>>> Hi Benny,
>>>  I was able to integrate the SIP stack into Mozilla FF(firefox) by making
>>>  shared lib. of it and loading into FF using a stub.
>>>  I have quite a number of shared lib. such as libpjsipregister.so,
>>>  libpjsipsendim.so, libpjsipreceiveim.so and so on.
>>>
>>>       
>> I'm not sure why we need to create one library for each function (!),
>> that sounds like bad packaging to me, but then again I'm clueless
>> about Mozilla framework or HTTP mobility, so maybe this is something
>> that's enforced by the framework.
>>
>>     
>>>  In one of my shared lib. (libpjsipregister.so), I cloned the result
>>>  after receiving IM since pjsip_rx_data will be reset after the all
>>>  callback s are executed. I read that I can't pass pjsip_rx_data
>>>  structure to another thread for asynchronous processing. So I have
>>>  something like this:
>>>
>>>  static void on_pager(...){
>>>                 ....
>>>                 ....
>>>                 pjsip_msg_body* cloned_msg = &pjsip_msg_body_clone;
>>>                 ....
>>>                 ....
>>>           }
>>>
>>>       
>> If you want to clone a message body, then the above snippet won't do
>> it. Use this instead:
>>
>> {
>>  pjsip_rx_data *rdata;
>>  pjsip_msg *msg;
>>  char dup[1500];
>>  int dup_len;
>>
>>  // retrieve rdata from pjsip_event
>>  // see http://trac.pjsip.org/repos/wiki/FAQ#pjsip_event
>>  rdata = ...
>>  msg = rdata->msg_info.msg;
>>
>>  // extract text representation of message body to "dup"
>>  dup_len = pjsip_print_text_body(msg->body, dup, sizeof(dup));
>> }
>>
>> I'm not sure who are your supposed to communicate the cloned body to
>> another XPCOM or whatever mechanism that you use, so I can't comment
>> on your snippet below. But lets start with having correct message body
>> content by using my snippet above first.
>>
>> cheers,
>> -benny
>>
>>     
>>>  In another shared lib.(libpjsipreceiveim.so), I tried to retrieve the
>>>  data sent in the IM session, basically HTTP URL. I have something like 
>>> this:
>>>
>>>  char *sipreceiveimonly(){
>>>                 pj_thread_desc desc;
>>>                 pj_thread_t *thread;
>>>                 ....
>>>                 ....
>>>                 pjsip_msg_body* cloned_msg;
>>>
>>>                 return cloned_msg->data;
>>>                                      }
>>>
>>>  The returned values are passed to my XPCOMs in FF which implement those
>>>  shared lib.
>>>
>>>  The problem is that I couldn't retrieve the URL(I guess it's in
>>>  "cloned_msg->data") on calling *sipreceiveimonly(). This is a
>>>  provisional solution, I planned to pass such info via SIP INFO rather
>>>  than IM in the nearest future.
>>>
>>>
>>>  How can I retrieve the IM data (i.e.URL)??
>>>  Guess I am missing something.
>>>
>>>  Yours,
>>>  Mike.
>>>
>>> Benny Prijono wrote:
>>>  > On 2/19/08, Adeyeye Oluwasegun Michael <micadeyeye at crg.ee.uct.ac.za> 
>>> wrote:
>>>  >
>>>  >> Hi Benny,
>>>  >> I am currently integrating PJSIP into Mozilla Firefox in order to 
>>> achieve
>>>  >> HTTP Session Mobility using SIP. My research intention is to transfer 
>>> web
>>>  >> sessions between web browsers using SIP. Though I planned sending the
>>>  >> data(contents of cookies, rewritten URL, hidden element) via SIP 
>>> INFO, at
>>>  >> present, I am sending the data as IM(Instant Messaging).
>>>  >>
>>>  >>
>>>  >
>>>  > Hi Adeyeye,
>>>  >
>>>  > Interesting! I didn't know that we can use SIP for that.
>>>  >
>>>  >
>>>  >> While I have accomplished the task of transferring URL from a 
>>> browser's
>>>  >> addressbar to another as IM data using pjsua_im_send(), I haven't 
>>> been
>>>  >> able to retrieve the data at the destination browser. I wish you had 
>>> a
>>>  >> function like pjsua_im_send() that can help retrieve such data. I 
>>> tried
>>>  >> couple of things such as trying to implement the callback, getting 
>>> value
>>>  >> of "msg" attribute in the IM message struct 
>>> pjsua_msg_data/pjsip_rx_data
>>>  >> but all were futile.
>>>  >>
>>>  >
>>>  > Sorry I don't quite get you. Did you want to retrieve a particular
>>>  > message element (such as header or message body) from an incoming IM?
>>>  > Will this help: http://trac.pjsip.org/repos/wiki/FAQ#pjsip_event ?
>>>  >
>>>  > cheers,
>>>  >  -benny
>>>  >
>>>  >
>>>  >
>>>  >> Do you know if such data is stored in variable not listed in the 
>>> PJSUA
>>>  >> module/API?
>>>  >>
>>>  >> Your contributions are welcome.
>>>  >>
>>>  >> Mike.
>>>  >>
>>>  >>
>>>  >> _______________________________________________
>>>  >> Visit our blog: http://blog.pjsip.org
>>>  >>
>>>  >> pjsip mailing list
>>>  >> pjsip at lists.pjsip.org
>>>  >> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org
>>>  >>
>>>  >>
>>>  >
>>>  > _______________________________________________
>>>  > Visit our blog: http://blog.pjsip.org
>>>  >
>>>  > pjsip mailing list
>>>  > pjsip at lists.pjsip.org
>>>  > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org
>>>  >
>>>
>>>
>>>  _______________________________________________
>>>  Visit our blog: http://blog.pjsip.org
>>>
>>>  pjsip mailing list
>>>  pjsip at lists.pjsip.org
>>>  http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org
>>>
>>>       
>> _______________________________________________
>> Visit our blog: http://blog.pjsip.org
>>
>> pjsip mailing list
>> pjsip at lists.pjsip.org
>> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org
>>
>>     
>
>
> _______________________________________________
> Visit our blog: http://blog.pjsip.org
>
> pjsip mailing list
> pjsip at lists.pjsip.org
> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org
>
>   




[Index of Archives]     [Asterisk Users]     [Asterisk App Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [Linux API]
  Powered by Linux