Skip to content

Commit

Permalink
Merge pull request #2 from H1rono/add-bot-events
Browse files Browse the repository at this point in the history
BOTイベントペイロードを追加
  • Loading branch information
ikura-hamu authored Sep 3, 2023
2 parents a4242da + 737c594 commit 59b9827
Show file tree
Hide file tree
Showing 3 changed files with 115 additions and 1 deletion.
44 changes: 43 additions & 1 deletion common_payload.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package traqbot

import "time"
import (
"time"
)

// BasePayload ベースペイロード
type BasePayload struct {
Expand Down Expand Up @@ -85,3 +87,43 @@ type MessageStampPayload struct {
// UpdatedAt 最後にスタンプが押された日時
UpdatedAt time.Time `json:"updatedAt"`
}

// GroupMemberPayload グループメンバー情報ペイロード
type GroupMemberPayload struct {
// GroupID グループUUID
GroupID string `json:"groupId"`
// UserID ユーザーUUID
UserID string `json:"userId"`
}

// UserGroupAdminPayload グループ管理者情報ペイロード
type UserGroupAdminPayload GroupMemberPayload

// UserGroupMemberPayload グループメンバー(のより詳細な)情報ペイロード
type UserGroupMemberPayload struct {
GroupMemberPayload
// Role メンバーの役割
Role string `json:"role"`
}

// UserGroupPayload グループ情報ペイロード
type UserGroupPayload struct {
// ID グループUUID
ID string `json:"id"`
// Name グループ名
Name string `json:"name"`
// Description グループの説明
Description string `json:"description"`
// Type グループの種類
Type string `json:"type"`
// Icon グループアイコンのファイルUUID
Icon string `json:"icon"`
// Admins グループ管理者の配列
Admins []*UserGroupAdminPayload `json:"admins"`
// Members グループメンバーの配列
Members []*UserGroupMemberPayload `json:"members"`
// CreatedAt グループ作成日時
CreatedAt time.Time `json:"createdAt"`
// UpdatedAt グループ更新日時
UpdatedAt time.Time `json:"updatedAt"`
}
56 changes: 56 additions & 0 deletions event_payload.go
Original file line number Diff line number Diff line change
Expand Up @@ -137,3 +137,59 @@ type TagRemovedPayload struct {
// Tag タグ名
Tag string `json:"tag"`
}

// UserGroupCreatedPayload USER_GROUP_CREATEDイベントペイロード
type UserGroupCreatedPayload struct {
BasePayload
// Group 作成されたグループ
Group UserGroupPayload `json:"group"`
}

// UserGroupUpdatedPayload USER_GROUP_UPDATEDイベントペイロード
type UserGroupUpdatedPayload struct {
BasePayload
// GroupID 更新されたグループUUID
GroupID string `json:"groupId"`
}

// UserGroupDeletedPayload USER_GROUP_DELETEDイベントペイロード
type UserGroupDeletedPayload struct {
BasePayload
// GroupID 削除されたグループUUID
GroupID string `json:"groupId"`
}

// UserGroupMemberAddedPayload USER_GROUP_MEMBER_ADDEDイベントペイロード
type UserGroupMemberAddedPayload struct {
BasePayload
// GroupMemberPayload 追加されたグループメンバー情報
GroupMemberPayload `json:"groupMember"`
}

// UserGroupMemberUpdatedPayload USER_GROUP_MEMBER_UPDATEDイベントペイロード
type UserGroupMemberUpdatedPayload struct {
BasePayload
// GroupMemberPayload 更新されたグループメンバー情報
GroupMemberPayload `json:"groupMember"`
}

// UserGroupMemberRemovedPayload USER_GROUP_MEMBER_REMOVEDイベントペイロード
type UserGroupMemberRemovedPayload struct {
BasePayload
// GroupMemberPayload 削除されたグループメンバー情報
GroupMemberPayload `json:"groupMember"`
}

// UserGroupAdminAddedPayload USER_GROUP_ADMIN_ADDEDイベントペイロード
type UserGroupAdminAddedPayload struct {
BasePayload
// GroupMemberPayload 追加されたグループ管理者情報
GroupMemberPayload `json:"groupMember"`
}

// UserGroupAdminRemovedPayload USER_GROUP_ADMIN_REMOVEDイベントペイロード
type UserGroupAdminRemovedPayload struct {
BasePayload
// GroupMemberPayload 削除されたグループ管理者情報
GroupMemberPayload `json:"groupMember"`
}
16 changes: 16 additions & 0 deletions events.go
Original file line number Diff line number Diff line change
Expand Up @@ -33,4 +33,20 @@ const (
TagAdded = "TAG_ADDED"
// TagRemoved タグ削除イベント
TagRemoved = "TAG_REMOVED"
// UserGroupCreated グループ作成イベント
UserGroupCreated = "USER_GROUP_CREATED"
// UserGroupUpdated グループ更新イベント
UserGroupUpdated = "USER_GROUP_UPDATED"
// UserGroupDeleted グループ削除イベント
UserGroupDeleted = "USER_GROUP_DELETED"
// UserGroupMemberAdded グループメンバー追加イベント
UserGroupMemberAdded = "USER_GROUP_MEMBER_ADDED"
// UserGroupMemberUpdated グループメンバー更新イベント
UserGroupMemberUpdated = "USER_GROUP_MEMBER_UPDATED"
// UserGroupMemberRemoved グループメンバー削除イベント
UserGroupMemberRemoved = "USER_GROUP_MEMBER_REMOVED"
// UserGroupAdminAdded グループ管理者追加イベント
UserGroupAdminAdded = "USER_GROUP_ADMIN_ADDED"
// UserGroupAdminRemoved グループ管理者削除イベント
UserGroupAdminRemoved = "USER_GROUP_ADMIN_REMOVED"
)

0 comments on commit 59b9827

Please sign in to comment.