メール送受信システム - UndineMailer

概要

このプラグイン UndineMailer は、あなたのサーバーに高機能なメール送受信システムを追加します!

スクリーンショット


受信箱画面

送信メール編集画面

グループ設定画面

使い方

UndineMailer.jar を plugins フォルダに入れてから、CraftBukkit を起動してください。
必要に応じて、plugins/UndineMailer/config.yml を編集してください。
※ 経済プラグイン連携機能を使用したい場合は、Vaultを導入してください。
サーバーに参加した状態で、コマンド /mail write を実行すると、メールの編集画面を開くことができます。
チャット欄の水色部分は、全てクリック可能になっています。
もし、クライアントを閉じてしまったとしても、/mail write を実行することで、何度でも編集画面を開き直すことができます。

着払いを使ったアイテム取引について

このメールプラグインでは、着払いの仕組みを利用して、アイテム取引を行うことができます。

メール送信者は、メールにアイテムを添付した後、着払い料金または着払いアイテムを設定することができます。
(着払い料金を設定するには、Vaultと、連携可能な経済プラグインの導入が必要です。)
(経済プラグインがなくても、着払い料金の代わりに、着払いアイテムが指定可能です。)

受信者がメールのアイテムボックスを開くと、着払い料金 $30 が送信者に支払われます。

受信者がアイテムの受け取りを拒否することも可能です。この場合、アイテムボックスは送信者へ返送されます。

PermissionsExとの連携について

PermissionsEx のグループをメール宛先グループとして使用することもできます。
宛先として使用したいPermissionsExグループのoptionに、"receive-mail: true" を足してください。
例:
groups:
  default:
    options:
      default: true
    permissions:
    - modifyworld.*
  test:
    options:
      receive-mail: true
      send-mode: op
※ "send-mode" の設定は省略可能です。"send-mode" には、op、member、everyone のいずれかを指定してください。"send-mode" を指定しないグループは、config.yml の "specialGroupPexSendMode" 設定に従います。

PermissionsEx連携がされていると、メールの宛先画面で「宛先グループを追加する」を選択したときに、「(pex)」から始まるグループ名が追加で選択できるようになります。

コマンド

メール関連のコマンドは /umail です。別名として、/mail も使用可能です。
グループ関連のコマンドは /ugroup です。

コマンド(コンソール送受信用)

コンソールからもメール送受信が可能ですが、画面をクリックすることはできないので、代わりに下記のコマンドを利用してください。

パーミッション

コンフィグ

# UndineMailer 1.10.3
# @author     ucchy
# @license    LGPLv3
# @copyright  Copyright ucchy 2015

# -------------------- 共通設定 --------------------

# メッセージの言語
lang: ja

# 自分自身に送信可能とするかどうか。
enableSendSelf: false

# UIを表示する系統のコマンドを実行したときに、
# UIの前に挿入する空行の行数を設定します。
# 0から9まで指定可能です。
uiEmptyLines: 2

# プレイヤー名簿を利用するかどうか。
# プレイヤー名簿では、サーバーに1度でも接続したことがあるプレイヤー全てが
# 一覧にリストアップされます。
enablePlayerList: false

# 指定できる宛先の最大数
maxDestination: 10

# 指定できる宛先グループの最大数
maxDestinationGroup: 3

# メールの保存期間(日数)
# 例えば30を指定した場合、送信してから31日経ったメールは自動的に削除されます。
mailStorageTermDays: 30

# メールスパム保護期間(秒)
# 例えば15を指定した場合、メールを送信してから次のメールを送信できるまで、
# 15秒の経過が必要になります。
mailSpamProtectionSeconds: 15

# プレイヤーがログインした時に、未読一覧を表示するまでの時間(秒)。
loginNotificationDelaySeconds: 3

# UUID取得時のオンラインモード
#   true = MojangのサーバーからUUIDを取得します。 false = ローカルのBukkitサーバーからUUIDを取得します。
uuidOnlineMode: false

# -------------------- アイテム添付設定 --------------------

# メールにアイテムの添付を可能にするかどうか。
enableAttachment: true

# メールの添付ボックスのサイズを指定します。
# 1列(=9個)から6列(=54個)まで指定可能です。
attachBoxSize: 1

# 同時に使用可能な添付ボックスの個数を指定します。
maxAttachmentBoxCount: 3

# メールの添付ボックスを操作不可に設定したいワールドを指定します。
# 例えば disableWorldsToOpenAttachment: ['sozai']  と設定すると、
# sozaiというワールド名に居るプレイヤーは、送信メールの添付ボックスや
# 受信したメールの添付ボックスを開くことができなくなります。
disableWorldsToOpenAttachBox: []

# メールに添付することができないアイテムを指定します。
# 例えば prohibitItemsToAttach: [GOLDEN_APPLE, QUARTZ_BLOCK] と設定すると、
# 金リンゴとクオーツブロックが添付できなくなります。
prohibitItemsToAttach: []

# -------------------- 着払い設定 --------------------

