نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

dmin آموزش سئو


بسیاری از ما به مشاغلی که با مشکلات سختی روبرو هستند یا خودمان با مشکلات سختی روبرو هستیم کمک می کنیم. اگر برای یک شرکت (یا مشتری) مشکلی کار می کنید ، استفاده از پیامک های پیام کوتاه می تواند راهی برای شما باشد که به خارج از لیست عادی راه حل های خود نگاه کنید و به آنها کمک کنید تا با روشی کاملاً متفاوت موفق شوند. اگر بازاری هستید که به دنبال کار هستید ، اضافه کردن این موارد به لیست مهارت های شما می تواند به معنای حفظ همه چیز باشد در حالی که بسیاری از درهای معمولی بسته هستند – یا اینکه درهای جدید را باز می کنید.

آنچه خواهید گرفت

در این پست ، من دستورالعمل ها و کد هایی را برای شما ارائه می دهم که نه تنها یک ، بلکه یک سری چت بات های مبتنی بر متن که توسط Google Sheets قابل مدیریت هستند را به شما ارائه می دهم.

مثال در اینجا برای کار با رستوران ها تنظیم شده است ، اما می تواند برای کار با هر مشاغلی که نیاز به دریافت سفارشات دارد ، آنها را در مقابل موجودی / فهرست ها بررسی کرده و آنها را برای تحقق بخشیدن یادداشت کنید.

پس از راه اندازی سیستم ، هیچ کد نویسی لازم برای ایجاد یک chatbot جدید مبتنی بر پیام کوتاه برای یک تجارت جدید وجود نخواهد داشت. بعلاوه ، این تجارت می تواند با به روزرسانی یک صفحه Google ، جزئیات اصلی (مانند سفارشات دریافتی و یک فهرست) را مدیریت کند و همه این موارد را از بسیاری گزینه های دیگر قابل دسترسی تر کند.

اما اول ، برخی زمینه ها.

برخی زمینه ها

در سپتامبر سال ۲۰۱۷ ، به عنوان یکی از اولین پروژه های بزرگ اشتیاق من در Distilled ، یک پست وبلاگ Moz نوشتم که به مردم می گفت چگونه چت رو بسازید و کد نمونه ای را تهیه کنید.

در ماه آوریل ، یک ایمیل از مردی به نام الکساندر سیلوستر دریافت کردم. الکس “تلاش غیر انتفاعی برای کمک به صاحبان مشاغل کوچک محلی را آغاز کرده است تا در این مواقع چالش برانگیز حرکت کنند ، تا آنجا که ممکن است شغل بیشتری صرفه جویی کرده و در عین حال که به صاف کردن منحنی کمک می کند ، به خدمات جامعه خود ادامه دهند.”

این تلاش با تمرکز روی رستوران ها آغاز شد. الكس پست من در سال ۲۰۱۷ را پیدا كرده است (مولی مقدس ، بازاریابی محتوا!) و از او پرسیده بود كه آیا من می توانم به تیمش كمك كنم تا چت بات ایجاد كند. ما در مورد برخی از شرایط اصلی برای ربات توافق کردیم:

  • این کار باید کاملاً در قالب پیامک کار کند (و اگر سفارش فوق العاده پیچیده بود ، باید بتوانید با رستوران تماس مستقیم برقرار کنید).
  • اجرای آن باید تا حد ممکن نزدیک باشد.
  • رستوران ها می بایست بدون تنظیم حساب های ویژه ، سفارشات را چک کنند ، منوهای را به روز کنند و غیره.

راه حلی که توافق کردیم سه بخش داشت:

  • Twilio (پرداخت شده): شماره تلفن را تهیه می کند و بخش اعظم مکالمه را به عقب و جلو می برد.
  • عملکردهای Google Cloud (نیمه رایگان): وقتی URL به آن گفته می شود کد اجرا می شود (از جمله به روزرسانی بانک اطلاعاتی ما برای رستوران) و پاسخی را برمی گرداند.
  • برگه Google (رایگان): بستر بانک اطلاعاتی ما. ما یک برگه داریم که همه مشاغل با استفاده از chatbot ما را لیست می کند ، و برای هر کسب و کار به برگه های Google مجزا پیوند می زند.

من به نوبه خود شما را از طریق هر یک از این مؤلفه ها می گیرم و به شما می گویم که چگونه با آنها کار کنید.

اگر به این پست باز می گردید ، یا فقط با یک منطقه به کمک نیاز دارید ، احساس راحتی کنید تا به قسمت خاصی که به آن علاقه دارید پرش کنید:

قیمت گذاری
wتویلیو
ets صفحات Google
F عملکردهای Google Cloud
est آزمایش ربات
re چیزهایی را فاش کنید و از آن لذت ببرید
ostPostscript – هک های عجیب و غریب

قیمت گذاری

این همه باید خیلی ارزان انجام شود – من در حال سفارش مثل چهار سنت هستم.

حتی با این وجود ، همیشه اطمینان حاصل کنید که هشدارهای قیمت گذاری به آدرس ایمیلی که شما به طور فعال نظارت می کنید وجود دارد.

وقتی تازه کار را شروع کرده اید یا تغییری ایجاد کرده اید (مانند اضافه کردن کارکردهای جدید یا مشاغل جدید) ، اطمینان حاصل کنید که اعتبارات خود را طی چند هفته آینده بازپرداخت کنید تا بدانید که چه اتفاقی می افتد.

