StriveJobs
Job management with commands. Without Laravel queue facility., (*1)
But now making. So please wait a while., (*2)
ã³ãã³ããšAPIã«ãããžã§ã管çLaravel4ããã±ãŒãžãä»äºãæéçã«åæ£ãããŠå®è¡ããç®çã®ãžã§ã管çã·ã¹ãã ã§ãã, (*3)
åªä»ãäœæäžã§ããGitHubã«èªåã§äœ¿çšããããã«çœ®ããŠããŸããã¢ã«ãã¡çã§ãã, (*4)
Overview
ïŒïŒãžã§ãã¯ã©ã¹ã®ç»é², (*5)
StriveJobs\StriveJobsInterfaceãå®è£
ããStriveJobs\BaseJobClassãæ¡åŒµããã¯ã©ã¹ãäœæããã, (*6)
<?php
use StriveJobs\StriveJobsInterface;
use StriveJobs\BaseJobClass;
class BulkMail extends BaseJobClass implements StriveJobsInterface
{
public function getDescription()
{
return 'ãã®ãžã§ãã¯ã©ã¹ã®èª¬æ'; // listã³ãã³ãã§æšç€º
}
public function getName()
{
return 'BulkMail'; // ãžã§ãã®åå
}
public function doRegistered( $data ) // do+ã¹ããŒã¿ã¹ã®ã¡ãœãããåŒã³åºããã
{
$this->message = 'ããã§ãšãïŒ'; // 衚瀺ã¡ãã»ãŒãžã®èšå®
$this->setTerminated(); // set+ã¹ããŒã¿ã¹ã§ãã¹ããŒã¿ã¹å€æŽ
return true; // åŒã³åºãå
ã«ãå®è¡ã®æåãéç¥
}
public function doTerminated( $data ) // ã¹ããŒã¿ã¹terminatedã¯ãžã§ãçµäº
{
$this->message = 'æ®å¿µïŒåè
¹ïŒ';
$this->harakiri(); // ãã®å®è¡ãžã§ããåé€
return true;
}
public function doDefault( $data ) // ã¡ãœããæªå®çŸ©ã®å Žåã¯ãããåŒã³åºããã
{
$this->message = 'æ®å¿µïŒ'; // åŒã³åºãå
ã«ã¡ãã»ãŒãžãæž¡ã
return false; // åŒã³åºãå
ã«ãå®è¡ã®å€±æãéç¥
}
}
ïŒïŒãžã§ãã¯ã©ã¹ã®ã€ã³ã¹ã¿ã³ã¹ãç»é²ããã, (*7)
SJ::registerJobClass( array( new BulkMail ) );
SJ::registerJobClass( array( new MonthlyJob ) );
SJ::registerJobClass( array( new WeeklyJob ) );
...
ïŒïŒã³ãã³ããšAPIã䜿çšã§ããããã«ãªãã, (*8)
php artisan sjob:list # ç»é²ãããžã§ãã¯ã©ã¹è¡šç€º
php artisan sjob:register BulkMail --comment "ïŒæïŒïŒæ¥éä¿¡" # æ°ãžã§ãç»é²
php artisan sjob:do 7 # ç»é²æžã¿ãžã§ãå®è¡
ïŒïŒå€åããžã§ãã®èµ·åã¯cronãªã©ã®ã³ãã³ããã䜿çšããã, (*9)
php /home/my/project/artisan sjob:auto # äžçªå€ãterminated以å€ã®ãžã§ããäžã€å®è¡
ïŒïŒã³ãã³ããšåãããã«APIãããæäœã§ããã®ã§ãWebããŒãžããã管çå¯èœã, (*10)
ã€ã³ã¹ããŒã«
ïŒïŒ`require "hirokws/strivejobs"ããããã¯composer.jsonã«ä»¥äžã®è¡ãç»é²ããupdateãå®è¡ã, (*11)
"register": {
"hirokws/strivejobs" : "dev-master"
}
ïŒïŒapp/config/app.phpãžãµãŒãã¹ãããã€ããŒãç»é²ããã, (*12)
'StriveJobs\StriveJobsServiceProvider',
ïŒïŒAPIã䜿çšããå Žåã¯ããšã€ãªã¢ã¹ãç»é²ãããšäŸ¿å©ãïŒç»é²ãããšããApp::make('StriveJobs\\StriveJobs')
ã§ã€ã³ã¹ã¿ã³ã¹ãååŸå¯èœïŒ, (*13)
'SJ' => 'StriveJobs\StriveJobsFacade',
ïŒïŒãã€ã°ã¬ãŒã·ã§ã³ãå®è¡ãããäºåã«ããŒã¿ããŒã¹ã®èšå®ãå¿
èŠã, (*14)
php artisan migrate --package hirokws/strivejobs
ïŒïŒèšå®ãã¡ã€ã«ãããŒã«ã«ã«ã³ããŒãããïŒapp/config/packages/hirokws/stirivejobsã«config.phpãäœæããããïŒ, (*15)
php artisan config:package hirokws/strivejobs
ïŒïŒå¿
èŠã«å¿ããèšå®ãã¡ã€ã«ã§ã³ãã³ãåããµãã³ãã³ãåã倿Žããã, (*16)
ïŒïŒããŒãã«ãtruncateããresetã³ãã³ãã®ãã¹ã¯ãŒãã®ããã·ã¥ãèšå®ãããããã·ã¥å€ã¯resetã³ãã³ãã§çæãããïŒä»¥äžã¯ããã©ã«ãã®ã³ãã³ãåãsjobã®å ŽåïŒ, (*17)
php artisan sjob:reset -?
StriveJobsãšã¯ïŒ
VPSãå«ãããµãŒããŒãèªåã§ç«ãŠãå Žåããããã¯ïŒPHPããèŠãŠïŒå€éšã®ãã¥ãŒãSNSãµãŒãã¹ãªã©ã®ãªãœãŒã¹ãè±å¯ã«å©çšããå Žåã§ããã°ããã®æ§ãªãžã§ã管çã¯å¿
èŠãªãã§ããããïŒãããããããç¥ããŸããããïŒ, (*18)
Webäžã®ãµãŒãã¹ãå©çšããã«ããŠããç¡æäœ¿çšæ ã«è»œãåãŸã£ãŠããŸãçšåºŠã®ãå°ããªãµãŒãã¹ãåæã«ïŒã€æãã€ããŸãããå¿
èŠãªæ©èœã®äžéšãããããå€éšãµãŒãã¹ã«äŸåããã«ããŠããåŠçãæéçã«åæ£ããããããèªåèµ·åãããžã§ãã®ç®¡çãå¿
èŠã«ãªããŸãããã©ãããªããããã±ãŒãžã§äœæããïŒã·ã¹ãã å
±éã§å©çšããããšäœæãå§ããã®ãããã®StriveJobsã§ãã, (*19)
ããã±ãŒãžåã¯ãã®æåã ã£ã人ãšäŒŒããããªé¿ãã®èšèãéžã³ãŸããã"strive jobs"ã§ãä»äºãæ±ãããããã¯ä»äºããããšåªåããããšããæå³ã§ããä»äºãšæ ŒéããŠããæ¥æ¬äººã®çŸç¶ãã»ã®ãã«ç¹ã蟌ãã ååã§ããã¡ãªã¿ã«ç§ã¯LinuxãŠãŒã¶ãŒã§ãã, (*20)
What for?
äž»ãªç®çã¯ãã«ã¯ã¡ãŒã«é
ä¿¡ãªã©ãå
±æãµãŒããŒããè¡ãããã«äœæããŸããããµãŒããŒã®ãªãœãŒã¹ãé£ç¶ããŠäœ¿çšããå¯èœæ§ã®ããäœæ¥ãæéçã«åå²ããŠè¡ãããã®è£å©ããã±ãŒãžã§ãã
å
±æãµãŒããŒã§ã¯ããªãœãŒã¹ã®çžãããããŸããããšãPHPã®CLIã®å®è¡æéãç¡å¶éã§ããããšãé£ç¶ããäœæ¥ããã©ãã©ãšç¶ããŠãããšãã©ããã§å¶éã«åŒã£ããã£ãŠããŸããŸããéåžžã¯CPUã®äœ¿çšïŒ
ã§ãã£ãããããã»ã¹ã®å®è¡æéã§åŒã£ããããŸãããã®ãããå®å
šåå
ã§åäœããã工倫ãå¿
èŠã§ãã, (*21)
ãããŠæè¿ã¯ãå
±æãµãŒããŒå°çšLinuxãšéæã£ãOSãååšããä»®æ³åã®æè¡ãå¿çšããŠãåãŠãŒã¶ãŒã®å©çšè³æºã管çããŠããŸããã€ãŸãCPUã®å²ãåœãŠåæ°ã䜿çšã¡ã¢ãªãå¶éããŠããããã§ããä»ã®ãŠãŒã¶ãŒããã®åœ±é¿ãåããªããããå®å
šãã§ãããšã宣äŒãããŸããããããCPUã®å²ãåœãŠãäžã€ã§ãããã«é·æéè² è·ãããããè£ãã®ä»äºããããŠããŸãã°ã衚ã®ãµã€ãã¬ã¹ãã³ã¹ã«å€å°ãªããšã圱é¿ãçãŸããŠããŸããŸãã, (*22)
åŠçãæéçã«åããã«ã¯ããã®åŠçåäœã管çããªããŠã¯ãªããŸãããïŒåããªããŠããæéããããåŠçãå¶éã®ããç°å¢ã§é£ç¶åäœããããªããäœããã®ç®¡çæ¹æ³ãå¿
èŠã«ãªãã§ããããïŒäœããã®åå ã§å®è¡ãéäžã§åæ¢ããããç°åžžçµäºããå Žåã«ã¯ããã®ãªã«ããªãŒåŠçãå¿
èŠã«ãªããŸãã, (*23)
äœãã«ã·ãªã¢ã¹ã§ããã°ããã®ã·ã¹ãã å°çšã«çé¢ç®ã«èšèšããäœãããå¿
èŠããããŸããããããå
±æãµãŒããŒäžã§åäœãããããã«ã¯ã¡ãŒã«ã®éä¿¡çšåºŠã§ããã°ãåŠçåäœæ¯ã«ç¶æ
管çããããã«å¿ããŠåŠçãå®è¡ããçšåºŠã®åŠçãã§ããã°ãäºè¶³ããŸãã, (*24)
ãŸãã管çããããã®ã³ãã³ãããŒã«ãæ¯åäœãããã®ã銬鹿ãããã§ããããã®ããã«ãã³ãã³ã矀ãéçºããŸããã, (*25)
ããããèš³ã§ãPHPããã°ã©ã ã®ã²ãšãããŸãã®åŠçåäœããžã§ããšããŠç®¡çããããã±ãŒãžã§ãã, (*26)
ãžã§ãã¯ã©ã¹
ãžã§ãã¯ãžã§ãã¯ã©ã¹ãšããŠèšè¿°ããŸããStriveJobs\StriveJobsInterfaceãå®è£
ããStriveJobs\BaseJobClassãæ¡åŒµããŠãã ããã, (*27)
ãžã§ãã¯ã©ã¹ã®ã€ã³ã¹ã¿ã³ã¹ããµãŒãã¹ãããã€ããŒãapp/start/global.phpãªã©ã§ãç»é²ããŠãã ãããAPIã¯ã©ã¹ã®StriveJobs\StriveJobsãSJã®ãšã€ãªã¢ã¹ã§ç»é²æžã¿ã®å ŽåãBulkMailãžã§ãã¯ã©ã¹ãç»é²ããã«ã¯ã次ã®åœ¢åŒã«ãªããŸãã, (*28)
SJ::registerJobClass( array( new BulkMail ) );
ãããã¯ãã€ã³ã¹ã¿ã³ã¹ãååŸããç»é²ããæ¹æ³ãåããŸãã, (*29)
App::make('StriveJobs\\StriveJobs')->registerJobClass( array( new BulkMail ) );
APIãåŒã³åºãããregisterã³ãã³ãã§ãžã§ããç»é²ããŸãããžã§ãã«ã¯ã©ã®å®è¡æ®µéã«ãããã衚ãã¹ããŒã¿ã¹ããããç»é²æã¯registered
ã«ãªããŸãã, (*30)
ãžã§ãã®å®äºç¶æ
ã¯terminated
ã§è¡šããŸãããã以å€ã®ã¹ããŒã¿ã¹ã¯ã奜ãã«äœæã§ããŸãã, (*31)
ãžã§ãã«ïŒéåžžã¯cronããïŒèµ·åãããããšããžã§ãã¯ã©ã¹å
ã®'do'+'ã¹ããŒã¿ã¹'ã¡ãœãããå®è¡ãããŸãã該åœããã¡ãœãããã¯ã©ã¹ã«ååšããªãå Žåã'doDefault'ã¡ãœãããåŒã³åºãããŸãã, (*32)
ãžã§ãã¯ã©ã¹å
ã§äœ¿çšã§ããããããã£ãšã¡ãœããã¯ãåŸè¿°ã®ãStriveJobs\BaseJobClassããã芧ãã ããã, (*33)
ã¹ããŒã¿ã¹
ã¹ããŒã¿ã¹ã¯èªåã§ã¯å€åããŸããããžã§ãã¯ã©ã¹å
ã®åŒã³åºãã¡ãœããå
ã§å€æŽããŸãã, (*34)
ã¹ããŒã¿ã¹ã倿ŽãããŠãã察å¿ããã¡ãœããã¯èªåçã«åŒã³åºãããŸãããæ¬¡åã®ãžã§ããèµ·åãããæã«ããã®æç¹ã®ã¹ããŒã¿ã¹ã«å¯Ÿå¿ãããžã§ããåŒã³åºãããŸãã, (*35)
泚æ
StriveJobsã¯ããžã§ãã®æä»å¶åŸ¡ãè¡ããŸãããã€ãŸããç°ãªã£ãæ¹æ³ã§èµ·åãããããååã®ãžã§ããçµäºããŠããªãã®ã«ãèµ·åãããããããããããšã§ãåããžã§ããåæã«è€æ°ããã»ã¹ã§èµ·åãããå¯èœæ§ããããŸããå¿
èŠã§ããã°ããžã§ãå
ã§å¶åŸ¡ããŠãã ãããïŒãããã¯ä»¥äžã®ããã«éçšã§ãããªãé¿ããŸããããïŒ, (*36)
æšå®ãããäœ¿çšæ¹æ³ïŒå©çšã·ããªãªïŒ
- ãžã§ãã®ç»é²ã¯WebããAPIãéããŠç»é²ããããã³ãã³ãã§è¡ãããããã¯cronã«ããã宿çã«ç»é²ãããã
- ãžã§ãã®èµ·åã¯ç®¡çè
äžäººãWebãããã¯ã³ãã³ãããèµ·åããããcronãã宿çã«èªåçã«èµ·åãããªã©ãäžç®æããã®ã¿è¡ãã
- äžåã®autoã³ãã³ãã§ã¯ãèµ·åãããžã§ãã¯äžã€ã«æå®ãããïŒããã©ã«ãïŒ
- ãžã§ãå
ã§ã¯å®è¡æéããã§ãã¯ããé·ããªãéããªãããã«å¶åŸ¡ããã
- changeã³ãã³ãã¯ãã¹ãæãããã³éåžžçšãååã¯ãžã§ãå
éšã§ã¹ããŒã¿ã¹ã倿Žããã
éçšã«ããåžžã«ïŒãžã§ãã ããèµ°ãããã«ããããšã§ããžã§ãã®æä»å¶åŸ¡ãé¿ããããšãã§ããŸããïŒïŒïŒïŒïŒ, (*37)
ã³ãã³ã
Laravel4ã§ã¯ãã³ãã³ãã®ããŒã¹ãšããŠSymfonyã©ã€ãã©ãªãŒãå©çšããŠãããããã³ãã³ãåãšãµãã³ãã³ãåãçµã¿åãããããšãã§ããŸãã, (*38)
ããã©ã«ãã®ã³ãã³ãåã¯sjobã§ããã³ãã³ãåããµãã³ãã³ãåå
±ã«ãèšå®ãã¡ã€ã«ã§å€æŽå¯èœã§ãã, (*39)
--quiet(-q)ãªãã·ã§ã³ã§åºåãæå¶ã§ããŸããcronããèµ·åããå Žåãªã©ãåºåãé¿ãããå Žåã«äŸ¿å©ã§ããæžããµãã³ãã³ãã§äœ¿çšã§ãããªãã·ã§ã³ã¯--helpã§ç¢ºèªã§ããŸãã, (*40)
以äžã®èª¬æã¯ãµãã³ãã³ãã®èª¬æãšãªããŸããååã¯ããã©ã«ãå€ã§èª¬æããŠããŸãã, (*41)
registerïŒç»é²ïŒãµãã³ãã³ã
ãžã§ããç»é²ããŸãã, (*42)
ãµã³ãã«, (*43)
php artisan sjob:register BulkMail
BulkMailã®ãžã§ãã¯ã©ã¹åããžã§ããšããŠç»é²ããŸããã³ã¡ã³ãã»åŒæ°ã¯ç©ºã«ãªããŸããèµ·åééã¯ããã©ã«ãã®ïŒåã§ãã, (*44)
php artisan sjob:register BulkMail 101 200 -c "ïŒïŒæïŒïŒæ¥èµ·åïŒåç®" - i 60
ã³ã¡ã³ããšåŒæ°ãæå®ãããµã³ãã«ã§ããèµ·åééã60åã«èšå®ããŠããŸãã, (*45)
ã³ãã³ã, (*46)
php artisan sjob:register [-c|--comment[="..."]] [-i|--interval[="..."]] job [argument1] [argument2] [argument3] [argument4] [argument5]
åŒæ°ãšãªãã·ã§ã³, (*47)
job ãžã§ãã¯ã©ã¹åããžã§ãã¯ã©ã¹ã®getNameã§è¿ãããå€ãæå®ããã
argument1 åŒæ°ïŒä»»æïŒ
argument2 åŒæ°ïŒä»»æïŒ
argument3 åŒæ°ïŒä»»æïŒ
argument4 åŒæ°ïŒä»»æïŒ
argument5 åŒæ°ïŒä»»æïŒ
--comment(-c) ã³ã¡ã³ãïŒä»»æïŒ
--interval(-i) èµ·åééåæ°ïŒä»»æãããã©ã«ã0åïŒ, (*48)
説æ, (*49)
èµ·åããããžã§ãã¯ã©ã¹ã衚ãååãæå®ãããžã§ããç»é²ããŸããã¹ããŒã¿ã¹ã¯'registered'ã«ãªããŸããç»é²åŸããã®IDã衚瀺ãããŸãã, (*50)
åŒæ°ã®argument1ã5ã¯ä»¥äžã®åœ¢åŒã§ããžã§ãã¯ã©ã¹å
ã®ã¹ããŒã¿ã¹ã«å¯Ÿå¿ãããžã§ãã¡ãœããã«æž¡ãããŸãã, (*51)
array(
'arg1'=>'argument1ã®åŒæ°',
'arg2'=>'argument1ã®åŒæ°',
...
'arg5'=>'argument5ã®åŒæ°',
);
ãã®ã·ã¹ãã ã«ã¯èªåã§èµ·åãããããããªæ©èœã¯ä»ããŠããŸããã, (*52)
èµ·åééã¯autoã³ãã³ãããèµ·åããããããå Žåã«ãæå®ããåæ°ãçµéããŠããããã§ãã¯ããæéãéããŠããå Žåã®ã¿èµ·åãããŸãã, (*53)
ããã©ã«ãã®ïŒåã®å Žåãcronãªã©ã§èµ·åãããããã³ãç¡æ¡ä»¶ã§èµ·åããŸããå
±æãµãŒããŒã®å Žåãcronã®èµ·åééã«ãå¶éã®ããå Žåãããã®ã§ãããçæ³çã«ã¯æ¯åèµ·åã«èšå®ãããžã§ãã®èµ·åééã¯ãç»é²æã«ãã®ã³ãã³ãã§èšå®ããæ¹æ³ãåããŸãã, (*54)
showïŒãžã§ã衚瀺ïŒãµãã³ãã³ã
ç»é²æžã¿ã®ãžã§ãã衚瀺ããŸãã, (*55)
ãµã³ãã«, (*56)
php artisan sjob:show
å
šä»¶ãææ°é ã«è¡šç€ºããŸãã, (*57)
php artisan sjob:show terminated --oldest -take 10
ã¹ããŒã¿ã¹ãterminated
ã®ãžã§ããææ°é ã«ïŒïŒä»¶è¡šç€ºããŸãã, (*58)
ã³ãã³ã, (*59)
php artisan sjob:show [-t|--take[="..."]] [-o|--oldest] [status]
åŒæ°ãšãªãã·ã§ã³
status æå®ãããã¹ããŒã¿ã¹ã®ãžã§ãã®ã¿è¡šç€ºããŸããïŒä»»æïŒ
--take (-t) æå®ãããä»¶æ°è¡šç€ºããŸããïŒä»»æïŒ
--oldest (-o) å€ããžã§ãã®é çªã«è¡šç€ºããŸããïŒä»»æïŒ, (*60)
説æ, (*61)
ç»é²æžã¿ã®ãžã§ãã衚瀺ããŸããããã©ã«ãã¯ææ°é ã§å
šä»¶è¡šç€ºããŸãã, (*62)
doïŒãžã§ãèµ·åïŒãµãã³ãã³ã
ç»é²æžã¿ã®ãžã§ããèµ·åããŸãã, (*63)
ãµã³ãã«, (*64)
php artisan sjob:do 51
ãžã§ãIDã51çªã®ãžã§ããèµ·åããŸãã, (*65)
ã³ãã³ã, (*66)
php artisan sjob:do id, (*67)
åŒæ°ãšãªãã·ã§ã³, (*68)
id å®è¡ãããžã§ãã®IDãäžã€æå®ããŸãã, (*69)
説æ, (*70)
æå®ãããIDã®ãžã§ããèµ·åããŸãã, (*71)
ãã®ã³ãã³ãã«ããèµ·åã§ã¯ãç»é²ææå®ããèµ·åééåæ°ã¯ç¡èŠãããå¿
ãèµ·åããããããŸãã, (*72)
ãã ããæ¬¡åã®èµ·åæéã¯ãèµ·åééåæ°é²ããããŸãã, (*73)
autoïŒèªåèµ·åïŒãµãã³ãã³ã
ã«ãŒã«ã«åŸããç»é²æžã¿ã®ãžã§ããèµ·åããŸãã, (*74)
ãµã³ãã«, (*75)
**ã³ãã³ã**
**åŒæ°ãšãªãã·ã§ã³**
**説æ**
##### changeïŒã¹ããŒã¿ã¹å€æŽïŒãµãã³ãã³ã
ã¹ããŒã¿ã¹ã倿ŽããŸã
**ãµã³ãã«**
ã³ãã³ã
åŒæ°ãšãªãã·ã§ã³
説æ, (*76)
sweepïŒçµäºãžã§ãåé€ïŒãµãã³ãã³ã
çµäºç¶æ
ã®ãžã§ããåé€ããŸãã, (*77)
ãµã³ãã«, (*78)
**ã³ãã³ã**
**åŒæ°ãšãªãã·ã§ã³**
**説æ**
##### resetïŒç®¡çããŒãã«ãªã»ããïŒãµãã³ãã³ã
ãžã§ã管çããŒãã«ããªã»ããããŸãã
**ãµã³ãã«**
ã³ãã³ã
åŒæ°ãšãªãã·ã§ã³
説æ, (*79)
listïŒç»é²ãžã§ãã¯ã©ã¹è¡šç€ºïŒãµãã³ãã³ã
ç»é²æžã¿ãžã§ãã¯ã©ã¹ãäžèŠ§è¡šç€ºããŸãã, (*80)
ãµã³ãã«, (*81)
**ã³ãã³ã**
**åŒæ°ãšãªãã·ã§ã³**
**説æ**
#### API
StriveJobs\StriveJobsã¯ã©ã¹ãã芧ãã ããã
#### StriveJobs\BaseJobClass
##### ããããã£
* striveJobs ïŒ StriveJobs\StriveJobsã¯ã©ã¹ã®ã€ã³ã¹ã¿ã³ã¹
* jobId ïŒ ãžã§ãã®ç»é²ID
* status ïŒ ãžã§ãã®ã¹ããŒã¿ã¹
* comment ïŒ ãžã§ãã®ã³ã¡ã³ã
##### setã¹ããŒã¿ã¹å
ã¹ããŒã¿ã¹ã倿ŽããŸãã
setã¹ããŒã¿ã¹å()
ã¡ãœããåã®setã«ç¶ãååã«ãã¹ããŒã¿ã¹ã倿ŽããŸãã, (*82)
äŸãã°ãsetPhase1
ã§ããã°ãã¹ããŒã¿ã¹ã¯phase1
ã«ãªããŸãã, (*83)
ã¹ããŒã¿ã¹ã倿ŽããŠããèªåçã«ãdoã¹ããŒã¿ã¹ãã¡ãœããã¯åŒã³åºãããŸãããæ¬¡åã®èµ·åæã«åŒã³åºãããããšã«ãªããŸãããããã¯å¿
èŠã§ããã°ãæåã§åŒã³åºããŠãã ããã, (*84)
putArguments( $data )
doã¹ããŒã¿ã¹ã¡ãœãããèªåçã«åŒã³åºãããå Žåã«æž¡ãããåŒæ°ãä¿åããŸãã, (*85)
åŒæ°ã¯é
åã§ãã, (*86)
åŒæ°ããã®ã¡ãœããã§å€æŽããªãéããèªåçã«å
ã®é
åãæž¡ããç¶ããŸãã, (*87)
ã³ã¡ã³ããååŸããŸãã, (*88)
ã³ã¡ã³ããä¿åããŸããã³ã¡ã³ãã¯showã³ãã³ãã§æšç€ºãããŸãã, (*89)
removeMe()
èµ·åããŠãããžã§ãã®ç»é²ãåé€ããŸãã, (*90)
killMe()ãšharakiri()ã¯ããã®ã¡ãœããã®å¥åã§ãã, (*91)
setMessage( $message )
ã¡ãã»ãŒãžãä¿åããŸãããã®ã¡ãã»ãŒãžã¯ã³ãã³ãããèµ·åãããå Žåã¯ç«¯æ«ã§è¡šç€ºãããŸããAPIããèµ·åãããŠããå Žåã¯ãAPIã€ã³ã¹ã¿ã³ã¹ã®lastMessageããããã£ãšããŠã»ãããããŸãã, (*92)