[wizs] 目前排程拍賣運作的模式

看板mud_sanc (Sanctuary - 聖殿)作者 (揮淚斬馬雲)時間7年前 (2018/01/21 01:20), 7年前編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
明天改完後這東西將會進行實測,wiz 們可先瞭解一下這東西的運作。 腳本檔 腳本檔統一放在 /open/cmds/blarket/ 目錄下,檔名不能用中文、不 能有底線。 檔案內容很簡單,每一行都是 欲拍賣物品的絕對路徑+檔名(不含.c) 結標模式(-end 及 -end2 兩種) 例如 /d/auc/blarket/ob01 -end <= 價高者得 /d/auc/blarket/ob01 -end2 <= 每個競標者都有機會拿到一份(預設拍賣100份) 另外,當腳本檔內某一行為 -- 時,就代表只讀到該行就結束。 寫好腳本檔後怎麼測試 很簡單,指令如下 cd /cmds/std call _blarket;times_check;"blarket_腳本檔名";"/cmds/std/_blarket";({}) 例如腳本檔名叫 test (/open/cmds/blarket/test) call _blarket;times_check;"blarket_test";"/cmds/std/_blarket";({}) 它就會跑了。 萬一發現執行有問題怎麼強制中止? 很簡單,指令如下 update /open/cmds/times_check <= 中止 times_check 的呼叫 blarket -halt <= 中止拍賣的進行 這樣就行了。通常 update times_check 就可以停了,多執行一個 blarket -halt 則是為了清除拍賣資料。 實際讓腳本檔依預訂的時間執行要怎麼設定 很簡單,指令只有一個: blarket -crontab 再來就依顯示內容做相對映的輸入即可,例如腳本名稱假設叫 test > blarket -crontab 1.新增排程 2.刪除排程 3.離開(按 q 或 quit 也可) 請輸入選項: 1 請輸入欲設定的排程拍賣主題(全英文, 例如 newyear): test 請輸入預定執行時間(mm/dd hh:mm): 02/15 21:00 腳本名稱: test 預定執行時間: Thu Feb 15 21:00:45 2018 資料設定 ok. 設定好之後再執行一次 blarket -crontab 就會看到設定資料 > blarket -crontab 腳本名稱: test 預定執行時間: Thu Feb 15 21:00:45 2018 1.新增排程 2.刪除排程 3.離開(按 q 或 quit 也可) 一個腳本只能被設定為一個排程,這個意思就是,如果你想在不同 的時間拍賣相同的東西,就應該給兩個腳本(然後它們的內容可以 相同),比方一個叫 test1,一個叫 test2。 blarket -auc 新增新的用法 目前可以這樣子下指令: blarket -auc /d/auc/blarket/ob01 blarket -auc /d/auc/blarket/ob01 x 100 它會將這東西 clone 出來後,移到你的身上,再進行拍賣。以前 則是你要先將 /d/auc/blarket/ob01 出來再去 blarket -auc 它 以上,這是磨了很多天之後才確定的做法,它已經非常簡單且單純 了,希望會用到 blarket 的 wiz 都知道怎麼使用,未來其它例行 排程的東西我也都會參照 blarket 的寫法去弄,並要求 wiz 們也 必須 follow,亦即: 1.需自寫 times_check 函數且做必要修改 2.不允許在自己寫的 times_check 函數內使用 set_times_check 須一律使用 set_times_no_save,且需盡量使用內迴做法。 3.只要遵守前兩項原則,times_check 內要怎麼寫都是彈性的。 以上我日後也將撰寫非常簡單的範例來呈現,我會寫在區域房間內 ,並寫兩條 crontab,一條是讓這個房間在預訂的時間開啟某個設 定,一條是讓這個房間在預訂的時間關閉某個設定。春節會用到這 個,例如 777 賭場。 Laechan -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.26.178.184 ※ 文章網址: https://www.ptt.cc/bbs/mud_sanc/M.1516468811.A.C17.html ※ 編輯: laechan (122.117.106.224), 01/24/2018 02:55:48
文章代碼(AID): #1QOtfBmN (mud_sanc)
文章代碼(AID): #1QOtfBmN (mud_sanc)