Twilio

شماره تلفنهای محلی Twilio حدود ۱٫۰۰ دلار در هر ماه هزینه دارند. هزینه ارسال و دریافت متن حدود ۰٫۰۰۷۵ دلار خواهد بود ، و استودیوی Twilio – که ما برای انجام “مکالمه” زیادی انجام می دهیم – هر بار فعال سازی آن ۰٫۰۱ دلار است (اولین هزار در هر ماه رایگان).

بنابراین ، با فرض اینکه شما ۲،۵۰۰ سفارش متن در ماه دارید و هر سفارش حدود ۵ پیام متنی طول می کشد ، در کل در حدود ۱۰۰ دلار در هر ماه است.

برگه Google

صفحات Google رایگان و عالی است. زنده باد برگه های Google.

عملکردهای Google Cloud

Google جزئیات قیمت گذاری کامل را در اینجا به اشتراک می گذارد ، اما موارد مهمی که باید درباره آنها بدانید عبارتند از:

۱٫ اعتبارات تبلیغاتی

شما یک دوره آزمایشی رایگان را دریافت می کنید که حداکثر یک سال طول می کشد ، و شامل ۳۰۰ دلار اعتبار تبلیغاتی می شود ، بنابراین قبل از خرج کردن هزینه های خود را خرج می کنید. ما در پایان یک ماه از تست $ ۰٫۰۰ (از جمله اعتبار تبلیغاتی) هزینه کرده ایم. به این دلیل است که یک کمک هزینه ماهیانه نیز وجود دارد.

۲٫ کمک هزینه رایگان و ساختار قیمت گذاری

حتی جدا از اعتبار رایگان ، Google هر ماه کمک هزینه رایگان می کند. اگر فرض کنیم که هر سفارش حدود ۵ فعال سازی کد ما نیاز دارد و کد ما برای اجرای هر بار پنج ثانیه طول می کشد (که این در حالی است که گاهی اوقات Google Sheets کم است) ، می توانستیم قبل از هر ماه بیش از ۴۰۰۰۰۰ سفارش دریافت کنیم. ما به اعتبارهای تبلیغاتی فرو می رویم.

Twilio

Twilio یک پلتفرم پرداختی است که به شما امکان می دهد یک شماره تلفن بخرید و از آن شماره بطور خودکار بر اساس ورودی پاسخ های خاصی ارسال کنید.

اگر نمی خواهید اطلاعات بیشتری درباره Twilio بخوانید و فقط جریان چت روم Twilio را می خواهید ، ایناهاش.

مرحله ۱: یک شماره تلفن Twilio بخرید

پس از خریدن شماره تلفنی ، می توانید متن های مربوط به آن شماره را دریافت کنید و در حساب Twilio شما پردازش می شوند. همچنین می توانید متن را از آن شماره ارسال کنید.

مرحله ۲: شماره تلفن خود را پیدا کنید

با کلیک بر روی منوی Twilio در گوشه بالا سمت چپ و سپس کلیک بر روی “شماره تلفن” می توانید لیست شماره های خریداری شده خود را مشاهده کنید. یا ، فقط می توانید به شماره های تلفن / ورودی مراجعه کنید.

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

هنگامی که شماره تلفن خود را ذکر کردید ، یادداشت کنید.

مرحله ۳: استودیوی جریان خود را ایجاد کنید

استودیو ویرایشگر کشیدن و رها کردن Twilio است که به شما امکان می دهد ساختار گفتگوی خود را ایجاد کنید. استودیوی “جریان” فقط نام گفتگوی خاصی است که شما ساخته اید.

می توانید با کلیک دوباره روی منوی Twilio و کلیک بر روی “Studio” در زیر “Runtime” به استودیوی Twilio برسید.

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

با کلیک روی “ایجاد یک جریان” یک جریان جدید ایجاد کنید.

هنگامی که شما یک جریان جدید ایجاد می کنید ، این گزینه به شما داده می شود که از ابتدا شروع کنید یا از یکی از گزینه های داخلی استفاده کنید تا جریان خود را برای شما ایجاد کند (اگرچه آنها به اندازه الگوی من عمق نخواهند داشت). اشتراک گذاری در اینجا)

اگر می خواهید از نسخه ای از جریان که من و الکس ساخته ایم استفاده کنید ، “وارد کردن از JSON” را انتخاب کنید و روی “بعدی” کلیک کنید. سپس این پرونده را بارگیری کرده و محتویات را در کادر ارائه شده کپی کنید.

اطمینان حاصل کنید که آن با یک بریس تک starts شروع می شود و با یک بریس تک ends به پایان می رسد. کادر ارائه شده به صورت خودکار {} در آن وجود دارد و اگر قبل از چسباندن آنها را حذف نکنید ، دو برابر می شوید و ورودی شما را نمی پذیرید.

اگر همه چیز خوب پیش برود ، به شما جریانی ارائه می شود که به شرح زیر است:

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

ممکن است از شما سؤال شود: به معنای همه چیز مقدس ، آن لکه های اسپاگتی رنگی چیست؟

این جریان استودیوی Twilio است که ما ایجاد کرده ایم و نگران نباشید ، در اصل به یکسری سوالات چند گزینه ای تقسیم می شود ، که در آن پاسخ هر یک مشخص می کند که شما در کجای دیگری جریان دارید.

همه چیز روی بوم که می بینید ویجت از کتابخانه ویجت استودیو Twilio است که با شرایط “در صورت این ، پس از آن” متصل شده است.

روند استودیوی جریان

قبل از ورود به بلوک های خاص در این فرآیند ، در اینجا یک مرور کلی از آنچه اتفاق می افتد آورده شده است:

  1. مشتری یکی از شماره های Twilio ما را پیام می دهد
  2. براساس شماره مشخص شده ی پیام داده شده ، ما رستوران مرتبط با آن را جستجو می کنیم. سپس از نام و منوی ذخیره شده رستوران برای پیام مشتری استفاده می کنیم.
  3. اگر مشتری سعی در سفارش خارج از منو داشته باشد ، ما تماس تلفنی را به رستوران وصل می کنیم
  4. اگر مشتری چیزی را از فهرست منوی ما انتخاب کرد ، ما از نام آنها سؤال می کنیم ، سپس سفارش خود را در صفحه برای آن رستوران ضبط کرده و به آنها می گوید چه موقع برای انتخاب سفارش خود وارد می شوند
  5. وقتی / هنگامی که کاربر به ما پیام می دهد که در خارج از رستوران است ، از ما می پرسد که آیا آنها پیاده هستند / توضیحی از وسیله نقلیه آنها. توضیحات وسیله نقلیه را در همان برگه رستوران ضبط می کنیم.

بگذارید چند نمونه از بلوک های ساختمانی را بررسی کنیم؟

ماشه اولیه
عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

ماشه اولیه دقیقاً در آغاز هر جریان ظاهر می شود و مخاطب ورودی را بر اساس اینکه آیا یک پیام متنی ، یک تماس تلفنی است یا اینکه کد به آن دسترسی داشته باشد ، تقسیم می کند.

“پیام ورودی” به این معنی است که مخاطب از طریق پیام متنی بوده است. فعلاً فقط باید درباره آن موضوع نگران باشیم ، بنابراین بگذارید روی خط چپ متمرکز شویم.

این واقعیت را ضبط کنید که در حال شروع تعامل جدید هستیم
عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

در مرحله بعد ، ما از یک “تنظیم متغیرها” استفاده می کنیم ، که می توانید آن را از کتابخانه ویجت بگیرید.

بلوک “تنظیم متغیرها” به ما امکان می دهد اطلاعات ضبط را ذخیره کنیم که بعدا می خواهیم به آنها مراجعه کنیم. به عنوان مثال ، ما فقط با تعیین “مرحله” تعامل خود شروع می کنیم. ما می گوییم که مرحله “شروع” است مانند گذشته ، ما در آغاز تعامل هستیم. بعداً بررسی خواهیم کرد که ارزش مرحله چه در استودیو و چه با کد خارجی ما چیست ، بنابراین می دانیم چه کاری باید انجام دهیم ، چه موقع.

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)
منوی ما را بگیرید

ما فرض می کنیم اگر کسی به ما پیام داد ، و باعث ایجاد chatbot شد ، آنها به دنبال سفارش هستند تا مرحله بعدی این باشد که منوی قابل اجرا را بررسی کنیم.

اکنون ، فقط می توانیم منو را مستقیماً در استودیو بنویسیم و بگوییم هر وقت کسی پیامی را برای ما ارسال کند ، با همان لیست گزینه ها پاسخ می دهیم. اما این یک مشکل زوج دارد.

اول ، به این معنی است که اگر می خواهیم این کار را برای چندین رستوران تنظیم کنیم ، باید هرکدام یک جریان جدید ایجاد کنیم.

مسئله بزرگتر این است که رستوران ها اغلب منوهای خود را تغییر می دهند. اگر می خواهیم این تعداد زیادی رستوران مختلف به ما ارائه دهند ، نمی خواهیم همه وقت خود را صرف دستیابی به روزرسانی Twilio در هر بار رستوران از یک عنصر کنیم.

بنابراین چیزی که ما واقعاً به آن احتیاج داریم این است که رستوران ها بتوانند فهرست های خود را فهرست کنند. اینجاست که Google Sheets وارد می شود ، اما بعداً به آن خواهیم رسید. در Twilio ، ما فقط باید بتوانیم از اطلاعات خارجی بخواهیم و آن اطلاعات خارجی را به کاربر منتقل کنیم. برای انجام این کار از یک ابزارک Webhook استفاده می کنیم:

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

این ویجت درخواستی را برای URL ایجاد می کند ، پاسخ می دهد و سپس به ما اجازه می دهد تا از محتوای پاسخ در پیام ها استفاده کنیم و جریان پیدا کنیم.

اگر درخواست به آدرس اینترنتی موفقیت آمیز باشد ، Twilio به طور خودکار به مرحله موفقیت ما ادامه خواهد داد ، در غیر این صورت می توانیم آن را برای ارسال پاسخ “اوه ، چیزی پیش آمد” با گزینه Fail تنظیم کنیم.

در این حالت ، Webhook ما درخواستی را به آدرس URL توابع Google Cloud (بیشتر درباره آن بعداً) ارائه می دهد. درخواستی که برای ما ارسال می شود شامل اطلاعاتی در مورد کاربر و کارهایی است که ما برای انجام کد نیاز داریم. اطلاعات در قالب JSON خواهد بود (همان فرمی که ما برای وارد کردن جریان Twilio که در بالا به اشتراک گذاشتیم) استفاده می شود.

