REST Resource: spaces.messages

المرجع: رسالة

رسالة في مساحة Google Chat

تمثيل JSON
{
  "name": string,
  "sender": {
    object (User)
  },
  "createTime": string,
  "lastUpdateTime": string,
  "deleteTime": string,
  "text": string,
  "formattedText": string,
  "cards": [
    {
      object (Card)
    }
  ],
  "cardsV2": [
    {
      object (CardWithId)
    }
  ],
  "annotations": [
    {
      object (Annotation)
    }
  ],
  "thread": {
    object (Thread)
  },
  "space": {
    object (Space)
  },
  "fallbackText": string,
  "actionResponse": {
    object (ActionResponse)
  },
  "argumentText": string,
  "slashCommand": {
    object (SlashCommand)
  },
  "attachment": [
    {
      object (Attachment)
    }
  ],
  "matchedUrl": {
    object (MatchedUrl)
  },
  "threadReply": boolean,
  "clientAssignedMessageId": string,
  "emojiReactionSummaries": [
    {
      object (EmojiReactionSummary)
    }
  ],
  "privateMessageViewer": {
    object (User)
  },
  "deletionMetadata": {
    object (DeletionMetadata)
  },
  "quotedMessageMetadata": {
    object (QuotedMessageMetadata)
  },
  "attachedGifs": [
    {
      object (AttachedGif)
    }
  ],
  "accessoryWidgets": [
    {
      object (AccessoryWidget)
    }
  ]
}
الحقول
name

string

المعرّف اسم مورد الرسالة

التنسيق: spaces/{space}/messages/{message}

حيث يكون {space} هو معرّف المساحة التي تم نشر الرسالة فيها و{message} هو معرّف تحدّده النظام للرسالة. على سبيل المثال، spaces/AAAAAAAAAAA/messages/BBBBBBBBBBB.BBBBBBBBBBB.

في حال ضبط معرّف مخصّص عند إنشاء رسالة، يمكنك استخدام هذا المعرّف لتحديد الرسالة في الطلب من خلال استبدال {message} بالقيمة من الحقل clientAssignedMessageId. على سبيل المثال، spaces/AAAAAAAAAAA/messages/client-custom-name. لمعرفة التفاصيل، يُرجى الاطّلاع على تسمية رسالة.

sender

object (User)

النتائج فقط. المستخدم الذي أنشأ الرسالة إذا كان تطبيق Chat يستخدم المصادقة كمستخدم، ستتم تعبئة المستخدِم name وtype في الإخراج.

createTime

string (Timestamp format)

اختياريّ. غير قابل للتغيير وقت إنشاء الرسالة في المساحات التي تم إنشاؤها في Chat هذا الحقل مخصّص للإخراج فقط، باستثناء استخدامه في مساحات وضع الاستيراد.

بالنسبة إلى المساحات في وضع الاستيراد، اضبط هذا الحقل على الطابع الزمني السابق الذي تم إنشاء الرسالة فيه في المصدر للحفاظ على وقت الإنشاء الأصلي.

lastUpdateTime

string (Timestamp format)

النتائج فقط. الوقت الذي عدّل فيه أحد المستخدمين الرسالة آخر مرة إذا لم يتم تعديل الرسالة مطلقًا، يكون هذا الحقل فارغًا.

deleteTime

string (Timestamp format)

النتائج فقط. الوقت الذي تم فيه حذف الرسالة في Google Chat إذا لم يتم حذف الرسالة مطلقًا، يكون هذا الحقل فارغًا.

text

string

اختياريّ. نص عادي للرسالة. ينشئ أول رابط يؤدي إلى صورة أو فيديو أو صفحة ويب شريحة معاينة. يمكنك أيضًا الإشارة إلى مستخدم في Google Chat باستخدام @ أو الإشارة إلى جميع المستخدمين في المساحة.

للتعرّف على كيفية إنشاء رسائل نصية، يُرجى الاطّلاع على مقالة إرسال رسالة.

formattedText

string

النتائج فقط. يحتوي على الرسالة text مع علامات تمّت إضافتها للإشارة إلى التنسيق. قد لا يتضمن هذا الحقل كل التنسيقات الظاهرة في واجهة المستخدم، ولكنه يتضمّن ما يلي:

  • بنية الترميز للنص الغامق والمائل والمخطوط والنص ذي المسافة الثابتة والنص ذي المسافة الثابتة في شكل كتلة والقائمة النقطية

  • الإشارة إلى المستخدمين باستخدام التنسيق <users/{user}>

  • روابط تشعّبية مخصّصة تستخدم التنسيق <{url}|{rendered_text}> حيث السلسلة الأولى هي عنوان URL والسلسلة الثانية هي النص المعروض، مثلاً <http://example.com|custom text>.

  • رمز إيموجي مخصّص باستخدام التنسيق :{emojiName}:، على سبيل المثال :smile: ولا ينطبق ذلك على رموز الإيموجي بتنسيق Unicode، مثل U+1F600 لرمز الإيموجي للوجه الضاحك.

