メッセージを受信する

ここではサーバサイドSDKの解説をしています。

GS2 SDK for Unity のサンプルは GS2 SDK for Unity のページをご参照ください。

事前にGS2マネージメントコンソールか、SDKからInboxを作成しておきます。

(このサンプルは inbox-0001 という名前の Inbox が作成されているものとしています)

PHP

// アクセス先リージョンとGSIを設定
$region = 'ap-northeast-1';
$credentials = new Gs2Credentials(CLIENT_ID, CLIENT_SECRET);

// アクセストークンを取得
$serviceId = 'service-0001';
$userId = 'user-0001';
$authclient = new Gs2AuthClient($region, $credentials);
$request = [
    'serviceId' => $serviceId,
    'userId' => $userId
];
$result = $authclient->login($request);
$accessToken = $result['token'];

// メッセージ一覧を取得する
$inboxName = 'inbox-0001'
$client = new Gs2InboxClient($region, $credentials);
$request = [
    'inboxName' => $inboxName,
    'accessToken' => $accessToken
];
$result = $client->describeMessage($request);
list($items, $nextPageToken) = array($result['items'], $result['nextPageToken']);

// $items にメッセージ一覧が
// $nextPageToken に次のページがある場合は続きを取得する為のトークンが取得されます

Ruby

# リージョンを設定
region = 'ap-northeast-1'

# アクセストークンを取得
service_id = 'service-0001'
user_id = 'user-0001'
authclient = Gs2::Auth::Client.new(region, CLIENT_ID, CLIENT_SECRET)
request = {
    'serviceId' => service_id,
    'userId' => user_id
}
result = authclient.login(request)
access_token = result['token']

# メッセージ一覧を取得する
inbox_name = 'inbox-0001'
client = Gs2::Inbox::Client.new(region, CLIENT_ID, CLIENT_SECRET)
request = {
    'inboxName' => inbox_name,
    'accessToken' => access_token
}
result = client.describe_message(request)
items, next_page_token = result['items'], result['nextPageToken']

# items にメッセージ一覧が
# next_page_token に次のページがある場合は続きを取得する為のトークンが取得されます

Java

// アクセス先リージョンとGSIを設定
String region = "ap-northeast-1";
IGs2Credential credentials = new BasicGs2Credential(CLIENT_ID, CLIENT_SECRET);

// アクセストークンを取得
String serviceId = "service-0001";
String userId = "user-0001";
LoginRequest request = new LoginRequest()
        .withServiceId(serviceId)
        .withUserId(userId);
Gs2AuthClient authclient = new Gs2AuthClient(credentials)
        .withRegion(region);
LoginResult result = authclient.login(request);
String accessToken = result.getToken();

// メッセージ一覧を取得する
String inboxName = "inbox-0001";
Gs2InboxClient client = new Gs2InboxClient(credentials)
        .withRegion(region);
DescribeMessageRequest request = new DescribeMessageRequest()
        .withInboxName(inbox.getName())
        .withAccessToken(accessToken);
DescribeMessageResult result = client.describeMessage(request);

// result.getItems() にメッセージ一覧が
// result.getNextPageToken() に次のページがある場合は続きを取得する為のトークンが取得されます