2 * SPDX-FileCopyrightText: 2010-2022 Espressif Systems (Shanghai) CO LTD
\r
4 * SPDX-License-Identifier: CC0-1.0
\r
7 #define OLMLIB_VERSION_MAJOR 3
\r
8 #define OLMLIB_VERSION_MINOR 2
\r
9 #define OLMLIB_VERSION_PATCH 15
\r
11 #define OLM_STATIC_DEFINE
\r
13 #include <mongoose.h>
\r
14 #include <olm/olm.h>
\r
17 #include <esp_wifi.h>
\r
19 #define SERVER "https://matrix.org"
\r
20 #define USER_ID "@pscho:matrix.org"
\r
21 #define ROOM_ID "!XKFUjAsGrSSrpDFIxB:matrix.org"
\r
26 MatrixClient client;
\r
27 MatrixClientInit(&client,
\r
30 MatrixHttpInit(&client);
\r
32 MatrixClientSetUserId(&client, USER_ID);
\r
34 MatrixClientLoginPassword(&client,
\r
39 MatrixClientUploadDeviceKey(&client);
\r
40 MatrixClientGenerateOnetimeKeys(&client, 10);
\r
41 MatrixClientUploadOnetimeKeys(&client);
\r
43 // create megolmsession
\r
44 MatrixMegolmOutSession * megolmOutSession;
\r
45 MatrixClientGetMegolmOutSession(&client,
\r
48 printf("megolm session id: %.10s... key: %.10s...\n", megolmOutSession->id, megolmOutSession->key);
\r
50 MatrixClientShareMegolmOutSession(&client,
\r
55 MatrixClientSendEventEncrypted(&client,
\r
58 "{\"body\":\"Hello\",\"msgtype\":\"m.text\"}");
\r
60 MatrixClientDeleteDevice(&client);
\r
62 MatrixHttpDeinit(&client);
\r