トピックまたはサブスクリプションを照会できますが、公開メッセージを照会することはできません。私はAWSがそれらを保持しているかどうかは疑問ですが、もしそうであれば、私が知る限り、それらにアクセスするAPIはありません。
1つの回避策は、自分のサイトでhttpまたはhttpsエンドポイントを使用して、それぞれのトピックにサブスクライブすることです。あなたがトピックを作成するたびに、あなたはあなた自身のエンドポイントに対応したサブスクリプションを作成します。
def generate_sns_topic(topic_name)
sns_client = Aws::SNS::Client.new
response = sns_client.create_topic(name: topic_name)
if response.successful?
sns_client.subscribe(topic_arn: topic_response.topic_arn,
protocol: :https,
endpoint: <your_site_endpoint>)
else
<error_handling_here>
end
end
は今、あなたはそれがに来るようAWSメッセージを受け入れるようにPOST <your_site_endpoint>
を作成する必要があり、あなたがそれを受け取ったら、あなたは知っていますよ。 SNSはそれを送った。おそらく、新しいpublished_messages
テーブルをデータベースに作成して、公開された内容を把握することになります。
タイトルに「SNS」と言っていたとしますか? – moveson
必ずしもそうではありません。私は「SMS」(ショートメッセージサービス)という用語は、Amazon SNSのどの部分が問題を抱えているのかを明確にしていると思いますが、Amazon SNSも正しいとは心配しません。 –
それは意味があります - 私は両方を含むように編集しました。 – moveson