لمزيد من المعلومات، يُرجى الاطّلاع على عرض تنسيق النص المُرسَل في رسالة.

cards[]
(deprecated)

object (Card)

تم إيقاف هذه السياسة نهائيًا، لذا يُرجى استخدام cardsV2 بدلاً منها.

بطاقات تفاعلية ومنسّقة وتفاعلية يمكنك استخدامها لعرض عناصر واجهة المستخدم، مثل النصوص المنسّقة والأزرار والصور القابلة للنقر. يتم عرض البطاقات عادةً أسفل النص العادي للرسالة. يمكن أن يصل الحد الأقصى لحجم الملفَين cards وcardsV2 إلى 32 كيلوبايت.

cardsV2[]

object (CardWithId)

اختياريّ. صفيف للبطاقات

يمكن لتطبيقات Chat فقط إنشاء البطاقات. إذا كان تطبيق Chat يستخدم المصادقة كمستخدم، لا يمكن أن تحتوي الرسائل على بطاقات.

للتعرّف على كيفية إنشاء رسالة تحتوي على بطاقات، اطّلِع على مقالة إرسال رسالة.

تصميم البطاقات ومعاينتها باستخدام "أداة إنشاء البطاقات"

فتح "أداة إنشاء البطاقات"

annotations[]

object (Annotation)

النتائج فقط. التعليقات التوضيحية المرتبطة بـ text في هذه الرسالة

thread

object (Thread)

سلسلة المحادثات التي تنتمي إليها الرسالة للاطّلاع على أمثلة على الاستخدام، يُرجى الاطّلاع على بدء سلسلة محادثات أو الردّ عليها.

space

object (Space)

النتائج فقط. إذا كان تطبيق Chat يستخدم مصادقة المستخدم، ستتم تعبئة المساحة name فقط في الإخراج.

fallbackText

string

اختياريّ. وصف نصي عادي لبطاقات الرسالة، ويُستخدَم عندما لا يمكن عرض البطاقات الفعلية، مثل الإشعارات على الأجهزة الجوّالة

actionResponse

object (ActionResponse)

الإدخال فقط المَعلمات التي يمكن لتطبيق Chat استخدامها لضبط كيفية نشر ردّه

argumentText

string

النتائج فقط. نص الرسالة بتنسيق نص عادي مع إزالة جميع الإشارات إلى تطبيق Chat

slashCommand

object (SlashCommand)

النتائج فقط. معلومات عن الأوامر التي تبدأ بشرطة مائلة، إن أمكن

attachment[]

object (Attachment)

اختياريّ. مرفق حمّله المستخدم

matchedUrl

object (MatchedUrl)

النتائج فقط. عنوان URL في spaces.messages.text يتطابق مع نمط معاينة الرابط لمزيد من المعلومات، يُرجى الاطّلاع على روابط المعاينة.

threadReply

boolean

النتائج فقط. عندما يكون true، تكون الرسالة ردًا في سلسلة محادثات. عند false، تظهر الرسالة في المحادثة ذات المستوى الأعلى في المساحة إمّا كأول رسالة في سلسلة محادثات أو رسالة لا تتضمّن ردودًا في سلاسل محادثات.

إذا كانت المساحة لا تتيح الردّ في سلاسل المحادثات، يكون هذا الحقل دائمًا false.

clientAssignedMessageId

string

اختياريّ. اختياريّ. معرّف مخصّص للرسالة. يمكنك استخدام الحقل لتحديد رسالة أو الحصول على رسالة أو حذفها أو تعديلها. لضبط رقم تعريف مخصّص، حدِّد حقل messageId عند إنشاء الرسالة. للحصول على التفاصيل، يُرجى الاطِّلاع على تسمية رسالة.

emojiReactionSummaries[]

object (EmojiReactionSummary)

النتائج فقط. قائمة بملخصات التفاعلات باستخدام الرموز التعبيرية في الرسالة

privateMessageViewer

object (User)

