Các protocol khác nhau theo cấp độ topic
Bây giờ Sam đã tạo các topic mức độ critical và extreme, cô ấy cần đăng ký (subscribe) các nhân sự trong danh bạ của mình vào những topic này.
Sam quyết định rằng những người đăng ký topic 'critical' sẽ chỉ nhận email. Ngược lại, những người đăng ký topic 'extreme' sẽ nhận SMS — vì đó là các cảnh báo khá khẩn cấp.
Cô ấy đã tạo sẵn client SNS của boto3 trong biến sns.
Hãy giúp Sam đăng ký người dùng trong DataFrame contacts để nhận thông báo qua email hoặc SMS dựa trên phòng ban của họ.
Điều này sẽ giúp gửi đúng cảnh báo đến đúng người, giúp Thành phố San Diego vận hành hiệu quả và nhanh hơn!
Bài tập này là một phần của khóa học
Giới thiệu về AWS Boto trong Python
Hướng dẫn bài tập
- Lấy tên topic bằng cách sử dụng trường
'Department'trong DataFramecontacts. - Dùng tên topic để tạo các
TopicArnchocriticalvàextremetheo phòng ban của người dùng. - Đăng ký địa chỉ email của người dùng vào topic critical.
- Đăng ký số điện thoại của người dùng vào topic extreme.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
for index, user_row in contacts.iterrows():
# Get topic names for the users's dept
critical_tname = '{}_critical'.____(user_row['Department'])
extreme_tname = '{}_extreme'.format(user_row['Department'])
# Get or create the TopicArns for a user's department.
critical_arn = sns.create_topic(____=critical_tname)['TopicArn']
extreme_arn = sns.____(Name=extreme_tname)['____']
# Subscribe each users email to the critical Topic
sns.____(____ = critical_arn,
____='email', ____=user_row['Email'])
# Subscribe each users phone number for the extreme Topic
sns.____(____ = extreme_arn,
____='sms', ____=str(user_row['Phone']))