From NINA Wiki
Jump to navigation Jump to search

MSNP Protocol
Activity SDK
Introduction to the MSN Messenger Activity API
Key Requirements for a MSN Messenger Activity
Introduction to MSN Messenger Activity API
Overview of MSN Messenger Activity API
Activities Menu
System Requirements
Standard vs. Advanced Applications
Supported Countries and Languages
MSN Messenger Activity API Support
Copyright Information
MSN Messenger Activity API Process
MSN Messenger Activity Process Overview
Supporting Documentation
Requesting Usage of Special Permissions
Submitting Pre-compliance Testing Results
MSN Requirements for Developing an Activity API Application
Additional Activity API Application Development Requirements
Selecting Development Options
Activity API Restrictions
Developing a MSN Messenger Activity
Development Considerations
Getting Started
Required Definitions
Document Body Basics
Single-User Application
Multiuser Application
Designing MSN Messenger Activity Graphics
Testing an Activity
Testing Overview
The Local XML File
Test Environment Setup
Increasing MSN Messenger Activity Usage
Understanding How to Increase Activity Usage with MSN
Design Considerations for Increased Activity Usage
Calling the MSN Messenger Client Directly
Calling the MSN Messenger Client from a URL
Using the MSN Messenger Variables
Technical Reference
Obtaining Access to Restricted Features
Permission Flags
ActiveX Flag
EnableIP Flag
PassportSiteID Flag
ReceiveIM Flag
ReplaceIM Flag
SendFile Flag
SendIM Flag
UserProperties Flag
The Activity Object Model
ConnectionType Enumeration
FileStatus Enumeration
CloseApp Method
Channel Object
OnAppClose Event
OnDataError Event
OnDataReceived Event
OnFileProgress Event (Restricted)
OnFileReceived Event (Restricted)
OnIMReceived Event (Restricted)
OnRemoteAppClosed Event
OnRemoteAppLoaded Event
OnSendFileCancelled Event (Restricted)
OnTypeChanged Event
CancelSendFile Method (Restricted)
EnterIM Method (Restricted)
Initialize Method
SendData Method
SendFile Method (Restricted)
SendIM Method (Restricted)
SendIMAsUser Method (Restricted)
Data Property
Error Property
FileInfo Property (Restricted)
Type Property
IM (read-only) Property (Restricted)
IM (read-write) Property (Restricted)
Error Object
Type Property
Data Property
FileInfo Object
Path Property
Size Property
Progress Property
Incoming Property
Status Property
Messenger Object
Options Method
Phone Method
User Object
EMail Property (Restricted)
GlobalIP Property (Restricted)
LocalIP Property (Restricted)
Name Property (Restricted)
PUID Property (Restricted)
Users Collection
Item Method
_NewEnum Method
Count Property
Me Property
Inviter Property
Error ListCommandsRelying Party SuiteSpotlife
XMPPHTTP GatewayTabsActivities
Development ToolsMSNP Grid
PolygamyURLs used by MSN
Protocol Versions
Version 21
Version 18
Version 16
Version 15
Version 14
Version 13
Version 12
Version 11
Version 9
Version 8
Version 2
IntroductionP2PObject DescriptorDisplay PicturesFile Transfer
Microsoft Messenger for Mac

Required Definitions

When a MSN Messenger Activity is running, the MSN® Messenger script engine is firing events to the application. These events include indications that data was received or that the connection type changed. In order for two instances of your application to communicate with each other, you must define appropriate event handlers. For example, if you use the SendData method to send a string from one instance to the other, an OnDataReceived event handler must be defined to receive the string. No exception will be thrown if Messenger fires an event that is not defined in your application, but failure to handle events could cause the applications to lose synchronization. Refer to the skeleton code below for the events that should always be defined.

Following are JavaScript examples of required definitions for all multiuser Launch Site applications:

    function Channel_OnRemoteAppLoaded() {
    function Channel_OnRemoteAppClosed() {
    function Channel_OnDataReceived() {
    function Channel_OnDataError() {
    function Channel_OnTypeChanged() {
    function Channel_OnAppClose() {

Some event handlers must be defined only if your Activity has special permission flags enabled. For example, if an application has the ReceiveIM permission flag enabled, it should define an event handler for the OnIMReceived event.

Following are JavaScript examples of definitions that are required only if special permission flags are enabled:

    function Channel_OnIMReceived() {
    // Only fired if application has ReceiveIM or ReplaceIM permission flag.
    function Channel_OnFileReceived() {
    // Only fired if application has SendFile and ActiveX permission flags.
    function Channel_OnFileProgress() {
    // Only fired if application has SendFile and ActiveX permission flags.
    function Channel_OnSendFileCancelled() {
    // Only fired if application has SendFile and ActiveX permission flags.