JSON ما شماره تلفن Twilio اختصاصی را که پیام داده شده است را شامل می شود و ما برای تمایز بین رستوران ها و همچنین شماره تلفنی که با ما تماس گرفته است از این شماره استفاده خواهیم کرد. همچنین محتوای پیام متنی را که ما دریافت کرده ایم و “مرحله” ای را که قبلاً تعیین کرده ایم ، شامل می شود ، بنابراین کد می داند کاربر به دنبال چه چیزی است.

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

سپس کد کارهایی را انجام می دهد (بعداً به آن خواهیم رسید) و اطلاعات مربوط به خود را برمی گرداند. سپس می توانیم به Twilio بگوییم که از بخش هایی از پاسخ در پیام ها استفاده کند.

در پاسخ پیام ارسال کنید

در مرحله بعد می توانیم از اطلاعاتی که دریافت کرده ایم برای ساخت و ارسال پیام به کاربر استفاده کنیم. Twilio شماره ای را که در حال مکالمه با او هستید به یاد می آورد و پیام های شما را به آن شماره ارسال می کند.

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

این ویجت “ارسال و منتظر پاسخ” است ، به این معنی که به محض ارسال این پیام ، Twilio فرض می کند مکالمه به جای پایان دادن به آنجا ادامه دارد.

در این حالت ، ما پیام خوش آمدید خود را می نویسیم. ما می توانستیم فقط محتوای ساده بنویسیم ، اما می خواهیم از برخی متغیرهایی که از ویجت Webhook به دست آورده ایم استفاده کنیم. ما آن ویجت خاص Webhook را “get_options” نامیدیم ، بنابراین با نوشتن به مطالبی که از آن بدست آورده ایم دسترسی پیدا می کنیم:

idge idge widgets.get_options

این پاسخ در JSON برمی گردد و خوشبختانه Twilio بطور خودکار این مسئله را برای ما از بین می برد.

ما می توانیم با نوشتن “تجزیه” و سپس برچسبی که آن اطلاعات را در پاسخ خود داده ایم به قسمتهای مختلف پاسخ دسترسی پیدا کنیم. همانطور که هست ، پاسخ از کد چیزی شبیه به این بود:

“نام”: restaurant_name ،

“dish_string”: “می توانید از پیتزا مارگریتا ، پیتزا هاوایی ، پیتزا گیاهی استفاده کنید”

“اضافات”: “بزرگ ، متوسط ​​، کوچک”

منوی موجود را با نوشتن “{{widgets.get_options.parsed.dishes_string}}” دریافت می کنیم و سپس پیامی را در زیر می نویسیم که برای افرادی که با ربات تماس می گیرند ارسال می شود:

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)
تصمیم گیری را بر اساس پیام انجام دهید

ما نمی توانیم تصور کنیم که همه قصد دارند دقیقاً به همان روش از بات استفاده کنند ، بنابراین باید بتوانیم کاری را که انجام می دهیم بر اساس شرایط خاص تغییر دهیم. ویجت “Split based On …” نحوه انتخاب شرایط خاص است و تعیین می کنیم در صورت برآورده شدن چه کاری انجام می دهیم.

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

در این حالت ، ما از محتوای پاسخ به پیام قبلی خود استفاده می کنیم که با استفاده از {{options_follow_up.inbound.Body access access به آن دسترسی پیدا می کنیم. “Options_follow_up” نام ویجت Send & Wait است که ما فقط درباره آن صحبت کردیم ، “Inbound” به معنی پاسخ است و “Body” به معنی متن موجود در آن است.

بعد شرط گذاشتیم. اگر کاربر با هر چیزی در امتداد خطوط “دیگر” ، “خیر” ، “کمک” و غیره پاسخ دهد ، برای برقراری تماس تلفنی در مسیر دیگری ارسال می شود. اگر آنها به هر چیزی که در آن لیست نیست پاسخ دهند ، ممکن است سعی کنند سفارش دهند ، بنابراین ما سفارش آنها را می گیریم و آن را با کد خود بررسی می کنیم:

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)
تماس برقرار کنید

اگر کاربر بگوید که چیزی غیر از منو می خواهد ، ما باید با رستوران تماس برقرار کنیم. ما این کار را با اولین تماس با کاربر انجام می دهیم:

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)
عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

سپس ، هنگامی که آنها انتخاب شدند ، این تماس را به شماره رستوران که قبلاً در صفحه خود جستجو کرده ایم متصل کنید:

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)
عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

مرحله ۴: جریان استودیوی خود را برای این شماره تلفن انتخاب کنید

دستورالعمل های مرحله دوم را دنبال کنید تا به شماره مشخص شماره تلفن خریداری شده خود بازگردید. سپس به پایین بروید و Studio Flow را که ایجاد کرده اید انتخاب کنید.

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

برگه Google

این گپ چت از دو صفحه Google استفاده می کند.

برگه جستجوی رایگان

در برگه جستجو لیستی از شماره تلفن های Twilio ، رستوران هایی که به آنها اختصاص داده شده است ، و آدرس صفحه Google که اطلاعات مربوط به آن رستوران را در خود جای داده است ، نگه می دارد ، به طوری که می دانیم هرکدام را جستجو کنیم.

