Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@types/amqplib

Package Overview
Dependencies
Maintainers
1
Versions
39
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@types/amqplib

TypeScript definitions for amqplib

  • 0.10.6
  • ts5.0
  • ts5.1
  • ts5.2
  • ts5.3
  • ts5.4
  • ts5.5
  • ts5.6
  • ts5.7
  • ts5.8
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
462K
decreased by-18.7%
Maintainers
1
Weekly downloads
 
Created

What is @types/amqplib?

@types/amqplib provides TypeScript definitions for the amqplib library, which is a client for RabbitMQ, a popular message broker. This package allows TypeScript developers to use amqplib with type safety, ensuring that the code adheres to the expected types and interfaces.

What are @types/amqplib's main functionalities?

Connecting to RabbitMQ

This feature demonstrates how to establish a connection to a RabbitMQ server using amqplib. The code connects to a RabbitMQ server running on localhost and then closes the connection.

const amqp = require('amqplib');

async function connect() {
  try {
    const connection = await amqp.connect('amqp://localhost');
    console.log('Connected to RabbitMQ');
    await connection.close();
  } catch (error) {
    console.error('Failed to connect to RabbitMQ', error);
  }
}

connect();

Creating a Channel

This feature demonstrates how to create a channel after establishing a connection to RabbitMQ. Channels are used to perform most of the operations in RabbitMQ.

const amqp = require('amqplib');

async function createChannel() {
  try {
    const connection = await amqp.connect('amqp://localhost');
    const channel = await connection.createChannel();
    console.log('Channel created');
    await channel.close();
    await connection.close();
  } catch (error) {
    console.error('Failed to create channel', error);
  }
}

createChannel();

Sending a Message

This feature demonstrates how to send a message to a queue in RabbitMQ. The code creates a connection and a channel, asserts a queue, and sends a message to that queue.

const amqp = require('amqplib');

async function sendMessage() {
  try {
    const connection = await amqp.connect('amqp://localhost');
    const channel = await connection.createChannel();
    const queue = 'test_queue';
    const message = 'Hello, RabbitMQ!';

    await channel.assertQueue(queue);
    channel.sendToQueue(queue, Buffer.from(message));
    console.log(`Message sent: ${message}`);

    await channel.close();
    await connection.close();
  } catch (error) {
    console.error('Failed to send message', error);
  }
}

sendMessage();

Receiving a Message

This feature demonstrates how to receive messages from a queue in RabbitMQ. The code creates a connection and a channel, asserts a queue, and consumes messages from that queue.

const amqp = require('amqplib');

async function receiveMessage() {
  try {
    const connection = await amqp.connect('amqp://localhost');
    const channel = await connection.createChannel();
    const queue = 'test_queue';

    await channel.assertQueue(queue);
    console.log(`Waiting for messages in ${queue}`);

    channel.consume(queue, (msg) => {
      if (msg !== null) {
        console.log(`Received message: ${msg.content.toString()}`);
        channel.ack(msg);
      }
    });
  } catch (error) {
    console.error('Failed to receive message', error);
  }
}

receiveMessage();

Other packages similar to @types/amqplib

FAQs

Package last updated on 04 Dec 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc