ドキュメント

アクティビティを送信する

Aipoではワークフローの依頼やブログの更新などを行った際に、他のユーザーに更新情報を通知することができます。ソーシャルアプリでも同様に、ユーザー操作のタイミングで更新情報の通知を行う機能が用意されています。 この更新情報のことをアクティビティと呼びます。

Aipoには以下の2種類のアクティビティがあります。

種別 説明
更新情報 更新情報ポートレットに表示されます。
主に不特定多数のユーザーに更新内容を伝えたい場合に利用されます。
あなた宛のお知らせ あなた宛のお知らせに表示されます。
主に指定したユーザーのリアクションを求める重要な情報を通知する場合に利用されます。

なお、あなた宛のお知らせには他のアプリケーションからの重要なお知らせも含まれておりますので、重要度の低い情報や、頻度の多い通知については控えることをお勧めいたします。

アクティビティの更新処理は、OpenSocial で定められている Activity API を利用することになります。 OpenSocial 1.0 で規定されている仕様については下記をご覧ください。

http://opensocial-resources.googlecode.com/svn/spec/1.0/Social-Gadget.xml#osapi.activities

アクティビティの送信

アクティビティを送信する JavaScript API を利用するためには、まず以下のようにガジェットXMLを記述して osapi フィーチャーを有効にする必要があります。

<Module ...>
  <ModulePrefs>
    <Require feature="osapi" />
     ...
  </ModulePrefs>
...
</Module>

更新情報ポートレットにアクティビティを送信するコードは以下のようになります。

osapi.activities.create({
    userId: '@viewer', activity: { title: 'アクティビティのタイトル' }
}).execute(function(response) {
    // ...
});
  • アクティビティは osapi.activities.create() メソッドを使って送信します。
  • アクティビティの送信は、利用中のユーザー(Viewer)に対してのみ行うことができますので、userId パラメータは @viewer 固定となります。
  • title パラメータは 64 byte までとなります。

送信するアクティビティの項目は osapi.activities.create() メソッドの activity パラメータで指定します。

項目名 説明 必須/デフォルト サンプル
title アクティビティのタイトル 必須 "メッセージを送信しました。"
priority 0: 更新情報ポートレットへ通知
1: あなたへのお知らせへ通知
0 0
recipients 通知する宛先 ["org001:sample1", "org001:sample2", "org001:sample3"]
externalId ダイアログに受け渡すパラメータ "21"

宛先を指定してアクティビティ送信

アクティビティは通常、ユーザー全体(自ユーザーを除く)の更新情報ポートレットに表示されますが、宛先を指定することにより、指定したユーザーに限定してアクティビティを表示させることができます。

指定したユーザーの更新情報ポートレットに、アクティビティを表示させるコードは以下のようになります。

var recipients = [ 'org001:sample1', 'org001:sample2', 'org001:sample3' ];
osapi.activities.create({
    userId: '@viewer', activity: { title: 'アクティビティのタイトル',recipients:recipients }
}).execute(function(response) {
    // ...
});
  • recipients パラメータに通知したいユーザーのIDを指定します。

あなた宛のお知らせへのアクティビティ送信

アクティビティは更新情報ポートレットだけではなく、あなた宛のお知らせにも表示させることができます。

指定したユーザーのあなた宛のお知らせに、アクティビティを表示させるコードは以下のようになります。

var recipients = [ 'org001:sample1', 'org001:sample2', 'org001:sample3' ];
osapi.activities.create({
    userId: '@viewer', activity: { title: 'アクティビティのタイトル', recipients:recipients, priority: 1 }
}).execute(function(response) {
    // ...
});
  • recipients パラメータに通知したいユーザーのIDを指定します。
  • priority パラメータを 1 に設定します。
  • priority パラメータを 1 にしても、recipients パラメータが指定されていない場合は、更新情報ポートレットに表示されます。

ダイアログへパラメータ受け渡し

更新情報ポートレットおよびあなた宛のお知らせに表示されたアクティビティのタイトルをクリックすると、ダイアログで該当のアプリケーションが開きます。この時のビューは popup となりますが、このビューにパラメータを受け渡すことができます。

ダイアログへ受け渡すパラメータを指定してアクティビティを送信するコードは以下のようになります。

osapi.activities.create({
    userId: '@viewer', activity: { title: 'アクティビティのタイトル', externalId: '2' }
}).execute(function(response) {
    // ...
});
  • externalId パラメータにダイアログに受け渡したい値を指定します。
  • externalId に既存の値を指定すると、新規のアクティビティではなく、既存のアクティビティの更新を行います。これにより複数のアクティビティを纏めることができるようになります。

ダイアログに受け渡されたパラメータを取得するコードは以下のようになります。

// アクティビティ送信時に受け渡された externalId パラメータ
var externalId = gadgets.views.getParams()['externalId'];

アクティビティの取得

アクティビティの取得は現在サポートしておりません。