برای استفاده از آن باید یک نسخه از برگه ایجاد کنید. من در صفحه ای که من به اشتراک گذاشتم ردیف گنجانده ام و هر ستون را توضیح می دهم. وقتی می دانید چه کاری انجام می دهید این احساس را حذف کنید.

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

ورق رستوران به صورت رایگان

برگه مخصوص رستوران جایی است که ما تمام اطلاعات خود را در مورد رستوران را در یک سری برگه ها درج می کنیم. برای استفاده از آن باید یک نسخه از برگه ایجاد کنید.

سفارشات

تب سفارشات عمدتا توسط کد ما استفاده می شود. به طور خودکار در زمان سفارش ، نام مشتری ، شماره تلفن مشتری و جزئیات سفارش ارسال خواهد شد. به طور پیش فرض FALSE را در “پرداخت / آماده” می نویسد ستون ، که سپس رستوران باید آن را به روز کند.

در مرحله آخر ، فیلمنامه TRUE را به “مشتری اینجا” اضافه می کند. توصیف خودرو را در ستون “PICK UP INFO” ستون کنید و به آن بدهید.

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

زمان انتظار

این یک برگه نسبتاً ساده است ، زیرا حاوی یک سلول است که در آن رستوران می نویسد قبل از آماده شدن سفارشات چه مدت طول می کشد. کد ما آن را استخراج می کند و آن را به Twilio می دهد تا به مشتریان اطلاع دهد که چه مدت منتظر خواهند ماند.

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

ظروف موجود و زبانه های اضافی

در این رستوران ظروف موجود در حال حاضر به همراه تطبیق های ساده با آن ظروف ذکر شده است ، سپس این منوها هنگام تماس با رستوران برای مشتریان ارسال می شوند. هنگامی که کد یک سفارش دریافت می کند ، این دستور را نیز در برابر لیست ظروف ارسال شده برای بررسی اینکه مشتری یکی از گزینه ها را انتخاب می کند ، بررسی می کند.

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)
عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

اسکریپت با استفاده از برگه برگه

لازم نیست به هیچ وجه این را لمس کنید – این فقط احتیاط است برای جلوگیری از کدهای ما به طور تصادفی از نوشتن خود.

وضعیتی را تصور کنید که کد ما یک سفارش دریافت می کند ، اولین سطر خالی را در برگه سفارشات پیدا می کند و آن دستور را در پایین می نویسد. با این حال ، در همان زمان ، شخص دیگری برای همان رستوران سفارش می دهد ، نمونه دیگری از کد ما نیز به دنبال اولین ردیف خالی است ، همان را انتخاب می کند ، و هر دو در همان زمان در آن می نویسند. ما حداقل یک سفارش را از دست می دهیم حتی اگر کد فکر کند همه چیز خوب است.

برای جلوگیری از این امر ، هنگامی که کد ما شروع به استفاده از برگه می کند ، اولین کاری که انجام می دهد این است که مقدار “Script با استفاده از ورق” را به TRUE تغییر دهید و هنگام شروع استفاده از آن ، یادداشت کنید. سپس ، هنگامی که این کار انجام شد ، مقدار آن را به FALSE تغییر می دهد.

اگر اسکریپت ما به استفاده از ورق بپردازد و ببیند که “اسکریپت با استفاده از ورق” روی TRUE تنظیم شده است ، صبر می کنیم تا این مقدار FALSE شود و سپس سفارش را بنویسید.

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

چگونه می توانم از ورق استفاده کنم؟

ورق رستوران به عنوان مثال:

  1. یک برگه رستوران به عنوان مثال تهیه کنید.
  2. تمام جزئیات مربوط به رستوران آزمایش خود را پر کنید.
  3. URL برگه را کپی کنید.

برگه جستجو:

  1. یک نسخه از برگه جستجو تهیه کنید (فقط باید یک مورد ایجاد کنید).
  2. در ستون “شناسه استخراج شده” چیزی حذف نکنید بلکه سایر موارد را جایگزین کنید.
  3. شماره Twilio خود را در ستون اول قرار دهید.
  4. نشانی اینترنتی رستوران آزمایش خود را در ستون URL Business Sheet قرار دهید.
  5. شماره تلفن تجارت خود را در ستون آخر اضافه کنید.

اشتراک گذاری:

  1. آدرس ایمیل “Account Service” (که من شما را در بخش عملکردهای Cloud به شما ارسال می کنم) پیدا کنید.
  2. اطمینان حاصل کنید که هر دو برگه با دسترسی به ویرایش ، در آن آدرس ایمیل به اشتراک گذاشته شده اند.

ایجاد یک رستوران جدید:

  1. هر زمان که نیاز به ایجاد یک رستوران جدید داشته باشید ، کافیست یک برگه رستوران را کپی کنید.
  2. مطمئن شوید که هنگام کپی کردن ، “اشتراک با همان افراد” را تیک می زنید.
  3. جزئیات فعلی را پاک کنید.
  4. URL جدید Google Sheet را در یک خط جدید از برگه جستجوی خود بچسبانید.

وقتی کد اجرا شد ، برگه جستجو را باز می کنید ، از شماره تلفن Twilio استفاده کنید تا شناسه خاص آن رستوران را پیدا کنید ، به آن برگه بروید و منو را برگردانید.

عملکردهای Google Cloud

