mixi Developer Center (ミクシィ デベロッパーセンター)

mixiアプリ

mixiアプリ » 技術仕様(Graph API方式) » スマートフォン » メッセージ送信機能について

メッセージ送信機能について

mixiアプリを利用しているユーザが他のユーザに対して、メッセージを送信するための機能です。メッセージ送信機能を使うことで、mixiアプリの利用者にメッセージを入力するためのポップアップ画面を表示し、送信したい内容を入力してもらうことになります。そして、ユーザが送信ボタンを押すと、そのメッセージは送信相手の受信箱に届きます。
mixiアプリならではの機能として、単にメッセージをユーザに入力してもらうだけでなく、mixiアプリ固有の情報をそのメッセージに含めることが可能です。具体的には、絵文字や外部サイトへのURL、mixiアプリを起動するためのURLなどを含めることができます。

メッセージAPI利用の事前準備

メッセージAPIを利用するには、以下の事前準備をしておく必要があります。

  • JavaScript API で提供されていますので、JavaScript API の利用準備を行っておく必要があります
  • 利用には mixi_apps2 スコープのユーザ認可を取得しておく必要があります
    ユーザ認可の方法についてはユーザ認可についてをご参照ください

メッセージの送信

実際のメッセージ送信は、以下の手順に従って行います。

1. Messageオブジェクトの生成

まず、メッセージを送るために、以下の情報を決定します。

recipients 送信相手のユーザID(配列で複数指定可能)
title 件名として初期表示する文字列

 

  • 全角100文字以内
  • 絵文字利用不可
body ユーザが入力するメッセージとは別に本文に追加したい固定本文

 

  • 全角300文字以内
  • 絵文字利用可
  • アプリへのリンクなどを含めることが可能

これらのパラメータから、opensocial.newMessage()関数を使用して、Messageオブジェクトを生成します。

var params = {};
params[opensocial.Message.Field.TITLE] = title;
var msg = opensocial.newMessage(body, params);

newMessage()関数の第1引数に本文を、第2引数にパラメータオブジェクトを指定します。

2. requestSendMessage()関数の呼び出し

生成されたmsgオブジェクトの内容をメッセージ送信するには、opensocial.requestSendMessage()関数を使用します。

var recipients = ["xxxxxxxx", "yyyyyyyy"];
opensocial.requestSendMessage(recipients, msg, function(response) {
if (response.hadError()) {
    var code = response.getErrorCode();
    // do something...
  }
});

requestSendMessage()関数の第1引数に宛先となるユーザIDを、第2引数に先ほど生成したMessageオブジェクトを、第3引数にコールバック関数を渡します。requestSendMessage()関数の呼び出し直後に、ユーザにメッセージ本文を入力させるためのポップアップ画面が表示されます。

ユーザがメッセージを送信した後、もしくは「やめる」ボタンを押した後に、コールバック関数が呼び出されます。その引数はopensocial.ResponseItemオブジェクトです。これのhadError()関数およびgetErrorCode()関数を使用して、適切なエラー処理を実装してください。以下に、発生する可能性のあるエラーコードを示します。

エラーコード 発生する状況
401 mixi_apps2スコープのユーザ認可を取得していない
403 ユーザがキャンセルした
Viewerがアプリを保持していない
送信相手からアクセスブロックされている
404 パラメータが不正
あて先に指定したユーザが存在しない
500 mixiサーバでの内部エラー

なお、メッセージ送信APIを利用したユーザへのメッセージ送信は、mixiが従来よりご提供しておりますメッセージ送信機能と同等の仕様が適用されます。つまり、自分自身へのメッセージ送信、またはパートナーアカウントでのメッセージ送受信などは行うことができません。

このページの上部へ