Hello Klaus,

You probably already know that for aggregating data which is available from another device, a Publish message could be triggered through MI, using pua_mi. And the data will be aggregated when sending Notify msg. However, in the case in which the info you what to add is dependent on the received one(like the temperature in the room for eg), registering a callback seems a good option. Another alternative is to filter the Publish message in config file and trigger sending a Publish through MI with the same expires.( it seems worse since it increasses message flow and implies aggregating for each Notify). If not dependant, it is an inconvenient to wait for a Publish to say what you want to say.
Is the callback mechanism appropriate for what you had in mind?

regards,

Anca



Klaus Darilion wrote:

Hi Anca!

I have another (IMO interesting) idea. What about allowing other modules to register a callback function just before PUBLISH body gets written into the presentity table.

E.g. presence module, just before it will write the XML payload into the presentity table, will execute the callback function, allowing registered modules to modify the XML body. Then the presence module stores the modified body into the presentity table. Further, activation on the body manipulation callback can be activated/deactivated from openser.cfg by setting a flag.

This would allow to modify published data e.g. for aggregating data which is available from external components.

what do you think of this?

regards
klaus

Anca-Maria Vamanu wrote:

Hello,

It should be implemented in presence module. Only it has acces to presentity_table and active_watchers table and in here notifications are generated.
Moreover this function could be generaly used no matter the event.

regards,

Anca

Klaus Darilion wrote:

Hi Anca!

I'm thinking about an MI function for resending NOTIFYs.

E.g. if the presence of an user is updated by an external application which writes directly into the presence table (instead of sending a PUBLISH) I want to trigger NOTIFYs to the watchers by calling this MI function.

Question: Where should this MI function be implemented? In presence or presence_xml module?

regards
klaus

Anca Vamanu wrote:

Revision: 2039
http://openser.svn.sourceforge.net/openser/?rev=2039&view=rev
Author:   anca_vamanu
Date:     2007-04-23 00:28:35 -0700 (Mon, 23 Apr 2007)

Log Message:
-----------
- Restructured the module to handle PUBLISH and SUBSCRIBE messages and generates NOTIFY messages in a general, event independentway. It allows registering events to it from other OpenSER modules. presence_xml module adds events: presence, presence.winfo, dialog;sla.
Modified Paths:
--------------
    trunk/modules/presence/README
    trunk/modules/presence/doc/presence.sql
    trunk/modules/presence/doc/presence_devel.sgml
    trunk/modules/presence/doc/presence_user.sgml
    trunk/modules/presence/event_list.c
    trunk/modules/presence/event_list.h
    trunk/modules/presence/notify.c
    trunk/modules/presence/notify.h
    trunk/modules/presence/presence.c
    trunk/modules/presence/presence.h
    trunk/modules/presence/presentity.c
    trunk/modules/presence/publish.c
    trunk/modules/presence/subscribe.c
    trunk/modules/presence/subscribe.h
    trunk/modules/presence/utils_func.c
    trunk/modules/presence/utils_func.h

Added Paths:
-----------
    trunk/modules/presence/bind_presence.c
    trunk/modules/presence/bind_presence.h


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.

_______________________________________________
Devel mailing list
[email protected]
http://openser.org/cgi-bin/mailman/listinfo/devel







_______________________________________________
Devel mailing list
[email protected]
http://openser.org/cgi-bin/mailman/listinfo/devel

Reply via email to