diff options
author | Iru Cai <mytbk920423@gmail.com> | 2018-06-29 11:20:51 +0800 |
---|---|---|
committer | Iru Cai <mytbk920423@gmail.com> | 2018-06-29 11:20:51 +0800 |
commit | 1719796a3a10eccf91eadb38c019829110e96294 (patch) | |
tree | 47ff1e6401fd5202aad0eccacb94bb19550f294f /api.c | |
parent | b065c82627d83d1b207985d78276eb80f0b7b266 (diff) | |
download | matrix-curl-1719796a3a10eccf91eadb38c019829110e96294.tar.xz |
update get_devices
Diffstat (limited to 'api.c')
-rw-r--r-- | api.c | 17 |
1 files changed, 12 insertions, 5 deletions
@@ -9,11 +9,13 @@ #include "device.h" /* logout: return 1 if success, 0 if failed */ -int matrix_logout(matrix_session *sess) +int matrix_logout(matrix_session *sess, int logout_all) { char * requrl = alloc_build_string((const char *[]){ sess->url, - "/_matrix/client/r0/logout?access_token=", + "/_matrix/client/r0/logout", + logout_all?"/all":"", + "?access_token=", sess->token, NULL }); @@ -82,7 +84,8 @@ const char * matrix_resolv_alias(matrix_session *sess, const char *alias) void matrix_sync(matrix_session *sess) { - char *_req[] = { sess->url, "/_matrix/client/r0/sync?access_token=", sess->token , NULL }; + const char *_req[] = { sess->url, + "/_matrix/client/r0/sync?access_token=", sess->token , NULL }; char *requrl = alloc_build_string(_req); json_object *resp; @@ -127,7 +130,11 @@ int main() printf("%s\n", json_object_to_json_string(joined_rooms)); matrix_sync(sess); puts("Diveces:"); - get_devices(sess); + int ndev; + matrix_device *devs = get_devices(sess, &ndev); + for (int i = 0; i < ndev; i++) { + printf("%s %s\n", devs[i].device_id, devs[i].display_name); + } const char *roomid = matrix_resolv_alias(sess, "#hello:my.domain.name"); if (roomid == NULL) @@ -144,7 +151,7 @@ int main() if (roomid) free(roomid); - if (matrix_logout(sess)) + if (matrix_logout(sess, 1)) puts("logout!"); if (matrix_whoami(sess)) { |