عملکردهای Google Cloud یک روش ساده برای اجرای خودکار کد به صورت آنلاین و بدون نیاز به تنظیم سرورها یا نصب مجموعه ای از برنامه های خاص در جایی است تا مطمئن شوید کد شما قابل انتقال است.

اگر نمی خواهید اطلاعات بیشتری در مورد Google Cloud کسب کنید و فقط می خواهید کد اجرا شود – در اینجا کد chatpot رایگان پایتون وجود دارد.

کد چیست؟

کد ما سعی در انجام هرگونه مکالمه واقعی نمی کند ، فقط از Twilio درخواست می کند – از جمله جزئیات در مورد کاربر و در چه مرحله ای است – و عملکردهای ساده ای را انجام می دهد.

مرحله ۱: “شروع”

کد یک پیام از Twilio دریافت می کند از جمله شماره Twilio که فعال شده است و مرحله کاربر در آن است (شروع). با توجه به اینکه مرحله “شروع” آن است ، کد عملکرد شروع را فعال می کند.

برگه رستوران خاص را بر اساس شماره Twilio به نظر می رسد ، سپس منو را برای آن رستوران باز می گرداند.

همچنین موارد Twilio مانند شماره رستوران خاص و نسخه تغلیظ شده از فهرست و موارد اضافی را برای ما ارسال می کند تا سفارشات را در مقابل بررسی کنیم.

مرحله ۲: “انتخاب”

کد مرحله ای را که کاربر در آن انتخاب شده است) و همچنین پیام سفارش آنها ، شناسه برگه رستوران و منوی چگالش (که قبلاً آن را به Twilio ارسال کرده است) دریافت می کند ، بنابراین لازم نیست آن موارد را جستجو کنیم. از نو.

با توجه به اینکه “مرحله” انتخاب شده است ، کد عملکرد انتخاب شده را فعال می کند. بررسی می کند که آیا سفارش با منوی چگالنده ما مطابقت دارد. اگر این کار را نکردند ، به Twilio می گوید که پیام مانند یک دستور نیست.

اگر سفارش با منوی ما مطابقت داشته باشد ، آن را در پایین خط اول خالی می نویسد. همچنین یک شناسه سفارش ایجاد می کند ، که ترکیبی از زمان و بخشی از شماره تلفن کاربر است.

این پیام را به Twilio ارسال می کند که می گوید آیا سفارش با منوی ما مطابقت دارد یا اگر از منوی ما مطابقت داشت ، شماره سفارش چیست.

مرحله ۳: “رسید”

کد مرحله ای را که کاربر در آن قرار دارد (وارد شده) دریافت می کند و عملکرد وارد شده را فعال می کند. همچنین این پیام حاوی وسیله نقلیه کاربر ، شناسه برگه مخصوص رستوران و شماره سفارش را دریافت می کند ، که همه قبلاً به Twilio گفته بود.

ورق رستوران را نگاه می کند و شناسه سفارش را مطابق با شماره ارسال شده می یابد ، سپس آن ردیف را به روز می کند تا کاربر را وارد کند و توضیحات مربوط به ماشین خود را نشان دهد.

Twilio همه متن را کنترل می کند

ممکن است برای شما عجیب به نظر برسد که هر بار که کد برخی از اطلاعات را پیدا می کند (به عنوان مثال شناسه برگه) ، آن اطلاعات را به Twilio ارسال می کند و بعداً دوباره درخواست می کند. به این دلیل است که کد ما نمی داند اصلاً چه می گذرد ، به جز آنچه Twilio به آن می گوید. هر بار که کد خود را فعال می کنیم ، دقیقاً به همین روش شروع می شود ، بنابراین راهی برای دانستن اینکه کدام کاربر در حال ارسال پیام کوتاه Twilio است ، در کدام مرحله قرار دارد یا حتی در مورد کدام رستوران صحبت می کنیم ، ندارد.

Twilio این امور را به خاطر دوره تعامل به یاد می آورد ، بنابراین ما از آن برای رسیدگی به همه موارد استفاده می کنیم. کد ما یک “انجام کار” بسیار ساده است – چیزی بیش از پنج ثانیه به طور همزمان “نمی داند”.

چگونه می توانم کد را تنظیم کنم؟

وقت ندارم چگونگی استفاده عمیق از توابع Google Cloud یا نحوه کدگذاری در Python را توصیف کنم ، اما کدی که در بالا به اشتراک گذاشتم شامل تعدادی علامت عادلانه است که توضیح می دهد چه اتفاقی می افتد ، و من با شما صحبت خواهم کرد. از طریق مراحل خاص برای این فرآیند.

مرحله ۱: تنظیم کنید

مطمئن شوید که شما:

مرحله ۲: یک عملکرد جدید ایجاد کنید

به اینجا بروید و روی “ایجاد یک عملکرد جدید” کلیک کنید. اگر قبلاً پروژه ای ایجاد نکرده اید ، ممکن است ابتدا این کار را انجام دهید ، و می توانید هر نامی را که دوست دارید به این پروژه بدهید.

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

مرحله ۳: جزئیات عملکرد خود را تنظیم کنید

صفحه نمایش داده شده در زیر جزئیات زیادی را که شما نیاز دارید به شما می دهد. من توصیه می کنم ۲۵۶MB را برای حافظه انتخاب کنید – کافی است. اگر متوجه شدید که دچار مشکل شده اید (یا می خواهید از ابتدا محتاط تر باشید) ، سپس آن را به ۵۱۲MB افزایش دهید.

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

