Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

simple_qs

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

simple_qs

  • 0.2
  • Rubygems
  • Socket score

Version published
Maintainers
1
Created
Source

English

Installation

	[sudo] gem install simple_qs

Usage

	require 'simple_qs'
	SimpleQS.account_id = 'your-account-id'
	SimpleQS.access_key_id = 'YOUR_ACCESS_KEY'
	SimpleQS.secret_access_key = 'YOUR_SECRET_ACCESS_KEY'

Region

You can select region for queue:

	# :us_east_1      => 'sqs.us-east-1.amazonaws.com',
	# :us_west_1      => 'sqs.us-west-1.amazonaws.com',
	# :eu_west_1      => 'sqs.eu-west-1.amazonaws.com',
	# :ap_southeast_1 => 'sqs.ap-southeast-1.amazonaws.com'
	SimpleQS.host # => 'sqs.us-east-1.amazonaws.com'
	
	SimpleQS.host = :eu_west_1
	SimpleQS.host # => 'sqs.eu-west-1.amazonaws.com'

Queues

Create a queue:

	queue = SimpleQS::Queue.create('queue_name')

Or:

	SimpleQS::Queue.create('queue_name') do |queue|
		# ...
	end

Create a queue with specific default visibility timeout for received messages:

	SimpleQS::Queue.create('queue_name', 60) # Visibility timeout set to 60 secinds instead of default 30

List all account's queues:

	SimpleQS::Queue.list # returns list of SimpleQS::Queue objects

List all account's queues starting with 'test':

	SimpleQS::Queue.list('test')

Check if queue exists:

	SimpleQS::Queue.exists?('queue_name')

Change default visibility timeout for queue:

	SimpleQS::Queue.new('queue_name').set_visibility_timeout(120)

Change maximum message size for queue:

	SimpleQS::Queue.new('queue_name').set_maximum_message_size(65536)

Change message retention period:

	SimpleQS::Queue.new('queue_name').set_message_retention_period(1209600)

Set queue attributes:

	SimpleQS::Queue.new('queue_name').set_attributes({:VisibilityTimeout => 120, :Policy => "policy JSON here"})

Get queue attributes:

	SimpleQS::Queue.new('queue_name').get_attributes(:All)

Add permissions:

	SimpleQS::Queue.new('queue_name').add_permissions('testPerms', [
		{:account_id => '098166147350', :action => 'SendMessage'},
		{:account_id => '098166147350', :action => 'ReceiveMessage'}
	])

Remove permissions:

	SimpleQS::Queue.new('queue_name').remove_permissions('testPerms')

Delete queue:

	SimpleQS::Queue.new('queue_name').delete

Or:

	SimpleQS::Queue.delete('queue_name')

Messages

Send message:

	queue = SimpleQS::Queue.new('queue_name')
	queue.send_message('message 1')
	queue.send_message('message 2')

Or:

	SimpleQS::Message.send(queue, 'message 1')
	SimpleQS::Message.send(queue, 'message 2')

Receive message(s):

	queue.receive_messages # always returns array of messages
	queue.receive_messages(:All, 10, 70) # receive maximum 10 messages with all attributes (:All)
										 # and set for them visibility timeout to 70 seconds

Or:

	SimpleQS::Message.receive(queue)
	SimpleQS::Message.receive(queue, :All, 10, 70)

Resend received message:

	messages = queue.receive_messages
	messages.first.resend

Change visibility timeout for this message:

	messages.first.change_visibility(120) # Change to 120 seconds

Delete received message:

	messages.first.delete

TODO

See TODO file

Issues

ISSUES

Authors

Marjan Krekoten' (krekoten@gmail.com)

Українською

Встановлення

	[sudo] gem install simple_qs

Користування

	require 'simple_qs'
	SimpleQS.account_id = 'your-account-id'
	SimpleQS.access_key_id = 'YOUR_ACCESS_KEY'

	SimpleQS.secret_access_key = 'YOUR_SECRET_ACCESS_KEY'

Регіон

Можна обрати регіон, в якому буде створена черга:

	# :us_east_1      => 'sqs.us-east-1.amazonaws.com',
	# :us_west_1      => 'sqs.us-west-1.amazonaws.com',
	# :eu_west_1      => 'sqs.eu-west-1.amazonaws.com',
	# :ap_southeast_1 => 'sqs.ap-southeast-1.amazonaws.com'
	SimpleQS.host # => 'sqs.us-east-1.amazonaws.com'

	SimpleQS.host = :eu_west_1
	SimpleQS.host # => 'sqs.eu-west-1.amazonaws.com'

Черги

Створити чергу:

	queue = SimpleQS::Queue.create('queue_name')

Або:

	SimpleQS::Queue.create('queue_name') do |queue|
		# ...
	end

Створити чергу із специфічним обмеженням часу невидимості для отриманих повідомлень:

	SimpleQS::Queue.create('queue_name', 60) # Час невидимості встановленно на 60 секунд, натомість типових 30-ти

Перелічити всі черги даного рахунку:

	SimpleQS::Queue.list # returns list of SimpleQS::Queue objects

Перелічити всі черги даного рахунку, що починаються на 'test':

	SimpleQS::Queue.list('test')

Перевірити чи черга існує:

	SimpleQS::Queue.exists?('queue_name')

Змінити типовий час невидимості для даної черги:

	SimpleQS::Queue.new('queue_name').set_visibility_timeout(120)

Змінити максимальний розмір повідомлення:

	SimpleQS::Queue.new('queue_name').set_maximum_message_size(65536)

Змінити період зберігання повідомлень для черги:

	SimpleQS::Queue.new('queue_name').set_message_retention_period(1209600)

Встановити атрибути черги:

	SimpleQS::Queue.new('queue_name').set_attributes({:VisibilityTimeout => 120, :Policy => "policy JSON here"})

Отримати поточні атрибути черги:

	SimpleQS::Queue.new('queue_name').get_attributes(:All)

Надати дозволи:

	SimpleQS::Queue.new('queue_name').add_permissions('testPerms', [
		{:account_id => '098166147350', :action => 'SendMessage'},
		{:account_id => '098166147350', :action => 'ReceiveMessage'}
	])

Скасувати дозволи:

	SimpleQS::Queue.new('queue_name').remove_permissions('testPerms')

Видалити чергу:

	SimpleQS::Queue.new('queue_name').delete

Або:

	SimpleQS::Queue.delete('queue_name')

Повідомлення

Відправити повідомлення:

	queue = SimpleQS::Queue.new('queue_name')
	queue.send_message('message 1')
	queue.send_message('message 2')

Або:

	SimpleQS::Message.send(queue, 'message 1')
	SimpleQS::Message.send(queue, 'message 2')

Отримати повідомлення:

	queue.receive_messages # завжди повертає масив
	queue.receive_messages(:All, 10, 70) # отримати максимум 10 повідомлень зі всіма атрибутами (:All)
										 # та встановленим часом невидимості у 70 секунд

Або:

	SimpleQS::Message.receive(queue)
	SimpleQS::Message.receive(queue, :All, 10, 70)

Надіслати отримані повідомлення ще раз:

	messages = queue.receive_messages
	messages.first.resend

Змінити час невидимості для даного повідомлення:

	messages.first.change_visibility(120) # Встановити у 120 секунд

Видалити отримане повідомлення з черги:

	messages.first.delete

Що потрібно зробити

Дивіться TODO

Помилки, побажання і т.і.

ISSUES

Автори

Мар'ян Крекотень (krekoten@gmail.com)

FAQs

Package last updated on 17 Aug 2010

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc