Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
    • Help
    • Contribute to GitLab
  • Sign in / Register
jami-project
jami-project
  • Project
    • Project
    • Details
    • Activity
    • Cycle Analytics
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Charts
  • Issues 88
    • Issues 88
    • List
    • Board
    • Labels
    • Milestones
  • Wiki
    • Wiki
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Commits
  • Issue Boards
  • savoirfairelinux
  • jami-projectjami-project
  • Wiki
    • Technical
  • 0. introduction

0. introduction

Last edited by Sébastien Blin Feb 14, 2019
Page history

Table of contents

Greetings people. In this part of the documentation, you will learn how Ring works from the high level, to the bottom, with some examples. The following part will follow this plan:

  1. The different APIs
  2. Basic features
    1. Manage accounts
    2. Manage contacts
    3. Let's communicate, by text!
    4. Let's do a call!
    5. Send a file
  3. Advanced features
    1. Manage audio/videos
    2. Call recording
    3. The push notifications system
    4. What is a DHTProxy
    5. Supporting SIP
    6. Setup your own TURN server

Description

If you read this, you probably want to either contribute to one of the projects or to implement your own client. There is three main layers in this project:

  1. OpenDHT used to do the whole p2p communication. You can interact with this library like any Cpp library or with the python wrapper or via the REST API.
  2. The daemon, which is the main part. It's the part which does all the logic for Ring and interact with OpenDHT, pjsip, ffmpeg and all libraries used and implement the whole protocol. If you want to do a client, we recommend to use implement your client on top of this daemon and use one of the many APIs (REST/dbus/libwrap/JNI).
  3. The client part, which is basically the frontend.

The following documentation will explain the different uses features for all layers.

Clone repository
  • Deprecated documents
  • Group chat feature (design draft)
  • Home
  • Chatview i18n (design draft)
  • features
    • All features by client
  • guidelines
    • Banned contact
    • Identifiers
    • Kde guidelines
    • Libring coding rules
    • Libringclient coding rules
    • Ui and ux development
  • others
    • Gsoc
  • technical
    • 0. introduction
    • 1. the different apis
    • 2.1. manage accounts
More Pages

New Wiki Page

Tip: You can specify the full path for the new file. We will automatically create any missing directories.