このページでは、Google Chat でプライベート メッセージを作成、送信する方法について説明します。 Google Chat アプリ。
プライベート メッセージは、Google Chat のメッセージ アプリで ユーザーに表示されます。プライベート メッセージは、 スペースを作成し、1 人で 1 人で Chat 用アプリ。たとえば、 Chat アプリは、メッセージを送信して、 次のとおりです。
- スラッシュ コマンドに応答します。たとえば
ユーザーが Chat 用アプリの
/about
スラッシュを Chat アプリは、スペースで送信された Chat 用アプリの処理内容について説明するプライベート メッセージ その使い方を説明します - 1 人のユーザーにのみ関連する情報を通知または送信する。対象 たとえば、タスクが割り当てられたことをユーザーに通知したり、 タスクを完了します。
- エラー メッセージを送信します。たとえば、ユーザーが必須の引数 text を省略した場合です。 Chat アプリは、スラッシュ コマンドの エラーの説明とコマンドの書式設定をサポートするプライベート メッセージです。
- スペースに追加されたユーザーに限定公開のウェルカム メッセージを送信し、 Chat 用アプリのガイドラインや使用方法について説明します。
Chat アプリからプライベート メッセージを送信すると、 は、自分だけが閲覧できることをユーザーに通知するラベルを表示します。
前提条件
Node.js
- インタラクティブ機能を有効にする Google Chat アプリ。新しい HTTP サービスを使用したインタラクティブな Chat アプリについては、こちらのクイックスタートを完了します。
スラッシュ コマンドに非公開で応答するには、コマンドを クリックします。ビルド方法については、以下をご覧ください。 スラッシュ コマンドに応答する。
プライベート メッセージを送信するには、
messages.create()
アプリの認証を使用する必要があります。
Python
- インタラクティブ機能を有効にする Google Chat アプリ。新しい HTTP サービスを使用したインタラクティブな Chat アプリについては、こちらのクイックスタートを完了します。
スラッシュ コマンドに非公開で応答するには、 クリックします。ビルド方法については、以下をご覧ください。 スラッシュ コマンドに応答する。
プライベート メッセージを送信するには、
messages.create()
アプリの認証を使用する必要があります。
Apps Script
- インタラクティブ機能を有効にする Google Chat アプリ。新しい 対話型の Chat アプリを使用するには、このクイックスタートを完了します。
スラッシュ コマンドに非公開で応答するには、コマンドを クリックします。ビルド方法については、以下をご覧ください。 スラッシュ コマンドに応答する。
プライベート メッセージを送信するには、
messages.create()
アプリの認証を使用する必要があります。
非公開メッセージの送信
Chat アプリとしてメッセージを非公開で送信するには、
privateMessageViewer
メッセージの作成時に指定する必要があります。メッセージの内容と
メッセージの作成: ユーザーの操作に返信するか、
Google Chat API の非同期呼び出し
次のオブジェクトの create()
メソッド:
Message
リソース。テキスト メッセージやカード メッセージを送信する手順については、以下をご覧ください。
メッセージを送信する。
次の例は、プライベート テキスト メッセージの JSON を示しています。
Hello private world!
:
{
"text": "Hello private world!",
"privateMessageViewer": "USER"
}
この例では、USER
は Chat ユーザーを表します。
メッセージを閲覧できるユーザーを指定できます。
User
リソース。コメントに返信する
ユーザー操作では、操作イベントから User
オブジェクトを指定できます。
例については、次のセクションをご覧ください。
スラッシュ コマンドに非公開で応答する。
それ以外の場合、プライベート メッセージの閲覧者を指定するには、
User
の name
フィールド
resource:
{
"text": "Hello private world!",
"privateMessageViewer": {
"name": "users/USER_ID"
}
}
この例では、name
フィールドを使用して、閲覧者の User
を指定します。
リソース名を入力します。USER_ID
を交換
(例: 12345678987654321
)または一意の ID に置き換えます。
hao@cymbalgroup.com
。
ユーザーの指定について詳しくは、このモジュールの Google Chat ユーザーを特定して指定する。
スラッシュ コマンドに非公開で応答する
次のコードは、Chat 用アプリの例を示しています。 これは、スラッシュ コマンドにプライベート メッセージで応答します。
Chat アプリは
MESSAGE
インタラクション イベント
/help
スラッシュ コマンドに、個人的なテキスト メッセージで応答する
では、使用方法について説明します。
Node.js
/**
* Responds to a MESSAGE event in Google Chat.
*
* @param {!Object} req Request sent from Google Chat app
* @param {!Object} res Response to send back
*
* @return {!Object} respond to slash command
*/
exports.onMessage = function onMessage(req, res) {
if (req.method === 'GET' || !req.body.message) {
return res.send('Hello! This function is meant to be used in Google Chat app.');
}
const event = req.body;
// Checks for the presence of event.message.slashCommand.
// If the slash command is "/help", responds with a private text message.
if (event.message.slashCommand) {
switch (event.message.slashCommand.commandId) {
case '1': // /help
return res.json({
privateMessageViewer: event.user,
text: 'This Chat app was created by Cymbal Labs. To get help with this app, <https://cymbalgroup.com/docs|see our documentation> or <https://cymbalgroup.com/support|contact our support team>.'
});
}
}
// If the Chat app doesn't detect a slash command, it responds
// with a private text message
return res.json({
privateMessageViewer: event.user,
text: 'Try a slash command.'
});
};
Apps Script
/**
* Responds to a MESSAGE event in Google Chat.
*
* @param {Object} event the event object from Google Chat
*/
function onMessage(event) {
if (event.message.slashCommand) {
switch (event.message.slashCommand.commandId) {
case 1: // Responds to /help
return {
"privateMessageViewer": event.user,
"text": "This Chat app was created by Cymbal Labs. To get help with this app, <https://cymbalgroup.com/docs|see our documentation> or <https://cymbalgroup.com/support|contact our support team>."
};
}
}
else {
return { "text": "Try a slash command.", "privateMessageViewer": event.user };
}
}
Python
from typing import Any, Mapping
import flask
import functions_framework
@functions_framework.http
def main(req: flask.Request) -> Mapping[str, Any]:
"""Responds to a MESSAGE event in Google Chat.
Args:
req (flask.Request): the event object from Chat API.
Returns:
Mapping[str, Any]: open a Dialog in response to a card's button click.
"""
if req.method == 'GET':
return 'Hello! This function must be called from Google Chat.'
request = req.get_json(silent=True)
# Checks for the presence of event.message.slashCommand.
# If the slash command is "/help", responds with a private text message.
if request.get('message', {}).get('slashCommand'):
command_id = request.get('message', {}).get('slashCommand').get('commandId')
if command_id == '1': # /help
return {
'privateMessageViewer': request.get('user'),
'text': (
'This Chat app was created by Cymbal Labs. To get help with this'
' app, <https://cymbalgroup.com/docs|see our documentation> or'
' <https://cymbalgroup.com/support|contact our support team>.'
),
}
return {
'privateMessageViewer': request.get('user'),
'text': 'Try a slash command.',
}
制限事項
プライベート メッセージを送信するには、メッセージに 次のとおりです。
- 添付ファイル。
- アクセサリ アクション。
- 一部の限定公開メッセージ。たとえば、Chat 用アプリは テキスト メッセージを送信できません。 このカードはスペースのすべてのユーザーに公開されます。
- ユーザー認証。 プライベート メッセージを送信できるのは Chat アプリのみであるため、 Chat アプリが、メッセージを送信するためのユーザーとして認証できない 非公開にできます。
個人的なメッセージを更新または削除する
Google Chat のメッセージを更新または削除するには、
Chat API。プライベート メッセージの閲覧者を変更したり、メッセージを
表示されます。そのため、プライベート メッセージを更新する場合は、
API 呼び出しの privateMessageViewer
フィールド(このフィールドは出力のみ)。
プライベート メッセージを更新するには、以下をご覧ください。 メッセージを更新する。 プライベート メッセージを削除するには、以下をご覧ください。 メールを削除する。