spree_cm_commissioner 2.1.9.pre.pre1 → 2.1.9.pre.pre2
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/.env.example +29 -75
- data/.tool-versions +1 -1
- data/Gemfile.lock +1 -1
- data/lib/spree_cm_commissioner/version.rb +1 -1
- data/lib/spree_cm_commissioner.rb +7 -22
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: ab72ce6c6d29366df93dc2df11c7ee0962ee514380213823f16de19dd2b245b6
|
|
4
|
+
data.tar.gz: 37cb94bd2a38f5001204a5d5c50af10749269112738f6e5d213fd5c302aaab60
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: fabf0f79539543ce41d8fdca27990d5d0b5ccff8af6ae39539c3aefb9d0b474fb0835b60f475db2d89f103b42626560d9d602936352a8b3f9c22de9743094fba
|
|
7
|
+
data.tar.gz: efa133c49dff021c1abf6e0a56aca72a1998e3e5d2fd30da27649675f348533d19ccf43d0fe8cb56fdf682f7e01ec40b291efb6897df3e2863f850f464a7453c
|
data/.env.example
CHANGED
|
@@ -1,75 +1,29 @@
|
|
|
1
|
-
#
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
ASSETS_SYNC_CF_DIST_ID=E3DV5NICAX5NCH # CloudFront distribution ID for asset synchronization
|
|
31
|
-
AWS_CF_MEDIA_DOMAIN=medias.bookme.plus # CloudFront media domain (e.g., medias.bookme.plus)
|
|
32
|
-
AWS_CF_PUBLIC_KEY_ID= # CloudFront public key ID for signed URLs
|
|
33
|
-
AWS_CF_PRIVATE_KEY= # CloudFront private key for signed URLs (PEM format)
|
|
34
|
-
|
|
35
|
-
# Cache Configuration
|
|
36
|
-
CONTENT_CACHE_MAX_AGE=180 # Maximum age for CDN content cache in seconds (default: 86400)
|
|
37
|
-
|
|
38
|
-
# Email Configuration
|
|
39
|
-
NO_REPLY_EMAIL=noreply@example.com # No-reply email address for outgoing emails
|
|
40
|
-
|
|
41
|
-
# SMS Configuration
|
|
42
|
-
SMS_SENDER_ID=SMS Info # Sender ID for SMS messages (default: 'SMS Info')
|
|
43
|
-
|
|
44
|
-
# Payment Gateway Configuration
|
|
45
|
-
VATTANAC_AES_SECRET_KEY= # Vattanac Bank AES secret key for encryption
|
|
46
|
-
BOOKMEPLUS_PRIVATE_KEY= # BookMe+ private key for Vattanac Bank integration
|
|
47
|
-
VATTANAC_PUBLIC_KEY= # Vattanac Bank public key for signature verification
|
|
48
|
-
|
|
49
|
-
# Google Services Configuration
|
|
50
|
-
GOOGLE_MAP_KEY=AIzaSyBt-OSnDZze6hxGjfiapSxpcyGzBo_COv8 # Google Maps API key for nearby places and location services
|
|
51
|
-
ISSUER_ID=3388000000022336356 # Google Wallet issuer ID for digital passes
|
|
52
|
-
|
|
53
|
-
# Waiting Room System Configuration
|
|
54
|
-
WAITING_ROOM_DISABLED=no # Disable waiting room functionality (set to 'yes' to disable)
|
|
55
|
-
WAITING_ROOM_SESSION_SIGNATURE=4234f0a3-c42f-40b5-9057-7c006793cea4 # JWT signature key for waiting room session tokens
|
|
56
|
-
WAITING_ROOM_SESSION_EXPIRE_DURATION_IN_SECOND=180 # Session expiration duration in seconds (default: 180 / 3 minutes)
|
|
57
|
-
WAITING_ROOM_MIN_SESSIONS_COUNT=5 # Minimum sessions count for waiting room calculation (default: 5)
|
|
58
|
-
WAITING_ROOM_SERVERS_COUNT=2 # Number of running servers for capacity calculation (default: 2)
|
|
59
|
-
WAITING_ROOM_MAX_THREAD_COUNT=10 # Maximum thread count per server (default: 10)
|
|
60
|
-
WAITING_ROOM_MULTIPLIER=150 # Multiplier for waiting room capacity calculation (default: 150)
|
|
61
|
-
|
|
62
|
-
# Exception Notification Configuration
|
|
63
|
-
EXCEPTION_NOTIFY_ENABLE=yes # Enable exception notifications (set to 'yes' to enable)
|
|
64
|
-
EXCEPTION_TELEGRAM_BOT_TOKEN=6441690414:AAFBpevRdBaRTXmalJR2vcSdPNzYoDnMEFk # Telegram bot token for exception notifications
|
|
65
|
-
EXCEPTION_NOTIFIER_TELEGRAM_CHANNEL_ID=-1001807686211 # Telegram channel ID for exception notifications
|
|
66
|
-
|
|
67
|
-
# Telegram Bot Configuration
|
|
68
|
-
DEFAULT_TELEGRAM_BOT_API_TOKEN=6441690414:AAFBpevRdBaRTXmalJR2vcSdPNzYoDnMEFk # Default Telegram bot API token
|
|
69
|
-
PIN_CODE_DEBUG_NOTIFIY_TELEGRAM_ENABLE=yes # Enable PIN code debug notifications via Telegram (set to 'yes' to enable)
|
|
70
|
-
|
|
71
|
-
# Business Rules Configuration
|
|
72
|
-
ACCOMMODATION_MAX_STAY_DAYS=10 # Maximum number of days allowed for accommodation stays (default: 10)
|
|
73
|
-
|
|
74
|
-
# Development/Testing Configuration
|
|
75
|
-
BUNDLE_GEMFILE= # Gemfile location for bundler
|
|
1
|
+
# aws
|
|
2
|
+
AWS_ACCESS_KEY_ID=""
|
|
3
|
+
AWS_BUCKET_NAME=""
|
|
4
|
+
AWS_REGION=""
|
|
5
|
+
AWS_SECRET_ACCESS_KEY=
|
|
6
|
+
AWS_CLUSTER_NAME="" # fetch all tasks
|
|
7
|
+
|
|
8
|
+
AWS_CF_MEDIA_DOMAIN="medias.bookme.plus"
|
|
9
|
+
AWS_CF_PUBLIC_KEY_ID="KKC****QFJ2"
|
|
10
|
+
AWS_OUTPUT_BUCKET_NAME="output-production-cm"
|
|
11
|
+
|
|
12
|
+
AWS_CF_PRIVATE_KEY="-----BEGIN PRIVATE KEY-----
|
|
13
|
+
-----END PRIVATE KEY-----"
|
|
14
|
+
|
|
15
|
+
# for GET request with following host, it will be cached.
|
|
16
|
+
CONTENT_HOST_URL=https://content.bookme.plus
|
|
17
|
+
CONTENT_CACHE_MAX_AGE=7200
|
|
18
|
+
|
|
19
|
+
WAITING_ROOM_SESSION_SIGNATURE="e6b2********************26e3"
|
|
20
|
+
WAITING_ROOM_SESSION_EXPIRE_DURATION_IN_SECOND=
|
|
21
|
+
WAITING_ROOM_MIN_SESSIONS_COUNT=5
|
|
22
|
+
WAITING_ROOM_DISABLED=no
|
|
23
|
+
|
|
24
|
+
# Vattanac Bank
|
|
25
|
+
VATTANAC_AES_SECRET_KEY= ""
|
|
26
|
+
VATTANAC_PUBLIC_KEY=""
|
|
27
|
+
|
|
28
|
+
# Organizer URL
|
|
29
|
+
ORGANIZER_URL=http://127.0.0.1:4000/organizer
|
data/.tool-versions
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
ruby 3.
|
|
1
|
+
ruby 3.2.0
|
data/Gemfile.lock
CHANGED
|
@@ -57,12 +57,12 @@ module SpreeCmCommissioner
|
|
|
57
57
|
|
|
58
58
|
# Inventory Redis pool for inventory management
|
|
59
59
|
def inventory_redis_pool
|
|
60
|
-
@inventory_redis_pool ||=
|
|
60
|
+
@inventory_redis_pool ||= default_redis_pool
|
|
61
61
|
end
|
|
62
62
|
|
|
63
63
|
# External integrations Redis pool for external API integrations
|
|
64
64
|
def external_integrations_redis_pool
|
|
65
|
-
@external_integrations_redis_pool ||=
|
|
65
|
+
@external_integrations_redis_pool ||= default_redis_pool
|
|
66
66
|
end
|
|
67
67
|
|
|
68
68
|
# Resets all Redis pools, useful for testing or reinitialization
|
|
@@ -73,28 +73,13 @@ module SpreeCmCommissioner
|
|
|
73
73
|
|
|
74
74
|
private
|
|
75
75
|
|
|
76
|
-
def
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
timeout: ENV.fetch('REDIS_TIMEOUT', '5').to_i
|
|
81
|
-
)
|
|
82
|
-
end
|
|
83
|
-
|
|
84
|
-
def default_external_integrations_redis_pool
|
|
85
|
-
create_redis_pool(
|
|
86
|
-
url: ENV.fetch('REDIS_EXTERNAL_INTEGRATIONS_URL', ENV.fetch('REDIS_URL', 'redis://localhost:6379/13')),
|
|
87
|
-
pool_size: ENV.fetch('REDIS_EXTERNAL_INTEGRATIONS_POOL_SIZE', ENV.fetch('REDIS_POOL_SIZE', '5')).to_i,
|
|
88
|
-
timeout: ENV.fetch('REDIS_TIMEOUT', '5').to_i
|
|
89
|
-
)
|
|
90
|
-
end
|
|
91
|
-
|
|
92
|
-
def create_redis_pool(url:, pool_size:, timeout:)
|
|
93
|
-
ssl_params = {}
|
|
94
|
-
ssl_params.merge!({ verify_mode: OpenSSL::SSL::VERIFY_NONE }) if ENV['HEROKU_APP_ID'].present?
|
|
76
|
+
def default_redis_pool
|
|
77
|
+
pool_size = ENV.fetch('REDIS_POOL_SIZE', '5').to_i
|
|
78
|
+
timeout = ENV.fetch('REDIS_TIMEOUT', '5').to_i
|
|
79
|
+
redis_url = ENV.fetch('REDIS_URL', 'redis://localhost:6379/12')
|
|
95
80
|
|
|
96
81
|
ConnectionPool.new(size: pool_size, timeout: timeout) do
|
|
97
|
-
Redis.new(url:
|
|
82
|
+
Redis.new(url: redis_url, timeout: timeout)
|
|
98
83
|
end
|
|
99
84
|
end
|
|
100
85
|
end
|