سيتم إيقاف "إجراءات المحادثة" في 13 حزيران (يونيو) 2023. لمزيد من المعلومات، يُرجى الاطّلاع على إنهاء إجراءات المحادثة.

دليل مستخدم gactions

تنظيم صفحاتك في مجموعات يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.

يوضّح لك هذا الدليل كيفية استخدام أداة واجهة سطر الأوامر gactions (CLI) في سيناريوهات الاستخدام الشائعة. للحصول على معلومات عن إنشاء "المهام الشاملة"، اطّلِع على مستندات إنشاء "إجراءات المحادثة".

مزامنة المشروع

عند استخدام "حزمة تطوير البرامج (SDK) للإجراءات"، تكون gactions هي الأداة التي تؤدي إلى مزامنة مشاريع الإجراءات بين وحدة تحكّم "المهام" ونظام الملفات المحلي.

تُصدِّر عمليات gactions pull مشروعًا من "وحدة تحكّم المهام" إلى نظام الملفات المحلي، وتؤدي عمليات gactions push إلى إرسال مشروع من نظام الملفات المحلي إلى "وحدة تحكّم المهام".

تنزيل "الإجراءات" من "وحدة تحكّم المهام"

يمكنك تشغيل gactions pull لنسخ إعداد مشروع "المهام" إلى نظام الملفات المحلي.

يمكن تمرير project-id للمشروع الذي تريد نسخه على سطر الأوامر، أو كتابته في ملف settings/settings.yaml. في حال توفّرهما معًا، يمنح سطر الأوامر (CLI) الأولوية على القيمة التي تم تمريرها كخيار.

mkdir -p myAction/sdk
cd myAction/sdk
gactions pull --project-id my-project-id
Pulling your project files from Draft for a project id: "my-project-id"
✔ Done. You should see the files written in path/to/myAction/sdk
ls -l
total 8
drwxr-x---  3 user  primarygroup   96 May  7 10:00 actions
drwxr-x---  4 user  primarygroup  128 May  7 10:00 custom
-rw-r-----  1 user  primarygroup   15 May  7 10:00 manifest.yaml
drwxr-x---  3 user  primarygroup   96 May  7 10:00 settings
vi settings/settings.yaml
// change projectId to "my-other-project-id"
gactions pull
Pulling your project files from Draft for a project id: "my-other-project-id"
path/to/myAction/sdk/manifest.yaml already exists. Would you like to overwrite it?. [y/n]
...
✔ Done. You should see the files written in path/to/myAction/sdk

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

تحدد العلامة --version-id النسخة المراد سحبها.

mkdir -p myAction/sdk
cd myAction/sdk
gactions pull --project-id my-project-id --version-id my-version-id
Pulling version "my-version-id" of the project "my-project-id" from Actions Console...
✔ Done. You should see the files written in path/to/myAction/sdk
ls -l
total 8
drwxr-x---  3 user  primarygroup   96 May  7 10:00 actions
drwxr-x---  4 user  primarygroup  128 May  7 10:00 custom
-rw-r-----  1 user  primarygroup   15 May  7 10:00 manifest.yaml
drwxr-x---  3 user  primarygroup   96 May  7 10:00 settings

استخدم العلامة --force إذا كنت ترغب في استبدال النُسخ المحلية من الملف بدون أن يُطلب منك التأكيد. استخدم العلامة --clean لإزالة أي من الملفات المحلية غير الموجودة في المسودة أو الإصدار البعيد. استخدمهما معًا للحصول على نسخة مطابقة لمشروع وحدة تحكم "الإجراءات".

touch local_file.txt
gactions pull --force
Pulling your project files from Draft for a project id: "my-project-id"
[WARNING] 2020/05/07 17:34:32 path/to/myAction/sdk/local_file.txt is not present in the draft of your Action. To remove, run pull with --clean flag.
✔ Done. You should see the files written in path/to/myAction/sdk
gactions pull --force --clean
Pulling your project files from Draft for a project id: "my-project-id"
[WARNING] 2020/05/07 17:43:44 path/to/myAction/sdk/local_file.txt is not present in the draft of your Action. Removing path/to/myAction/sdk/local_file.txt.
✔ Done. You should see the files written in path/to/myAction/sdk

نشر مسودة مشروع وحدة تحكم "المهام مع مساعد Google"

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

gactions push
Pushing your project files to your Actions console draft for a project id: "my-project-id". This may take a few minutes.
Sending configuration files
Waiting for server to respond.
✔ Done. You can now navigate to the Actions Console: https://console.actions.google.com/project/my-project-id/overview to view your project. If you want to test your changes in the simulator, run "gactions deploy preview"

استيراد مشروع حالي من نظام إدارة شفرة مصدر

