SIP Instant Messaging
TracNav
Sending IM
There are two ways to send IM, using send_pager() method of Buddy object, or send_pager() method of Call object. The former is probably preferable since it allows you to send pager without having to establish a call, but just to say that sending IM within call is possible.
Typing Indication
In addition to sending instant messages, you can also send typing indication to remote buddy using send_typing_ind().
Pager Status
The transmission status of outgoing instant messages is reported in on_pager_status() method of BuddyCallback class, or on_pager_status() of CallCallback class, depending on how the instant message was sent.
Receiving IM
There are three ways to receive incoming instant messages (yes unfortunately it's not that straightforward), depending on how and who sends the instant message:
- if the IM was sent within call, then it will be received in on_pager() method of CallCallback object
- if the IM was sent not within the call and the sender is in the our buddy list, then it will be received in on_pager() method of BuddyCallback object.
- failing all that, the IM will be reported in on_pager() method of AccountCallback.
Incoming typing indications will be received in similar way, in on_typing() method of the relevant callback class.