Skip to content
 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Todo

React Native 0.40 fix

Installation

IOS

npm install react-native-rabbitmq --save

Installation with CocoaPods

  1. In the podfile uncommend "use_frameworks":
use_frameworks!
  1. Add the following to your Podfile, use master because needed fix is not a tag:
pod 'RMQClient', :git => 'https://github.com/rabbitmq/rabbitmq-objc-client.git'
  1. Instal the cocapods:
pod install

In xcode add a recursive Header Search Path:

$(SRCROOT)/Pods

To do so:

  • find .xcworkspace file in ios folder
  • open it with xcode
  • go to project - build settings and search for Header Search Path

You need to change some things, to make it work:

ios\Pods\RMQClient\RMQClient\RMQValues.h Line 53

@import JKVValue;

to

#import "JKVValue.h"

ios\Pods\JKVValue\JKVValue\Public\JKVValue.h

#import <JKVValue/JKVValueImpl.h>
#import <JKVValue/JKVMutableValue.h>
#import <JKVValue/JKVObjectPrinter.h>
#import <JKVValue/JKVFactory.h>

to

#import "JKVValueImpl.h"
#import "JKVMutableValue.h"
#import "JKVObjectPrinter.h"
#import "JKVFactory.h"

ios\Pods\RMQClient\RMQClient\RMQTCPSocketTransport.h

@import CocoaAsyncSocket;

to

#import "GCDAsyncSocket.h"

react-native link

Android

npm install react-native-rabbitmq --save

react-native link

Usage

const config = {
	host:'', 
	port:5672, 
	username:'user', 
	password:'password', 
	virtualhost:'vhost'
}

let connection = new Connection(config);

connection.on('error', (event) => {

});

connection.on('connected', (event) => {

	let queue = new Queue( this.connection, {
		name: 'queue_name', 
		passive: false,
		durable: true, 
		exclusive: false,
		consumer_arguments: {'x-priority': 1}
	});

	let exchange = new Exchange(connection, {
		name: 'exchange_name', 
		type: 'direct', 
		durable: true, 
		autoDelete: false,
		internal: false
	});

	queue.bind(exchange, 'queue_name');
	
	// Receive one message when it arrives
	queue.on('message', (data) => {

	});
	
	// Receive all messages send with in a second
	queue.on('messages', (data) => {

	});

});

let message = 'test';
let routing_key = '';
let properties = {
	expiration: 10000
}
exchange.publish(data, routing_key, properties)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages