GithubHelp home page GithubHelp logo

kasperskylab / rabbitmq-c-kos Goto Github PK

View Code? Open in Web Editor NEW

This project forked from alanxz/rabbitmq-c

3.0 1.0 0.0 2.12 MB

RabbitMQ C client

License: Other

Shell 1.31% Python 3.67% C 81.13% CMake 6.33% C++ 7.56%

rabbitmq-c-kos's Introduction

KasperskyOS modification of RabbitMQ-C AMQP client library

This version of the RabbitMQ® C AMQP client library is adapted for KasperskyOS. The project is based on a commit of version 0.13.0 and includes two examples: an AMQP consumer and an AMQP publisher.

What is a RabbitMQ-C AMQP client library for KasperskyOS?

The RabbitMQ-C AMQP client library for KasperskyOS provides the ability to send and receive messages between programs using a RabbitMQ message broker as an intermediary. For more information about RabbitMQ, see RabbitMQ.

Communication between the RabbitMQ-C AMQP library and the RabbitMQ message broker is based on an Advanced Message Queuing Protocol (AMQP). For more information about AMQP, see AMQP version 0.9.1.

For more information about KasperskyOS, please refer to the KasperskyOS Community Edition Online Help.

The RabbitMQ-C AMQP client library has a limitation. This implementation supports only AMQP version 0.9.1.

Other limitations and known issues are described in the KasperskyOS Community Edition Online Help.

Table of contents

Getting started

Prerequisites

  1. Install the KasperskyOS Community Edition SDK. You can download the latest version of the KasperskyOS Community Edition for free from os.kaspersky.com. Minimum required version of the KasperskyOS Community Edition SDK is 1.1.1.13. For more information, see System requirements.
  2. Copy project sources files to your home directory. Examples of KasperskyOS-based solutions are located in the following directory:
    ./kos
    

⬆ Back to Top

Usage

When you develop a KasperskyOS-based solution, use the recommended structure of project directories to simplify usage of CMake scripts.

To include the RabbitMQ-C AMQP client library in your KasperskyOS-based solution, follow these steps:

  1. Build the library using the CMake module ExternalProject.
  2. Use CMake command target_include_directories() to specify the paths to the header file directories.
  3. Link the built library to your program using CMake command target_link_libraries(). Examples of implementing this approach are shown in the files: ./kos/amqp_consumer/consumer/CMakeLists.txt and ./kos/amqp_publisher/publisher/CMakeLists.txt.
  4. Add the required header files to your code file to enable calls to library functions:
    #include <amqp.h>
    #include <amqp_framing.h>
    #include <amqp_tcp_socket.h>
    ...
    

Examples

  • ./kos/amqp_consumer—Example of developing a solution that is an implementation of the AMQP consumer.
  • ./kos/amqp_publisher—Example of developing a solution that is an implementation of the AMQP publisher.

⬆ Back to Top

Trademarks

RabbitMQ® is a trademark of VMware, Inc. in the U.S. and other countries.

Contributing

Only KasperskyOS-specific changes can be approved. See CONTRIBUTING.md for detailed instructions on code contribution.

⬆ Back to Top

Licensing

This project is licensed under the terms of the MIT license. See LICENSE for more information.

⬆ Back to Top

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.