diff --git a/lib/trivial_backend_sgx_repo.rb b/lib/trivial_backend_sgx_repo.rb index 90565db20dc2600c234189794930478dfacd0028..72e7c5e236018ad204e89ef636439ce5b88faee1 100644 --- a/lib/trivial_backend_sgx_repo.rb +++ b/lib/trivial_backend_sgx_repo.rb @@ -23,10 +23,9 @@ class TrivialBackendSgxRepo end def get(customer_id, tel: nil) - use_jid(customer_id).then do |sgx_jid| - creds = sgx_jid && sgx_jid.is_a?(String) ? CONFIG[:sgx_creds][sgx_jid.to_sym] : @creds + use_jid(customer_id).then do |(sgx_jid, creds)| BackendSgx.new( - jid: sgx_jid ? Blather::JID.new(sgx_jid) : @jid, creds: creds, + jid: sgx_jid, creds: creds, from_jid: Blather::JID.new("customer_#{customer_id}", @component_jid), ogm_url: NotLoaded.new(:ogm_url), fwd: NotLoaded.new(:fwd_timeout), transcription_enabled: NotLoaded.new(:transcription_enabled), @@ -37,11 +36,19 @@ class TrivialBackendSgxRepo protected + def default_jid_creds + EMPromise.resolve([@jid, @creds]) + end + def use_jid(customer_id) - if @jid.node.nil? - @redis.get("jmp_customer_backend_sgx-#{customer_id}") - else - EMPromise.resolve(@jid) + return default_jid_creds unless @jid.node.nil? + + @redis.get("jmp_customer_backend_sgx-#{customer_id}").then do |sgx_jid| + if sgx_jid + [Blather::JID.new(sgx_jid), CONFIG[:sgx_creds][sgx_jid.to_sym]] + else + default_jid_creds + end end end