]> gitweb.ps.run Git - matrix_esp_thesis/blob - examples/SendEncrypted.c
a6cedb5924c26ac18cacce10c560c7115a395dff
[matrix_esp_thesis] / examples / SendEncrypted.c
1 #include <matrix.h>\r
2 #include <stdio.h>\r
3 \r
4 #define SERVER       "https://matrix.org"\r
5 #define USER_ID      "@pscho:matrix.org"\r
6 #define ROOM_ID      "!XKFUjAsGrSSrpDFIxB:matrix.org"\r
7 \r
8 int\r
9 main(void)\r
10 {\r
11     MatrixClient client;\r
12     MatrixClientInit(&client);\r
13     \r
14     MatrixHttpInit(&client.hc, SERVER);\r
15 \r
16     MatrixClientSetUserId(&client, USER_ID);\r
17 \r
18     MatrixClientLoginPassword(&client,\r
19         "pscho",\r
20         "Wc23EbmB9G3faMq",\r
21         "Test1");\r
22 \r
23     MatrixClientUploadDeviceKeys(&client);\r
24     MatrixClientGenerateOnetimeKeys(&client, 10);\r
25     MatrixClientUploadOnetimeKeys(&client);\r
26 \r
27     // // get device key\r
28     // static char deviceKey[128];\r
29     // MatrixClientGetDeviceKey(&client,\r
30     //     "ULZZOKJBYN",\r
31     //     deviceKey, 128);\r
32     // printf("device key for %s: %s\n", "ULZZOKJBYN", deviceKey);\r
33 \r
34     // create megolmsession\r
35     MatrixMegolmOutSession * megolmOutSession;\r
36     MatrixClientNewMegolmOutSession(&client,\r
37         ROOM_ID,\r
38         &megolmOutSession);\r
39     printf("megolm session id: %.10s... key: %.10s...\n", megolmOutSession->id, megolmOutSession->key);\r
40 \r
41     // // create olmsession\r
42     // MatrixOlmSession * olmSession;\r
43     // MatrixClientGetOlmSession(&client,\r
44     //     USER_ID,\r
45     //     "ULZZOKJBYN",\r
46     //     &olmSession);\r
47     // printf("olm session created\n");\r
48 \r
49     MatrixClientShareMegolmOutSession(&client,\r
50         USER_ID,\r
51         "ULZZOKJBYN",\r
52         megolmOutSession);\r
53     // MatrixClientShareMegolmOutSessionTest(&client,\r
54     //     USER_ID,\r
55     //     "ULZZOKJBYN",\r
56     //     megolmOutSession);\r
57 \r
58     MatrixClientSendEventEncrypted(&client,\r
59         ROOM_ID,\r
60         "m.room.message",\r
61         "{\"body\":\"Hello\",\"msgtype\":\"m.text\"}");\r
62     \r
63     MatrixClientDeleteDevice(&client);\r
64 \r
65     MatrixHttpDeinit(&client.hc);\r
66 \r
67     return 0;\r
68 }\r