اختياريّ. غير قابل للتغيير حقل إدخال لإنشاء رسالة، بخلاف ذلك للمخرجات فقط. المستخدم الذي يمكنه عرض الرسالة عند ضبط هذا الخيار، تكون الرسالة خاصة ولا تظهر إلا للمستخدم المحدّد وتطبيق Chat. لتضمين هذا الحقل في طلبك، عليك طلب البيانات من Chat API باستخدام مصادقة التطبيق وحذف ما يلي:

لمعرفة التفاصيل، يُرجى الاطّلاع على إرسال رسالة خاصة.

deletionMetadata

object (DeletionMetadata)

النتائج فقط. معلومات حول رسالة محذوفة يتم حذف رسالة عند ضبط deleteTime.

quotedMessageMetadata

object (QuotedMessageMetadata)

النتائج فقط. معلومات عن رسالة اقتبسها مستخدم Google Chat في مساحة يمكن لمستخدمي Google Chat اقتباس رسالة للرد عليها.

attachedGifs[]

object (AttachedGif)

النتائج فقط. صور GIF المرفقة بالرسالة

accessoryWidgets[]

object (AccessoryWidget)

اختياريّ. أداة تفاعلية واحدة أو أكثر تظهر في أسفل الرسالة يمكنك إضافة تطبيقات مصغّرة إضافية إلى الرسائل التي تحتوي على نص أو بطاقات أو كليهما. لا تتوفّر هذه الميزة للرسائل التي تحتوي على مربّعات حوار. لمعرفة التفاصيل، يُرجى الاطّلاع على إضافة تطبيقات مصغّرة تفاعلية في أسفل الرسالة.

يتطلب إنشاء رسالة تتضمّن تطبيقات مصغّرة إضافية مصادقة التطبيق.

CardWithId

بطاقة في رسالة Google Chat

يمكن فقط لتطبيقات Chat إنشاء البطاقات. إذا كان تطبيق Chat يستخدم المصادقة كمستخدم، لا يمكن أن تحتوي الرسالة على بطاقات.

تصميم البطاقات ومعاينتها باستخدام "أداة إنشاء البطاقات"

فتح "أداة إنشاء البطاقات"

تمثيل JSON
{
  "cardId": string,
  "card": {
    object (Card)
  }
}
الحقول
cardId

string

هذا الخيار مطلوب إذا كانت الرسالة تحتوي على بطاقات متعددة. معرّف فريد لبطاقة في رسالة

card

object (Card)

بطاقة. الحد الأقصى للحجم هو 32 كيلوبايت.

تعليق توضيحي

النتائج فقط. التعليقات التوضيحية المرتبطة بنص الرسالة العادي لإضافة تنسيق أساسي إلى رسالة نصية، اطّلِع على تنسيق الرسائل النصية.

مثال على نص رسالة عادي:

Hello @FooBot how are you!"

البيانات الوصفية للتعليقات التوضيحية المقابلة:

"annotations":[{
  "type":"USER_MENTION",
  "startIndex":6,
  "length":7,
  "userMention": {
    "user": {
      "name":"users/{user}",
      "displayName":"FooBot",
      "avatarUrl":"https://goo.gl/aeDtrS",
      "type":"BOT"
    },
    "type":"MENTION"
   }
}]
تمثيل JSON
{
  "type": enum (AnnotationType),
  "length": integer,
  "startIndex": integer,

  // Union field metadata can be only one of the following:
  "userMention": {
    object (UserMentionMetadata)
  },
  "slashCommand": {
    object (SlashCommandMetadata)
  },
  "richLinkMetadata": {
    object (RichLinkMetadata)
  }
  // End of list of possible types for union field metadata.
}
الحقول
type

enum (AnnotationType)

نوع هذا التعليق التوضيحي.

length

integer

طول السلسلة الفرعية في نص الرسالة العادي الذي يتوافق معه هذا التعليق التوضيحي.

startIndex

integer

بدء الفهرس (قائم على 0، شامل) في النص الأساسي لرسالة النص العادي الذي يتوافق مع هذا التعليق التوضيحي.

حقل الربط metadata بيانات وصفية إضافية عن التعليق التوضيحي يمكن أن يكون metadata واحدًا فقط مما يلي:
userMention

object (UserMentionMetadata)

البيانات الوصفية التي يشير إليها المستخدم

slashCommand

object (SlashCommandMetadata)

البيانات الوصفية لأمر الشرطة المائلة.

AnnotationType

نوع التعليق التوضيحي.

