Open antitoxic opened 10 years ago
:wave:
Мога да напиша background worker с nodejs, който да пълни в база данни tweets, използвайки API-то twitter. Кеширането в база е необходимо тъй като REST API-тата имат лимит.
За целта ми е необходим единствено списък с twitter screen_names/id (или каквото имате) на депутатите (не съм проверявал какво има в базата в момента, до колкото си спомням някъде имаше dump). Ще използвам мой тестов twitter application докато разработвам, след това ще добавите production credential-ите на вашият app.
Та в общи линии въпросите ми са:
Здравей, @simov!
Много ти благодаря за включването. :+1: Всякакъв код е добре дошъл, още повече, че проекта е супер модулярен и позволява много хора да работят по него без да си пречат. Единственото ми притеснение е, че от около 3 месеца не съм работил по него и дори да се напълни базата с туитове, не зная кога ще мога да отделя време да направя визуализация. Много силно се надявам да е скоро!
А иначе аз мога да се ангажирам да набера списък с туитър акаунти :)
Ти как си с rails и bootstrap? Имаш ли възможност да направиш някаква визуализация?
Конкретно по въпросите:
С ruby не съм работил и не мисля, че ще успея да изкарам нещо качествено без да инвестирам много време.
На този етап избирам задачи, които са ми интересни/лесни.
Честно казано нямам представа до колко нашите политици са активни в социалните мрежи. От тази гледна точка е под въпрос колко е приоритетен е този feature (нямам идея дали github вече поддържат задаване/сортиране по приоритет на issues)
Така че за мен би било лесно да напиша горе описаният worker, ако имам списък от потребители, срещу които да го пусна, и съответно да пълня данните в някоя база.
Ако можеш да ме насочиш от къде мога да взема/scrapе-на списъка с twitter потребители ще бъде чудесно. Ако този feature е с нисък приоритет, пак няма проблем, ще си избера друго issue.
:beers:
Сетих се още нещо за визуализацията:
{ created_at: 'Tue Jun 11 19:45:24 +0000 2013',
id: 344540892713062400,
id_str: '344540892713062402',
text: '@_simov yep',
source: '<a href="http://twitter.com" rel="nofollow">Twitter Web Client</a>',
truncated: false,
in_reply_to_status_id: 344535996525838340,
in_reply_to_status_id_str: '344535996525838336',
in_reply_to_user_id: 321218143,
in_reply_to_user_id_str: '321218143',
in_reply_to_screen_name: '_simov',
user:
{ id: 1504092505,
id_str: '1504092505',
name: 'simo 2',
screen_name: 'mightymob',
location: '',
description: '',
url: null,
entities: [Object],
protected: false,
followers_count: 1,
friends_count: 9,
listed_count: 0,
created_at: 'Tue Jun 11 15:04:40 +0000 2013',
favourites_count: 4,
utc_offset: null,
time_zone: null,
geo_enabled: false,
verified: false,
statuses_count: 153,
lang: 'en',
contributors_enabled: false,
is_translator: false,
is_translation_enabled: false,
profile_background_color: 'C0DEED',
profile_background_image_url: 'http://abs.twimg.com/images/themes/theme1/bg.png',
profile_background_image_url_https: 'https://abs.twimg.com/images/themes/theme1/bg.png',
profile_background_tile: false,
profile_image_url: 'http://abs.twimg.com/sticky/default_profile_images/default_profile_6_normal.png',
profile_image_url_https: 'https://abs.twimg.com/sticky/default_profile_images/default_profile_6_normal.png',
profile_link_color: '0084B4',
profile_sidebar_border_color: 'C0DEED',
profile_sidebar_fill_color: 'DDEEF6',
profile_text_color: '333333',
profile_use_background_image: true,
default_profile: true,
default_profile_image: true,
following: false,
follow_request_sent: false,
notifications: false },
geo: null,
coordinates: null,
place: null,
contributors: null,
retweet_count: 0,
favorite_count: 0,
entities: { hashtags: [], symbols: [], urls: [], user_mentions: [Object] },
favorited: false,
retweeted: false,
lang: 'und' }
Това е tweet обекта, избираме си какво искаме да запаметим/визуализираме за него. Могат да се добавят и линкове за retweet-ване, favorite-ване.
Тоест това което се явява релация го няма като например самите retweets, съответно техният автор, както и авторът на favorite, но предполагам че няма да задълбаваме чак толкова :grinning:
Визуализацията е: аватар с display name с линк към screen name техт, брой favorite, retweet и дата (евентуално нещо друго, което се съдържа в обекта).
Може и да се наложи да бъде написан малко html/css - widget, bootstrap не е чак толкова гъвкав. Самият сайт може да прочита последните десет tweet-a и да ги визуализира при зареждане на страницата (няма нужда да е realtime)
По първия коментар: може би най-необходимото в момента е да изтеглим и запишем в БД всички проектозакони, заедно с всякакви метаданни за тях (кога са приети, история на статуса им (внесени, приети на първо четене, и тн.), кои са вносителите и изобщо всичко, което можем).
Въпреки това не съм сигурен, че трябва да се концентрираме върху това сега, защото се сменя политическия цикъл, което означава, че със сигурност ще бъде приет нов „Правилник за устройството и дейността на НС“, където е много да има нови регламенти за публикуване на информация на уеб страницата на НС, което вероятно ще счупи доста (или всички) скриптове. Т.е. може би е по-добре действително да се захванем с twitter и други сайтове. Така че кодът е добре дошъл.
Относно втория коментар: Твоята идея е да сложим twitter feed на депутатите на техния профил? Или може би на заглавната страница? :) На мен ми харесва първият вариант, но мнооого малко депутати използват twitter и не зная колко ще е целесъобразно. Вторият вариянт има по-голямо приложение, но от друга страна не съм сигурен, че ние искаме това там - депутатите често използват twitter за дезинформация - те говорят за нещата, за които не искат хората да говорят. Ние искаме на първата страница да покажем по-релевантна информация. Струва си да се помисли къде може да сложим този feed. :)
Ти как мислиш? :)
Така както е написано заданието, аз го разбирам feed на страницата с профил на депутат.
Това че не не използват социалните мрежи е проблем :grinning:
За така наречената дезинформация - в чужбина това е регулирано, всяка личност с влияние, която притежава публичен профил, първо изпраща съобщението по вътрешна система до определени хора (не помня точно наименованието), коита са наети да преценят дали съобщението е уместно и дали не влияе на пазарите примерно. С други думи, напълно искрено съобщение без задни помисли, може да те вкара в голям проблем :grinning: (нещо като със съобщенията за нашите банки, но наистина)
По тази причина в личните акаунти е упоменато, че мнението изразено там е лично и не представлява организацията на която примерно си шеф, но така или иначе пак се проверяват тези неща.
Голямо отклонение, аз предлагам първо да съберем всички twitter акаунти, и след това да проверим някой въобще използва ли ги. Мъртъв feed е по-лошо от no feed.
Призовавам @yurukov. Накратко: разполагаш ли със списък с twitter акаунти на депутати и ако не - знаеш ли как най-лесно да съберем такъв? Питам, те защото зная, че ти си правил govalerts. :) Благодаря.
За евродепутатите има списъ при @ep_Bulgaria. Иначе на българските нямам. Не мисля, че са повече от 5-10 така или иначе.
Боян On Sep 18, 2014 6:50 PM, "Petko Tsikov" notifications@github.com wrote:
Призовавам @yurukov https://github.com/yurukov. Накратко: разполагаш ли със списък с twitter акаунти на депутати и ако не - знаеш ли как най-лесно да съберем такъв? Питам, те защото зная, че ти си правил govalerts. :) Благодаря.
— Reply to this email directly or view it on GitHub https://github.com/obshtestvo/sledi-parlamenta/issues/27#issuecomment-56068385 .
Тоест разполагаме с един акаунт този на @ep_Bulgaria. Ако е така би трябвало twitter да предлагат готов widget за вграждане в сайт.
Тоя е на пресцентъра на EP. Пускат общи новини. Може да им пишете да ви пратят списъка акаунти на евродепутати.
Боян On Sep 18, 2014 7:23 PM, "simo" notifications@github.com wrote:
Тоест разполагаме с един акаунт този на @ep_Bulgaria. Ако е така би трябвало twitter да предлагат готов widget за вграждане в сайт.
— Reply to this email directly or view it on GitHub https://github.com/obshtestvo/sledi-parlamenta/issues/27#issuecomment-56072807 .
Тук http://openparliament.net/eudeputies/ има 5 twitter акаунта на български евро депутати.
Само дето този сайт е за активността на народните представители, а не за евродепутатите :) Така че тези не ни трябват. =)
Да това е очевидно :grinning: прехвърлих и профилите на депутати от народното събрание - за социални мрежи не са чували :grinning: Така че незнам как тази задача може да бъде изпълнена, очевидно технитеческата част не е проблема.
@simov @tsikov @yurukov Идеята е да позлваме API и да пазим при нас инфото. Не само за twitter - issue-то трябва да се преименува на Social media updates.
И вече в Следи Парламента да ги показваме под каквато форма искаме.
В страницата за профил на човек от властта (народен представител, министър, тн) има сексция за tweet-ове.
Също така показваме tweet-ове на началната страница, най-отгоре, в карето "Feed", което съдържа най-скорошните действия в парламента и по сайта, било то приемане на закон, tweet или блог post.
Поддържане на актуален списък с tweet-ове
За всеки човек от властта първоначално ще вземем последните 10 tweet-а. След това всеки 5-10 минути ще проверяваме дали има по-нови tweet-ове от последния tweet на даден потребител.
Как може да стане това
Примерна заявка която взима tweet-ове от моя twitter, които са направени след tweet със id=XXXX
Но за тази заявка трябва да имаме API key / token / логин - както искайте го наричайте, трябва twitter да ни знае кои сме, за да ни ограничава броя заявки.
Няколко линка за инфо:
Ако нещо не работи ето и детайли около API key: https://dev.twitter.com/docs/auth/application-only-auth