OOZOU
تواصلوا معنا
العودة إلى TIL
shell

إرسال الرسائل إلى Slack باستخدام cURL

13 أكتوبر 2020

يتيح لكم Slack إرسال الرسائل عبر خدمة Webhooks

أنشئوا webhook لأي قناة، وبعدها يمكنكم إرسال الإشعارات باستخدام curl.

$ curl -X POST -H 'Content-type: application/json' --data '{"text": "Something important"}'  https://hooks.slack.com/services/YOUR/TOKENIZED/URL

إعداد الـ Incoming Webhooks

الـ incoming webhooks طريقة بسيطة لنشر الرسائل من التطبيقات إلى Slack. ولإعداد incoming webhook، عليكم إنشاء تطبيق Slack وتفعيل الـ incoming webhooks في إعدادات التطبيق. إليكم دليلًا خطوة بخطوة:

  1. سجّلوا الدخول إلى حسابكم في Slack وانتقلوا إلى الصفحة الرئيسية لـ Slack API.
  2. انقروا على زر “Create an app” واختاروا “From scratch.”
  3. أدخلوا اسمًا لتطبيقكم واختاروا مساحة العمل التي تريدون نشره فيها.
  4. انقروا على زر “Create App”.
  5. في إعدادات التطبيق، انتقلوا إلى قسم “Features” وانقروا على “Incoming Webhooks.”
  6. شغّلوا مفتاح التبديل لتفعيل الـ incoming webhooks.
  7. انقروا على زر “Add New Webhook to Workspace”.
  8. اختاروا القناة التي تريدون نشر الرسائل فيها وانقروا على “Allow.”

باتباع هذه الخطوات، يمكنكم إنشاء تطبيق Slack وإعداد incoming webhook لبدء إرسال الرسائل إلى القناة التي اخترتموها.

إنشاء الـ Payload

لإرسال رسالة عبر incoming webhook، عليكم إنشاء payload يتضمن نص الرسالة وبعض الخيارات. إليكم الطريقة:

  1. حدّدوا نوع محتوى الـ payload. في الـ incoming webhooks يكون نوع المحتوى دائمًا “application/json.”
  2. أنشئوا كائن JSON يتضمن نص الرسالة وأي خيارات إضافية تريدون تضمينها. على سبيل المثال: 1.
{ "text": "Hello, Slack!", "username": "WebhookBot", "icon_emoji": ":ghost:" }
  1. استخدموا أداة مثل curl لإرسال الـ payload إلى رابط الـ incoming webhook.

بإنشاء payload بصيغة JSON صحيحة، تضمنون وصول رسالتكم إلى Slack بشكل سليم عبر الـ incoming webhook.

إرسال الرسائل باستخدام cURL

cURL أداة سطر أوامر يمكنكم استخدامها لإرسال الرسائل إلى Slack عبر incoming webhook. إليكم مثالًا على طريقة استخدامها:

  1. افتحوا الطرفية وانتقلوا إلى المجلد الذي تريدون إرسال الرسالة منه
  2. أنشئوا ملفًا بامتداد .json يتضمن الـ payload. على سبيل المثال، أنشئوا ملفًا باسم message.json بالمحتوى التالي: 1.
{ "text": "Hello, World!" }
  1. استخدموا أمر cURL لإرسال الـ payload إلى رابط الـ incoming webhook: 1.
curl -X POST -H 'Content-Type: application/json' --data @message.json https://hooks.slack.com/services/YOUR/TOKENIZED/URL

باتباع هذه الخطوات، يمكنكم استخدام cURL لإرسال رسالة إلى Slack عبر incoming webhook.

الاختبار واستكشاف الأخطاء

عند اختبار الـ incoming webhooks واستكشاف أخطائها، من الضروري فحص رمز حالة HTTP ومحتوى الاستجابة بحثًا عن أي أخطاء. إليكم بعض الأخطاء الشائعة التي قد تواجهونها:

  • HTTP 400 Bad Request: الـ payload مشوّه أو تنقصه حقول مطلوبة.
  • HTTP 403 Forbidden: رابط الـ incoming webhook غير صالح أو لم يعد متاحًا.
  • HTTP 404 Not Found: القناة أو مساحة العمل غير موجودة.

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

تكامل متقدم مع Slack

الـ incoming webhooks ليست سوى طريقة واحدة للتكامل مع Slack. وللتكاملات الأكثر تقدمًا، يمكنكم استخدام Slack API لإرسال الرسائل واستقبالها وإنشاء bots مخصصة وغير ذلك. إليكم بعض ميزات التكامل المتقدم مع Slack:

  • Web API: تتيح لكم Slack Web API إرسال الرسائل واستقبالها وإنشاء bots مخصصة وغير ذلك.
  • Events API: تتيح لكم Slack Events API تلقي تحديثات في الوقت الفعلي عن أحداث مثل الرسائل والتفاعلات وغيرها.
  • Botkit: إطار عمل لبناء bots مخصصة على Slack.

باستخدام هذه الميزات المتقدمة، يمكنكم بناء تكاملات أكثر تطورًا مع Slack وأتمتة سير العمل وتحسين تجربة المستخدم وغير ذلك.

المزيد حول shell

shell8 ديسمبر 2020

تشغيل أوامر خاصة (incognito) في Bash وZsh

يكفي أن تضعوا مسافة قبل الأمر كي لا يُحفظ في ~/.bash_history. مثال: qrencode -o out.png "Some secret text"

shell22 أكتوبر 2020

ترقية قاعدة بيانات Postgres باستخدام Homebrew

لترقية Postgres يمكنكم تشغيل

shell13 أكتوبر 2020

النسخ عبر Amazon AWS S3 CLI مع تعيين الصلاحيات

افتحوا الطرفية (أو ما يعادلها) والصقوا ما يلي:

هل لديكم فكرة مشروع؟

يسعدنا أن نتعرّف على ما تبنونه.

ابدأوا المحادثةhello@oozou.com
OOZOU Logo

بانكوك · سنغافورة · هونغ كونغ

X
Facebook
Instagram
LinkedIn
OOZOU Co., Ltd.
548 One City Centre
Ploenchit Road
Bangkok 10330
Thailand
+66 2544 0000
hello@oozou.com

الخدمات

  • تطوير الويب
  • وكلاء الذكاء الاصطناعي والذكاء الاصطناعي التوليدي
  • تطوير تطبيقات الجوال
  • تحليلات البيانات وهندستها
  • تصميم تجربة المستخدم وواجهته (UX/UI) وتصميم المنتجات
  • التحوّل الرقمي

الشركة

  • من نحن
  • الوظائف
  • المدونة
  • دراسات الحالة
  • عروض حية
  • تعلّمت اليوم
  • تواصل معنا

المزيد

  • القطاعات
  • شبكة الشركاء
© 2026 OOZOU. جميع الحقوق محفوظة.
سياسة الخصوصيةمدونة قواعد السلوكسياسة مكافحة الرشوة والفساد