Raspberry Pi – Send Whatsapp Messages

Raspberry Twilio Whatsapp

כבר די הרבה זמן אני מחפש דרך לשלוח התראות Whatsapp שלא דרך האפליקציה. למה לי אתם בטח שואלים? הסיבה די פשוטה האמת, דרך נוחה לשלוח התראות ממערכות ניטור שונות ומגוונות מבלי שיהיה צורך בלהתקין עוד ועוד אפליקציות (במו טלגרם וכו').

במדרך זה אסביר כיצד ניתן לשלוח הודעות Whatsapp מ Raspberry pi באמצעות סקריפט Python ושימוש ב API של Twilio.

חלק א' – פתיחת חשבון ב Twilio:

על מנת לפתוח חשבון ב Twilio גשו תחילה לכתובת הבאה: https://www.twilio.com/ והרשמו לשירות על ידי לחיצה על Sign up בפינה הימנית עליונה:

רישום ל Twilio

מלאו את הפרטים, ולחצו על Get Started.

Twilio Signup account details

כעת תתבקשו להקיש את מספר הטלפון שלכם לצורך אימות, הקלידו אותו ולחצו על Verify:

Twilio Verify Phone Number

לאחר מספר רגעים תקבלו SMS עם קוד אימות אותו תתבקשו להקליד במסך הבא, הקלידו אותו ולחצו על Submit.

שלב ב' – הגדרת האפליקציה ב Twilio אשר תשמש לשליחת ההודעות

עשיו, לאחר שסיימנו את שלב פתיחת החשבון נקים ב Twilio את האפליקציה אשר תשמש אותנו לשליחת ההתראות. במסך הבא נראה את רשימת האפליקציות / שירותים אשר ניתנים לשימוש. במקרה שלנו נבחר ב Sms Chatbot:

Twilio Chatbot

כעת תנו לפרוייקט שם, לדוגמה Home-Assistant, ולחצו על Continue:

בשלב הבא תתבשו להזמין "חברי צוות" לפרוייקט, ניתן לדלג על השלב הזה על ידי לחיצה על Skip בתחתית המסך:

Twilio Invite Team Members

המסך הבא שנקבל יכיל FlowChart, אין לנו צורך בו. לחצו על Programmable SMS בצידו השמאלי של המסך:

Twilio Programmable SMS

כעת, לחצו על Whatsapp בצד שמאל של המסך:

כעת, תוצג לכם הודעה המסבירה אודות Whatsapp Sandbox ותתבקשו לאשר את תנאי השימוש של Whatsapp. סמנו את תיבת הסימון ולחצו על Confirm:

על מנת לסיים את הקמת ה Sandbox תתבקשו לשלוח הודעת Whatsapp אל המספר המופיע בחלון. ההודעה תכיל את הטקסט שגם הוא מופיע בחלון:

עם שליחת ההודעה תוכלו לראות שהמסך השתנה:

ובאפליקציית ה Whatsapp שלכם תקבלו הודעה חוזרת המאשרת את פעולת החיבור:

כאן סיימנו את פעולת הקמת החשבון.

חלק ג' – התקנת הסיפריה של Twilio ושליחת הודעה

ועכשיו לחלק המעניין של המדריך, כאן נכתוב את הסקריפט אשר ישמש לשליחת ההודעה דרך Twilio. הדבר מתאפשר בזכות ה הספריה שלהם ל python. אך לפני שנתקין אותה עלייכם לוודא כי יש ברשותכם את ה Account Sid וכן את ה Auth Token של החשבון שלכם ב Twilio. על מנת לעשות זאת לחצו בצד שמאל למעלה על השם שלכם והכנסו להגדרת החשבון:

כעת לחצו על Console בתפריט העליון, אשר יוביל אתכם למסך בו תוכלו למצוא את הפרטים:

Wilio Auth and sid

כעת נתקין את הסיפריה של Twilio באמצעות הפקודה הבאה:

pip install twilio 

כעת, צרו קובץ חדש בשם whatsapp.py והעתיקו פנימה את הטקסט הבא:

from twilio.rest import Client

# Your Account SID from twilio.com/console
account_sid = ""
# Your Auth Token from twilio.com/console
auth_token  = ""
client = Client(account_sid, auth_token)
message = client.messages.create(
    to="whatsapp:",
    from_="whatsapp:+14155238886",
    body="Yaba Daba DOO")

print(message.sid)

כאשר:
1. החליפו את +phone_number במספר שלכם (כולל קידומת מדינה).
2. החליפו את body בהודעה שתרצו לשלוח.
3. החליפו את auth_token ואת account_sid בשלכם.
שמרו את הקובץ וצאו מהעורך.

כעת הריצו את הפקודה הבאה על מנת לשלוח את ההודעה שלכם:

python whatsapp.py

אם ביצעתם הכל כראוי אתם אמורים לקבל את ההודעה ששלחתם בזה הרגע באפליקציית ה Whatsapp.

בהצלחה!

1 Comment

  1. ההסבר שלך לא מדוייק
    המשתנים צריכים להיות :
    to="whatsapp:your whatapp number"
    from_="whatsapp:+14155238886"
    for example :

    from twilio.rest import Client

    # Your Account SID from twilio.com/console
    account_sid = "xxxxxxxxxxxxxxxxxx"
    # Your Auth Token from twilio.com/console
    auth_token = "xxxxxxxxxxxxxxxxxxx"

    client = Client(account_sid, auth_token)
    message = client.messages.create(
    to="whatsapp:+9725xxxxxxxx",
    from_="whatsapp:+14155238886",
    body="test 123")

    print(message.sid)

Leave a Reply

כתובת האימייל שלך לא תפורסם


*