jami-docs/technical/LRC-documentation.md

78 lines
2.2 KiB
Markdown
Raw Normal View History

2018-05-17 07:29:11 +08:00
*This page is a stub.*
### Introduction
- Lrc (Libringclient) is an interface between the clients and
the daemon. It ensures to get the same behaviour for all client
using it.
![Introduction](/uploads/01896b43f2a29d29e5148ad60e608846/Introduction.png)
note: red = missing feature.
### DatabaseManager
- this class is an interface between lrc and the sqlite database. This
class should not be called directly from the client.
![Databasemanager](/uploads/896f30e099c7bb7b40451b528aefda6e/Databasemanager.png)
### NewCallModel class and NewCall namespace
- NewCallModel is an interface used to manage the calls.
<!-- -->
- When we need information about calls, members functions from the
model can return NewCall::Info.
<!-- -->
- When we need to perform some operation on a call, we pass it callId
to the delegate performing the operation.
<!-- -->
- note about the name : we are using New as prefix to avoid conflict
with the current CallModel and Call objects.
![Newcallmodel_newcall](/uploads/c9ba7bec82a6d2cd3bc5ba1cde018f4a/Newcallmodel_newcall.png)
### ContactModel class and Contact namespace
- ContactModel is an interface to manage the contacts.
<!-- -->
- When we need information about contact(s), members functions from
the model can return Contact::Info
<!-- -->
- When we need to perform some operation on a contact, we pass it uri
to the delegate performing the operation.
![Contactmodel_contact](/uploads/42c32722576a7a25de813419503805f5/Contactmodel_contact.png)
### ConversationModel class, Conversation namespace and Message namespace
- ConversationModel is an interface used to manage conversations
and messages.
<!-- -->
- When we need information about some conversation(s), members
functions from the model can return Conversation::Info.
Conversation::Info contains Messages.
<!-- -->
- note about Message : so far, we didn't need a MessageModel, but this
could be come soon.
![Conversationmodel_conversation_message](/uploads/1b1ad190ef65b5aa088bbcb785645099/Conversationmodel_conversation_message.png)
### resources
[Diagram1.dia](/uploads/f6d0a81d67b075c13c57b7d9771ca065/Diagram1.dia)
[Diagram2.dia](/uploads/00b3212a7642e58fd35b74c48e712332/Diagram2.dia)