sunlightlabs / adhawk-ios

Ad Hawk for iOS
http://adhawk.sunlightfoundation.com/
Other
3 stars 2 forks source link

POST request (query) #1

Closed boblannon closed 12 years ago

boblannon commented 12 years ago

the fingerprinting software will produce a zlib-compressed version of a string of audio samples. that's our 'fingerprint'. we'll also want to include geo-coordinates 'lat' and 'lon.' the following is an example of the JSON object we want to send:

{ 
    "fingerprint":"eJwty7kNADAMw8BVNILl-Mv-iwWCU11D0g_CQA-USIwoXNEg5YBH3o3-0sil7AHIrAyw",
    "lat":"-47.9",
    "lon":"-123.43"
}

Here's an example of a curl request (which will work as soon as I load in test data and Tim points the adhawk.sunlightfoundation.com domain to my ec2).

curl --dump-header - -H "Content-Type: application/json" -X POST --data '{"fingerprint": "eJwty7kNADAMw8BVNILl-Mv-iwWCU11D0g_CQA-USIwoXNEg5YBH3o3-0sil7AHIrAyw", "lat": "-47.9", "lon": "-123.43"}' http://adhawk.sunlightfoundation.com/api/ad/

dcloud commented 12 years ago

So I am posting JSON like:

{"lat":0,"lon":0,"fingerprint":"eJzVl02OJrkNRK-kX0o8DilS9z-CX_ZiCjOG1YuGYXgTQKnyS0nBiCCzlFJ2eUDTF3R_wd4viPqAWsYLqrygP0HuC9Ie0Io84DdM9v6CFS8wecFZD6ilvqD2F_T5gnle8B3gP8N9wR8xudsL7LzgN0yWF9T9gq4vmPGCNV5w8wG_c3e-YO4X7PoC8xf8huf5gt5fMOsL1nyB2gvyPuDPvL9f8EeK3S_4Qvo_w2_c7S-I-YKn91ubD_izZJAX_In3R3_BnzDp8wX_jzz_gZ7L3Q-oJV7Q1wv-qEZPyPmA_52e38nwX-Pqodhdxinhy5ZfrhBLZ_qN1aPNZr6k1dXsNjs5xbXctttcupv7vutqhLXtd16xdsIzd0oqw-Y08dv6KbrasT3a1V2sWbEqo2-9vvfO5uNqu3fY9NbldpnjnKmbgK_jWNfGIT38jt6KzVFMdeepoWcbAnSLmaNf6d_Rw4urXdshe40952Wz6lm-i9wp80zezjO0jwvt2tddXVdy4a1tRFyts920kOjqLcf5gWb2b2s_cPMsz-0jI8ted-SWSen6HrM1DmQzTyzLtdI4azk2umjufWcM7HJDbztbYzO83O1HxSlfT7MBZVqPlzEml8w1YyqT9TXac-fd2vq-KrljNuHfCb1TeNHeQhEyxnfbOkdTF8JmlaHWi9g0Nwrfp19GiJU3h9ueqzbpyNJ3nN7XmHWUft2hJ5CM9NUt-eAYzQ__WodK9LXqrZ3TRr_XQesVtbhUvi6G-w_0Gef8Y-0HdLiGtHm996wrsp4YSKOOijB0skvN032d4jn7MSgYtedirssw5mSHgH12JtPnWpyRO4lk7Lb6uEiKmt01uApbNk2Zt9c6e-fSlsdhnssbouuD34wms2b25c2r1CUhKEqPnNktYthGqc0RFeWZ6yi0zrtny9ZO809w1HG1W73JouTBjutIRAszHcNjNdlZ5lpauZa4H1zz6yNH9aOk1aFpM3YEdvsBiQpDf1_7AXOgp_S5PL5JvKC8cZHcTfRiJ2R1MQvEKwNzQg5lbkOK7lih5fP6t0EtJyyjGs4u1jl2PV_3UDLxhiNuGKsHHVaIyZlFpiP94G4TglpQJ6-DypyRDX2VsCl3YYlhBA6kVgmn7uZO7ZNxuFUMXK2c-20h6N4rAUPNnbdzcyjmByo9o8uxwnNIZlHNi6d9f-lIPrg13zm0Y_V1Vo6FJUimM3G89tmVny9R8zEK62wShIjcH7DTrvxj7QdyFBkYv3KAK6TkWiS-nGMEKa-8Z4yTSWTVNpTR9qjGGJi4y5BK_MEIOhgmMYie0kv6yokIyLjdGuHc3QeZPUsnByq2JRV6iTPCvJWpkVm137NJ8ttYb2mEq0OSrlsNvWlBd0THEWK0Q-N1WzHxpxCNMvjXrXFX604-tUk50c7aXvaplZw-kzIRD8q9kWs_hFMMztuW7Ol0jsYNiYtBLAiq8j6qfHn3uTjurHZzmRKIOAdfoaNzSvuBWjDdP9Z-YMMbl3VkCHuQRbroJg0b19drZUkVBH2wq4xwEnKOa02xJOZhY1GtcsnVxdbGB0qQIzSQeQ2-5yIx7AvHwiv3boMPZz5Tks7k3Oyk_-pDbTXaoexBGGGvaADxeRp3h0ZU9mkAp_FjuBhwTxeA6K-kjm2GYpzNpHrIQlPUgzYvai4bVTZdQ5EUhDsVHTdmhVaCTpIsOpVM2DTWunCv_qpzuiBDgwGCS_bXVmFCjx84oh8e-gEP_QUVuv659gO0cAmawr2LILstiRPvxGsvsMwD2vFD-9zMscKrLmuVSJgpJERwwqZfYqPj7xOwk40XWrEpcqJhX_RwiKdbKAZNeV2aEYUK9EprTj-DdKWciJmIWrRxOnxvEOCb5NmTWYVum50mA-W3L-ioWbcHb2dgSIimrnUPGs3Wpb_SEKdDsxHlSXtVi0bioWP5iB8kEFMrb4yOI03ocZuKTT-p2WkRDAvcZ-IDVIOytoz15XaUySCyvg4pA9X9AMMKvezvaz_AqEHpiu37_TWStq2MUgwUq-L8pZYfHzTAMyqdhm5SFv1RqzGbqVinH_EU09DkjEwV1b-vH2OUcTqf7i93KsYIene1eYjvRv7nPowyTHB70n3WPD6jsDnTyHaqKpyPt2IPJrOthrgxbkeot37SnehzbzK-kHlMKzBECCutj54I1-ubNZADoxym_QvI2e-of1v7gX8BuaM0ZA=="}

