ทวีตด่วนบน Opera
เวลาเราใช้ Firefox ผมเห็นบางคนจะติดตั้ง Add On ตัวหนึ่งไว้สำหรับอัพเดททวิตเตอร์ผ่านทาง Address Bar นั่นคือ Add On ที่ชื่อว่า Twitter Bar
วันนี้ผมนั่งทำ Bookmarklet สำหรับดูทวีตของผมที่ถูกรีทวีตไป (แอคเคาท์ผมมีปัญหาดูทวีตของเราที่ถูกรีทวีตไปผ่านหน้าเว็บไม่ได้) ก็เลยได้ไอเดียว่า เอ๊ะ เราน่าจะดัดแปลงเรื่องนี้ มาใช้สำหรับการอัพเดททวีตได้ ผ่านระบบ Custom Search (เบราเซอร์อื่นก็เอาไปดัดแปลงได้เช่นกัน)
มาดูฟีเจอร์ของมันก่อนครับ
- ลากครอบข้อความ แล้วสั่งทวีตได้ทันที
- ทวีตผ่าน Address Bar ผ่านคีย์เวิร์ดที่ตั้งไว้
- ทวีตผ่าน Search Bar
แค่นี้แหละครับ ฟีเจอร์มัน เอาล่ะ ไปดูวิธีทำกันครับ
ขั้นแรกให้เข้าไปที่ Manage Search Engine (ผ่าน Search Bar หรือ Memu > Settings > preferences > Search) จะปรากฎหน้าต่างแบบนี้ขึ้นมา
ให้กดไปที่ Add แล้วมันจะขึ้นหน้าต่างให้เพิ่ม Search Engine มาให้ครับ หน้าตาจะเป็นอย่างนี้
ซึ่งหากเราดูตาม Twitter REST API ตรงส่วนของ Status Update แล้วรูปแบบของ API เป็นยังไง ไปเปิดดูเอง ซึ่งจากรูปแบบของ API มัน ทำให้เราต้องกรอกค่างต่างๆ ตามนี้
- Name : อะไรก็ได้ เอาเข้าใจง่ายๆไว้เถอะ ในที่นี้ผมใช้ Update Twitter
- Keyword : คีย์เวิร์ดที่จะใช้ทวีตผ่าน Address Bar ในที่นี้ผมใช้ tweet
- Address : https://username:password@api.twitter.com/1/statuses/update.xml เดี๋ยวจะอธิบายให้ ว่าทำไม
- Query String : status=%s (อย่าลืมติ๊กถูกหน้า User POST ก่อน) เดี๋ยวจะอธิบาย
แล้วก็ OK ออกมา อ้อ มันยังไม่จบครับ มีปัญหาเรื่อง Encoding อีก ซึ่งถ้าทำไว้แค่นี้มันจะสามารถทวีตได้เฉพาะภาษาอังกฤษ เพราะ Twitter รับข้อควาเมป็น UTF-8 แต่ว่า Default ของ Opera มันตั้ง Encoding ของข้อความค้นหาไว้เป็น iso-8859-11
ก่อนจะแว้บไป ผมขออนุญาตอธิบายข้างบนนั่นก่อนครับ ตรงส่วนของ Address และ Query String
ในส่วนของ Address เราจะใส่ username กับ password ของเราลงไปด้วย (เนื่องจาก Status Update API ต้องการการ Authentication หรือ การล็อกอิน ก่อน จึงจะอัพเดทได้) ผมไม่รู้ว่ามันมีชื่อเรียกเฉพาะว่าอะไรสำหรับการล็อกอินแบบนี้ (คือพิมพ์ผ่านแอดเดรสบาร์ไปเลย) ดังนั้นจะขอตั้งชื่อมันว่า “In-line Authentication” ซึ่งลักษณะของมันจะเป็นดังนี้ครับ
http://<useranem>:<password>@url
เช่น
http://jirayu:[email protected]
อนึ่งคือใครที่เคยเข้าไอพีเราเตอร์แล้วมันจะเด้งไดอะล็อกมาให้ล็อกอิน แบบนั้นแหละึครับ (คือไอ้ล็อกอินแบบนี้เขาเรียก Basic Access Authentication ครับ) ดังนั้น เจ้านี่จะเป็นดาบสองคม เพราะใครต่อใครก็สามารถเปิดดูพาสเวิร์ดเราได้ ดังนั้น ไม่ควรทำบนคอมสาธารณะครับ
อีกข้อหนึ่งคือเรื่องของในช่อง Query String ทำไมต้องใส่ status=%s อันนี้เนื่องมาจากว่า Status Update API ต้องการการส่งข้อมูลแบบ POST (เข้าใจง่ายๆ ว่าเป็นการส่งข้อมูลแบบซ่อน Query String) โดยส่งข้อความผ่านตัวแปร status ดังนั้นเราจึงต้องสร้าง Query String ให้มีการส่งค่าตัวแปร status ไปด้วย ส่วน %s นั้นใช้อ้่างถึง search term ครับ
เอาล่ะครับ จบการขยายความแบบงงๆ ไว้เท่านี้ เราไปดูเีรื่องของเราต่อ
หลังจากเพิ่ม Search Engine แล้ว ให้เราเข้าไปที่นี่ (เปิด run command โดยกด Win+R แล้วใส่ลงไปเลยครับ)
%APPDATA%OperaOpera
จากนั้นให้เราเปิดไฟล์ search.ini ขึ้นมา มองหา Search Engine ที่เราเพิ่งเพิ่มเข้าไป จากนั้นแก้ตรง Encoding=iso-8859-11 ให้เป็น Encoding=utf-8 เท่านี้ก็เรียบร้อยครับ
เอาล่ะครับ หลังจากเซฟไฟล์แล้ว ก็รีสตาร์ทโปเอร่าตัวเก่งของเราสักรอบหนึ่ง แค่นี้ก็ใช้ได้แล้วครับ ลองจิ้มๆ กันดูนะครับ