要解决AWS SNS在IST时区的晚上9点后不发送短信的问题,您可以使用AWS Lambda来实现。
以下是一个示例Lambda函数的代码,它可以检查当前时间是否在IST时区的晚上9点后,并根据需要决定是否发送短信:
import datetime
import boto3
def lambda_handler(event, context):
current_time = datetime.datetime.now()
ist_time = current_time + datetime.timedelta(hours=5, minutes=30) # 转换为IST时区时间
if ist_time.hour >= 21:
sns_client = boto3.client('sns')
sns_client.publish(
PhoneNumber='手机号码',
Message='短信内容'
)
return '短信已发送'
else:
return '当前时间在晚上9点之前,不发送短信'
请将上述代码中的"手机号码"替换为您要发送短信的手机号码,并将"短信内容"替换为您要发送的实际短信内容。
您需要在AWS Lambda控制台中创建一个Lambda函数,并将触发器配置为在您需要的时间间隔内运行。您可以按需调整触发器配置。
此Lambda函数将会检查当前时间是否在IST时区的晚上9点后,并在满足条件时发送短信。