Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien
Toon posts:

twitter 1.1 Meerdere user timelines met 1 API key?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Op sommige sites van klanten laat ik de laatste tweets vanaf hun twitter timeline zien.
Dat was heel gemakkelijk, maar is nu wat lastiger nu Twitter gebruik maakt van de nieuwe API

Ik heb nu de benodigde consumer keys en tokens aangevraagd en een twitter application aangemaakt.
Daarmee kan ik weer de twitterfeed van mijn eigen timeline ophalen. Werkt prima!

Mij vraag is:

Moet ik nu voor iedere klant (waar ik de website van beheer en waar ik tweets van op hun site wil tonen) een nieuwe Twitter App maken met hun eigen tokens en keys?

Of kan ik met "mijn eigen" Tokens en Keys ook de public timelines van andere site ophalen?
Heeft iemand hier ervaring mee?

  • TheNephilim
  • Registratie: September 2005
  • Laatst online: 21-11 15:31

TheNephilim

Wtfuzzle

Nee. Ik gebruik hier één plugin voor, waar ik niet telkens de token verander. Deze gebruik ik op meerdere websites, met verschillende twitter accounts. Zal even kijken hoe dat precies zit, is al even geleden.

De basis is van https://github.com/abraham/twitteroauth, daarmee doe ik uiteindelijk:

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// The default options
$defaults = array(
    'screen_name' => '',
    'count' => 3,
    'trim_user' => false,
    'exclude_replies'  => true,
    'contributor_details' => true,
    'include_rts' => true
);
        
// Merge the given options with the defaults
$options = array_merge($defaults, $options);

// Connect to Twitter using TwitterOAuth class
$connection = new TwitterOAuth($this->consumer_key, $this->consumer_secret, $this->access_token, $this->access_token_secret);

// Get the tweets using the given options
$tweets = $connection->get('statuses/user_timeline', $options);


Erg simpel en na het aanmaken van een Applicatie onder een (eigen) Twitter account, werkt het al. Als je klanten hebt die veel gebruik maken van en/of veel pageviews hebben, dan zou ik ze een eigen app laten maken.

Kortom: Je kunt gewoon je eigen key gebruiken om andere public tweets op te halen. Echter zit er een maximaal aantal requests aan per dag. Dus ga bijvoorbeeld cachen om niet voor elke pageview een request te sturen.

[ Voor 77% gewijzigd door TheNephilim op 08-07-2013 11:01 ]


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 20-11 11:59

NMe

Quia Ego Sic Dico.

Verwijderd schreef op maandag 08 juli 2013 @ 10:30:
Moet ik nu voor iedere klant (waar ik de website van beheer en waar ik tweets van op hun site wil tonen) een nieuwe Twitter App maken met hun eigen tokens en keys?

Of kan ik met "mijn eigen" Tokens en Keys ook de public timelines van andere site ophalen?
Heeft iemand hier ervaring mee?
Het kan allebei, maar je zit wel met limieten op het aantal requests dat je kan doen en het aantal users dat je mag hebben. Ik zou er gewoon losse apps voor maken, kost maar een paar minuutjes en dan kun je eventueel als een klant ooit wil opstappen op een andere aanbieder ook gewoon de key voor Twitter overdragen.

Verder: Waar hoort mijn topic?

WEB>>PRG

[ Voor 4% gewijzigd door NMe op 08-07-2013 11:46 ]

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • phex
  • Registratie: Oktober 2002
  • Laatst online: 15-11 16:07
Ik cache timeline requests van Twitter via een cronjob.

Vroeger had Twitter er nogal een handje van om spontaan de geest te geven voor een langere periode. Op die manier is de laadtijd van je site niet afhankelijk van Twitter.

Daarnaast kun je zelf de tijdspanne aanpassen zodat je niet tegen rate limits aanloopt (180 requests per 15 min)

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 20-11 11:59

NMe

Quia Ego Sic Dico.

De reden dat ik limieten noem is dat je meerdere verschillende timelines zou kunnen opvragen per site, dus dan helpt cachen je niet. Bovendien: als je dezelfde key gebruikt voor meerdere verschillende sites heb je óók niets aan cache in die zin dat ze allemaal andere timelines zullen opvragen en zelfs al zijn het dezelfde, dan is de logistiek van caches combineren de moeite meestal niet waard.

Om die reden: gewoon aparte keys gebruiken. Afgezien van dat uiteraard wel cachen natuurlijk, maar dat staat los van de vraag. :)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • phex
  • Registratie: Oktober 2002
  • Laatst online: 15-11 16:07
Nou ja ik ben lui en ga niet voor elke site een nieuwe app/key aanvragen. Dus het is meer een formule om te zien of ik het nog steeds met 1 key kan doen dan daadwerkelijk een cache oplossing.

  • Barryvdh
  • Registratie: Juni 2003
  • Laatst online: 21:50
Ik ben ook lui en heb gewoon een cronjob lopen die elk kwartier voor meerdere sites de timeline update. Op die manier kan ik dus 180 sites met 1 key doen. En dan sla ik het gewoon op in een database, hoef ik op de site alleen maar de tekst (die al netjes geformat is dan) op te halen.

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 20-11 11:59

NMe

Quia Ego Sic Dico.

Zelf weten, maar ik heb wel eens betere ideeën gehoord. :)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • TheNephilim
  • Registratie: September 2005
  • Laatst online: 21-11 15:31

TheNephilim

Wtfuzzle

NMe schreef op maandag 08 juli 2013 @ 13:42:
De reden dat ik limieten noem is dat je meerdere verschillende timelines zou kunnen opvragen per site, dus dan helpt cachen je niet. Bovendien: als je dezelfde key gebruikt voor meerdere verschillende sites heb je óók niets aan cache in die zin dat ze allemaal andere timelines zullen opvragen en zelfs al zijn het dezelfde, dan is de logistiek van caches combineren de moeite meestal niet waard.

Om die reden: gewoon aparte keys gebruiken. Afgezien van dat uiteraard wel cachen natuurlijk, maar dat staat los van de vraag. :)
Daar heb je gelijk in, al heb je maar één request per (bijv.) kwartier, met meerdere sites zou je inderdaad nog aan de rate limit kunnen komen.

In de praktijk, in ieder geval in mijn situatie, zijn het kleine bedrijfswebsites die heel weinig pageviews hebben. Voor grotere websites zou ik zeker een eigen key aanraden, zoveel moeite is het ook niet.

  • Cartman!
  • Registratie: April 2000
  • Niet online
Gewoon los doen, het is zo gebeurd en je kan per project netjes de credentials opslaan. Mocht er 1 site zijn waar het niet goed werkt breken die andere X sites ook ineens, geen fijn idee. Lekker gescheiden houden dus. Sterker nog... ik maak per project altijd een compleet eigen Twitter-account aan om alles gescheiden te houden.
Pagina: 1