اطمینان حاصل کنید که HTTP را به عنوان ماشه انتخاب کرده و URL را به شما یادداشت می کنیم (در صورت فراموش کردن ، می توانید همیشه با مراجعه به برگه “Trigger” عملکرد URL را پیدا کنید).

همچنین اطمینان حاصل کنید که گزینه ای را برای اجازه دسترسی غیرمجاز (تیکتیو) می توانید انتخاب کنید (از این طریق Twilio قادر به شروع عملکرد خواهد بود).

“ویرایشگر Inline” را انتخاب کنید و کد Gist را که به شما دادم بچسبانید (کاملاً اظهار نظر می شود ، توصیه می کنم به آن بخوانید تا اطمینان حاصل کنید که از کارهایی که انجام می دهد خوشحال هستید).

بر روی “REQUIREMENTS.TXT” کلیک کنید و در سطرهای زیر از کتابخانه هایی که باید استفاده کنید ، قرار دهید:

اطمینان حاصل کنید که “عملکرد برای اجرای” پیامک است ، سپس بر روی “” متغیرهای محیط “کلیک کنید.

درست مثل آنچه در بالا انجام داده ام ، روی “+ اضافه کردن VARIABLE” کلیک کنید ، در ستون “نام” “spreadsheet_id” را بنویسید و در ستون “Value” ، در شناسه برگه جستجوی خود بچسبانید. شما با نگاه کردن به URL برگه جستجو ، شناسه را دریافت می کنید ، و بین دو برش اخیر کپی می کنید (به شکل قرمز در زیر).

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

روی پایین کشیدن “حساب کاربری” کلیک کنید. این فقط باید “حساب خدمات پیش فرض موتور برنامه” باشد و آدرس ایمیل شما را به شما بدهد (مانند زیر) – این آدرس ایمیل است که برای به اشتراک گذاشتن همه برگه های Google خود به آن نیاز دارید. آن را در جایی بنویسید و آن را به عنوان یک کاربر ویرایش برای هر دو صفحه جستجوی خود و همچنین صفحات مخصوص رستوران اضافه کنید.

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)
عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

پس از انجام همه این موارد ، روی “استقرار” کلیک کنید.

پس از استقرار ، باید برای عملکرد Cloud خود به صفحه اصلی برگردید. تیک سبز در گوشه سمت چپ بالا به شما می گوید همه چیز در حال کار است.

مرحله ۴: API Sheets را روشن کنید

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

اولین باری که کد شما سعی می کند به Google Sheets دسترسی پیدا کند ، ممکن است قادر نباشد ، زیرا باید حساب Google API خود را فعال کنید. به اینجا بروید ، پروژه ای را که در حال کار بر روی آن هستید با منوی کشویی در گوشه بالا سمت چپ ، انتخاب کنید و سپس بر روی دکمه آبی بزرگ “ENABLE” کلیک کنید.

مرحله ۵: به Twilio برگردید و در ماشه HTTP برای کد خود جایگذاری کنید

URL ماشه ای را که هنگام ایجاد عملکرد خود از آن یادداشت کردیم به خاطر می آورید؟ به استودیوی Twilio خود برگردید و تمام بلوک های موجود در آن را پیدا کنید > در گوشه بالا سمت چپ وارد شوید:

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

روی هر یک به نوبه خود کلیک کنید و آدرس URL Google Cloud خود را در جعبه REQUEST URL که در سمت راست صفحه قرار دارد قرار دهید:

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

آزمایش ربات

اکنون باید عملکرد Cloud خود را تنظیم کنید. همچنین باید هر دو صفحه Google خود را با حساب سرویس عملکرد Cloud خود تنظیم و به اشتراک بگذارید.

مرحله بعدی تست ربات است. با وارد کردن شماره Twilio به کلمه “سفارش” خود ، شروع به کار کنید. این باید با منویی پاسخ دهد که کد شما از برگه Google خاص مربوط به رستوران شما خارج می شود. مراحلی را که شما را تا انتها ارسال می کند ، دنبال کنید و برگه Google خود را بررسی کنید تا مطمئن شوید که به روز رسانی صحیح است.

اگر به دلایلی کار نمی کند ، دو مکان وجود دارد که می توانید آنها را بررسی کنید. Twilio همه خطاهایی را که می بینید با کلیک کردن روی نماد کوچک “Debugger” در گوشه بالا سمت راست می توانید ثبت کنید.

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

Google همچنین هر آنچه که با عملکرد Cloud شما اتفاق می افتد را ضبط می کند. این شامل اعلان های بدون خطا است. با کلیک روی “VIEW LOGS” در بالا می توانید تمام آن را مشاهده کنید:

عکس نحوه ساخت SMS Chatbot مقیاس پذیر با استفاده از Twilio ، Python و صفحات Google (با کد رایگان)

نتیجه گیری: چیزها را بشکنید و لذت ببرید

همه اینها به هیچ وجه کامل نیست ، و من مطمئن هستم که مواردی وجود دارد که می توانید آنها را اضافه و بهبود بخشید ، اما این راهی برای ساختن شبکه ای از چت های قابل مقیاس است که هر یک مخصوص یک تجارت متفاوت است و هریک از آنها تا حدودی توسط آن تجارت اداره می شوند. حداقل هزینه

