Skip to content

zelic91/zquickblox

ZQuickblox Gem Version Build Status

This gem is a Quickblox API client in Ruby. Normally, we will use Javascript or mobile SDK, but in some cases where server needs to control things, this gem will play its role.

Currently this gem ONLY supports creating users on Quickblox (used for signing up user) and creating / updating chat dialog (used for backend's need).

Installation

Add this line to your application's Gemfile:

gem 'zquickblox'

And then execute:

$ bundle

Or install it yourself as:

$ gem install zquickblox

Config

Rails

You need to generate an initializer for ZQuickblox in order to config your Quickblox app:

rails generate zquickblox

Others

You need to config your Quickblox as below:

ZQuickblox.configure do |config|
  config.app_id      = ENV['QB_APP_ID']
  config.auth_key    = ENV['QB_AUTH_KEY']
  config.auth_secret = ENV['QB_AUTH_SECRET']
end

Usage

To create a new user, just call:

ZQuickblox::User.create({email: "abc@email.com", password: "a_password"})

There are more params for you to set:

login, password, email, blob_id, external_user_id, facebook_id, twitter_id, full_name, phone, website

To get a user by his login, just call:

ZQuickblox::User.find("abc@email.com")

The result will be nil if the user doesn't exist.

To delete user, call:

ZQuickblox::User.delete("user_login", "user_password", "user_id")

The result will be {} if the account is deletable.

To create a new dialog, just call:

ZQuickblox::Dialog.create("user_login", "user_password", {type: 2, name: "Some dialog", occupants_ids: "ids of occupants separated by ,"})

To update a dialog (name, photo, occupants_ids), just call:

ZQuickblox::Dialog.update("user_login", "user_password", "dialog id", {name: "Some dialog", occupants_ids: "ids of occupants separated by ,"})

Error handling

During the API processing, errors may occur. In such cases, ZQuickblox::Error (subclass of StandardError) will be thrown with messages as an array of string error messages.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/zelic91/zquickblox. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.

License

The gem is available as open source under the terms of the MIT License.

About

A friend of Quickblox

Resources

License

MIT, MIT licenses found

Licenses found

MIT
LICENSE
MIT
LICENSE.txt

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published