As we will discuss later, a principal can also be an application. If the watcher
declares an application to be just another buddy, the status of the application
can be monitored at a glance on the watcher UA and an interaction with the
application can be started by clicking on the buddy icon.
The model for instance IM is similar and is shown in Figure 13.2.
Both services have other similarities such as the notions of principals, which
can be either people or software and that appear to the service as a single
entity. Principals interact with the system via user agents. A UA is the coupling
between the principal and some core entity in the system.
Both the presence and the IM services may have complex internal structures
with specific servers and/or proxies. There may also be quite complex security
implementations to protect the presence and IM services from various attacks,
and to make sure they don’t communicate with other systems that are either
from competitors or that cannot be trusted for security.
Figure 13.2 Model for IM service
Instant Message Service
Instant
Message
Protocol
IM IM
Sender Instant Inbox
Sender UA Inbox UA
Principal Principal
Presence and Instant Messaging 227