Pages

10/01/2010

โพสต์ อัพเดตสถานะบน facebook ด้วย มือถือเครื่องต่างๆ

เริ่มต้นจากที่เห็นเริ่มมีคนใช้ iphone มั่ง bbมั่ง โพสต์กันบน facebook
แล้วเราก็ว่า  เอ.. พวกนั้นมันก็ใช้ app บนเวปเพื่อโพสต์หมดเลยนี่นา
เราเลยเอามั่งว่า ถ้าไปใช้ application บน facebook ของมือถือยี่ห้อนั้นๆ จะทำได้มั๊ยนะ

ก็เลยเริ่มก่อนเลยที่สองเวปนี้
http://www.facebook.com/apps/application.php?id=129423150428511
http://www.facebook.com/viabberry
พอกดเข้า Go To Application ก็จะมีที่ให้โพสต์ข้อความได้สะดวกเลย
แถม logo ของมือถือนั้นๆก็ขึ้นด้วย
ก็เป็นเช่นนั้นตามลำดับ

คราวนี้ก็ไปนั่งหาอีกว่า.. อ้าวแล้ว android จะทำไง, windows mobile จะทำไง?
และแล้วก็เจอ หน้า application บน facebook ของทั้ง android และ wm
แต่แล้วก็ทำไรต่อไม่ได้ เพราะว่า มันไม่มีปุ่ม Go To Application ให้กด

เลยค้นใน google ไปๆมาๆ  เจอเวปนี้เข้า  www.facebook-status.co.cc
ซึ่งก็มีให้กดโพสต์ในมือถือหลากหลายแบบมาก  และก็ใช้งานได้จริงด้วย
แต่  พอจะเอาlinkนี้ไปโพสต์บน facebook   เวปfacebookเองดันบอกว่าเวปนี้เป็น spam อันตรายห้ามโพสต์

พอดีคุยกับ Joey Bon อยู่ ก็เลยส่ง link อันที่ว่าให้ดู
Joey Bon ก็ขยัน  เข้าไปอ่านโค้ดซะอีก   บอกว่าความจริงแล้วมันปลอดภัยนะ
เพราะว่ามันไปใช้การโพสต์ข้อมูลผ่านทาง livefeed ของ facebook.com

Joey Bon ก็เลยจัดการทำ เวป http://sites.google.com/site/facebookforallmobiles/ ขึ้นมา
โดยเอา livefeed จากหน้านั้น มาให้โพสต์ข้อความลงบน facebook โดยผ่านมือถืออะไรก็ได้

ซึ่งก็ทดลองแล้วใช้งานได้จริง

แต่ว่า.. พอลองใช้ iPhone แล้ว  ทำไม icon ที่โพสต์มันถึงไม่เหมือนกับ iPhone4 application อันแรกที่เราใช้หว่า
เพราะอันแรกออกมาเป็นเขียนว่า
 แต่อีกอันออกมาเป็นว่า


ก็เลยงงๆ กันไป

เลยต้องไปค้นโค้ด จนรู้ความจริงมาว่า
iPhoneแบบอันล่างเนี่ย มันใช้ live feed มาในรูปแบบ
src="http://www.facebook.com/widgets/livefeed.php?app_id=6628568379&hide_menubar=1"
ซึ่งจะเห็นว่ามี app_id เป็น  6628568379
แต่ iPhone4  App มี id เป็น  129423150428511
จาก ภาพ


แล้วงั้นถ้าเราอยากได้ livefeed ของ app ตัว iphone4 ก็แค่แก้ app_id เป็นค่าๆ นี้สิ ก็จบ
มาลองดูกันว่า หน้าตามันจะกลายเป็นไง
(หมายเหตุ: url เปลี่ยนไปนิดหน่อย เพราะมันโดน redirect อัตโนมัตินะ)

แล้วมันก็ใช้งานได้จริงด้วย

จบละ

อัพเดตเพิ่มเติม:
เนื่องจากการใช้ URL แบบ livefeed.php จะทำให้เหมือนกับว่าเราส่งข้อมูลเข้าไปหาหน้าchatroom ซึ่งทำให้คนอื่นสามารถเข้ามาอ่านได้  (แถมเรายังลบโพสต์นั้นไม่ได้ด้วย)
ขอเสนอ URL แบบ prompt_feed.php แทน
http://www.facebook.com/connect/prompt_feed.php?preview=true&api_key=129423150428511
ซึ่งตัวนี้ จะทำหน้าตาออกมาเหมือนกับ popup ที่จะออกมาถามเวลาเราจะโพสต์อะไรลงไปใน wall เลย
แถมไม่มีการส่งข้อมูลไปที่ หน้าpostส่วนกลางให้คนอื่นเห็นอีก
แค่เปลี่ยน api_key เป็น app_id ที่ต้องการ  ก็ใช้ได้

แต่เนื่องจากเราใช้ app_id แทน app_key และเราไม่มีทางรู็app_keyของappตัวนั้นจริงๆ ดังนั้น
หลายๆ app_id จะไม่สามารถใช้ได้ด้วยวิธีนี้

วิธีนี้ยังเลือกโพสต์ให้ขึ้นบนหน้าwallของคนอื่นได้ด้วย
ด้วยการเพิ่ม target_id=...... ต่อท้าย URL เข้าไปอีก
ก็จะกลายเป็น
http://www.facebook.com/connect/prompt_feed.php?api_key=129423150428511&target_id=999999

ส่วนจะรู้ได้ไงว่าใคร อะไร มีid อะไรนั้น
facebook ได้ทำ library ไว้ให้ใช้เรยีบร้อยแล้ว นั่นคือ ที่
https://graph.facebook.com/
แค่เอาชื่อlogin, appname,pagename หรือ idของ item หรืออะไรก็ได้ไปต่อท้าย URL นี้
ทางfacebook ก็จะแสดงข้อมูลนั้นออกมาทันที
เช่น  https://graph.facebook.com/iphone จะขึ้นมาว่า app_id ของ app ที่ชื่อ iphone นี้ idคืออะไร
แน่นอน ถ้าใส่ชื่อlogin ของคนเข้าไปตรงนั้น ก็จะแสดงข้อมูลด้วย
(หน้านี้เป็นแค่pageเฉยๆ แค่ยกตัวอย่างให้ดูเล่นๆ)

ref: http://facebook-status.co.cc
ref: http://sites.google.com/site/facebookforallmobiles/
thanks: Joey Bon

ps:  MSN Live Messenger 's AppID = 30713015083

ps2: MSNเพิ่มเข้าไปแล้ว พร้อมกับ phoneแบบอื่นอีกหลายๆอัน

ps3: ขี้เกียจมานั่งไล่แกะ AppID ทุกครั้งที่จะเล่นและ เขียนกันตรงๆเลยละกัน

BB: 2254487659
WinMo: 6195724695
Palm: 4620273157
Nokia: 49340319393
INQ Mo: 26463759431
Android: 74769995908
iphone: 6628568379

ดูไปดูมาก็เป็นเลขบ้าอะไรไม่รู้  เหมือน BB codeเลยแฮะ

No comments:

Post a Comment