Play in the playground ဆိုလို႕ သူငယ္ျပန္သြားတယ္လို႕ ထင္ကုန္ၾကအံုးမယ္။ မေန႕ညက oAuth ကို ဘယ္လိုလုပ္ရမလဲ မသိလို႕ရွာရင္း ရွာရွင္းကေန playground ထဲကို ေရာက္သြားတာပဲ။ webdeveloper forum က playground ထဲမွာ ရိွတယ္ဆိုလို႕ playground ထဲ အေျပးသြားၾကည့္ရတာပဲ။ playground ထဲေရာက္မွ woww… ဆိုျပီး သေဘာက်စရာေတြ အျပည့္ပဲဗ်။ ေဆာ့စရာေတြက မ်ားမွ မ်ား။ ခက္တာက ကိုယ္လိုအပ္ေနတာပဲ အရင္ေဆာ့ရတာေပါ့။ Continue Reading »
မသိျခင္းမ်ား
အခုမွ သိလိုက္တယ္။ ကၽြန္ေတာ္ မသိပဲ ေျပာင္းလဲသြားတာ အမ်ားၾကီး ျဖစ္သြားတာပဲ။ ကၽြန္ေတာ့္အေနနဲ႕ အမ်ားၾကီး ေနာက္က်ေနမွန္း အခုတေလာမွ သိလိုက္ရတာေတြ ရိွတယ္။ အဓိကေတာ့ ေျပာင္းလဲမႈေတြကို မ်က္ေျခမျပတ္မလုိက္ႏိုင္လိုက္တာလဲပါတာေပါ့။ ကၽြန္ေတာ္ မသိပဲ ျဖစ္သြားတာေတြက
Webservice, Web API
MZ မွာေမးထားတာေလးကို blog မွာလည္း အျခားသူေတြ သိေအာင္ ထပ္ေျဖေပးလိုက္ပါတယ္။
က်ေတာ္က ဒီလိုနားလည္ ထားတယ္…
ဥပမာ . Facebook မွာဆိုရင္ Game ေတြ အမ်ားၾကီးပါတယ္။ အဲဒီ Game ေတြက သာမာန္ web programming နဲ႔ ေရးလို႔ မရဘူးဗ်ာ။ အဲဒါကို တျခား java ျဖစ္ျဖစ္ c ျဖစ္ျဖစ္ ေရးထားမယ္ေပါ့။ အဲဒီ အေျခေနမွာဆုိရင္ ကို ေရးလိုက္တဲ့ဟာက my application ျဖစ္သြားျပီေပါ့။ အဲဒါကုိမွ web site မွာတင္ခ်င္တယ္ဆိုေတာ့ my application ကေန web application ကိုေျပာင္းဖို႔ အတြက္ web service ကို အသံုးျပဳတာလို႔ က်ေတာ္က နားလည္ ထားတယ္။ အဲဒီ အေတြးက မွန္ပါသလား။ခင္မင္စြာျဖင့္ စိုင္းထက္
အဲလိုမဟုတ္ပါဘူး။
facebook မွာေရးခ်င္တယ္ဆို၇င္ fbml ကို သံုးျပီးေတာ့ ေရးရမယ္။ အဆင္အေျပဆံုးကေတာ့ PHP နဲ႕fbml ကို တြဲသံုးျပီး ေရးတာေပါ့။ အဲလိုေရးဖို႕အတြက္ အရင္ဆံုး facebook မွာ API key ယူရတယ္။ API key ရျပီးေတာ့မွ PHP ကေနဆုိရင္ facebook phplibrary နဲ႕ fbml ကို သံုးျပီးေရးရတယ္။ app run တာကေတာ့ ကိုယ့္ host မွာ။ ျပတာကေတာ့ facebook ကေနေပါ့။ API နဲ႕ FBML က အလုပ္လုပ္သြားေပးတာပါ။ API ဆိုတာက facebook နဲ႕ ကိုယ္ေရးထားတဲ့ API ကို ၾကားခံေဆာင္ရြက္ေပးတာပါ။ အဲလို ေဆာင္ရြက္ေပးဖုိ႕အတြက္ ကိုယ္က facebook site မွာ app register လုပ္ရတယ္။ အဲဒီ အခါ API key ရလာမယ္။ API key ရမွ ဆက္သြယ္လုိ႕ရမယ္။ API key ဆိုတာက security သေဘာမ်ဳိးနဲ႕ သံုးတာပါ။ ဥပမာ API ကို အသံုးျပဳျပီး facebook မွာ ၅ မိနစ္ တစ္ခါ post ေတြ အလိုအေလ်ာက္တင္ေနလို႕ရတယ္။ အဲဒီအခါ facebook က ခြင့္မျပဳဘူးဆုိရင္ ဘယ္ API က လာတယ္။ အဲဒီ API ကို ဘယ္ user က register လုပ္ထားလဲဆိုတာကို သိျပီး ban လုိက္လို႕ရတယ္။
oAuth က နည္းနည္းရႈပ္တယ္။ နည္းနည္းပိုရွင္းတဲ့ AuthSub ကို ေျပာတာ ပိုေကာင္းမယ္။ AuthSub ဆုိတာက google ရဲ႕ နည္းပညာပါ။ oAuth ကို အေျခခံထားတာပဲ။ user ေတြရဲ႕ contact list ကို site တစ္ခုကေန ယူေတာ့မယ္ဆိုပါဆုိ႕။ အဲဒီလိုအခါမွာ user ရဲ႕ username နဲ႕ pwd ထည့္ရမယ္။ အဲဒီ site က ယံုၾကည္စိတ္ခ်ရမႈ ရိွခ်င္မွရိွမယ္။ အဲလိုမ်ဳိးေတြအတြက္ oAuth ေပၚလာတာပါ။ AuthSub က oAuth ထက္ ပိုရွင္းေအာင္ လုပ္ထားေပးတယ္။
Google Contact list ကို web site က request လုပ္လုိက္ရင္ google website ကိုေရာက္သြားမယ္။ google website မွာ user က login ဝင္။ ဝင္ျပီးတဲ့အခါမွ google က ဒီ site က contact list ကို ေတာင္းေနျပီ။ မင္းေပးမွာလားလုိ႕ ေမးေရာ။ ကိုယ္က ေပးလိုက္လို႕ေျပာတဲ့အခါမွ google ကေန ေပးလုိက္တာ။ အဲဒီ အခါမွာ လာခဲ့တဲ့ site ကိုေရာက္သြားေရာ။ အဲဒီအတြက္ session token ပို႕လိုက္တယ္။ username နဲ႕ pwd ေတာ့ မပို႕ဘူး။ session token ျဖစ္တဲ့အတြက္ အခ်ိန္အၾကာၾကီးမရတဲ့အတြက္ username နဲ႕ pwd ကို site က ခိုးလုိ႕မရေတာ့ဘူး။ user အတြက္လည္း စိတ္ခ်ရတယ္။ site အတြက္လည္း user ရဲ႕ ယံုၾကည္မႈကိုရတယ္။
တနည္းေျပာရင္ သာမာန္ web programming နဲ႕ပဲ ေရးရတာပဲ။ facebook app လည္း သာမာန္ web programming နဲ႕ပဲေရး၇တာပဲ။ သက္ဆိုင္ရာ API function ေတြကိုေတာ့ ယူသံုးရတယ္။ ဥပမာ။ facebook API function ကေန friendlist ေတြရႏိုင္တယ္။ user information ေတြရႏိုင္တယ္။ register လုပ္တယ္ဆိုတာက user information ရဖို႕ပဲ။ facebook connect သံုးလိုက္ေတာ့ user လည္း register လုပ္စရာမလုိေတာ့ဘူး site ကလည္း information ရတယ္။ အဲလိုမ်ဳိး web service ေတြက အလုပ္လုပ္ေပးတာ။
ဥပမာ။ ။ ကၽြန္ေတာ္ လက္ရိွေရးေနတဲ့ ornagai ဆိုပါဆို႕။ API ကေတာ့ ေရးေနဆဲ မျပီးေသးဘူး။ API register လုပ္ထားတဲ့သူက ornagai ရဲ႕ စာလံုးေတြကို အျခား site ကေန retrieve လုပ္လုိ႕ရတယ္။ ကၽြန္ေတာ့္ site ကို လာစရာမလုိပဲနဲ႕ API function ေခၚျပီး retrieve လုပ္လို႕ရမယ္။ အဲဒီအတြက္ အျခား site ေတြကလည္း စာလံုးတစ္ခုကို mouse ေထာက္လိုက္တာနဲ႕ ornagai dictionary API ကို ယူျပီး ornagai ကေန စာလံုးရွာျပီး return ျပန္လာမယ္။ ျပန္လာတဲ့စာလံုးကို ေရးထားတဲ့ app ကေန ရယူျပီး ျပန္ျပီးေပးတယ္။
Google Map API ကို အသံုးျပဳျပီးေတာ့ ေျမပံုေပၚမွာ ပံုေတြထည့္တာ point ေတြထည့္တာ စတာေတြလုပ္လုိ႕ရတယ္။
http://map.etelegram.net.mm
ဆိုရင္ Google Map API သံုးျပီးေတာ့ ျမန္မာႏိုင္ငံက ျမိဳ႕ေတြကို point ေတြနဲ႕ ခ်ထားတာ။ အဲလိုလုပ္ဖုိ႕ google map api key ကို အရင္ဆံုး ယူရတယ္။ API key တစ္ခုက register လုပ္ထားတဲ့ site ကပဲ ေခၚလို႕ရတယ္။ http://map.etelegram.net.mm/ က API key ကို http://map.mymap.com.mm ကေန ေခၚလို႕မရဘူး။ API key တစ္ခု ရယူဖုိ႕က တစ္ခုနဲ႕ တစ္ခုမတူဘူး။ Google Map ဆိုရင္ site ပဲလိုေပမယ့္ facebook ဆိုရင္ facebook user ျဖစ္ရမယ္။ သံုးမယ္ website လည္းလိုတယ္။
ဒါေပမယ့္ Twitter အသံုးျပဳတဲ့ REST လိုက်ေတာ့ ဘာမွ မလုိျပန္ဘူး။ oAuth လုိတဲ့အပိုင္းရိွသလို မလိုတဲ့ အပိုင္းရိွတယ္။ user တစ္ေယာက္ရဲ႕ tweet ေတြကို ထုတ္ၾကည့္ခ်င္ရင္ twitter ကေပးထားတဲ့ REST web service ကေန ထုတ္လိုက္လို႕ရတယ္။ ဘယ္ site ကေန ျဖစ္ျဖစ္ ဘယ္ app ကေန ျဖစ္ျဖစ္ ထုတ္ယူလို႕ရပါတယ္။ ဒါေပမယ့္ ကိုယ့္ status တင္ေတာ့မယ္ဆိုရင္ oAuth လိုအပ္ပါတယ္။ oAuth သေဘာတရားက AuthSub သေဘာတရားနဲ႕ ဆင္တူပါတယ္။ SOAP ဆိုတာက ထပ္ရိွေသးတယ္။ SOAP ကေတာ့ အခုခ်ိန္မွာ ေခတ္သိပ္မရိွေတာ့ဘူး။ သံုးတဲ့လူလည္း ေတာ္ေတာ္နည္းသြားျပီ။
API ေတြ web service ေတြေၾကာင့္ ဘာလုပ္လို႕ရလဲဆိုေတာ့ sync ေတြ လုပ္လုိ႕ရလာတယ္။ ဥပမာ Google Calendar ဆိုပါဆုိ႕။ Google Calendar က online ပဲရတယ္။ App တစ္ခုေရးျပီး Google Clanedar API ကို ယူသံုးလိုက္ျပီး data ေတြ အကုန္ဆြဲခ်လိုက္လို႕ရတယ္။ ေနာက္ျပီးေတာ့ APP မွာ ထည့္ထားတာေတြကို Google Calendar API ကေန တင္ေပးလိုက္လုိ႕ရတယ္။ Syn လုပ္ျပီးသြားရင္ Google Calendar မွာရိွတာေတြနဲ႕ ကိုယ့္ app မွာရိွတာေတြနဲ႕ အတူတူျဖစ္သြားျပီ။
ဒီေလာက္ဆို၇င္ web service , web API ေတြအေၾကာင္း နားလည္ျပီလို႕ ထင္ပါတယ္။
ကၽြႏ္ုပ္ညံ့သည္
ကြ်ႏု္ပ္ web service ဆိုသည္မွာကို ျမန္မာမႈမျပဳတတ္ျခင္းမွာ ကၽြႏု္ပ္ညံ့ျခင္းသာ ျဖစ္ေပေတာ့သည္။ Web service ႏွင့္ web api ဘာမွ မကြာေခ်။ သို႕ေသာ္ မတူေခ်။ ထိုအေၾကာင္းကိုလည္း ေသခ်ာေအာင္ မရွင္းျပတတ္ျခင္းမွာလည္း ထပ္ညံ့ျပန္ေလသည္။ oAuth ႏွင့္ AuthSub ကြာသည္။ ဘယ္လိုကြာေၾကာင္း စာႏွင့္ေရးျပီး မရွင္းတတ္ေသးေသာေၾကာင့္ ေသခ်ာမသိေၾကာင္း သိသာလွေပသည္။ ထို႕ေၾကာင့္ REST ကို သံုးဖူးေသာ္လည္း REST ဆိုသည္မွာ အဘယ္နည္းဟု ေမးေသာအခါ အဓိပၸာယ္ျပည့္စံုစြာ မေျဖၾကားႏိုင္ေသာေၾကာင့္ စာေမးပြဲဆိုလွ်င္ ကၽြႏ္ုပ္က်ေလျပီ။
Google ကေတာင္ ညႊန္းဆိုေသာ Zend Framework အား အခုခ်ိန္ထိ မသြင္းတတ္ေသးသည္မွာ ကၽြႏ္ုပ္၏ ေလ့လာမႈ အားနည္းျခင္းကို ေဖာ္ျပေနေလသည္။ REST server အတြက္ code အသင့္ရိွေသာ္လည္း တစ္ခါမွမေရးဖူးသည့္အတြက္ မသိပဲ ေအာ္ေနေသာ္ လူညံ့တစ္ေယာက္ ပမာျဖစ္ေပေတာ့သည္။ ကၽြႏ္ုပ္၏ ညံျ့ပန္ေလသည္။ Zend Library ျဖင့္ Gdata ကို လြယ္ကူစြာ သံုးတတ္ေသာ္လည္း AuthSub မွ AuthSub ျဖစ္ေနေသာ ကၽြႏ္ုပ္စိတ္အား ကၽြႏ္ုပ္ေျပာင္းလဲ ႏိုင္စြမ္းမရိွေသာေၾကာင့္ ကၽြႏ္ုပ္၏ စိတ္အင္အားဟာလည္း ညံလွေပသည္။ AuthSub ႏွင့္ oAuth ၂ ခု အား ၄ ရက္တိုင္တိုင္ ေလ့လာခဲ့ေသာ္လည္း AuthSub ၏ GET ျဖင့္သာ data ယူႏုိင္ခဲ့ျခင္းမွာ ကၽြႏ္ုပ္၏ ညံ့ဖ်င္းမႈေၾကာင့္လို႕ ဆိုႏိုင္ေလသည္။ PHP Library မရိွေသာအခါ Python ကို background ထားကာ အလုပ္လုပ္ျခင္းမွာ ကၽြႏ္ုပ္၏ ညံ့ဖ်င္းမႈပင္။ API အတြက္ PHP Library ကိုယ္တိုင္ လြယ္လင့္တကူ ခ်က္ျခင္းေကာက္မေရးႏိုင္ျခင္းမွာ ကၽြႏ္ုပ္၏ ေလ့လာမႈ စြမ္းအား အေတာ့္ကို အားနည္းသည္ျခင္းကို ေဖာ္ျပရာ ေရာက္ေလ၏။
ကၽြႏ္ုပ္မသိပဲႏွင့္ မ်ားမ်ားေျပာေနမိျပန္သည္။ ထို႕ေၾကာင့္ ကၽြႏ္ုပ္သည္ ကၽြႏ္ုပ္ထင္တာထက္ ပိုညံ့ေၾကာင္း ျပဆိုေနေလသည္။ ထို႕ေၾကာင့္ ကြ်ႏ္ုပ္ အခုအိပ္ျပီ။
စာၾကြင္း :: ပညာတစ္ခုအား ဟပ္ခ်ေလာင္းဆိုတာနဲ႕ ခ်က္ျခင္းမက်လာေၾကာင္းကို ကြ်ႏ္ုပ္မ်က္ဝါးထင္ထင္ ၾကံဳေတြ႕ခဲ့ရေလသည္။
Get Contact List XML from Google Contact with AuthSub
oAuth နဲ႕ AuthSub ၾကားမွာ မူးသြားတာပဲ။ AuthSub နဲ႕ေတာ့ ရျပီ။ oAuth က ေနာက္ေတာ့မွ twitter နဲ႕စမ္းရမယ္။ google က အျပည့္အဝ support မေပးဘူး။ example ေတြက AuthSub ေတြနဲ႕ ၾကီးပဲဆိုေတာ့။ အခု code ေတာင္ မနည္းမနည္းပဲ။ ေနာက္ဆံုးေတာ့ http://www.alexc.me/using-the-google-analytics-api-getting-total-number-of-page-views/74/#step2 အဲဒီကေန ေတြ႕သြားလို႕ အဆင္ေျပသြားတာ။ token ရျပီးရင္ token ထပ္ယူရမွာကို မသိလုိက္တာ ဆုိးသြားတာ။
<?php
function make_api_call($url, $token)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$curlheader[0] = sprintf("Authorization: AuthSub token=\"%s\"/n", $token);
curl_setopt($ch, CURLOPT_HTTPHEADER, $curlheader);
$output = curl_exec($ch);
curl_close($ch);
return $output;
}
function get_session_token($onetimetoken) {
$output = make_api_call("https://www.google.com/accounts/AuthSubSessionToken", $onetimetoken);
if (preg_match("/Token=(.*)/", $output, $matches))
{
$sessiontoken = $matches[1];
} else {
echo "Error authenticating with Google.";
exit;
}
return $sessiontoken;
}
if(isset($_GET['token']))
{
$sessiontoken=get_session_token($_GET['token']);
$accountxml = make_api_call("http://www.google.com/m8/feeds/contacts/yourmail@gmail.com/full", $sessiontoken);
print_r($accountxml);
}
else
{
$next=urlencode("http://www.mysteryzillion.org/gdata/index.php");
$scope=urlencode("http://www.google.com/m8/feeds/contacts/yourmail@gmail.com/full");
?>
<a href="https://www.google.com/accounts/AuthSubRequest?next=<?= $next ?>&scope=<?= $scope ?>&secure=0&session=1">Click here to authenticate through Google.</a>
<?
}
?>
Wordpress , Drupal , Google Apps API
အခုတေလာ Wordpress , Drupal , Google Apps API ေတြနဲ႕ ပဲ ရႈပ္ေနတာပဲ။
Wordpress
wordpress ကေတာ့ ျပႆနာမရိွဘူး။ ဒါေပမယ့္ လုပ္လုိက္ေတာ့ ပိုသေဘာက်ျပီး ပိုလုပ္တတ္သြားတယ္။ wordpress customization တစ္ခုလံုးက template ကစားသြားတာပဲ။လုိအပ္တဲ့ plugins ေတြ ထပ္ေရးေနတာထက္ template ေလး တစ္ခုေဆာက္တာက ပိုျပီး ထိေရာက္ျမန္ဆန္တယ္။ template ေလးကစားသြားလုိက္ရံုနဲ႕ ေတာ္ေတာ္ေလးကို ထိထိေရာက္ေရာက္ ျဖစ္သြားတာပဲ။ wordpress မွာလည္း သူ႕ function ေတြ ေခၚယူျပီးေတာ့ စိတ္ၾကိဳက္ျပဳျပင္လုိ႕ရတာေတာ့ ေတာ္ေတာ္မိုက္တယ္။ function ေတြလည္း ျပည့္ျပည့္စံုစံုေပးထားေတာ့ အဆင္ေျပတယ္။ ဟိုတစ္ခါက MZ မွာ emo ေမးထားဘူးတယ္။ wordpress က page ေနာက္တစ္ခုအတြက္ template ပံုစံေျပာင္းလုိ႕မရဘူးတဲ့။ အဲဒါေတာ့ ဟုတ္ပါတယ္။ ဟုတ္လည္း မဟုတ္ျပန္ဘူး။ ကိုယ့္ဘာသာကိုယ္ template page တစ္ခု ထပ္ျဖည့္လိုက္ျပီး လုိအပ္တဲ့ ပံုစံေျပာင္းလို႕ရတယ္။ ကိုယ္လုိခ်င္တဲ့ file ေတြကိုလည္း include ေတြနဲ႕ ထပ္ျဖည့္လိုက္ျပီး လိုသလို ေျပာင္းလို႕ရပါတယ္။ ေရးရတာလည္း မခက္ပါဘူး။
<?php /* Template Name: Snarfer */ ?>
ဆုိရင္ template တစ္ခုျဖစ္သြားျပီး ကိုယ္လိုသလို page မွာ ေခၚျပီး ေျပာင္းလဲေရးလို႕ရပါတယ္။ codex မွာ အျပည့္အစံု ရိွပါတယ္။ Wordpress ကိုေတာ့ အရင္ ကတည္းက crazy ဆိုေတာ့ wordpress ပိုင္းလုပ္ရတာ သိပ္ခက္ခဲလွတယ္မဟုတ္ဘူး။ အားရင္ေတာ့ plugins ေလးတစ္ခု ထပ္စမ္းေရးၾကည့္အံုးမယ္။ admin panel setting ပါတဲ့ plugins မေရးဘူးေသးဘူးဆိုေတာ့ အဲဒါေလး စမ္းၾကည့္မယ္။ ဘယ္လိုေရးရမလဲဆိုတာ စာေတြ႕ပဲရိွတယ္။ အျခား admin panel setting မပါတာေတြေတာ့ ေရးဘူးတယ္။
Drupal
အရင္ကတည္းက မၾကိဳက္။ အခုေတာ့ ပိုဆိုးေပါ့။ Drupal အစစ္ၾကီးဆိုလည္းထားလုိက္။ အခုက သူက ကၽြန္ေတာ္တို႕wordpress မွာ လုပ္သလို template ကစားထားတာကို ျပန္ျပင္ေနရတာ။ လုပ္သြားတဲ့သူက Drupal ကို ေတာ္ေတာ္ေလး ကၽြမ္းက်င္တယ္။ Admin Panel တစ္ခုလံုးလည္း ေျပာင္းခ်သြားတယ္။ ကိုယ္ပိုင္ module ေတြလည္း ထပ္ျဖည့္သြားေတာ့ ဘယ္ဟာကို ဘယ္မွာ ျပင္ရမွန္းမသိပဲ ျဖစ္ကုန္ေရာ။ online မွာလည္း ရွာမရနဲ႕။ ဒီလိုပဲ စမ္းတဝါးဝါးနဲ႕ လုပ္ရင္း ေတာ္ေတာ္အဆင္ေျပလာတာပဲ။ Drupal လည္း ေတာ္ေတာ္ေကာင္းတယ္။ သူ႕ကို ကၽြမ္းက်င္ရင္ ေတာ္ေတာ္ေလးကို လုပ္လို႕ရတာပဲ။ စိတ္ၾကိဳက္ ဖန္တီးလုိ႕ရတယ္။ သူလည္း wordpress လိုမ်ဳိးပဲ။ သူက wordpress ထက္သာတဲ့ အပိုင္းေတြ အမ်ားၾကီးပဲ။ သူက ေကာင္းေပမယ့္ ရႈပ္လြန္းတယ္။ function ေတြ မ်ားေတာ့ GUI လည္း ရႈပ္ကုန္ေကာ။ သူ႕ရဲ႕ သေဘာတရားနားမလည္လို႕လား မသိဘူး။ သူက နည္းနည္းရႈပ္ေထြးတယ္။ CMS သေဘာတရားကို အျပည့္အဝသံုးထားျပီး block ေတြဘာေတြနဲ႕ စနစ္တက်ေတာ့ ရိွတယ္။ wordpress က CMS လံုးလံုးကို မဟုတ္ေပမယ့္ လုပ္ၾကံျပီး အျမင္မွာ CMS ထင္ေအာင္ ေတာ့ ဖန္တီးႏိုင္တယ္ေလ။
Google Apps API
ေခါင္းအစားဆံုး အပိုင္းပဲ။ Zend အတြက္ပဲ support ရိွတယ္။ Zend framework မသံုးပဲ Zend Library အျပည့္အဝ သံုးလိုက္ရင္ေတာ့ ရတယ္။ ဒါေပမယ့္ Domain share contact က .NET အတြက္ရိွတယ္။ python အတြက္ရိွတယ္။ PHP Native အတြက္ မရိွျပန္ဘူး။ Protocol သံုးရင္ေတာ့ အေကာင္းဆံုးဆိုျပီး သံုးဖုိ႕လုပ္ျပန္ေကာ။ oAuth , AuthSub ေတြကေတာ့ PHP Native နဲ႕ အဆင္မေျပျပန္ဘူး။ oAuth က သီးသန္႕ ထပ္သြင္းရအံုးမယ္။ oAuth သြင္းဖို႕အတြက္ကလည္း အထက္ကို report လုပ္ရအံုးမယ္။ ဒါေတာင္ စမ္းဖုိ႕။ အခ်ိန္ကလည္း သိပ္မရေတာ့ ေနာက္ဆံုး python ကို background ထားျပီး PHP နဲ႕ front end လုပ္ပလိုက္တယ္။ Domain share contact ကလည္း 24 hours ၾကာတယ္။ contact ထဲကို ဝင္ဖုိ႕ အဲေလာက္ေတာင္ ေစာင့္ရတယ္။ လူေတြကလည္း သိတဲ့အတုိင္း အခုထည့္ အခုျမင္လုိခ်င္ၾကတာ။ ဒါေပမယ့္ domain share contact က မရေတာ့လည္း ဘယ္တတ္ႏိုင္မလဲ။ export ကလည္း တစ္ခါတစ္ေလ မထြက္။
Google Map API လုပ္ထားတာေတာ္ေတာ္ေကာင္းသေလာက္ google apps api လုပ္ထားတာကို သိပ္သေဘာမက်ဘူး။ လူအသံုးမ်ားတာကို support မလုပ္ပဲ အဆင့္ေတြ အမ်ားၾကီးနဲ႕ ရႈပ္ေနတယ္လုိ႕ ထင္တာပဲ။ facebook connect လိုမ်ဳိး api ဆိုလည္း ေတာ္ေတာ္ေလးေကာင္းတယ္။ ရိုးတယ္။ ရွင္းတယ္။ လြယ္တယ္။ Google Apps Engine ကေတာ့ java နဲ႕ python ပဲ။ Google Apps အဖြဲ႕တစ္ခုလံုးက အဓိက python ပဲ သံုးတယ္ထင္တယ္။ PHP ပိုင္းကို သီးသန္႕ library မထုတ္ေပးဘူး။ Zend နဲ႕ တြဲထုတ္ေပးေတာ့ ဆင္ဖိုးထက္ ခြ်န္းဖိုးက ပိုဆိုးျဖစ္ေနတာေပါ့။ လုပ္ခ်င္တာက ေသးေသးေလး။ အဲဒီအတြက္ Zend Framework ၾကီးပါ upload တင္ရတာ အလကား အလုပ္ရႈပ္တာပဲ။
ဘာပဲေျပာေျပာ oAuth, AuthSub ေတြေတာ့ ဖတ္ျဖစ္လုိက္တယ္။ လက္ေတြ႕ေတာ့ အခုထက္ထိ စမ္းတာ အဆင္မေျပေသးဘူး။
PHP Gtalk Bot လုပ္မလား
လြယ္ခ်က္ကေတာ့ ကမ္းကုန္ပဲ။ http://www.imified.com/ ကို register လုပ္။ bot create လုပ္။ ျပီးရင္ PHP code တစ္ခုေရး။
<?php echo $_REQUEST['msg']; ?>
အဲဒါဆိုရင္ user ကရိုက္လုိက္တဲ့ဟာကို ရမယ္။ အဲဒါကို တေနရာမွာ host ထိုင္။ bot ရဲ႕ address ကို အဲဒါေပးလိုက္။ ျပီးရင္ gmail username နဲ႕ password ထည့္။ active လုပ္။ ျပီးျပီ။ စိတ္ပ်က္ဖို႕ေကာင္းေလာက္ေအာင္ လြယ္တာ။
External Link :
http://www.labnol.org/internet/tutorial-create-bot-for-gtalk-yahoo-messenger/4354/
Fixed For IE not work onclick
အခု Project တစ္ခုကို ၃ ရက္ေလာက္နဲ့ အျပီးေရးလိုက္ရတယ္။ Google Map API ေလး သံုးျပီး ေရးရတာ။ google api ကေတာ့ အံဩဖို႔ေကာင္းေလာက္ေအာင္ documentation ျပည့္စံုတာပဲ။ အကုန္လံုးကို ျပည့္ျပည့္စံုစံုနဲ့လုပ္ထားေပးတယ္။ ကြ်န္ေတာ္က အဲလိုမ်ိဳး Open Technology ေလးလုပ္ခ်င္တယ္။ ကြ်န္ေတာ္ လုပ္ထားတဲ့ code ေတြအေၾကာင္းကို ျပည့္ျပည့္စံုစံုေလး ရွင္းျပခ်င္တယ္။ ခက္တာက အခ်ိန္မရိွဘူး ျဖစ္ေနတယ္
။ အဲမွာ ဘာတစ္ခု သြားေတြကလည္းဆိုေတာ့ IE မွာ onclick မရဘူးဗ်။
Continue Reading »







