node-amqp-rpc( Promise )
Library to help you use amqp RPC on easy way.
Installation
To install randomstring, use npm:
npm install node_amqp_rpc
Usage
Quick Start
const amqp_api = ;async { const amqp = await amqp_api; const queueName = 'hello.word'; amqp; const data = value: 'hello world' ; const result = await amqp; console; // { value: 'consumer say hello to you' }};
producer
const amqp_api = ;async { const amqp = host : 'localhost' port : 5672 user : 'guest' password : 'guest' vhost : '/' ; await amqp; const queueName = 'hello.word'; const data = value: 'hello world' ; const result = await amqp; console; // { value: 'consumer say hello to you' }};
consumer
const amqp_api = ;async { const amqp = host : 'localhost' port : 5672 user : 'guest' password : 'guest' vhost : '/' ; await amqp; const queueName = 'hello.word'; amqp;};
API
- constructor ( Object | String )
Object
- host - Your amqp server address ( Type: String || default: localhost)
- port - AMQP server port( Type: Integer || default: 5672 )
- user - The amqp account which you want to login ( Type: String )
- password - password ( Type: String )
- vhost - Virtual Hosts( Type: String || default: / )
String
- amqp[s]://[user:password@]hostname[:port][/vhost]
- ex. amqp://guest:guest@localhost:5672/
init
()- Need to be execute before callRPC and onRPC
callRPC
( QueueName, Data, Timeout )QueueName
( String | Required )- queue name
Data
( Object | Required )- data you want to send
Timeout
( Integer | Option | Default: 30 )- timeout seconds
onRPC
( QueueName, DoSomething )QueueName
( String | Required )- queue name
DoSomething
( Function | Required )- Receives the following arguments
- data ( Object )
- send ( Function )
- Receives the following arguments
quickStart
( Object | String )Object
- host - Your amqp server address ( Type: String || default: localhost)
- port - AMQP server port( Type: Integer || default: 5672 )
- user - The amqp account which you want to login ( Type: String )
- password - password ( Type: String )
- vhost - Virtual Hosts( Type: String || default: / )
String
- amqp[s]://[user:password@]hostname[:port][/vhost]
- ex. amqp://guest:guest@localhost:5672/
callPublish
( exchange, routingKey, Data)exchange
( String | Required )routingKey
( String | Required )Data
( Object | Required )- data you want to send
close
()- Close amqp connection
HISTORY
- v1.0.0
- Publish.
- v2.0.0
- Turn library in to ES6 Classes.
- Connection config field 'pass' rename to 'password'.
- Set default value for field ( host, port ).
- v2.1.0
- Add quickStart method.
- Add connection close method.
- accept amqp url to start connection.
- v2.2.0
- Support multi connection
- v2.3.0
- Add callPublish method.
LICENSE
node_amqp_rpc is licensed under the MIT license.