diff options
Diffstat (limited to 'examples')
| -rw-r--r-- | examples/Cli.c | 91 | ||||
| -rw-r--r-- | examples/Cli.rdbg | bin | 0 -> 879 bytes | |||
| -rw-r--r-- | examples/OlmJS.c | 66 | ||||
| -rw-r--r-- | examples/OlmJS.rdbg | bin | 0 -> 724 bytes | |||
| -rw-r--r-- | examples/SendEncrypted.c | 57 | ||||
| -rw-r--r-- | examples/SendEncrypted.rdbg | bin | 709 -> 808 bytes |
6 files changed, 179 insertions, 35 deletions
diff --git a/examples/Cli.c b/examples/Cli.c index daf79e9..56c23e1 100644 --- a/examples/Cli.c +++ b/examples/Cli.c @@ -5,8 +5,6 @@ #include <matrix.h>
#define SERVER "https://matrix.org"
-#define ACCESS_TOKEN "syt_cHNjaG8_yBvTjVTquGCikvsAenOJ_49mBMO"
-#define DEVICE_ID "MAZNCCZLBR"
#define USER_ID "@pscho:matrix.org"
#define ROOM_ID "!XKFUjAsGrSSrpDFIxB:matrix.org"
@@ -70,29 +68,59 @@ Usage( printf("Usage: %s %s\n", cmd, args);
}
-void
+bool
ExecuteCommand(
MatrixClient * client,
const char * cmd,
int nargs, char ** args
) {
-#define CHECK_ARGS(N, ARGS) if (nargs != N) { Usage(cmd, ARGS); return; }
- /**/ if (CheckCommand(cmd, "devicekey")) {
- printf("%s\n", client->deviceKey);
+#define CHECK_ARGS(N, ARGS) if (nargs != N) { Usage(cmd, ARGS); return true; }
+
+ /**/ if (CheckCommand(cmd, "exit")) {
+ return false;
+ }
+ else if (CheckCommand(cmd, "devicekey")) {
+ static char key[DEVICE_KEY_SIZE];
+ if (MatrixOlmAccountGetDeviceKey(&client->olmAccount, key, DEVICE_KEY_SIZE))
+ printf("%s\n", key);
+ }
+ else if (CheckCommand(cmd, "accesstoken")) {
+ printf("%s\n", client->accessToken);
}
else if (CheckCommand(cmd, "genkeys")) {
CHECK_ARGS(1, "<number of keys>")
MatrixClientGenerateOnetimeKeys(client, atoi(args[0]));
}
- else if (CheckCommand(cmd, "uploadkeys")) {
+ else if (CheckCommand(cmd, "uploadonetimekeys")) {
MatrixClientUploadOnetimeKeys(client);
}
+ else if (CheckCommand(cmd, "uploaddevicekey")) {
+ MatrixClientUploadDeviceKey(client);
+ }
else if (CheckCommand(cmd, "onetimekeys")) {
static char buffer[1024];
olm_account_one_time_keys(client->olmAccount.account, buffer, 1024);
printf("%s\n", buffer);
}
+ else if (CheckCommand(cmd, "sendto")) {
+ CHECK_ARGS(3, "<device_id> <msgtype> <msg>")
+
+ MatrixClientSendToDevice(client,
+ USER_ID,
+ args[0],
+ args[2],
+ args[1]);
+ }
+ else if (CheckCommand(cmd, "sendtoe")) {
+ CHECK_ARGS(3, "<device_id> <msgtype> <msg>")
+
+ MatrixClientSendToDeviceEncrypted(client,
+ USER_ID,
+ args[0],
+ args[2],
+ args[1]);
+ }
else if (CheckCommand(cmd, "getkeys")) {
MatrixClientRequestDeviceKeys(client);
for (int i = 0; i < client->numDevices; i++)
@@ -115,6 +143,14 @@ ExecuteCommand( " ", mjson_print_fixed_buf, &fb);
printf("%.*s\n", fb.len, fb.ptr);
}
+ else if (CheckCommand(cmd, "login")) {
+ CHECK_ARGS(3, "<username> <password> <displayname>")
+
+ MatrixClientLoginPassword(client,
+ args[0],
+ args[1],
+ args[2]);
+ }
else if (CheckCommand(cmd, "save")) {
CHECK_ARGS(1, "<filename>")
@@ -138,6 +174,19 @@ ExecuteCommand( "m.room.message",
body);
}
+ else if (CheckCommand(cmd, "sendencrypted")) {
+ CHECK_ARGS(2, "<room_id> <message>")
+
+ static char body[1024];
+ snprintf(body, 1024,
+ "{\"body\":\"%s\",\"msgtype\":\"m.text\"}",
+ args[1]);
+
+ MatrixClientSendEventEncrypted(client,
+ args[0],
+ "m.room.message",
+ body);
+ }
else if (CheckCommand(cmd, "setuserid")) {
CHECK_ARGS(1, "<user_id>")
@@ -212,6 +261,8 @@ ExecuteCommand( printf("Unknown command\n");
}
#undef CHECK_ARGS
+
+ return true;
}
int
@@ -223,12 +274,13 @@ main(void) MatrixHttpInit(&client);
- MatrixClientSetAccessToken(&client,
- ACCESS_TOKEN);
- MatrixClientSetDeviceId(&client,
- DEVICE_ID);
- MatrixClientSetUserId(&client,
- USER_ID);
+
+ MatrixClientSetUserId(&client, USER_ID);
+ MatrixClientLoginPassword(&client, "@pscho:matrix.org", "Wc23EbmB9G3faMq", "abc");
+ MatrixClientGenerateOnetimeKeys(&client, 10);
+ MatrixClientUploadDeviceKey(&client);
+ MatrixClientUploadOnetimeKeys(&client);
+
static char cmd[BUFFER_SIZE];
static char args_[NUMBER_ARGS][BUFFER_SIZE];
@@ -236,13 +288,18 @@ main(void) for (int i = 0; i < NUMBER_ARGS; i++)
args[i] = args_[i];
int nargs;
- do {
+ while (1) {
GetCommand(cmd, &nargs, args);
- ExecuteCommand(&client, cmd, nargs, args);
-
- } while (strcmp(cmd, "exit") != 0);
+ bool res =
+ ExecuteCommand(&client, cmd, nargs, args);
+ if (! res)
+ break;
+ }
+
+ MatrixClientDeleteDevice(&client);
+
MatrixHttpDeinit(&client);
return 0;
diff --git a/examples/Cli.rdbg b/examples/Cli.rdbg Binary files differnew file mode 100644 index 0000000..f669888 --- /dev/null +++ b/examples/Cli.rdbg diff --git a/examples/OlmJS.c b/examples/OlmJS.c new file mode 100644 index 0000000..ea32858 --- /dev/null +++ b/examples/OlmJS.c @@ -0,0 +1,66 @@ +#include <stdio.h>
+#include <matrix.h>
+
+#define SERVER "https://matrix.org"
+#define USER_ID "@pscho:matrix.org"
+#define DEVICE_ID "BYFEHWFCIV"
+#define ACCESS_TOKEN "syt_cHNjaG8_GgutapSEvKWBQYTqjxQw_2UOtb4"
+
+char ROOM_ID[] = "!gngUimLZDmREazBCUv:matrix.org";
+char TARGET_DEVICE_ID[] = "ULZZOKJBYN";
+char TARGET_DEVICE_KEY[] = "cjP41XzRlY+pd8DoiBuKQJj9o15mrx6gkrpqTkAPZ2c";
+char OLM_PICKLE_KEY[] = "DEFAULT_KEY";
+char OLM_ACC_PICKLED[] = "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";
+char OLM_SESS_PICKLED[] = "zzgNbSTtwx2T1XjDqMuUSbk5aiIUZAsi4emwn8Ooxhxg1TVA73c+p4j9WypfAJjKoJin9cf23k00m1G/6wmISG6WB6KE9FO1jCTYYyDJX+GQxfUVvYwMlavZ9lN2Wax+wxP+3wJ0XZn7aFdjl//I7/lI3kCZGBPnNH+zWjv+19vJyOqz4SGKVTO1ojrds7tA7D7BOT/VxLziQK0XS/k604mWuSJd6BfMmU1bsadSxL2nT0UfhzJckfBkO7q/06twsnIwewKoskv5ZlCo5THoCxinm6aaC/VWozgU7n609xWGtuYdG2C6ijMmAjrfpNFAD9BNu/yqvU/ETfdMDYkhm+RDPlogr2mP";
+
+// session id
+// "dBe606wVTSvCSqvSz5pSHtH+f8CvjoB3od6UqOJkssI"
+
+int
+main(void)
+{
+ MatrixClient client;
+ MatrixClientInit(&client,
+ SERVER);
+
+ MatrixHttpInit(&client);
+
+ MatrixClientSetUserId(&client, USER_ID);
+ MatrixClientSetDeviceId(&client, DEVICE_ID);
+ MatrixClientSetAccessToken(&client, ACCESS_TOKEN);
+
+ MatrixOlmAccountUnpickle(&client.olmAccount,
+ OLM_ACC_PICKLED, strlen(OLM_ACC_PICKLED),
+ OLM_PICKLE_KEY, strlen(OLM_PICKLE_KEY));
+
+ // client.numOlmSessions = 1;
+ // MatrixOlmSessionUnpickle(&client.olmSessions[0],
+ // TARGET_DEVICE_ID,
+ // OLM_SESS_PICKLED, strlen(OLM_SESS_PICKLED),
+ // OLM_PICKLE_KEY, strlen(OLM_PICKLE_KEY));
+
+ // char id[1024];
+ // int idLen = olm_session_id(client.olmSessions[0].session, id, 1024);
+ // printf("id: %s\n", id, idLen);
+
+ // create megolmsession
+ MatrixMegolmOutSession * megolmOutSession;
+ MatrixClientGetMegolmOutSession(&client,
+ ROOM_ID,
+ &megolmOutSession);
+ printf("megolm session id: %.10s... key: %.10s...\n", megolmOutSession->id, megolmOutSession->key);
+
+ MatrixClientShareMegolmOutSession(&client,
+ USER_ID,
+ TARGET_DEVICE_ID,
+ megolmOutSession);
+
+ // MatrixClientSendEventEncrypted(&client,
+ // ROOM_ID,
+ // "m.room.message",
+ // "{\"body\":\"Hello\",\"msgtype\":\"m.text\"}");
+
+ MatrixHttpDeinit(&client);
+
+ return 0;
+}
diff --git a/examples/OlmJS.rdbg b/examples/OlmJS.rdbg Binary files differnew file mode 100644 index 0000000..dbd3618 --- /dev/null +++ b/examples/OlmJS.rdbg diff --git a/examples/SendEncrypted.c b/examples/SendEncrypted.c index 0005592..df1d272 100644 --- a/examples/SendEncrypted.c +++ b/examples/SendEncrypted.c @@ -2,8 +2,6 @@ #include <stdio.h>
#define SERVER "https://matrix.org"
-#define ACCESS_TOKEN "syt_cHNjaG8_yBvTjVTquGCikvsAenOJ_49mBMO"
-#define DEVICE_ID "MAZNCCZLBR"
#define USER_ID "@pscho:matrix.org"
#define ROOM_ID "!XKFUjAsGrSSrpDFIxB:matrix.org"
@@ -16,32 +14,55 @@ main(void) MatrixHttpInit(&client);
- MatrixClientSetAccessToken(&client,
- ACCESS_TOKEN);
- MatrixClientSetDeviceId(&client,
- DEVICE_ID);
- MatrixClientSetUserId(&client,
- USER_ID);
+ MatrixClientSetUserId(&client, USER_ID);
+ MatrixClientLoginPassword(&client,
+ "pscho",
+ "Wc23EbmB9G3faMq",
+ "Test1");
- MatrixClientUploadDeviceKeys(&client);
+ MatrixClientUploadDeviceKey(&client);
+ MatrixClientGenerateOnetimeKeys(&client, 10);
+ MatrixClientUploadOnetimeKeys(&client);
- MatrixClientSendEventEncrypted(&client,
+ // // get device key
+ // static char deviceKey[128];
+ // MatrixClientGetDeviceKey(&client,
+ // "ULZZOKJBYN",
+ // deviceKey, 128);
+ // printf("device key for %s: %s\n", "ULZZOKJBYN", deviceKey);
+
+ // create megolmsession
+ MatrixMegolmOutSession * megolmOutSession;
+ MatrixClientGetMegolmOutSession(&client,
ROOM_ID,
- "m.room.message",
- "{\"body\":\"Hello\",\"msgtype\":\"m.text\"}");
+ &megolmOutSession);
+ printf("megolm session id: %.10s... key: %.10s...\n", megolmOutSession->id, megolmOutSession->key);
- MatrixClientSendToDeviceEncrypted(&client,
- USER_ID,
- "ULZZOKJBYN",
- "{}",
- "m.dummy");
+ // // create olmsession
+ // MatrixOlmSession * olmSession;
+ // MatrixClientGetOlmSession(&client,
+ // USER_ID,
+ // "ULZZOKJBYN",
+ // &olmSession);
+ // printf("olm session created\n");
MatrixClientShareMegolmOutSession(&client,
USER_ID,
"ULZZOKJBYN",
- &client.megolmOutSessions[0]);
+ megolmOutSession);
+ // MatrixClientShareMegolmOutSessionTest(&client,
+ // USER_ID,
+ // "ULZZOKJBYN",
+ // megolmOutSession);
+
+ MatrixClientSendEventEncrypted(&client,
+ ROOM_ID,
+ "m.room.message",
+ "{\"body\":\"Hello\",\"msgtype\":\"m.text\"}");
+ MatrixClientDeleteDevice(&client);
+
MatrixHttpDeinit(&client);
return 0;
diff --git a/examples/SendEncrypted.rdbg b/examples/SendEncrypted.rdbg Binary files differindex 120f0a0..8b74b2d 100644 --- a/examples/SendEncrypted.rdbg +++ b/examples/SendEncrypted.rdbg |