and getting a 500 error with The view whopaid_api.views.fp_search didn't return an HttpResponse object. in the page returned. I assume the fingerprint is wrong on multiple levels. What should one look like?

boblannon commented 12 years ago

right, okay, so now the following ad is in the db: http://www.youtube.com/watch?v=BVdLafErW2w

Here's an example using the fingerprint from the first 15 seconds of that ad:

{
"fingerprint":"eJzFmGtubakOhKfEwzw8HMD2_IdwP9JS776RDvkRtVqR6iTr7LDArioXSSnlSA-o9QWyX9D1BeMJ87xg1Rdsf4GXF0Q8INfyAh0v2O0FNl_wbFFJ8oBU4gWtvuCHHq0XHH_BffcfIfP1gOovGPUF01-w4gWuDyhpvEDWA5LIC3p5gbYXnPwCjwfkKi9o9oKRXjD7C95dMH1A4esBNT8g5fOCH3oUL1B5wdYXvHuU1guqvuDdhV_VOT3ghzr3-QKtL9jrAT_USvoL2nnBsBes9YLzBB8P-F0X7AXNX_BDF-YLfuDzeUHJL_hVB_0FP3RwPuCHHt0h_Ef4SSnPfPXu0dov-I3n_NCj9oL_rEfxgt-4WYsX_ItzQV9Qygt-06OZX_Dv9ajMP4JKNsn9JD8nb5Krr2nwPHTOGCtFm7pTyVlbaa699Jxz86ItzmwlLNbaq_bto--6Z6s6j62uueuoMQkPkfjMmCXtXg_zcUyJyRrVzbb5almmznG6J7xITUOjWHKW00YurSI9L1bSe8FRqyMPbbvvxbQdLcnIpc2TzdxbtNZqHLNjZ8XK7tVUiZljc8oYI4qeNFN1SUdaHmG1ap0rdp2FD_sQFp3L2JLVsqY3adM2Z1_H2ypuTbRLV51e8hkSfgjI-lUICwbx1_FHidxU9LApW-WrBkf6MC8WxvFnObHPnHTI8u6z79OtjbjfhfCPnlb2ZpMGP05frRapHrGLy_lAzVn027N_wD5rD6-HODwoslunxnVTPt85SZnl5lWrJzhmcLYZ6slbsSWFmvHbxdHFktZLZccpamguy84W95lV3U6sPtlFmKw8xaQmo5t8bzFlD0rS1tlUXJpvbm39sqIu98ijy2hUupzeO80ZjSVParlygKxcW-D_Yp8DBohGzTCTS-M2yyKR94lc15I41LvKSHpoC_7TTDmRVisl-2Gv636si_fmbPKsTszn9ZDbx6wb57hEODs6b2F_MtiRuuaNd5czbhtqjLqkrl5QQhKbSAeduLR6dr9cYB0UxSV_f8AT_fz27B9gI7IuFd5Y56Vl2xle52JcF8qETWYcchQqnPlE4tE6yfbsTXw3SNT6Ep9ONWYSlZ26JEO9Q_i5ulKKQQUKV5t-yszskCbUEG-jGBsOqHqKhvVAmGlnKa3DLbYyfZ0MfxE_qxLaA2Ustto2PtHTPdoecvRAKm6_s2EWyfpg1MpQ5E3nEIv3cxavttzv7ez0q260cyx23hARXVf_euUaeuIKg6pf5zwbPfbSDqVhOSR0Th-uq6Y5hQ5CBkxoR2AZ3BtDtyAnm1DybyhL1_727AOKAwi1yfVWBadqmTpT7r0O5RvTN5uebDJ3EYevp7RrSl67Nmu0Qua0uk9lxZUgi_XVb4-35lOO3CrpwtqO-ZS2g9o3OeHmEnVbto0fXeVQ644x8cq2fVbfZR8miFXWwAmwv2SQUyqiUao6cD8sKHeokFvm9dh3scrtmv0P4jCNPT4wlrnuBZVlsaiQdc1_9Fh-dGDoEKqq2eAc6ExjMA-MV6xN89rSrKUep1My8erJge8fs2JNSPE3dNtJvj37wPW06_0zL69f9xZUm9RHgSsy_CDky0oqDgtXzNmNj421LEd0iGZHMfyNJw9mVKqjIY3JEZpFyYbBNPWO-4WXPc-erD1s9zxkUT3RYqVL9rnR87lzwAXXzVJ7qswKageHMetcHY7zX9g-R22bQ8-BwNfIGbPCu3knDUoLVo9EAYX5glY5ARQ5LEjnaa0sJtQqHan1Em0NuxuZEKRsyMRQSJwCosx5D6iRHIucVa8gcE1ZrFDimjRF095stPYX9VYg57waIsX1PlCgwfz27APsCouMDhNiKBoXBjNkWK5Tll9fTAq1FhM1l6-B0ca4vxvl3hk6yt1akD7R5jClOOTiY_LX33SqL0l4pXXMvK6EMSB8h-ERDP8DC4NxqnWoC05T4VZBu7jAWmX4xtgZtskT746rztLicsah17iuxySrdUGOhQveOVWwFTgaqdrALqpXPbM0zoTL37fws0N0ZDboadU1sDAxpkK9mVJwlNJJDSddm2SMk9rYA5aGaxAqBKrMdBlMQhg8adxDmma_QaS2Dk-u2x1RvNUxXVrZmbOTWwPKldTxuckxPhBW8vz27AO1oAHYy_QZIwU0tL3uMQbpAZckzGyyinFIw27VmdU2MEKbkTHLQbbahBNME-lVHCC18rXU4gCzZtm8AFoR7ryr3b8iBDkMKylUZrKDgbLwGc-FMcoE6QOXqOco85xdEbTwgpMGyYfikzLuxfwomZFJRYco11fEQOF7apM12urpkDM8R06FzQyKt5mzjAYcVAR32LHJSH3RAzQ65-UPZoU2DGdwaq460AQNxLtL0YW42iRTsFcL6VvsOmFFKlrvMM9MIerTh-Bfa5cyYNn1o9ratRZmOPLUWcdNCLv2DzCd8Mj_f_YBWI8UhMhLUl5BQNkuc5dJDsXA4OguDSK2hDczMggNuBEpd5G2yS-IwBFdOmwJxfNLhjHdEUSI2tQWL7o-A9fjNj8rdr6Ip1s31fUZvZ1Jqm7OyQuBm7RRxTEkRo2aMDX1KgVaEq8Zz_dnHVQfAqE3yk09S4y9uVUfcuuUEXAXQZH6WJby43LVOoERN8PngrFO4MkIIQ_CP-9DJTI2CRfnxSwW48IYS_060CTcUWZS_iLF-qQXLRPNkhmDjkxOqs27kBdP8AGmO1MXeRE8XDLjdya9RTl0jHZiL-c0qvIByHK-P_vA_wBkV2bO",
"lat": "-47.9", 
"lon": "-123.43"
}
dcloud commented 12 years ago

Okay, that's working, at least in a basic sense.