cybertools/tracking/notify
2019-04-26 17:42:10 +02:00
..
__init__.py started work on comment (discussions) and notify (notifications) 2008-02-11 22:29:25 +00:00
base.py work in progress: basic implementation of notification features 2008-02-26 09:06:21 +00:00
interfaces.py work in progress: basic implementation of notification features 2008-02-26 09:06:21 +00:00
README.txt extend tracking for loops.organize; changed tracks query to return a generator instead of a list; minor extensions for namespace/config stuff 2008-04-09 10:01:27 +00:00
tests.py fix tests/doctests according to current ZTK and BlueBream versions 2019-04-26 17:42:10 +02:00

=============
Notifications
=============

  ($Id$)

  >>> from zope import component
  >>> from cybertools.tracking.btree import TrackingStorage
  >>> from cybertools.tracking.notify.base import Notification, NotificationManager
  >>> component.provideAdapter(NotificationManager)

  >>> notifications = TrackingStorage(trackFactory=Notification)

  >>> from cybertools.tracking.notify.interfaces import INotificationManager
  >>> manager = INotificationManager(notifications)


Storing and Retrieving Notifications
====================================

  >>> manager.notify('obj01', 'user01', 'object_changed')

  >>> ntf01 = list(manager.query(userName='user01'))[0]
  >>> ntf01
  <Notification ['obj01', 1, 'user01', '...']:
  {'media': ['inbox'], 'state': 'new', 'type': 'object_changed'}>

  >>> print ntf01.state
  new
  >>> print ntf01.timingType
  None