static void parse_json_youtube(char * data, struct youtube_t * youtube) { json_value * root, * title, * _t, * rating, * viewcount; root = json_parse(data); title = n_json_find_object(root, "title"); if (!title) return; _t = n_json_find_object(title, "$t"); strcpy(youtube->title, _t->u.string.ptr); rating = n_json_find_object(root, "average"); if (!rating) return; youtube->rating = rating->u.dbl; viewcount = n_json_find_object(root, "viewCount"); if (!viewcount) return; strcpy(youtube->view_count, viewcount->u.string.ptr); youtube->valid = 1; json_value_free(root); }
static void parse_json_event(char * body, char * dest) { json_value * root, * payload, * comitter_name, * message, *name, * sha; //sanitize_json_response(body); root = json_parse(body); if (!root) return; if (!(payload = n_json_find_object(root, "payload"))) return; if (!(comitter_name = n_json_find_object(payload, "name"))) return; if (!(message = n_json_find_object(payload, "message"))) return; if (!(name = n_json_find_object(root, "name"))) return; if (!(sha = n_json_find_object(payload, "sha"))) return; sprintf(dest, "* Commiter: [%s] - Msg: [%s] Url: [http://github.com/%s/commit/%s]", comitter_name->u.string.ptr, message->u.string.ptr, name->u.string.ptr, sha->u.string.ptr); json_value_free(root); }