聊天機器人(Discord 與 Telegram)
從 Discord 或 Telegram 操控 Lords Bot、接收帳號通知,還能在聊天中使用你的聯盟銀行。
聊天機器人會把 Lords Bot 連接到你自己的 Discord 或 Telegram 機器人。在聊天中,你可以查看哪些帳號在線、啟動和停止帳號、取得日誌和螢幕截圖,以及接收存取金鑰過期之類的通知。聯盟成員也可以在聊天中使用 聯盟銀行。
運作方式
- 建立你自己的機器人:在 Discord 或 Telegram 上建立,並複製它的 Token。
- 連接它: 把 Token 貼到 Lords Bot 中,然後點擊 連接(Connect)。
- 選擇你的聊天: 在你要使用的頻道或群組中傳送 。你會成為聊天機器人的管理員。
- 開始使用: 用 指令 操控你的帳號、接收 通知,並讓你的聯盟 在聊天中使用銀行。
設定聊天機器人
在主視窗中開啟 設置 > 選項 > 其他設置(Settings > Options > Other Settings),然後前往 聊天機器人(Chat Bot)分頁。接著依照 Discord 或 Telegram 的步驟操作。
Discord
- 前往 https://discord.com/developers/applications 並建立新的應用程式(application)。
- 開啟應用程式的 Bot 頁面,複製機器人的 Token。請妥善保管 Token,不要外流。
- 在同一頁開啟 Message Content Intent。Lords Bot 需要它才能讀取指令。儲存你的變更。
- 在 Lords Bot 中,把 Token 貼到 Bot Token:,選擇 Discord,然後點擊 連接。
- 狀態顯示 Discord 已連接(Discord Connected)後,點擊 將Bot添加到 Discord(Add Bot to Discord),把機器人加入你的伺服器。
提示: 如果 Discord 說這個整合「requires code grant」,請回到開發者入口網站,關閉你的機器人的 OAuth2 code grant 選項。
Telegram
- 在 Telegram 中開啟 https://t.me/BotFather 並傳送 。
- 先取一個名稱,再取一個以
bot結尾的使用者名稱。BotFather 會傳給你機器人的 Token。 - 傳送 給 BotFather,選擇你的機器人,然後選擇 Disable。這樣機器人才能讀取群組中以
!開頭的訊息。 - 在 Lords Bot 中,把 Token 貼到 Bot Token:,選擇 Telegram,然後點擊 連接。
- 狀態顯示 Telegram 已連接(Telegram Connected)後,點擊 將Bot添加到 Telegram(Add Bot to Telegram),把機器人加入你的群組。
僅限 Telegram:你可以勾選 使用代理?(Use Proxy?),並為聊天機器人的連線選擇一個代理。
指定你的聊天
聊天機器人連結到一個聊天之後,指令才會生效:
- 在你要使用的 Discord 頻道或 Telegram 群組中,傳送 (或 )。
- 機器人會回覆 群組分配成功!(Group assigned successfully!)
你傳送 set 的那個聊天就成為聊天機器人的聊天,而 你 就是它的管理員。只有管理員可以使用聊天機器人指令,而且只能在那個聊天中使用。在 Discord 上,傳送 set 之後,這些指令也會以斜線指令的形式出現在該伺服器中。
聊天機器人的管理員(傳送 set 的人)和聯盟銀行的授權用戶不同。授權用戶是在每個銀行的 授權用戶(Authorized Users) 分頁中個別加入的。
要把聊天機器人移到其他聊天,請在目前的聊天中傳送 ,或點擊 聊天機器人 分頁上的 清除數據(Clear Data),然後在新的聊天中再次傳送 set。
聊天機器人分頁上的其他按鈕
| 項目 | 作用 |
|---|---|
| 斷開(Disconnect) | 中斷聊天機器人的連線。 |
| 查看日誌(View Log) | 顯示聊天機器人的連線日誌。如果狀態顯示 出錯,請查看日誌(Something went wrong, check log),請查看它。 |
| 清除數據 | 清除已指定的聊天和管理員。 |
| 資訊欄 | 顯示 聊天 ID(Chat ID)、管理員 ID(Admin ID),在 Discord 上還會顯示 聯盟 ID(Guild ID,也就是你的伺服器)。 |
指令
只有聊天機器人的管理員可以在用 set 設定的聊天中使用這些指令。指令可以用 /、! 或 , 開頭。在 Discord 上它們也是斜線指令,輸入時帳號欄位會自動建議帳號名稱。
/help列出所有指令。
/status列出在線和離線的帳號。
/qstatus顯示在線和離線的帳號數量。
/screenshot傳送主視窗的截圖。
/log IGG ID or name以檔案傳送帳號的日誌。
/shortlog IGG ID or name以訊息傳送帳號日誌的最後一部分。
/start IGG ID or name啟動帳號。
/stop IGG ID or name停止帳號。
/setcastle IGG ID or name讓聯盟成員在目前的聊天中使用這個帳號的聯盟銀行。請參閱 在聊天中使用聯盟銀行。
/unsetcastle IGG ID or name把聯盟銀行從它的聊天中移除。
/set把聊天機器人連結到目前的聊天。請參閱 指定你的聊天。
/cleargroup取消聊天機器人與其聊天的連結。
如果管理員以外的人使用指令,機器人會回覆 您無權使用該命令(You are not authorized to use that command)。在其他聊天中,它會回覆 管理員指令只能在使用過 /Set 的聊天中使用。(Admin Commands can only be used in the chat where: /Set was used.)例外的是 ,管理員可以在機器人所在的任何聊天中使用它。
在聊天中使用聯盟銀行
聯盟銀行可以在你的聊天機器人所在的任何 Discord 頻道或 Telegram 群組中回應指令,不限於管理員聊天。每個銀行都要重複以下步驟。
把銀行加入聊天(管理員)
在群組聊天中傳送 ,後面加上銀行帳號的名稱或 IGG ID,例如 。機器人會回覆 帳戶已分配到聊天(Account Assigned to Chat)。要移除它,請在聊天機器人的管理員聊天中傳送 。
註冊為銀行使用者(每位玩家)
每位玩家都要把自己的 Discord 或 Telegram 帳號連結到遊戲內名稱,只需要一次:
- 在群組聊天中傳送銀行指令,例如 。(如果銀行的前綴不是
!,請使用銀行的前綴。) - 機器人會回覆 請向銀行發送:,以及一個像 這樣的指令。
- 在遊戲中把那個指令原封不動地傳給銀行,可以在聯盟聊天中或用郵件傳送。銀行會回覆 社交帳號已註冊(Social account registered)。
- 再次在群組聊天中傳送 ,你就會收到你的餘額。
現在你可以在聊天中使用你的階級允許的任何銀行指令了。要取消連結,請在遊戲中傳送 給銀行。完整的指令清單請參閱 聯盟銀行指令。
注意: 聊天機器人指令會優先處理。如果銀行指令和聊天機器人指令同名,例如 ,在聊天中會被當成聊天機器人指令。這類銀行指令請改在遊戲中傳送。
帳號通知
聊天機器人可以把帳號通知發到管理員聊天。請針對每個帳號開啟:開啟帳號視窗,前往 設置 > 一般 > 高級(Settings > General > Advanced),然後找到 聊天機器人 群組。你可以用 全域設定 或 模板 一次設定多個帳號。
| 選項 | 發送內容 |
|---|---|
| 在Chatbot中發佈狀態(Post Status in Chatbot) | 為這個帳號開啟聊天機器人通知。 |
| 訪問密鑰到期(Access Key Expiry) | 存取金鑰過期、已更新或無法更新時。 |
| 連接狀態改變(Connection Status Change) | 帳號連線、重新連線或斷線時。 |
| 其他登錄(Other Login) | 有其他人登入這個帳號時。 |
| 計劃狀態(Schedule Status) | 排程 休息開始和結束時,以及帳號在休息期間登入檢查任務時。 |
| 接近 RSS 限制(Nearing RSS limit) | 糧食、石料、木材、礦石或金幣達到 40 億、接近遊戲上限時。 |
| 上傳統計數據(Upload Stats) | 把這個帳號儲存的統計報告(禮物統計、聯盟名單和聯盟總動員統計,在 聯盟頁面 中開啟)以檔案形式發到用 加入這個帳號的聊天中。在你這樣設定之前,不會發送任何內容。開啟後,從該聊天傳送的銀行指令 也會以檔案上傳報告。 |
開啟 在Chatbot中發佈狀態 時,有些通知一定會發送,例如帳號被封鎖或停權時,或達到你的帳號上限時。
還是無法解決嗎?到 Discord 詢問我們的工作人員。