An open API service indexing awesome lists of open source software.

https://github.com/marty1885/jami-cpp

Client (and bot) library for GNU Jami in C++
https://github.com/marty1885/jami-cpp

chatbot jami

Last synced: over 1 year ago
JSON representation

Client (and bot) library for GNU Jami in C++

Awesome Lists containing this project

README

          

# jami-cpp

A basic (enough to build a chatbot) and easy to use GNU Jami API library in C++17. The API is modeled after [reo7sp/tgbot-cpp][1]

## Dependencies

* sdbus

## Sample

```cpp
#include
using namespace jamipp;

int main()
{
jamipp::init("jampp.example.echobot");

auto account = jamipp::getAccountById("your-jami-id-here");
assert(accont != nullptr);

account->onNonCommandMessage([&account](Message::Ptr message) {
if(message->type != "text/plain")
return;
account->sendMessage(message->conversation_id, message->body);
});

account->onCommand("syn", [&account](Message::Ptr message) {
account->sendMessage(message->conversation_id, "syn/ack!");
});

jamipp::run();
}
```

## TODOs:

- [ ] Mark messages seen by the bot as read
- [ ] Get display name of remote user
- [ ] Allow refusing conversation request

[1]: https://github.com/reo7sp/tgbot-cpp