Как интегрировать скрипт python и выполнить его на Django - PullRequest
0 голосов
/ 12 марта 2020

то, что я хочу, это:

  1. под some_list_of_contacts = [] будут числа из моей django модели.
  2. Я создам html шаблон для этого скрипта, который, когда я нажимаю кнопку, выполняет send_sms.py.
  3. при SMS_MESSAGE это будут последние данные, поступающие с модели django с отметкой времени. например (As of {'timestamp'} the level is {'level'}).

Я новичок в Django и Python, пожалуйста, как мне это сделать? Спасибо!

send_sms.py

import boto3

AWS_ACCESS_KEY_ID = "<>"
AWS_SECRET_ACCESS_KEY = "<>"
AWS_REGION_NAME = "eu-west-1"

SENDER_ID = "Test"
SMS_MESSAGE = "Test"


client = boto3.client(
    "sns",
    aws_access_key_id=AWS_ACCESS_KEY_ID,
    aws_secret_access_key=AWS_SECRET_ACCESS_KEY,
    region_name=AWS_REGION_NAME
)

topic = client.create_topic(Name="notifications")
topic_arn = topic['TopicArn']

some_list_of_contacts = [
    '(must be numbers from django model)',
]


for number in some_list_of_contacts:
    client.subscribe(
        TopicArn=topic_arn,
        Protocol='sms',
        Endpoint=number 
    )


response = client.publish(
    Message=SMS_MESSAGE,
    TopicArn=topic_arn,
    MessageAttributes={
        'string': {
            'DataType': 'String',
            'StringValue': 'String',
        },
        'AWS.SNS.SMS.SenderID': {
            'DataType': 'String',
            'StringValue': SENDER_ID
        }
    }
)

print(response)
print("MessageId:" + response["MessageId"])
print("HTTPStatusCode:" + str(response["ResponseMetadata"]["HTTPStatusCode"]))
...