عمليات التعداد
ANNOTATION_TYPE_UNSPECIFIED القيمة التلقائية لقائمة القيم المحدّدة لا تستخدِم هذه الميزة.
USER_MENTION تمت الإشارة إلى مستخدم.
SLASH_COMMAND يتمّ استدعاء أمر يبدأ بشرطة مائلة.

UserMentionMetadata

البيانات الوصفية للتعليق التوضيحي لذكر المستخدمين (@)

تمثيل JSON
{
  "user": {
    object (User)
  },
  "type": enum (Type)
}
الحقول
user

object (User)

المستخدم المُشار إليه

type

enum (Type)

نوع إشارة المستخدم

النوع

عمليات التعداد
TYPE_UNSPECIFIED القيمة التلقائية للتعداد لا تستخدِم هذه الميزة.
ADD أضِف المستخدم إلى المساحة.
MENTION الإشارة إلى مستخدم في المساحة

SlashCommandMetadata

البيانات الوصفية للتعليقات التوضيحية للأوامر التي تبدأ بشرطة مائلة (/)

تمثيل JSON
{
  "bot": {
    object (User)
  },
  "type": enum (Type),
  "commandName": string,
  "commandId": string,
  "triggersDialog": boolean
}
الحقول
bot

object (User)

تطبيق Chat الذي تمّ استدعاء أمره

type

enum (Type)

نوع الأمر الذي يبدأ بشرطة مائلة.

commandName

string

اسم أمر الشرطة المائلة الذي تم استدعاؤه

commandId

string (int64 format)

معرّف الأمر لأمر الشرطة المائلة التي تم استدعاؤها.

triggersDialog

boolean

يشير إلى ما إذا كان الأمر الذي يبدأ بشرطة مائلة مخصّصًا لمربّع حوار.

النوع

عمليات التعداد
TYPE_UNSPECIFIED القيمة التلقائية لقائمة القيم المحدّدة لا تستخدِم هذه الميزة.
ADD أضِف تطبيق Chat إلى المساحة.
INVOKE شغِّل الأمر الذي يبدأ بشرطة مائلة في المساحة.

RichLinkMetadata

تمثّل هذه السمة رابطًا منسّقًا يؤدي إلى مرجع.

تمثيل JSON
{
  "uri": string,
  "richLinkType": enum (RichLinkType),

  // Union field data can be only one of the following:
  "driveLinkData": {
    object (DriveLinkData)
  },
  "chatSpaceLinkData": {
    object (ChatSpaceLinkData)
  }
  // End of list of possible types for union field data.
}
الحقول
uri

string

معرّف الموارد المنتظم (URI) لهذا الرابط.

حقل الربط data بيانات المورد المرتبط يمكن أن يكون data واحدًا فقط مما يلي:

RichLinkType

نوع الرابط المزوّد بمحتوى إضافي وقد تتم إضافة المزيد من الأنواع في المستقبل.

عمليات التعداد
DRIVE_FILE نوع رابط منسّق في Google Drive
CHAT_SPACE نوع رابط غني في مساحة Chat على سبيل المثال، شريحة ذكية لمكان

DriveLinkData

بيانات روابط Google Drive

تمثيل JSON
{
  "driveDataRef": {
    object (DriveDataRef)
  },
  "mimeType": string
}
الحقول
driveDataRef

object (DriveDataRef)

DriveDataRef الذي يشير إلى ملف Google Drive.

mimeType

string

نوع MIME لمورد Google Drive المرتبط.

ChatSpaceLinkData

بيانات روابط مساحات Chat

تمثيل JSON
{
  "space": string,
  "thread": string,
  "message": string
}
الحقول
space

string

مساحة مورد مساحة Chat المرتبطة.

التنسيق: spaces/{space}

thread

string

سلسلة محادثات مرجع مساحة Chat المرتبطة

التنسيق: spaces/{space}/threads/{thread}

message

string

رسالة مورد مساحة Chat المرتبطة.

التنسيق: spaces/{space}/messages/{message}

Thread

سلسلة محادثات في مساحة Google Chat للاطّلاع على أمثلة على الاستخدام، يُرجى الاطّلاع على بدء سلسلة محادثات أو الردّ عليها.

إذا حدّدت سلسلة محادثات عند إنشاء رسالة، يمكنك ضبط الحقل messageReplyOption لتحديد ما يحدث في حال عدم العثور على سلسلة محادثات مطابقة.

تمثيل JSON
{
  "name": string,
  "threadKey": string
}
الحقول
name

string

المعرّف اسم المورد الخاص بالسلسلة

مثلاً: spaces/{space}/threads/{thread}

threadKey

string