# 経済プラグインの通貨を利用して、着払い料金を設定可能とするかどうか。
# この機能を利用するには、Vaultと、経済プラグインを、一緒に導入する必要があります。
enableCODMoney: true

# 着払い料金として、アイテムをリクエストできるようにするかどうか。
enableCODItem: true

# 着払い料金を相手に支払う場合、入金後の金額が一致しない場合に、エラーとするかどうか。
# Essentialsのmax-moneyなどで、お金の上限を設定している場合は、
# 入金で上限を超えると送金した金額が消滅するので、この項目をtrueに設定してください。
# 入金時に税金を取るような経済プラグインを利用している場合は、
# 送金ができなくなりますので、この項目をfalseにしてください。
depositErrorOnUnmatch: true

# -------------------- 送信料金設定 --------------------

# メールを作成したりアイテムを添付したりするために料金を必要とするかどうか。
# 経済プラグインとVaultが導入されている必要があります。
enableSendFee: false

# 1つの宛先にメールを作成する料金です。
# 送信先が複数ある場合は、送信先の数だけ倍になります。
sendFee: 10

# メールにアイテムを1個または1スタック添付する料金です。
attachFee: 10

# 上記のattachFeeを、アイテム1個ごとに料金を付けるか、アイテム1スタックごとに料金を付けるか。
# falseで1スタックごと、trueで1個ごとになります。
attachFeePerAmount: false

# 着払い料金に対する着払い税です。パーセンテージで指定してください。
# 例えば、codMoneyTax: 10 とすると、着払い料金 $300 を指定したメールは、
# 着払い料金の 10% の $30 が、追加で必要になります。
codMoneyTax: 0

# 着払いアイテムに対する着払い税です。要求アイテム1個に対する金額で指定してください。
# 例えば、codItemTax: 10 とすると、ダイアモンド8個を着払いアイテムとして指定すると、
# $80 (=$10 * 8) の税金が、追加で必要になります。
codItemTax: 0

# -------------------- メールグループ設定 --------------------

# 1プレイヤーが作成可能なグループの最大数。
# OPや、'undine.group.infinite-create'パーミッションを持った人は、
# この数値に関係なく無限に作成可能です。
maxCreateGroup: 5

# 1グループに追加できる最大プレイヤー数
# OPや、'undine.group.infinite-add-member'パーミッションを持った人は、
# この数値に関係なく無限に追加可能です。
maxGroupMember: 15

# グループへのメール送信権限のデフォルト
# OP → OPのみがグループへメール送信可能
# OWNER → オーナーとOPがグループへメール送信可能
# MEMBER → メンバーならグループへメール送信可能
# EVERYONE → 誰でもグループへメール送信可能
sendModeDefault: MEMBER

# グループのメンバー変更権限のデフォルト
# OP → OPのみが変更可能
# OWNER → オーナーとOPが変更可能
# MEMBER → メンバーなら変更可能
# EVERYONE → 誰でも変更可能
modifyModeDefault: OWNER

# グループの解散権限のデフォルト
# OP → OPのみが解散可能
# OWNER → オーナーとOPが解散可能
# MEMBER → メンバーなら解散可能
# EVERYONE → 誰でも解散可能
dissolutionModeDefault: OWNER

# 特殊グループ All (全プレイヤーへのメールが送信できるグループ) への
# 送信権限を指定します。
specialGroupAllSendMode: OP

# 特殊グループ PEX (PermissionsExのグループ) への送信権限のデフォルトを指定します。
# PermissionsExのグループのoption設定に、"send-mode" を設定することで、
# グループごとに細かくSendModeを指定することが可能です。詳しくはフォーラムを参照してください。
specialGroupPexSendMode: OP

# 特殊グループ AllConnected (サーバーに接続したことのある全プレイヤーへのメールが送信できるグループ) への
# 送信権限を指定します。
specialGroupAllConnectedSendMode: OP

# 特殊グループ AllLogin (サーバーに接続中の全プレイヤーへのメールが送信できるグループ) への
# 送信権限を指定します。
specialGroupAllLoginSendMode: OP

# -------------------- ウェルカムメール設定 --------------------
# ウェルカムメールは、サーバーに初接続したプレイヤーに送られるメールです。
# ウェルカムメールのメール本文は、messages_ja.yml ファイルの WelcomeMailBody という項目で設定できます。

# ウェルカムメールを利用するかどうか。
useWelcomeMail: true

# 初接続のプレイヤーが接続してから、ウェルカムメールを送信するまでの時間(秒)。
welcomeMailDelaySeconds: 30

# ウェルカムメールの添付アイテム設定です。
welcomeMailAttachments:
  attachment1:
    material: STONE_SHOVEL
  attachment2:
    material: STONE_PICKAXE
  attachment3:
    material: STONE_AXE
  attachment4:
    material: STONE_SWORD
  attachment5:
    material: TORCH
    amount: 64
  attachment6:
    material: BREAD
    amount: 16

ソースコード

ソースコードはGithubで管理しています。ライセンスは LGPLv3 を適用します。
https://github.com/ucchyocean/UndineMailer