seatsio 24.3.0 → 25.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/README.md +1 -1
- data/lib/seatsio/domain.rb +4 -2
- data/lib/seatsio/event_reports.rb +8 -0
- data/lib/seatsio/events.rb +16 -22
- data/lib/seatsio/events/change_best_available_object_status_request.rb +4 -1
- data/lib/seatsio/events/change_object_status_in_batch_request.rb +2 -2
- data/lib/seatsio/events/change_object_status_request.rb +2 -1
- data/lib/seatsio/version.rb +1 -1
- data/lib/seatsio/workspaces.rb +4 -0
- metadata +3 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2ddd5b9e1dfd54adec1188d7f253a483c691b83e4368888eacc6f5cb2ae74bfe
|
4
|
+
data.tar.gz: 16d56d9cf53aa9659a81d286ccc71e4942a1469368cf83bea2ca84f0c7eba3c2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: '09d1ee115bb79ed24a26c4caefadd90e951eee37273d4aa3fc4336c254555b60f1f1aa8be347af3665ea502106b781c1a57c6926dc5896faab66bd2837058273'
|
7
|
+
data.tar.gz: 8fb5bdb6e9b3625c884e83657614ffd27046e45d3a4a7852e7268ccc1fd13c792dc315b19e056dba7e3fb4d07ecc2fa787695ad98b526527fc471307028a7b54
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -40,7 +40,7 @@ client.events.release(event.key, ["A-1", "A-2"])
|
|
40
40
|
```ruby
|
41
41
|
require('seatsio')
|
42
42
|
client = Seatsio::Client.new("my-workspace-secret-key")
|
43
|
-
client.events.book(event.key, ["A-1", "A-2"], "a-hold-token")
|
43
|
+
client.events.book(event.key, ["A-1", "A-2"], hold_token: "a-hold-token")
|
44
44
|
```
|
45
45
|
|
46
46
|
### Changing object status
|
data/lib/seatsio/domain.rb
CHANGED
@@ -147,7 +147,7 @@ module Seatsio::Domain
|
|
147
147
|
end
|
148
148
|
|
149
149
|
class Workspace
|
150
|
-
attr_reader :id, :name, :key, :secret_key, :is_test, :is_active
|
150
|
+
attr_reader :id, :name, :key, :secret_key, :is_test, :is_active, :is_default
|
151
151
|
|
152
152
|
def initialize(data)
|
153
153
|
@id = data['id']
|
@@ -156,6 +156,7 @@ module Seatsio::Domain
|
|
156
156
|
@secret_key = data['secretKey']
|
157
157
|
@is_test = data['isTest']
|
158
158
|
@is_active = data['isActive']
|
159
|
+
@is_default = data['isDefault']
|
159
160
|
end
|
160
161
|
end
|
161
162
|
|
@@ -285,7 +286,7 @@ module Seatsio::Domain
|
|
285
286
|
:category_key, :entrance, :object_type, :hold_token, :category_label,
|
286
287
|
:ticket_type, :num_booked, :num_free, :num_held, :for_sale, :section,
|
287
288
|
:is_accessible, :is_companion_seat, :has_restricted_view, :displayed_object_type,
|
288
|
-
:left_neighbour, :right_neighbour, :is_selectable, :is_disabled_by_social_distancing
|
289
|
+
:left_neighbour, :right_neighbour, :is_selectable, :is_disabled_by_social_distancing, :channel
|
289
290
|
|
290
291
|
def initialize(data)
|
291
292
|
@status = data['status']
|
@@ -313,6 +314,7 @@ module Seatsio::Domain
|
|
313
314
|
@right_neighbour = data['rightNeighbour']
|
314
315
|
@is_selectable = data['isSelectable']
|
315
316
|
@is_disabled_by_social_distancing = data['isDisabledBySocialDistancing']
|
317
|
+
@channel = data['channel']
|
316
318
|
end
|
317
319
|
end
|
318
320
|
|
@@ -31,6 +31,10 @@ module Seatsio
|
|
31
31
|
fetch_summary_report('bySelectability', event_key)
|
32
32
|
end
|
33
33
|
|
34
|
+
def summary_by_channel(event_key)
|
35
|
+
fetch_summary_report('byChannel', event_key)
|
36
|
+
end
|
37
|
+
|
34
38
|
def by_label(event_key, label = nil)
|
35
39
|
fetch_report('byLabel', event_key, label)
|
36
40
|
end
|
@@ -59,6 +63,10 @@ module Seatsio
|
|
59
63
|
fetch_report('bySelectability', event_key, selectability)
|
60
64
|
end
|
61
65
|
|
66
|
+
def by_channel(event_key, channelKey = nil)
|
67
|
+
fetch_report('byChannel', event_key, channelKey)
|
68
|
+
end
|
69
|
+
|
62
70
|
private
|
63
71
|
|
64
72
|
def fetch_summary_report(report_type, event_key)
|
data/lib/seatsio/events.rb
CHANGED
@@ -50,18 +50,12 @@ module Seatsio
|
|
50
50
|
Domain::ObjectStatus.new(response)
|
51
51
|
end
|
52
52
|
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
def book(event_key_or_keys, object_or_objects, hold_token = nil, order_id = nil, keep_extra_data = nil, channel_keys = nil)
|
60
|
-
self.change_object_status(event_key_or_keys, object_or_objects, Domain::ObjectStatus::BOOKED, hold_token, order_id, keep_extra_data, channel_keys)
|
61
|
-
end
|
62
|
-
|
63
|
-
def change_object_status(event_key_or_keys, object_or_objects, status, hold_token = nil, order_id = nil, keep_extra_data = nil, channel_keys = nil)
|
64
|
-
request = create_change_object_status_request(object_or_objects, status, hold_token, order_id, event_key_or_keys, keep_extra_data, channel_keys)
|
53
|
+
def book(event_key_or_keys, object_or_objects, hold_token: nil, order_id: nil, keep_extra_data: nil, ignore_channels: nil, channel_keys: nil)
|
54
|
+
self.change_object_status(event_key_or_keys, object_or_objects, Domain::ObjectStatus::BOOKED, hold_token: hold_token, order_id: order_id, keep_extra_data: keep_extra_data, ignore_channels: ignore_channels, channel_keys: channel_keys)
|
55
|
+
end
|
56
|
+
|
57
|
+
def change_object_status(event_key_or_keys, object_or_objects, status, hold_token: nil, order_id: nil, keep_extra_data: nil, ignore_channels: nil, channel_keys: nil)
|
58
|
+
request = create_change_object_status_request(object_or_objects, status, hold_token, order_id, event_key_or_keys, keep_extra_data, ignore_channels, channel_keys)
|
65
59
|
request[:params] = {
|
66
60
|
:expand => 'objects'
|
67
61
|
}
|
@@ -78,26 +72,26 @@ module Seatsio
|
|
78
72
|
Domain::ChangeObjectStatusInBatchResult.new(response).results
|
79
73
|
end
|
80
74
|
|
81
|
-
def hold(event_key_or_keys, object_or_objects, hold_token, order_id
|
82
|
-
change_object_status(event_key_or_keys, object_or_objects, Domain::ObjectStatus::HELD, hold_token, order_id, keep_extra_data, channel_keys)
|
75
|
+
def hold(event_key_or_keys, object_or_objects, hold_token, order_id: nil, keep_extra_data: nil, ignore_channels: nil, channel_keys: nil)
|
76
|
+
change_object_status(event_key_or_keys, object_or_objects, Domain::ObjectStatus::HELD, hold_token: hold_token, order_id: order_id, keep_extra_data: keep_extra_data, ignore_channels: ignore_channels, channel_keys: channel_keys)
|
83
77
|
end
|
84
78
|
|
85
|
-
def change_best_available_object_status(key, number, status, categories: nil, hold_token: nil, extra_data: nil, order_id: nil, keep_extra_data: nil)
|
86
|
-
request = create_change_best_available_object_status_request(number, status, categories, extra_data, hold_token, order_id, keep_extra_data)
|
79
|
+
def change_best_available_object_status(key, number, status, categories: nil, hold_token: nil, extra_data: nil, ticket_types: nil, order_id: nil, keep_extra_data: nil, ignore_channels: nil, channel_keys: nil)
|
80
|
+
request = create_change_best_available_object_status_request(number, status, categories, extra_data, ticket_types, hold_token, order_id, keep_extra_data, ignore_channels, channel_keys)
|
87
81
|
response = @http_client.post("events/#{key}/actions/change-object-status", request)
|
88
82
|
Domain::BestAvailableObjects.new(response)
|
89
83
|
end
|
90
84
|
|
91
|
-
def book_best_available(key, number, categories: nil, hold_token: nil, order_id: nil, keep_extra_data: nil, extra_data: nil)
|
92
|
-
change_best_available_object_status(key, number, Domain::ObjectStatus::BOOKED, categories: categories, hold_token: hold_token, order_id: order_id, keep_extra_data: keep_extra_data, extra_data: extra_data)
|
85
|
+
def book_best_available(key, number, categories: nil, hold_token: nil, order_id: nil, keep_extra_data: nil, extra_data: nil, ticket_types: nil, ignore_channels: nil, channel_keys: nil)
|
86
|
+
change_best_available_object_status(key, number, Domain::ObjectStatus::BOOKED, categories: categories, hold_token: hold_token, order_id: order_id, keep_extra_data: keep_extra_data, extra_data: extra_data, ticket_types: ticket_types, ignore_channels: ignore_channels, channel_keys: channel_keys)
|
93
87
|
end
|
94
88
|
|
95
|
-
def hold_best_available(key, number, hold_token, categories: nil, order_id: nil, keep_extra_data: nil, extra_data: nil)
|
96
|
-
change_best_available_object_status(key, number, Domain::ObjectStatus::HELD, categories: categories, hold_token: hold_token, order_id: order_id, keep_extra_data: keep_extra_data, extra_data: extra_data)
|
89
|
+
def hold_best_available(key, number, hold_token, categories: nil, order_id: nil, keep_extra_data: nil, extra_data: nil, ticket_types: nil, ignore_channels: nil, channel_keys: nil)
|
90
|
+
change_best_available_object_status(key, number, Domain::ObjectStatus::HELD, categories: categories, hold_token: hold_token, order_id: order_id, keep_extra_data: keep_extra_data, extra_data: extra_data, ticket_types: ticket_types, ignore_channels: ignore_channels, channel_keys: channel_keys)
|
97
91
|
end
|
98
92
|
|
99
|
-
def release(event_key_or_keys, object_or_objects, hold_token
|
100
|
-
change_object_status(event_key_or_keys, object_or_objects, Domain::ObjectStatus::FREE, hold_token, order_id, keep_extra_data, channel_keys)
|
93
|
+
def release(event_key_or_keys, object_or_objects, hold_token: nil, order_id: nil, keep_extra_data: nil, ignore_channels: nil, channel_keys: nil)
|
94
|
+
change_object_status(event_key_or_keys, object_or_objects, Domain::ObjectStatus::FREE, hold_token: hold_token, order_id: order_id, keep_extra_data: keep_extra_data, ignore_channels: ignore_channels, channel_keys: channel_keys)
|
101
95
|
end
|
102
96
|
|
103
97
|
def delete(key:)
|
@@ -1,12 +1,15 @@
|
|
1
|
-
def create_change_best_available_object_status_request(number, status, categories
|
1
|
+
def create_change_best_available_object_status_request(number, status, categories, extra_data, ticket_types, hold_token, order_id, keep_extra_data, ignore_channels, channel_keys)
|
2
2
|
result = {}
|
3
3
|
best_available = {'number': number}
|
4
4
|
best_available[:categories] = categories if categories != nil
|
5
5
|
best_available[:extraData] = extra_data if extra_data != nil
|
6
|
+
best_available[:ticketTypes] = ticket_types if ticket_types != nil
|
6
7
|
result[:status] = status
|
7
8
|
result[:bestAvailable] = best_available
|
8
9
|
result[:holdToken] = hold_token if hold_token != nil
|
9
10
|
result[:orderId] = order_id if order_id != nil
|
10
11
|
result[:keepExtraData] = keep_extra_data if keep_extra_data != nil
|
12
|
+
result[:ignoreChannels] = ignore_channels if ignore_channels != nil
|
13
|
+
result[:channelKeys] = channel_keys if channel_keys != nil
|
11
14
|
result
|
12
15
|
end
|
@@ -1,5 +1,5 @@
|
|
1
|
-
def create_change_object_status_in_batch_request(event_key, object_or_objects, status, hold_token = nil , order_id = nil, keep_extra_data = nil)
|
2
|
-
result = create_change_object_status_request(object_or_objects, status, hold_token, order_id, '', keep_extra_data)
|
1
|
+
def create_change_object_status_in_batch_request(event_key, object_or_objects, status, hold_token = nil , order_id = nil, keep_extra_data = nil, ignore_channels = nil, channel_keys = nil)
|
2
|
+
result = create_change_object_status_request(object_or_objects, status, hold_token, order_id, '', keep_extra_data, ignore_channels, channel_keys)
|
3
3
|
result.delete(:events)
|
4
4
|
result[:event] = event_key
|
5
5
|
result
|
@@ -1,4 +1,4 @@
|
|
1
|
-
def create_change_object_status_request(object_or_objects, status, hold_token, order_id, event_key_or_keys, keep_extra_data, channel_keys)
|
1
|
+
def create_change_object_status_request(object_or_objects, status, hold_token, order_id, event_key_or_keys, keep_extra_data, ignore_channels, channel_keys)
|
2
2
|
result = {}
|
3
3
|
result[:objects] = normalize(object_or_objects)
|
4
4
|
result[:status] = status
|
@@ -10,6 +10,7 @@ def create_change_object_status_request(object_or_objects, status, hold_token, o
|
|
10
10
|
result[:events] = [event_key_or_keys]
|
11
11
|
end
|
12
12
|
result[:keepExtraData] = keep_extra_data if keep_extra_data != nil
|
13
|
+
result[:ignoreChannels] = ignore_channels if ignore_channels != nil
|
13
14
|
result[:channelKeys] = channel_keys if channel_keys != nil
|
14
15
|
result
|
15
16
|
end
|
data/lib/seatsio/version.rb
CHANGED
data/lib/seatsio/workspaces.rb
CHANGED
@@ -40,6 +40,10 @@ module Seatsio
|
|
40
40
|
@http_client.post("workspaces/#{key}/actions/deactivate")
|
41
41
|
end
|
42
42
|
|
43
|
+
def set_default(key:)
|
44
|
+
@http_client.post("workspaces/actions/set-default/#{key}")
|
45
|
+
end
|
46
|
+
|
43
47
|
def list(filter: nil)
|
44
48
|
extended_cursor = cursor
|
45
49
|
extended_cursor.set_query_param('filter', filter)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: seatsio
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 25.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Seats.io
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-10-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -147,8 +147,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
147
147
|
- !ruby/object:Gem::Version
|
148
148
|
version: '0'
|
149
149
|
requirements: []
|
150
|
-
|
151
|
-
rubygems_version: 2.7.7
|
150
|
+
rubygems_version: 3.0.8
|
152
151
|
signing_key:
|
153
152
|
specification_version: 4
|
154
153
|
summary: the official Seats.io Ruby client library
|