Categorieën
Asides Techtalk

WP Seek

Hat tip: WP Seek. Eindelijk een handige referentie voor alle template/theming functions in WordPress.

Categorieën
Internet

Twitter @ BarcampGent

BarcampGent staat al een eeuwigheid met en grote rode cirkel en een paar stevige pijlen angeduid op mijn kalender. Het zal de eerste keer zijn dat ik aan een Barcamp deelneem, en ik wil er tegelijk ook goed invliegen: met een eigen projectje. Ik heb even moeten nadenken voor ik een goed onderwerp had. Uiteindelijk besloot ik een dag of tien geleden dat ik iets rond de Twitter wil doen: Twitter programmeren voor dummies. Ik heb het idee even wat laten gisten en er in – relatieve – stilte aan gesleuteld.

Ondertussen is het een aardig project geworden. Zelf ben ik uiteraard ook nog groen achter de oren, maar ik zou mezelf de komende maand wat wijden aan de Twitter API. Al doende maak ik nota van mijn bevindingen. Meer zelfs, het is de bedoeling om een on line microtutorial programmeren voor de Twitter API te schrijven. Met micro bedoel ik: kort, bondig en begrijpelijk.

Op 29 maart hoop ik tijdens een powertalk op BarcampGent mijn exploten wat uit de doeken te doen en het eindresultaat voor te leggen.

Ik ben keihard benieuwd hoe ver ik hierin ga geraken…

Categorieën
Internet Techtalk

Twitter API: babysteps

** techneutenwaarschuwing **

Gisteren ben ik wat met de Twitter API beginnen spelen. De whatnow? De Twitter API, dus. Samengevat: wanneer je zelf een programma schrijft, laat de API van toepassing x of service y toe om (beperkt) gebruik te maken van diens functionaliteit. Als je, bijvoorbeeld, met Twitter Stats werkt, dan zal die via de API van Twitter al je gebruikersgegevens opvragen, ontvangen en verwerken in mooie grafiekjes.

Op zich schrijft een API enkel voor welke regels je moet volgen om te kunnen communiceren. De programmeertaal, het platform of weet-ik-veel waar je zelf mee aan de slag bent, spelen een stuk minder een rol. Buiten dan dat ze je in staat moeten stellen om gebruik te kunnen maken van die functionaliteit.

Afin, dat was de theorie. De praktijk dan maar. Stel dat je de Twitter website beu bent of geen browser bij de hand, maar je wil wel twitteren, hoe doe je dat? Wel, men neme de API. Die zegt dat je een HTTP POST verzoekje moet sturen naar een bepaalde URL met je paswoord, username en het berichtje dat je wil versturen. je berichtje mag uiteraard niet langer dan 140 tekens zijn. Twitter zal je berichtje dan oppikken.

Eerste probleem: hoe stuur je een HTTP POST request zonder browser? Wel, dat kan je met cURL. Dit is een tooltje waarmee je direct met webservers en nog veel meer kan spreken. Deze versie (windows! Linux e.a. beschikbaar. Kies de no-ssl versie.) heb je nodig. In je commando prompt (dosbox, whatever) voer je het commando ‘curl’ uit. Je moet natuurlijk een aantal parameters zoals een URL en watnog meegeven om iets zinnigs te doen met cURL. In casu geef je volgende URL mee:

http://twitter.com/statuses/update.xml

Daarmee zijn we er nog niet. Je moet eerst inloggen bij Twitter vooraleer je een tweet kan sturen. Dat doe je door aan het curl commando volgende parameter mee te geven:

-u username:paswoord

Uiteraard vervangen door je eigen logingegevens. Tenslotte, moet je nog het berichtje mee geven als een HTTP POST request. Daarvoor dient de -d parameter van cURL. Daarbij moet je nog specificiëren dat het berichtje een status is. Dat doe je met ‘status=’ Het resultaat is dit:

-d status="Twittering from cURL"

Dat alles moeten we nu in één commando doorgeven aan Twitter. Dat doe je zo:

curl -u username:paswoord -d status="Twittering from cURL" http://twitter.com/statuses/update.xml

Als je als goed hebt ingevoerd, dan zou je een heleboel tekst in XML formaat teruggespuugd moeten krijgen. Die zal o.a. je profielgegevens bevatten en de nieuw aangepaste status met het tijdstip. Doe je het verkeerd krijg je ofwel geen output, ofwel een foutmelding in een XML berichtje.

Zo. Je hebt net voor het eerst rechtstreeks gebruik gemaakt van de Twitter API om los van de Twitter website toch te kunnen twitteren. Bravo! Als je PHP programmeur bent, dan zou je op een gelijkaardige manier met curl voor PHP aan de slag kunnen om van de Twitter API gebruik te maken.