Table Notifications

Users can register to be notified when a change to a table occurs by creating an advise sink object and calling IMAPITable::Advise. Typical changes that cause notifications to be sent include the addition or deletion of a row or column and any critical error.

Microsoft Exchange Server information stores support table notifications only for contents tables and for hierarchy tables, not for other kinds such as attachment tables. Table notifications apply to specific tables, such as the contents table of your Inbox, which is the list of messages that appear in your Inbox. If you are registered for table notifications on it, you will be notified when new messages are added.

Using table notifications instead of object notifications can reduce network traffic. This is because, with a table notification, table data is connected to the notification’s RPC. In other words, when a message is added or modified, the table notification also includes data that has changed. It states, for example, that a message was added at a certain position in the table and it supplies the row data (the properties) for the row (the message). Because the notification itself contains all the information you need, you can simply display that returned data in the row with no further calls to the server.

In contrast, object notifications supply the notification but not the changed data. Typically, you would need to make an additional call to read the changed data, which causes more network traffic.