اختياريّ. إدخال لإنشاء سلسلة محادثات أو تعديلها بخلاف ذلك، يتم عرض النتائج فقط. رقم تعريف سلسلة المحادثات يمكن إدخال ما يصل إلى 4,000 حرف.

ويكون هذا المعرّف فريدًا لتطبيق Chat الذي يضبطه. على سبيل المثال، إذا أنشأت تطبيقات محادثة متعددة رسالة باستخدام مفتاح سلسلة المحادثات نفسه، يتم نشر الرسائل في سلاسل محادثات مختلفة. للردّ في سلسلة محادثات أنشأها مستخدم أو تطبيق Chat آخر، حدِّد حقل سلسلة المحادثات name بدلاً من ذلك.

ActionResponse

المَعلمات التي يمكن لتطبيق Chat استخدامها لضبط كيفية نشر ردّه

تمثيل JSON
{
  "type": enum (ResponseType),
  "url": string,
  "dialogAction": {
    object (DialogAction)
  },
  "updatedWidget": {
    object (UpdatedWidget)
  }
}
الحقول
type

enum (ResponseType)

الإدخال فقط نوع ردّ تطبيق Chat

url

string

الإدخال فقط. عنوان URL للمستخدمين للمصادقة أو الضبط (لأنواع الردود من النوع REQUEST_CONFIG فقط)

dialogAction

object (DialogAction)

الإدخال فقط ردّ على حدث تفاعل مرتبط بمربّع حوار يجب أن يكون مصحوبًا بـ ResponseType.Dialog.

updatedWidget

object (UpdatedWidget)

الإدخال فقط استجابة التطبيق المصغّر المعدَّل.

ResponseType

نوع ردّ تطبيق Chat

عمليات التعداد
TYPE_UNSPECIFIED النوع التلقائي الذي يتم التعامل معه على أنّه NEW_MESSAGE
NEW_MESSAGE انشر الردّ كرسالة جديدة في الموضوع.
UPDATE_MESSAGE عدِّل رسالة تطبيق Chat. لا يُسمح بذلك إلا في حدث CARD_CLICKED حيث يكون نوع مُرسِل الرسالة هو BOT.
UPDATE_USER_MESSAGE_CARDS تعديل البطاقات في رسالة أحد المستخدمين لا يُسمح بذلك إلا كردّ على حدث MESSAGE يتضمّن عنوان URL مطابقًا، أو حدث CARD_CLICKED يكون فيه نوع مُرسِل الرسالة هو HUMAN. ويتم تجاهل النص.
REQUEST_CONFIG اطلب من المستخدم بشكل خاص إجراء مصادقة أو ضبط إضافيَين.
DIALOG تعرض مربع حوار.
UPDATE_WIDGET طلب بحث عن خيارات الإكمال التلقائي للنص في التطبيق المصغّر

DialogAction

يحتوي على محادثة ورمز حالة الطلب.

تمثيل JSON
{
  "actionStatus": {
    object (ActionStatus)
  },

  // Union field action can be only one of the following:
  "dialog": {
    object (Dialog)
  }
  // End of list of possible types for union field action.
}
الحقول
actionStatus

object (ActionStatus)

الإدخال فقط حالة طلب إما لاستدعاء أو إرسال مربع حوار. تعرِض هذه السمة حالة ورسالة للمستخدمين، إذا لزم الأمر. على سبيل المثال، في حال حدوث خطأ أو نجاح.

حقل الاتحاد action. الإجراء المطلوب تنفيذه يمكن أن يكون action واحدًا فقط مما يلي:
dialog

object (Dialog)

الإدخال فقط مربّع الحوار للطلب

مربّع حوار

غلاف حول نص البطاقة في مربّع الحوار

تمثيل JSON
{
  "body": {
    object (Card)
  }
}
الحقول
body

object (Card)

الإدخال فقط نص مربّع الحوار الذي يتم عرضه في نافذة مشروطة لا تتوافق تطبيقات Google Chat مع عناصر البطاقات التالية: DateTimePicker وOnChangeAction.

ActionStatus

تمثّل حالة طلب لبدء مربّع حوار أو إرساله.

تمثيل JSON
{
  "statusCode": enum (Code),
  "userFacingMessage": string
}
الحقول
statusCode

enum (Code)

رمز الحالة.

userFacingMessage

string

الرسالة المُرسَلة إلى المستخدمين لإعلامهم بحالة طلبهم في حال عدم ضبطها، يتم إرسال رسالة عامة استنادًا إلى statusCode.

الرمز

