The King is dead! RIP 2006-2012

Ένα μεγάλο ευχαριστώ σε όλη την παρέα
Περισσότερα στο lexx.gr

Facebook Development: Μέρος 1ο

02 Oct 2008 by PanosJee

Γεια σας και πάλι. Επανέρχομαι στην ανάπτυξη εφαρμοφών Facebook και σκοπεύω να ποστάρω όποτε βρίσκω κάτι αξιόλογο σχετικά με το θέμα και για αυτό θα χρησιμοποιώ αυτόν τον τίτλο με διαφορετικά μέρη.

Καθότι είμαστε στο πρώτο μέρος τι πιο σωστό να πάρουμε τα πράγματα από την αρχή. Καταρχήν θα ήθελα να αναφέρω ότι αναφέρομαι σε ανάπτυξη με Ruby On Rails και την βιβλιοθήκη Facebooker. Η συγκεκριμένη βιβλιοθήκη μας προσφέρει μια υλοποιήση του Facebook session αρκετά κοντά στον κλασσικό Ruby κώδικα οπότε και την προτιμούμε, βέβαια ο κώδικας της βιβλιοθήκης αν θέλετε να τον πειράξατε είναι πιο περίπλοκος αφού πρόκεται για ένα ΑΡΙ πάνω από ένα ΑΡΙ.

Ως εδώ τίποτα το πρωτόγνωρο. Για να πάμε παρακάτω, όπως είπαμε στο προηγούμενο ποστ μια εφαρμογή Facebook καλεί τον κώδικα μας από τον server στον οποίο εκτελείται, αρά πώς θα κάνουμε local development, με ότι αυτό συνεπάγεται για την ευκολία του κώδικα; H πάμε remote με ότι αυτό συνεπάγεται δηλαδή FTP ή να γράφουμε πάνω από SSH ή αν έχουμε static IP address να δηλώσουμε αυτήν στο Facebook. Αν δεν έχουμε τι κάνουμε; DynDNS; Το βρίσκω μπελά.

Μην απογοητεύστε και μην απελπίζεστε ο Facebooker κάνει το θαύμα του χάρη στα tunnels. Ενα tunnel είναι όπως φαντάζεστε ένα τούνελ από ένα μηχάνημα σε ένα άλλο. Δηλαδή μια τυχαία διεύθυνση www.someurl.com:7890 μπορεί να προωθήσει την κίνηση που δέχεται στο port 7890 στο τοπικό μας μηχάνημα και συγκεκριμένα π.χ. στο 127.0.0.1:3000 και στη συνέχεια τα αποτελέσματα να γυρίσουν από το αρχικό URL. Ο Facebooker μέσω του αρχείου ρυθμίσεων του απλά θα χρειαστεί το url του tunnel και το username. Και μετά απλά στην κονσόλα δίνοντας rake facebooker:tunnel:start η εφαρμογή μας στο Facebook εκτελείται στο μηχάνημα μας!

Μα που θα βρω tunnel; Φυσικά μπορείτε να φτιάξετε το δικό σας ή απλά φτιάχτε ένα account στο Tunnlr, μάλιστα για κάθε account που φτιάχνετε σας λέει πώς να συμπληρώσετε τον αρχείο ρύθμισεις του Facebooker. Να και το δικό μου tunnel:

How do I use Tunnlr with Facebooker (+)(-)

Are you using Facebooker to build your Facebook application? If so, your facebooker.yml file should look like:

development: api_key: secret_key: canvas_page_name: callback_url: http://web1.tunnlr.com:10247

tunnel: public_host_username: tunnlr57 public_host: ssh1.tunnlr.com public_port: 10247 local_port: 3000

After editing your facebooker.yml file, create a tunnel with

rake facebooker:tunnel:background_start

Οπου βέβαια callback_url το URL που δίνουμε όταν δημιουργούμε το νέο Facebook app. Αλλά περισσότερα για αυτό στο επόμενο μέρος του Facebook Development.