إذا كنت ترغب في العمل على مشروع حالي من نسخة سابقة في نظام التحكم في الإصدار:

  1. راجع المراجعة المستهدفة (حسب النظام).
  2. استبدال قيمة projectId في settings.yaml للمشروع.
  3. اختياريًا، شغّل gactions push لنسخ ملفات التهيئة المحلية إلى مشروع الإجراءات.
git clone https://github.com/my/repo.git
Cloning into 'repo'...
remote: Enumerating objects: 10, done.
remote: Counting objects: 100% (10/10), done.
remote: Compressing objects: 100% (9/9), done.
remote: Total 51 (delta 3), reused 3 (delta 1), pack-reused 41
Receiving objects: 100% (51/51), 36.86 KiB | 3.69 MiB/s, done.
Resolving deltas: 100% (11/11), done.
cd repo/sdk/
vi settings/settings.yaml
// change the value of `projectId`
gactions push

إصدارات البيانات

شغِّل gactions versions list لعرض تفاصيل حول إصدارات الإجراء. لمعرفة المزيد من المعلومات عن حالات الإصدارات، يُرجى الرجوع إلى مرجع الحالة.

gactions versions list
Version         Status          Last Modified By        Modified On     
1           Created     your-email@your-domain.com  2020-09-28 20:22:04

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

نشر المشاريع

يسمح لك الأمر gactions deploy بنشر مشروعك لاختباره في محاكي الإجراءات أو نشره في قنوات الإصدار الأولي/التجريبي/الإنتاجي.

المعاينة في المحاكي

شغِّل gactions deploy preview لنشر المهمّة في "معاينة"، ما يتيح لك اختبار المهمّة في وحدة التحكّم بدون الحاجة إلى تعديل إصدار مشروع المهمّة أو التأثير في مطوّري البرامج الآخرين. بمعنى آخر، لن يتم نشر أي من التغييرات التي تجريها في نظام الملفات المحلي إلى الإصدارات المنشورة من مشروع الإجراءات، ولكنها تكون متاحة للاختبار باستخدام نسخة المعاينة.

gactions deploy preview
Deploying your project files to your Actions console preview for a project id: "my-project". This may take a few minutes.
Sending configuration files
Waiting for server to respond.
✔ Done. You can now navigate to the Actions Console simulator to test your changes: http://console.actions.google.com/project/my-project/simulator?disableAutoPreview

إنشاء إصدارات

يمكنك تشغيل gactions deploy لإنشاء إصدارات إصدارات لقنوات ألفا/تجريبية/الإنتاجية والتي يمكنك إدارتها من خلال قسم نشر في وحدة تحكم الإجراءات. ويمكنك استخدامه لاختبار الإصدارات المرشحة من "الإجراء" مع قنوات الإصدار الأولي و/أو القنوات التجريبية، ثم نقل المرشح إلى مرحلة الإنتاج عندما تكون راضيًا عن التعليقات.

gactions deploy alpha
Deploying your project files to a actions.channels.Alpha channel for a project id: "my-project-id"
Sending configuration files
Waiting for server to respond.
✔ Done. Your Action was deployed to actions.channels.Alpha channel. You can check status of deployment in the Actions Console.

قنوات إصدار القوائم

يمكنك تشغيل gactions release-channels list لعرض تفاصيل حول قنوات الإصدار لإجراءك. يمكنك استخدام هذا الأمر لتحديد النسخة التي تم نشرها أو التي في انتظار المراجعة لكل قناة.

gactions release-channels list
Release Channel             Current Version             Pending Version
alpha                   1                     N/A

ربط الحسابات

يتيح لك الأمران gactions encrypt وgactions decrypt إدارة أسرار عميل OAuth2. هذه الأوامر خاصة بربط الحسابات.

ترميز أسرار عميل ربط OAuth2

يمكنك تشغيل gactions encrypt لإضافة أسرار العميل بأمان لتدفقات ربط حساب رمز OAuth2 الخاص بشفرة المصادقة، أو تشفير الأسرار الحالية باستخدام مفتاح تشفير جديد.

gactions encrypt
Write your secret: *********************
Encrypting your client secret
path/to/myAction/sdk/settings/accountLinkingSecret.yaml already exists. Would you like to overwrite it?. [y/n]
y
✔ Done. Encrypted secret was written to path/to/myAction/sdk/settings/accountLinkingSecret.yaml

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

شغِّل gactions decrypt إذا كنت تحتاج إلى الوصول مؤقتًا إلى قيمة النص العادي لسر المشروع. يطبع الأمر القيمة إلى ملف نصي من اختيارك. ننصح بأن يكون الملف الوجهة خارج المجلد الجذر للمشروع، لتجنب أي تسرب غير مقصود لقيمة النص العادي.

gactions decrypt ../../burn_after_read.txt
Decrypting your client secret
✔ Done. Check path/above/myActions/burn_after_read.txt to find decrypted client secret.
vi ../../burn_after_read.txt
rm ../../burn_after_read.txt