رموز الخطأ الأساسية لواجهات برمجة التطبيقات gRPC

في بعض الأحيان، قد تنطبق رموز أخطاء متعددة. يجب أن تعرض الخدمات رمز الخطأ الأكثر تحديدًا الذي ينطبق. على سبيل المثال، استخدِم OUT_OF_RANGE بدلاً من FAILED_PRECONDITION إذا كان كلا الرمزين ينطبقان. وبالمثل، يفضّلون NOT_FOUND أو ALREADY_EXISTS على FAILED_PRECONDITION.

عمليات التعداد
OK

ليس خطأ، بل يتم إرجاعه عند النجاح.

تعيين HTTP: 200 OK

CANCELLED

تم إلغاء العملية، عادةً من قِبل المتصل.

تعيين HTTP: 499 طلب إغلاق العميل

UNKNOWN

حدث خطأ غير معروف. على سبيل المثال، قد يتم عرض هذا الخطأ عندما تنتمي قيمة Status مُستلَمة من مساحة عنوان أخرى إلى مساحة خطأ غير معروفة في مساحة العنوان هذه. بالإضافة إلى ذلك، قد يتم تحويل الأخطاء التي تسبّبها واجهات برمجة التطبيقات والتي لا تعرض معلومات كافية عن الأخطاء إلى هذا الخطأ.

تعيين HTTP: 500 خطأ في الخادم الداخلي

INVALID_ARGUMENT

حدّد العميل وسيطة غير صالحة. يُرجى العلم أنّ هذا يختلف عن FAILED_PRECONDITION. يشير الرمز INVALID_ARGUMENT إلى الوسيطات التي تتضمّن مشاكل بغض النظر عن حالة النظام (مثل اسم ملف بتنسيق غير صحيح).

تعيين HTTP: 400 طلب غير صالح

DEADLINE_EXCEEDED

انتهت المهلة قبل اكتمال العملية. بالنسبة إلى العمليات التي تغيّر حالة النظام، قد يتم عرض هذا الخطأ حتى إذا اكتملت العملية بنجاح. على سبيل المثال، قد يكون قد تأخّر وصول استجابة ناجحة من خادم لفترة طويلة بما يكفي لانتهاء المهلة.

تعيين HTTP: انتهت مهلة الوكيل 504

NOT_FOUND

لم يتم العثور على بعض العناصر المطلوبة (مثل ملف أو دليل).

ملاحظة لمطوّري الخوادم: في حال رفض طلب لفئة كاملة من المستخدمين، مثل طرح الميزة تدريجيًا أو قائمة مسموح بها غير موثَّقة، يمكن استخدام NOT_FOUND. إذا تم رفض طلب لبعض المستخدمين ضمن فئة من المستخدمين، مثل التحكّم في الوصول المستنِد إلى المستخدم، يجب استخدام PERMISSION_DENIED.

تعيين HTTP: 404 لم يتم العثور عليه

ALREADY_EXISTS

الكيان الذي حاول العميل إنشاؤه (مثل ملف أو دليل) متوفّر مسبقًا.

تعيين HTTP: 409 تعارض

PERMISSION_DENIED

المتصل ليس لديه إذن لتنفيذ العملية المحدّدة. يجب عدم استخدام PERMISSION_DENIED لحالات الرفض الناتجة عن استنفاد بعض الموارد (استخدِم RESOURCE_EXHAUSTED بدلاً من ذلك لهذه الأخطاء). يجب عدم استخدام PERMISSION_DENIED إذا تعذّر تحديد هوية المتصل (استخدِم UNAUTHENTICATED بدلاً من ذلك لهذه الأخطاء). رمز الخطأ هذا لا يشير إلى صلاحية الطلب أو وجود الكيان المطلوب أو استيفاء شروط مسبقة أخرى.

تعيين HTTP: 403 محظور

UNAUTHENTICATED

لا يتضمّن الطلب بيانات اعتماد مصادقة صالحة للعملية.

تعيين HTTP: 401 غير مصرّح به

RESOURCE_EXHAUSTED

تم استنفاد بعض الموارد، ربما في حصة كل مستخدم، أو ربما نفدت مساحة نظام الملفات بالكامل.

تعيين HTTP: 429 طلبات كثيرة جدًا

FAILED_PRECONDITION

تم رفض العملية لأنّ النظام ليس في الحالة المطلوبة لتنفيذ العملية. على سبيل المثال، الدليل المراد حذفه غير فارغ، ويتم تطبيق عملية rmdir على دليل غير دليل، وما إلى ذلك.

يمكن لمنفّذِي الخدمة استخدام الإرشادات التالية لاختيار بين FAILED_PRECONDITION وABORTED وUNAVAILABLE: (أ) استخدِم UNAVAILABLE إذا كان بإمكان العميل إعادة محاولة طلب الاتصال الذي تعذّر إكماله فقط. (ب) استخدِم ABORTED إذا كان على العميل إعادة المحاولة على مستوى أعلى. على سبيل المثال، عندما يتعذّر إجراء عملية اختبار وضبط يحدّدها العميل، يشير ذلك إلى أنّه على العميل إعادة تشغيل تسلسل القراءة والتعديل والكتابة. (ج) استخدِم FAILED_PRECONDITION إذا كان يجب ألا يحاول العميل إعادة المحاولة إلى أن يتم إصلاح حالة النظام بشكل صريح. على سبيل المثال، إذا تعذّر تنفيذ rmdir لأنّ المجلد غير فارغ، يجب عرض FAILED_PRECONDITION لأنّه لا يجب أن يعيد العميل المحاولة ما لم يتم حذف الملفات من المجلد.

تعيين HTTP: 400 طلب غير صالح

ABORTED

تم إلغاء العملية، عادةً بسبب مشكلة في التوافق، مثل تعذُّر التحقّق من التسلسل أو إلغاء المعاملة.

اطّلِع على الإرشادات أعلاه لتحديد ما إذا كنت تريد استخدام FAILED_PRECONDITION أو ABORTED أو UNAVAILABLE.

تعيين HTTP: تعارض 409

OUT_OF_RANGE

تمت محاولة العملية تجاوز النطاق الصالح. على سبيل المثال، الانتقال إلى ما بعد نهاية الملف أو قراءته

وعلى عكس INVALID_ARGUMENT، يشير هذا الخطأ إلى مشكلة قد يتم حلّها في حال تغيّر حالة النظام. على سبيل المثال، سينشئ نظام الملفات بسعة 32 بت INVALID_ARGUMENT إذا طُلب منه القراءة من بدء غير ضمن النطاق [0،2^32-1]، ولكنه سينشئ OUT_OF_RANGE إذا طُلب منه القراءة من بدء يتجاوز حجم الملف الحالي.

هناك قدر كبير من التداخل بين FAILED_PRECONDITION وOUT_OF_RANGE. ننصحك باستخدام OUT_OF_RANGE (الخطأ الأكثر تحديدًا) عند انطباقه لكي يتمكّن المتصلون الذين يكرّرون الخطوات في مساحة من البحث بسهولة عن خطأ OUT_OF_RANGE لرصده عند الانتهاء.

تعيين HTTP: 400 طلب غير صالح

UNIMPLEMENTED

لم يتم تنفيذ العملية أو أنها غير متاحة أو مفعَّلة في هذه الخدمة.

تعيين HTTP: 501 Not Implemented

INTERNAL

أخطاء داخلية. وهذا يعني أنّه تمّ انتهاك بعض القيم الثابتة التي يتوقّعها النظام الأساسي. رمز الخطأ هذا محجوز للأخطاء الجسيمة.

تعيين HTTP: 500 خطأ في الخادم الداخلي

UNAVAILABLE

هذه الخدمة غير متاحة حاليًا. من المرجّح أنّ هذا الموقف عابر، ويمكن تصحيحه من خلال إعادة المحاولة مع الانتظار. يُرجى العِلم أنّه ليس من الآمن دائمًا إعادة محاولة العمليات غير المقصودة.

اطّلِع على الإرشادات أعلاه لتحديد ما إذا كنت تريد استخدام FAILED_PRECONDITION أو ABORTED أو UNAVAILABLE.

تعيين HTTP: 503 الخدمة غير متاحة

DATA_LOSS

ثمة بيانات تالفة أو مفقودة ويتعذّر استرجاعها.

تعيين HTTP: 500 خطأ في الخادم الداخلي

UpdatedWidget

بالنسبة إلى التطبيقات المصغّرة selectionInput، يتم عرض اقتراحات الإكمال التلقائي لقائمة متعددة الاختيارات.

تمثيل JSON
{
  "widget": string,

  // Union field updated_widget can be only one of the following:
  "suggestions": {
    object (SelectionItems)
  }
  // End of list of possible types for union field updated_widget.
}
الحقول
widget

string

رقم تعريف التطبيق المصغّر الذي تم تعديله يجب أن يتطابق رقم التعريف مع رقم التعريف للتطبيق المصغّر الذي أدّى إلى طلب التعديل.

