main.c 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. /* snac - A simple, minimalistic ActivityPub instance */
  2. /* copyright (c) 2022 grunfink - MIT license */
  3. #include "xs.h"
  4. #include "snac.h"
  5. int main(int argc, char *argv[])
  6. {
  7. snac snac;
  8. printf("%s\n", tid(0));
  9. srv_open("/home/angel/lib/snac/comam.es/");
  10. user_open(&snac, "mike");
  11. xs *headers = xs_dict_new();
  12. int status;
  13. d_char *payload;
  14. int p_size;
  15. http_signed_request(&snac, "GET", "https://comam.es/snac/jessie",
  16. headers, NULL, 0, &status, &payload, &p_size);
  17. {
  18. xs *list = queue(&snac);
  19. char *p, *fn;
  20. p = list;
  21. while (xs_list_iter(&p, &fn)) {
  22. xs *obj;
  23. obj = dequeue(&snac, fn);
  24. printf("%s\n", xs_dict_get(obj, "actor"));
  25. }
  26. }
  27. #if 0
  28. {
  29. xs *list = follower_list(&snac);
  30. char *p, *obj;
  31. p = list;
  32. while (xs_list_iter(&p, &obj)) {
  33. char *actor = xs_dict_get(obj, "actor");
  34. printf("%s\n", actor);
  35. }
  36. }
  37. {
  38. xs *list = timeline_list(&snac);
  39. char *p, *fn;
  40. p = list;
  41. while (xs_list_iter(&p, &fn)) {
  42. xs *tle = timeline_get(&snac, fn);
  43. printf("%s\n", xs_dict_get(tle, "id"));
  44. }
  45. }
  46. {
  47. xs *list = user_list();
  48. char *p, *uid;
  49. p = list;
  50. while (xs_list_iter(&p, &uid)) {
  51. if (user_open(&snac, uid)) {
  52. printf("%s (%s)\n", uid, xs_dict_get(snac.config, "name"));
  53. user_free(&snac);
  54. }
  55. }
  56. }
  57. #endif
  58. return 0;
  59. }