Quickblox Blog

Igor Khomenko

Group Chat blocks via Privacy Lists API for iOS and Android developers

Posted by Igor Khomenko on April 6, 2015

Hey to all QuickBlox developers,

recently we released another cool feature for iOS and Android developers – Group Chat blocks via Privacy Lists API.
This is a feature for enabling or disabling communication with other users in a group chat. It can be used to block communication with unknown or undesirable users.

Previously we had this only for 1-1 chat and today it’s possible to use the same experience in group chats.

Privacy lists API for iOS: http://quickblox.com/developers/SimpleSample-chat_users-ios#Privacy_lists

Privacy lists API for Android: http://quickblox.com/developers/Android_XMPP_Chat_Sample#Privacy_lists

Download new SDKs:
quickblox.com/developers/IOS
quickblox.com/developers/Android

Alex Bass

Android SDK 2.2: major WebRTC updates, stability fixes and more

Posted by Alex Bass on March 31, 2015

Android + QB

Hello all! Our Android development team have been working like trojans (is this phrase acceptable in tech context?) over the past few months, and we are ecstatic to present you our latest update: Android SDK 2.2.

While stability fixes are always super exciting to hear about, the star of the show here is WebRTC. With the Android SDK 2.2, we have completely refreshed WebRTC functionality, and added a bunch of new features and improvements. It now supports one-to-one video and audio calling with superb quality. Check out the code below for creating a call between between 2 users.

QBRTCTypes.QBConferenceType qbConferenceType = QB_CONFERENCE_TYPE_VIDEO;

// Initiate opponents list
List<Integer> opponents = new ArrayList<Integer>();
opponents.add(12345); // 12345 - QBUser ID

// Set user information
Map<String, String> userInfo = new HashMap<>();
userInfo.put("key", "value");

// Init session
QBRTCSession session = 
      QBRTCClient.getInstance().createNewSessionWithOpponents(opponents, qbConferenceType);

// Start call
session.startCall(session.getUserInfo());

Coupled with the SDK, we have a new video calling sample for you to play around with, using version 2.2. Check it out, build something great and conquer the world!

Igor Khomenko

QuickBlox releases iOS SDK 2.2 with new Chat API & Stream Management, Android SDK 2.1.1, iOS WebRTC SDK 1.0.2

Posted by Igor Khomenko on March 23, 2015

The QuickBlox team is proud to present a bunch of new updates for iOS and Android SDKs today!
Every day we open doors to new technologies and features. And today we would like to present you iOS SDK 2.2, featuring a completely new feature called Chat Stream Management.

The Stream management API allows you to improve network reliability and the end-user experience for Chat. It allows you to achieve 100% reliability with features like Stanza Acknowledgements and Stream Resumption. It’s a must have feature for modern Chat applications.

To better understand how it works, we made a quick diagram:

XEP-0198 QuickBlox Chat

With Stream Management, we started with the iOS SDK first. We are adding these updates to the Android/Web SDKs soon.

iOS SDK 2.2 updates:

  • Switched from delegates to block-based API and JSON for Chat API. Previous methods are deprecated.
  • Added an ability to automatically recreate a session [QBConnection setAutoCreateSessionEnabled:YES]
  • Message Carbons (XEP-0280) for Chat
  • Stream Management (XEP-0198) for Chat
  • Auto-reconnection manager for Chat
  • Added the ability to set custom uniqueDeviceIdentifier when subscribing to push notifications: [QBRequest registerSubscriptionForDeviceToken: uniqueDeviceIdentifier: successBlock: errorBlock:]
  • Added the ability to enable activity indicator [QBConnection setNetworkIndicatorManagerEnabled:YES]
  • Fixed an issue with the header QB-Token-ExpirationDate when 12h format is set
  • Fixed an issue with totalEntries for pagination requests
  • Fixed an issue with password update for a user
  • QBChatDelegate is now a multicast delegate
  • Updated the logic of QBChatDialog.chatRoom. Now it returns the same value, not the new one.
  • Added the ability to use custom chat resource.

Android SDK 2.1.1 updates:

  • Added all filter to QBRequestGetBuilder
  • QBUsers.getUsers now returns a param Consts.TOTAL_PAGES in a response bundle
  • Fixed an issue with exception in QBParticipantListener interface
  • Fixed an issue with NullPointerException in QBGroupChat class
  • Added an ability to set fileId as -1 to QBUser to clear it

iOS WebRTC SDK 1.0.2 updates:

  • Stability improvement
  • WebRTC r 8729
  • added audioCategoryOptions field to QBRTCSession
  • added skipBlackFrames field to QBGLVideoView (experimental)
  • Fixes for switch camera

Try it out!
iOS SDK 2.2: http://quickblox.com/developers/IOS
Android SDK 2.1.1: http://quickblox.com/developers/Android
iOS WebRTC SDK 1.0.2: http://quickblox.com/developers/Sample-webrtc-ios

Taras Filatov

Not just a product, but also a skill wanted

Posted by Taras Filatov on February 23, 2015

An interesting fact is that since 2012 the knowledge of QuickBlox is a demanded skill in Elance and Odesk job posts. Below is a screenshot from our marketing analytics back in 2012. Since then the demand has been growing.

elance quickblox chat platform skill required

job_quickblox

Screen Shot 2015-02-23 at 13.53.29

Contractors’ employers from small start-ups to large enterprise recognise QuickBlox is the most ultimate all-round mobile messaging solution in the market.