حقل الربط updated_widget تم تعديل الأداة استجابةً لإجراء المستخدم. يمكن أن يكون updated_widget واحدًا فقط مما يلي:
suggestions

object (SelectionItems)

قائمة بنتائج الإكمال التلقائي للتطبيقات المصغّرة

SelectionItems

قائمة بنتائج الإكمال التلقائي للتطبيقات المصغّرة

تمثيل JSON
{
  "items": [
    {
      object (SelectionItem)
    }
  ]
}
الحقول
items[]

object (SelectionItem)

مصفوفة من عناصر SelectionItem

SlashCommand

أمر يبدأ بشرطة مائلة في Google Chat

تمثيل JSON
{
  "commandId": string
}
الحقول
commandId

string (int64 format)

رقم تعريف أمر الشرطة المائلة الذي تمّ استدعاؤه

MatchedUrl

عنوان URL مطابق في رسالة Chat يمكن لتطبيقات Chat معاينة عناوين URL المطابقة. لمزيد من المعلومات، يُرجى الاطّلاع على معاينة الروابط.

تمثيل JSON
{
  "url": string
}
الحقول
url

string

النتائج فقط. عنوان URL الذي تمت مطابقته

EmojiReactionSummary

عدد المستخدمين الذين تفاعلوا مع رسالة باستخدام رمز تعبيري محدَّد.

تمثيل JSON
{
  "emoji": {
    object (Emoji)
  },
  "reactionCount": integer
}
الحقول
emoji

object (Emoji)

النتائج فقط. الرمز التعبيري المرتبط بالتفاعلات

reactionCount

integer

النتائج فقط. إجمالي عدد التفاعلات باستخدام الرمز التعبيري المرتبط

DeletionMetadata

معلومات حول رسالة تم حذفها يتم حذف رسالة عند ضبط deleteTime.

تمثيل JSON
{
  "deletionType": enum (DeletionType)
}
الحقول
deletionType

enum (DeletionType)

يشير إلى المستخدم الذي حذف الرسالة.

DeletionType

المستخدم الذي حذف الرسالة وطريقة حذفها ويمكن إضافة المزيد من القيم في المستقبل.

عمليات التعداد
DELETION_TYPE_UNSPECIFIED هذه القيمة غير مستخدمة.
CREATOR حذف المستخدم رسالته.
SPACE_OWNER حذف مالك المساحة الرسالة.
ADMIN حذف مشرف Google Workspace الرسالة.
APP_MESSAGE_EXPIRY حذف تطبيق Chat رسالته عند انتهاء صلاحيتها.
CREATOR_VIA_APP حذف تطبيق Chat الرسالة بالنيابة عن المستخدم.
SPACE_OWNER_VIA_APP حذف تطبيق Chat الرسالة نيابةً عن مالك المساحة.

QuotedMessageMetadata

معلومات حول رسالة مقتبسة

تمثيل JSON
{
  "name": string,
  "lastUpdateTime": string
}
الحقول
name

string

النتائج فقط. اسم المورد للرسالة المقتبسة

التنسيق: spaces/{space}/messages/{message}

lastUpdateTime

string (Timestamp format)

النتائج فقط. الطابع الزمني لوقت إنشاء الرسالة المقتبسة أو وقت آخر تعديل لها

AttachedGif

صورة GIF يتم تحديدها من خلال عنوان URL.

تمثيل JSON
{
  "uri": string
}
الحقول
uri

string

النتائج فقط. عنوان URL الذي يستضيف صورة GIF

AccessoryWidget

أداة تفاعلية واحدة أو أكثر تظهر في أسفل الرسالة لمعرفة التفاصيل، يُرجى الاطّلاع على إضافة تطبيقات مصغّرة تفاعلية في أسفل الرسالة.

تمثيل JSON
{

  // Union field action can be only one of the following:
  "buttonList": {
    object (ButtonList)
  }
  // End of list of possible types for union field action.
}
الحقول
حقل الربط action نوع الإجراء. يمكن أن يكون action واحدًا فقط مما يلي:
buttonList

object (ButtonList)

قائمة بالأزرار

الطُرق

create

لإنشاء رسالة في مساحة Google Chat

delete

لحذف رسالة

get

عرض تفاصيل عن رسالة

list

تعرض هذه الصفحة الرسائل في مساحة يكون المتصل عضوًا فيها، بما في ذلك الرسائل الواردة من الأعضاء والمساحات المحظورة.

patch

يتم تعديل رسالة.

update

تعديل رسالة