این را امتحان کنید ، آن را بشکنید ، آن را بهبود بخشید ، آن را پاره کنید و دوباره شروع کنید و به من بگویید که چه فکر می کنید!


Postcriptcript: هک های عجیب و غریب

این بیت فقط برای افرادی که علاقه مند هستند وجود دارد ، اما از آنجا که ما عمداً این کار را با کفش انجام داده ایم ، به چند مسئله عجیب و غریب تبدیل می شویم – عمدتا در مورد درخواست های مربوط به ربات ما وقتی که کمی فعال نشده است.

وقتی Twilio برای مدتی برای اولین بار پیام دریافت می کند ، خیلی سریع روشن می شود و انتظار دارد کارهای دیگری نیز انجام دهند. به عنوان مثال ، وقتی Twilio از کد ما درخواست می کند ، فرض می کنیم اگر بیش از حدود پنج ثانیه طول بکشد ، کد شکست خورده است. این چندان هم غیر عادی نیست – بسیاری از سیستم عامل های چت خواستار زمان چرخش حداکثر پنج ثانیه هستند.

توابع Cloud حتی با وجود حافظه کمتری می توانند بسیار سریع اجرا شوند ، اما همیشه به Google Sheets دسترسی داشته باشید که از طریق API دسترسی داشته باشید. در واقع ، در صورتی که در برخی از مدت ها به آن دسترسی پیدا نکرده اید ، به ویژه Google Sheets کند است.

این بدان معنی است که ، اگر کسی اخیراً از ربات شما استفاده نکرده است ، API Google Sheets مدت زمان طولانی را برای پاسخ دادن به اولین بار می کشد و Twilio قبل از بازگشت کد ما انصراف می دهد و باعث ایجاد خطایی می شود.

دو بخش از فیلمنامه ما برای جلوگیری از این کار طراحی شده است.

دوباره امتحان کنید

اولین باری که عملکرد Cloud خود را فعال می کنیم ، نمی خواهیم آنرا واقعاً هر چیزی را تغییر دهد ، ما فقط می خواهیم اطلاعاتی داشته باشیم. بنابراین در Twilio با ایجاد یک متغیر به نام “دوباره امتحان” شروع می کنیم و مقدار آن را ۰ تعیین می کنیم.

اگر درخواست ناموفق بود ، بررسی می کنیم که آیا مقدار امتحان ۰ است. در صورت وجود ، پس مقدار تلاش را بر روی ۱ قرار می دهیم و دوباره امتحان می کنیم. اگر بار دوم شکست بخورد ، ما نمی خواهیم این کار را برای همیشه ادامه دهیم ، بنابراین خطایی ارسال می کنیم و در آنجا متوقف می شویم.

ورق از خواب بیدار می شود

بار دوم که عملکرد Cloud خود را فعال می کنیم می خواهیم کاری انجام دهیم. اگر به موقع برنگردد ما نمی توانیم دوباره این کار را انجام دهیم زیرا ما به سفارشات تکراری خواهیم رسید ، که این یک سردرد برای رستوران است.

در عوض ، در طی قسمت اولیه مبادله ، ما به یکی از برگه هایمان تغییر بیهوده می دهیم ، به گونه ای که وقتی تغییر مهم را انجام می دهیم ، آماده باشد.

در جریان مکالمه ما:

  1. ارسال منو
  2. پاسخ را دریافت کنید
  3. نام کاربر را بخواهید
  4. سفارش را بنویسید

ما نیازی به انجام کار با ورق تا مرحله چهارم نداریم ، اما بعد از اینکه پاسخ کاربر را گرفتیم (قبل از اینکه نام آنها را بپرسیم) ، یک بار کد خود را فعال می کنیم تا چیزی را در برگه سفارش بنویسیم. ما به Twilio می گویم – چه موفق شود و چه شکست – ادامه تعامل را انجام داد ، زیرا در آن زمان مهم نیست که آیا ما به موقع برگشته ایم. سپس ، امیدوارم ، تا زمانی که ما به سفارش خود بنویسیم ، Google Sheets برای استفاده واقعی آماده است.

محدودیت وجود دارد

Google Sheets بانک اطلاعاتی ایده آل نیست – کند است و می تواند به معنای آن باشد که وقتهای Twilio را از دست ندهیم. اما این چند مرحله اضافی به ما کمک می کند تا در مورد برخی از این محدودیت ها کار کنیم.



منبع

شاید دوست داشته باشید:

Intent and SEO جستجو: یک راهنمای سریع

Intent and SEO جستجو: یک راهنمای سریع

درک هدف جستجو می تواند ماده مخفی باشد که استراتژی محتوای شما را از عالی به برجسته می کند. ما […]

تغییر در تقاضای محصول برای سئو به چه معنی است

تغییر در تقاضای محصول برای سئو به چه معنی است

اگر از طریق بحران COVID-19 در تجارت الکترونیکی کار می کنید ، احتمالاً متوجه تغییراتی وحشی در نحوه مشاهده و […]

شناسایی الگوهای عملکرد جستجوی پیشرفته GSC (و آنچه در مورد آنها باید انجام دهید)

شناسایی الگوهای عملکرد جستجوی پیشرفته GSC (و آنچه در مورد آنها باید انجام دهید)

کنسول جستجوی Google تا حد زیادی پرکاربردترین دستگاه در جعبه ابزار SEO است. این نه تنها نزدیکترین درک ما را […]

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *