2.0.0 • Published 4 months ago

appc-pubsub v2.0.0

Weekly downloads
315
License
Apache-2.0
Repository
github
Last release
4 months ago

Appcelerator PubSub Client library

NPM version

The library makes it easy to publish events to the Appcelerator PubSub API service.

Installation

npm install appc-pubsub --save

Usage

You must first include the library and create an instance. At a minimum, you must pass in the key and secret values for constructing the client.

const PubSubClient = require('appc-pubsub');
const pubsub = new PubSubClient({
  key: 'MY_KEY',
  secret: 'MY_SECRET'
});

Once you have created the client instance, you can publish events.

pubsub.publish('com.foo.bar');

You can optional pass payload data for your event by passing an object as the second parameter:

pubsub.publish('com.foo.bar', { bar: 1 });

Events

Configured

Emitted when the configurations (APIKey, secret..etc) are authenticated successfully by PubSub server.

pubsub.on('configured', function (config) {
  //do something ...
});

//example of the returned config object: 
{
  can_publish: true,
  can_consume: false,
  events: {},
  auth_type: 'key_secret'
}

Response

Emitted when an event is successfully sent.The response object that returned by the call-back contains a raw data of the event request (HTTP). i.e. statusCode,body etc... keys are available.

pubsub.on('response', function (response) {
  //do something ...
});

Event (WebHook)

Note: Make sure the client has consumption enabled, check can_consume in the returned config object.

Emitted when an event is received and that matches the subscribed topic. Event's payload (object) will be returned by the call-back function

const topicName = 'com.foo.downloaded'
pubsub.on(`event:${topicName}`, function (event) {
  // Log event name and data
  console.log(event.event);
  console.log(event.data);
  //do something with the event...
});

Retry

Emitted when an event is rescheduled to re-sending. The event will be emitted first then the re-send occurs.

500ms Max time between event's emitting and re-sending

pubsub.on('retry', function (data) {
  //do something ...
});

Unauthorized

Emitted when the client couldn't connect to the PubSub server due to bad credentials. i.e. HTTP code 401

pubsub.on('unauthorized', function (error) {
  //do something ...
});

Logging

Logging is handled using the debug module with appc-pubsub:info and appc-pubsub:error namespaces. Logging can be enabled as part of the configuration options.

const pubsub = new PubSubClient({
  key: 'MY_KEY',
  secret: 'MY_SECRET',
  debug: 'info', 'error' or true
});

License

The library is Confidential and Proprietary to Appcelerator, Inc. and licensed under the Appcelerator Software License Agreement. Copyright (c) 2015 by Appcelerator, Inc. All Rights Reserved.

2.0.0

4 months ago

1.8.0

1 year ago

1.6.3

2 years ago

1.7.0

2 years ago

1.6.2

3 years ago

1.6.1

3 years ago

1.6.0

3 years ago

1.5.1

3 years ago

1.5.0

3 years ago

1.4.2

6 years ago

1.4.1

6 years ago

1.4.0

6 years ago

1.3.0

7 years ago

1.2.0

7 years ago

1.1.1

7 years ago

1.1.0

7 years ago

1.0.2

7 years ago

1.0.1

7 years ago

1.0.0

7 years ago

0.3.0

7 years ago

0.2.3

7 years ago

0.2.2

7 years ago

0.2.1

7 years ago

0.2.0

7 years ago

0.1.0

7 years ago

0.0.37

8 years ago

0.0.36

8 years ago

0.0.35

8 years ago

0.0.34

8 years ago

0.0.33

8 years ago

0.0.32

9 years ago

0.0.31

9 years ago

0.0.30

9 years ago

0.0.29

9 years ago

0.0.27

9 years ago

0.0.26

9 years ago

0.0.25

9 years ago

0.0.24

9 years ago

0.0.23

9 years ago

0.0.22

9 years ago

0.0.21

9 years ago

0.0.20

9 years ago

0.0.19

9 years ago

0.0.18

9 years ago

0.0.17

9 years ago

0.0.16

9 years ago

0.0.15

9 years ago

0.0.14

9 years ago

0.0.13

9 years ago

0.0.12

9 years ago

0.0.11

9 years ago

0.0.10

9 years ago

0.0.9

9 years ago

0.0.8

9 years ago

0.0.7

9 years ago

0.0.6

9 years ago

0.0.5

9 years ago

0.0.4

9 years ago

0.0.3

9 years ago

0.0.2

9 years ago

0.0.1

9 years ago