QuickBlox Developers (API docs, code samples, SDK)

SimpleSample-messages users-ios

From QuickBlox Developers (API docs, code samples, SDK)
Jump to: navigation, search

Contents

Overview

This sample demonstrates how to work with Messages (and Users) QuickBlox services.
It allows to send and receive push messages.

It shows how to:

  1. Register User and register it as subscriber for receive messages (from other Users and from Admin panel)
  2. Send push notification to select User

SimpleSample-messages_user-ios_1.PNG   SimpleSample-messages_user-ios_2.PNG

Project Setup

Please see this section, which describe how to setup project.

Case Studies

  • User Sign Up
QBUUser *user = [[QBUUser alloc] init];
user.ownerID = ownerID;        
user.password = password.text;
user.login = userName.text;
 
// register user
[QBUsersService createUser:user delegate:self];
 
[user release];
  • User Sign In
QBUUser *qbUser = [[QBUUser alloc] init];
qbUser.ownerID = ownerID;        
qbUser.login = login.text;
qbUser.password = password.text;
 
// authenticate
[QBUsersService authenticateUser:qbUser delegate:self];
 
[qbUser release];
  • Retrieve all Users
PagedRequest *pagetRequest = [[[PagedRequest alloc] init] autorelease];
pagetRequest.perPage = 30;
[QBUsersService getUsersWithPagedRequest:pagetRequest delegate:self];
  • Register user as subscriber
QBUUser *user = [[QBUUser alloc] init];
user.ID = 123;   
QBCDevice *device = [[QBCDevice alloc] initWithCurrentDevice];
[QBMessagesService TRegisterSubscriberForUser:user device:device delegate:self];
  • Send push message
NSString *mesage = @"QB SuperSample. Message from Garry: Hello man!"];
 
NSMutableDictionary *payload = [NSMutableDictionary dictionary];
NSMutableDictionary *aps = [NSMutableDictionary dictionary];
[aps setObject:@"default" forKey:QBMPushMessageSoundKey];
[aps setObject:mesage forKey:QBMPushMessageAlertKey];
[payload setObject:aps forKey:QBMPushMessageApsKey];
 
QBMPushMessage *message = [[QBMPushMessage alloc] initWithPayload:payload];
 
// Send push
[QBMessagesService TSendPush:message toUser:435  delegate:self];
 
[message release];
 
 
...
 
 
- (void)completedWithResult:(Result*)result{
 
    // Edit User result
    if([result isKindOfClass:[QBMSendPushTaskResult class]]){
        if(result.success){
            NSLog(@"Message sent successfully");
        }else{
            NSLog(@"Errors=%@, result.errors");
        }
    }
}

Sources

Download ZIP for stable version — https://github.com/QuickBlox/SimpleSample-messages_users-ios/zipball/master

Project homepage on GIT — https://github.com/QuickBlox/SimpleSample-messages_users-ios

Clone from GIT dev version — git@github.com:QuickBlox/SimpleSample-messages_users-ios.git

Back to Top