Skip to content

saudsami/signaling-sdk-samples-linux

Repository files navigation

Agora Signaling SDK for Linux C++ reference app

This repository holds the code examples used for the Agora Signaling SDK for Linux C++ documentation. Clone the repo, run and test the samples, use the code in your own project. Enjoy.

This reference app uses Signaling SDK v2.x.

Samples

The runnable code examples are:

  • SDK quickstart - the minimum code you need to integrate low-latency, high-concurrency signaling features into your app using Signaling SDK.
  • Token authentication - retrieve a token from the server, and use it to connect securely to Signaling as a specific user.
  • Presence - get information about the status of users in specified channels.
  • Stream channels - communicate with other users in topics.
  • Store channel and user data - easily store data for users and channels without the need to set up your own database.
  • Data Encryption - integrate built-in data encryption into your Signaling app.
  • Geofencing - only connect to Signaling within the specified region.
  • Proxy Connection - ensure reliable connectivity for your users when they connect from an environment with a restricted network.

Prerequisites

Before getting started with this reference app, ensure you have the following set up:

  • Linux

  • C++

  • Installed the cURL library

    sudo apt-get install libcurl4-openssl-dev

Run this project

To run the sample projects in this repository, take the following steps:

  1. Clone the repository

    To clone the repository to your local machine, open Terminal and navigate to the <samples-root> directory where you want to clone the repository. Then, use the following command:

    git clone https://github.com/saudsami/signaling-sdk-samples-linux.git
  2. Integrate the Signaling SDK for Linux

    1. Download the Agora Signaling SDK 2.x for Linux and unzip the contents.

    2. Copy the file libagora_rtm_sdk.so to the <samples-root>/lib folder.

    3. Copy the include folder to <samples-root> folder.

  3. Modify the project configuration

    This app loads connection parameters from a configuration file config.json. If a valid serverUrl is provided, all samples use the token server to obtain a token, except the SDK quickstart which uses the token parameter in the config file.

    Ensure that config.json is populated with the required parameter values before running this reference app.

    • uid: The user ID associated with the application.
    • appId: (Required) The unique ID for the application obtained from Agora Console.
    • channelName: The default name of the channel to join.
    • token:An token generated for channelName. You generate a temporary token using the Agora token builder.
    • serverUrl: The URL for the token generator. See Secure authentication with tokens for information on how to set up a token server.
    • tokenExpiryTime: The time in seconds after which a token expires.
  4. Build and run the project

    In the project folder, open Terminal and run the following command:

    sh +x clean_build.sh
  5. Run the samples in the reference app

    To run the reference app, execute the following command in the terminal:

    ./build/SignalingDemo

Contact

If you have any questions, issues, or suggestions, please file an issue in our GitHub Issue Tracker.

About

Agora Signaling SDK 2.x samples for Linux C++

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published