mixi2 Developer Platform
開発ガイド

イベント

mixi2 からアプリケーションに送信されるイベントの種類と構造を解説します。

mixi2 では、ユーザーがアプリケーションにメンションしたり、DM を送信したりすると、その情報がイベントとしてアプリケーションサーバーに配信されます。このページでは、イベントの種類と構造について説明します。

前提条件

イベントの種類

アプリケーションが受信できるイベントは以下の通りです。

イベント種別説明
EVENT_TYPE_PING接続確認用のイベント
EVENT_TYPE_POST_CREATEDポストが作成されたときに発生
EVENT_TYPE_CHAT_MESSAGE_RECEIVEDチャット/DM メッセージを受信したときに発生

ポスト作成イベント(PostCreatedEvent)

ユーザーがアプリケーションにメンション、リプライ、または引用を行った場合に発生します。

フィールド説明
event_reason_listEventReason[]イベントが発生した理由のリスト
postPost作成されたポストの情報
issuerUserポストを作成したユーザーの情報

event_reason_list には、イベントが発生した理由が含まれます。

イベント理由(EventReason)説明
EVENT_REASON_POST_REPLYアプリケーションのポストに返信された
EVENT_REASON_POST_MENTIONEDポスト内でメンションされた
EVENT_REASON_POST_QUOTEDアプリケーションのポストが引用された

チャットメッセージ受信イベント(ChatMessageReceivedEvent)

ユーザーがアプリケーションに DM を送信した場合に発生します。

フィールド説明
event_reason_listEventReason[]イベントが発生した理由のリスト
messageChatMessage受信したメッセージの情報
issuerUserメッセージを送信したユーザーの情報

event_reason_list には、イベントが発生した理由が含まれます。

イベント理由(EventReason)説明
EVENT_REASON_DIRECT_MESSAGE_RECEIVEDチャット/ダイレクトメッセージを受信した

イベントの受信方式

イベントを受信するには、gRPC ストリーム方式Webhook 方式の 2 つの方法があります。それぞれの詳細は以下のページを参照してください。

方式用途ガイド
gRPC ストリームリアルタイム監視。ローカル開発に適していますgRPC ストリーム
HTTP WebhookHTTPS に対応したサーバー環境Webhook

イベント配信の特性

イベント処理を実装する際は、以下の特性を考慮してください。

順序保証

イベントの処理順序は保証されません。イベントが発生した順序とは異なる順番で届く可能性があるため、特定の順序に依存しない設計にしてください。

配信保証

イベントは Best-effort で配信されます。

  • gRPC ストリーム方式で接続が切れた場合、その間に発生したイベントは失われます
  • Webhook 方式では、配信失敗時に最大 3 回までリトライされます。リトライにより同じイベントが複数回届く可能性があります

Webhook 方式ではリトライによりイベントが重複して届く場合があるため、アプリケーション側で冪等性を考慮した設計を行ってください。

次のステップ

On this page