Subscription to a topic is necessary to receive Push to User notifications. Once a user subscribes to a topic, all push messages sent to this topic will be delivered to the user.
The following sample code subscribes to an application-scope topic named SendingAlert
.
// Instantiate an existing topic in the application scope.
var topicName = "SendingAlert" ;
var topic = Kii . topicWithName ( topicName );
// Subscribe to the topic.
var user = KiiUser . getCurrentUser ();
user . pushSubscription (). subscribe ( topic ). then (
function ( params ) {
var thePushSubscription = params [ 0 ];
var theTopic = params [ 1 ];
// Do something.
}
). catch (
function ( error ) {
// Handle the error.
var thePushSubscription = error . target ;
var errorString = error . message ;
}
);
// Instantiate an existing topic in the application scope.
var topicName = "SendingAlert" ;
var topic = Kii . topicWithName ( topicName );
// Subscribe to the topic.
var user = KiiUser . getCurrentUser ();
user . pushSubscription (). subscribe ( topic , {
success : function ( thePushSubscription , theTopic ) {
// Do something.
},
failure : function ( thePushSubscription , errorString ) {
// Handle the error.
}
});
The next sample code subscribes to a group-scope topic named GroupTopic
. In this sample code, we are getting the existing topic with its URL.
// Instantiate an existing group.
var group = KiiGroup . groupWithURI ( groupUri );
// Instantiate an existing topic in the group scope.
var topicName = "GroupTopic" ;
var topic = group . topicWithName ( topicName );
// Subscribe to the topic.
// (The current user must be a group member)
var user = KiiUser . getCurrentUser ();
user . pushSubscription (). subscribe ( topic ). then (
function ( params ) {
var thePushSubscription = params [ 0 ];
var theTopic = params [ 1 ];
// Do something.
}
). catch (
function ( error ) {
// Handle the error.
var thePushSubscription = error . target ;
var errorString = error . message ;
}
);
// Instantiate an existing group.
var group = KiiGroup . groupWithURI ( groupUri );
// Instantiate an existing topic in the group scope.
var topicName = "GroupTopic" ;
var topic = group . topicWithName ( topicName );
// Subscribe to the topic.
// (The current user must be a group member)
var user = KiiUser . getCurrentUser ();
user . pushSubscription (). subscribe ( topic , {
success : function ( thePushSubscription , theTopic ) {
// Do something.
},
failure : function ( thePushSubscription , errorString ) {
// Handle the error.
}
});
The last sample code subscribes to a user-scope topic named MyTODO
.
// Instantiate an existing topic in the user scope.
var topicName = "MyTODO" ;
var topic = KiiUser . getCurrentUser (). topicWithName ( topicName );
// Subscribe to the topic.
var user = KiiUser . getCurrentUser ();
user . pushSubscription (). subscribe ( topic ). then (
function ( params ) {
var thePushSubscription = params [ 0 ];
var theTopic = params [ 1 ];
// Do something.
}
). catch (
function ( error ) {
// Handle the error.
var thePushSubscription = error . target ;
var errorString = error . message ;
}
);
// Instantiate an existing topic in the user scope.
var topicName = "MyTODO" ;
var topic = KiiUser . getCurrentUser (). topicWithName ( topicName );
// Subscribe to the topic.
var user = KiiUser . getCurrentUser ();
user . pushSubscription (). subscribe ( topic , {
success : function ( thePushSubscription , theTopic ) {
// Do something.
},
failure : function ( thePushSubscription , errorString ) {
// Handle the error.
}
});
For all examples, here is a brief description of the sample code:
Instantiates a target topic.
Creates a KiiPushSubscription instance by calling the pushSubscription
method.
Calls the subscribe
method passing the target topic.