@moshenahmias/shrimp

1.1.0 • Public • Published

node.js client library for shrimp

const shrimp = require('@moshenahmias/shrimp');
const s = shrimp.newSession('localhost:1309');
const p = s.newPublisher();

// direct publish
const directPublishStream = p.directPublish((err, count) => {
    if (err) {
        console.log(err);
        return;
    }

    console.log(count);
});

directPublishStream.write(shrimp.newMessage(Buffer.from("shrimp")).withHeader("123", "456").toTopic("my_topic"));

directPublishStream.end();

// publish
const publishStream = p.publish((err, count) => {
    if (err) {
        console.log(err);
        return;
    }
  
    console.log(count);
});

publishStream.write(shrimp.newMessage(Buffer.from("shrimp")).withHeader("123", "456").withTags("tag_0", "tag_1"));

publishStream.end();

// consume
const c = s.newConsumer({ limit: 0, timeout: 3000 });
const consumeStream = c.consume("my_topic");

consumeStream.on('data', function(message) {
    console.log(message);
});

consumeStream.on('end', _ => console.log("consumer end"));
consumeStream.on('error', e => console.log(`consumer err: ${e}`));

Icons made by Freepik from www.flaticon.com is licensed by CC 3.0 BY

Readme

Keywords

Package Sidebar

Install

npm i @moshenahmias/shrimp

Weekly Downloads

4

Version

1.1.0

License

MIT

Unpacked Size

24.1 kB

Total Files

11

Last publish

Collaborators

  • moshenahmias