OpenIntegrations

repository·main·Indexed 20 days ago

https://github.com/bayselonarrend/openintegrations

A versatile integration toolkit providing ready-made methods for interacting with over 30 external services, including Telegram, VK, Bitrix24, Google, Yandex, and various DBMS. It is available as a library for 1C:Enterprise (version 8.3.10) and OneScript, as well as a cross-platform CLI for Windows and Linux.

Tokens
1.4M
Snippets
5.7K
Records
6.3K
Agent score
65%

What's inside OpenIntegrations

  1. Overview of the OPI_7z library

    main
    The OPI_7z library provides capabilities for creating, unpacking, and modifying 7z archives within 1C:Enterprise, OneScript, and CLI environments. It supports both file/folder paths on disk and BinaryData for archive and source operations. For password-protected archives, you must provide the Password parameter (or --password in CLI).
  2. Overview of the OPI_Tar library

    main

    The OPI_Tar library provides capabilities for creating, unpacking, and modifying tar archives (including .tar.gz) within 1C:Enterprise, OneScript, and CLI environments.

    It supports both disk-based operations (using file/folder paths) and in-memory operations (using BinaryData). If you omit save or destination paths, the library performs operations in memory, returning BinaryData or maps instead of writing to disk.

    import LibraryIntro from '@site/src/components/LibraryIntro';
    // Module: OPI_Tar
    // CLI: tar
    // Use: oint/formats/tar
  3. Overview of OpenIntegrations

    main

    OpenIntegrations is a toolkit for interacting with external APIs, provided as a library (extension) for 1C:Enterprise / OneScript and as a cross-platform command-line application (CLI) for Windows and Linux.

    It provides ready-to-use methods for common tasks (sending messages, creating documents, SQL queries, etc.) across more than 30 services and technologies, including Telegram, VK, Bitrix24, Google, Yandex, various DBMS, and exchange protocols.

    The project is organized into independent modules, where each module handles a specific service. Common logic (like HTTP or JSON handling) is abstracted into reusable components, allowing for both quick implementation and easy extensibility.

  4. Overview of ReportPortal library features

    main

    The OPI_ReportPortal library (accessible via rportal CLI or oint/api/rportal) provides integration between automated tests and the ReportPortal management system.

    Core Capabilities:

    • Managing test launches: Create and complete test execution sessions.
    • Working with test items: Build test hierarchies including suites, tests, and steps.
    • Recording logs: Attach detailed execution logs with varying severity levels (e.g., error, warn, info).
    • Configuring attributes and descriptions: Attach metadata and descriptions to test results.

    All library methods utilize JSON structures for parameter configuration to ensure flexibility.

  5. Overview of supported integrations and protocols

    main

    OpenIntegrations provides a library for integrating 1C:Enterprise, OneScript, and CLI with external services via REST API and other protocols.

    Supported Services & Technologies:

    • Cloud & Storage: AWS S3, Dropbox, Google Drive, Google Sheets, Google Calendar, Yandex.Disk, Neocities, Airtable, Notion.
    • Communication & Social: Telegram, Viber, VK, VK Teams, Slack, WhatsApp (via GreenAPI), GreenAPI (Max).
    • Databases & Data: PostgreSQL, MySQL, MS SQL, SQLite, MongoDB, ClickHouse, MessagePack, Janx.
    • File & Archiving: 7z, RAR, Tar.
    • Protocols & Networking: HTTP, HTTPS, FTP(S), SFTP, SSH, TCP, WebSocket, gRPC, ZeroMQ, RCON.
    • AI & Tools: OpenAI, Ollama, Bitrix24, CDEK, Ozon, RSS/Atom, ReportPortal.
  6. Understand the Melezh Main Dashboard

    main

    The main dashboard is the landing page after logging into the web interface. It provides a high-level overview of the server status and activity:

    • Server Summary: Displays startup time and the total number of processed requests.
    • Recent Events: Shows a summary of the last 30 events.
    • Event Details: You can view more granular information for specific events by clicking the Actions button at the end of each event row.

    Navigation is handled via a sidebar on the left side of the page, which is divided into two sections:

    • Upper Section: Contains links to various console panels.
    • Lower Section: Contains the Logout button and links to the Melezh repository and official documentation.
  7. Use the OPI_RAR library for reading and unpacking RAR archives

    main

    The OPI_RAR library allows you to read and unpack existing RAR archives within 1C:Enterprise, OneScript, and via CLI.

    Important Limitation: This library is for reading and unpacking only. It does not support creating or modifying RAR archives.

    Core Capabilities

    • Unpack the whole archive to a directory: Use UnarchiveDirectory.
    • Extract selected files only: Use UnpackFiles.
    • Get a tree of files and folders: Use GetFilesList.
    • Get metadata and a flat file list: Use GetMetadata.

    Archives can be provided as either a file path or binary data in memory. For password-protected archives, provide the Password parameter (or the --password flag in CLI).

    ArchivePath = "C:\Inbox\package.rar";
    
    // 1. Inspect paths inside the archive
    FileList = OPI_RAR.GetFilesList(ArchivePath);
    
    // 2. Unpack everything to a folder
    Result = OPI_RAR.UnarchiveDirectory(ArchivePath, "C:\Unpack");
  8. Build special alternative native component builds

    main

    The src/addins/special directory provides alternative builds for native OpenIntegrations (OPI) components, separate from the standard build.bat or release.bat workflows. These are used for specific platform requirements like legacy Windows support or static OpenSSL linking on Linux.

    Available Build Variants

    VariantZip SuffixPlatformPurpose
    win7_win7.zipWindows x64 + x86Windows 7 / Server 2008 R2 (uses win7-windows-msvc, nightly + build-std)
    static-openssl_static-openssl.zipLinux x64 + x86Linux builds with OpenSSL 3.x statically linked inside the .so

    Component Coverage for static-openssl

    Only add-ins requiring OpenSSL on Linux are included in this variant:

    • tcp_client
    • mysql
    • postgres
    • ssh

    Other components (e.g., those using rustls or Schannel) are not built in the static-openssl variant.

  9. Use the RCON library for remote server control

    main

    The RCON (Remote Console) library allows you to remotely control servers (such as Minecraft, Counter Strike, ARK, Rust, SAMP, and MTA) by executing commands from an external client.

    This library is compatible with:

    • 1C:Enterprise
    • OneScript
    • CLI

    Note: This library relies on an external component for certain functions. Before use, ensure you have reviewed the requirements in the "About external components" section of the documentation.

  10. What is a Melezh Project

    main

    A Project is the central object in Melezh. It is a file with an arbitrary extension that functions as an SQLite database. This database stores general settings and handler parameters for a specific Melezh-based solution.

    Key characteristics:

    • Creation: Projects cannot be created via the web interface; they must be created using the CreateProject command via the Command Line Interface (CLI) by specifying a save path.
    • Configuration: Once created, the project uses a default configuration that can be modified later through CLI commands or the Web Interface (provided the project is running).