Initialize connection to SNS
options parameter must include values for :aws_access_key_id and :aws_secret_access_key in order to create a connection
sns = SNS.new( :aws_access_key_id => your_aws_access_key_id, :aws_secret_access_key => your_aws_secret_access_key )
options<~Hash> - config arguments for connection. Defaults to {}.
# File lib/fog/aws/sns.rb, line 52 def initialize(options={}) @use_iam_profile = options[:use_iam_profile] setup_credentials(options) @connection_options = options[:connection_options] || {} options[:region] ||= 'us-east-1' @host = options[:host] || "sns.#{options[:region]}.amazonaws.com" @path = options[:path] || '/' @persistent = options[:persistent] || false @port = options[:port] || 443 @scheme = options[:scheme] || 'https' @connection = Fog::Connection.new("#{@scheme}://#{@host}:#{@port}#{@path}", @persistent, @connection_options) end
# File lib/fog/aws/requests/sns/add_permission.rb, line 8 def add_permission(options = {}) request({ 'Action' => 'AddPermission', :parser => Fog::Parsers::AWS::SNS::AddPermission.new }.merge!(options)) end
Confirm a subscription
arn<~String> - Arn of topic to confirm subscription to
token<~String> - Token sent to endpoint during subscribe action
options<~Hash>:
AuthenticateOnUnsubscribe<~Boolean> - whether or not unsubscription should be authenticated, defaults to false
docs.amazonwebservices.com/sns/latest/api/API_ConfirmSubscription.html
# File lib/fog/aws/requests/sns/confirm_subscription.rb, line 20 def confirm_subscription(arn, token, options = {}) request({ 'Action' => 'ConfirmSubscription', 'Token' => token, 'TopicArn' => arn.strip, :parser => Fog::Parsers::AWS::SNS::ConfirmSubscription.new }.merge!(options)) end
Create a topic
name<~String> - Name of topic to create
docs.amazonwebservices.com/sns/latest/api/API_CreateTopic.html
# File lib/fog/aws/requests/sns/create_topic.rb, line 17 def create_topic(name) request({ 'Action' => 'CreateTopic', 'Name' => name, :parser => Fog::Parsers::AWS::SNS::CreateTopic.new }) end
Delete a topic
arn<~String> - The Arn of the topic to delete
docs.amazonwebservices.com/sns/latest/api/API_DeleteTopic.html
# File lib/fog/aws/requests/sns/delete_topic.rb, line 17 def delete_topic(arn) request({ 'Action' => 'DeleteTopic', 'TopicArn' => arn.strip, :parser => Fog::Parsers::AWS::SNS::DeleteTopic.new }) end
Get attributes of a topic
arn<~Hash>: The Arn of the topic to get attributes for
docs.amazonwebservices.com/sns/latest/api/API_GetTopicAttributes.html
# File lib/fog/aws/requests/sns/get_topic_attributes.rb, line 17 def get_topic_attributes(arn) request({ 'Action' => 'GetTopicAttributes', 'TopicArn' => arn.strip, :parser => Fog::Parsers::AWS::SNS::GetTopicAttributes.new }) end
List subscriptions
options<~Hash>:
'NextToken'<~String> - Token returned from previous request, used for pagination
docs.amazonwebservices.com/sns/latest/api/API_ListSubscriptions.html
# File lib/fog/aws/requests/sns/list_subscriptions.rb, line 18 def list_subscriptions(options = {}) request({ 'Action' => 'ListSubscriptions', :parser => Fog::Parsers::AWS::SNS::ListSubscriptions.new }.merge!(options)) end
List subscriptions for a topic
arn<~String> - Arn of topic to list subscriptions for
options<~Hash>:
'NextToken'<~String> - Token returned from previous request, used for pagination
docs.amazonwebservices.com/sns/latest/api/API_ListSubscriptionsByTopic.html
# File lib/fog/aws/requests/sns/list_subscriptions_by_topic.rb, line 19 def list_subscriptions_by_topic(arn, options = {}) request({ 'Action' => 'ListSubscriptionsByTopic', 'TopicArn' => arn.strip, :parser => Fog::Parsers::AWS::SNS::ListSubscriptions.new }.merge!(options)) end
List topics
options<~Hash>:
'NextToken'<~String> - Token returned from previous request, used for pagination
docs.amazonwebservices.com/sns/latest/api/API_ListTopics.html
# File lib/fog/aws/requests/sns/list_topics.rb, line 18 def list_topics(options = {}) request({ 'Action' => 'ListTopics', :parser => Fog::Parsers::AWS::SNS::ListTopics.new }.merge!(options)) end
Send a message to a topic
arn<~String> - Arn of topic to send message to
message<~String> - Message to send to topic
options<~Hash>:
MessageStructure<~String> - message structure, in ['json']
Subject<~String> - value to use for subject when delivering by email
docs.amazonwebservices.com/sns/latest/api/API_Publish.html
# File lib/fog/aws/requests/sns/publish.rb, line 21 def publish(arn, message, options = {}) request({ 'Action' => 'Publish', 'Message' => message, 'TopicArn' => arn.strip, :parser => Fog::Parsers::AWS::SNS::Publish.new }.merge!(options)) end
# File lib/fog/aws/requests/sns/remove_permission.rb, line 8 def remove_permission(options = {}) request({ 'Action' => 'RemovePermission', :parser => Fog::Parsers::AWS::SNS::RemovePermission.new }.merge!(options)) end
Set attributes of a topic
arn<~Hash> - The Arn of the topic to get attributes for
attribute_name<~String> - Name of attribute to set, in ['DisplayName', 'Policy']
attribute_value<~String> - Value to set attribute to
docs.amazonwebservices.com/sns/latest/api/API_SetTopicAttributes.html
# File lib/fog/aws/requests/sns/set_topic_attributes.rb, line 19 def set_topic_attributes(arn, attribute_name, attribute_value) request({ 'Action' => 'SetTopicAttributes', 'AttributeName' => attribute_name, 'AttributeValue' => attribute_value, 'TopicArn' => arn.strip, :parser => Fog::Parsers::AWS::SNS::SetTopicAttributes.new }) end
Create a subscription
arn<~String> - Arn of topic to subscribe to
endpoint<~String> - Endpoint to notify
protocol<~String> - Protocol to notify endpoint with, in ['email', 'email-json', 'http', 'https', 'sqs']
docs.amazonwebservices.com/sns/latest/api/API_Subscribe.html
# File lib/fog/aws/requests/sns/subscribe.rb, line 19 def subscribe(arn, endpoint, protocol) request({ 'Action' => 'Subscribe', 'Endpoint' => endpoint, 'Protocol' => protocol, 'TopicArn' => arn.strip, :parser => Fog::Parsers::AWS::SNS::Subscribe.new }) end
Delete a subscription
arn<~String> - Arn of subscription to delete
docs.amazonwebservices.com/sns/latest/api/API_Unsubscribe.html
# File lib/fog/aws/requests/sns/unsubscribe.rb, line 17 def unsubscribe(arn) request({ 'Action' => 'Unsubscribe', 'SubscriptionArn' => arn.strip, :parser => Fog::Parsers::AWS::SNS::Unsubscribe.new }) end
Generated with the Darkfish Rdoc Generator 2.