Closed
Bug 1043266
Opened 11 years ago
Closed 11 years ago
Tokbox SDK url should be configurable
Categories
(Hello (Loop) :: Client, defect)
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: alexis+bugs, Unassigned)
Details
At least in order to test staging environment, we need a way to change the url of the tokbox sdk (anvil.opentok.com) to a different URL.
Apparently, Nico told me the only way to do that is to touch the conversation.html file to override window.OTProperties.apiURLSSL
It would be helpful to have that behind a pref.
Updated•11 years ago
|
Whiteboard: [qa+]
Comment 1•11 years ago
|
||
Yea. We can limit this to special cases and urgent tests.
Otherwise holding Stage as is would be preferred for normal QA load, size, scale, and perf testing.
Comment 2•11 years ago
|
||
This seems like to be useful for functional testing as well.
Comment 3•11 years ago
|
||
This has been a feature of the OpenTok library for several versions now. You can set the following attributes on the "window.OTProperties" object (taking care to create it if it doesn't yet exist): cdnURL, assetURL, configURL, and cssURL.
Closing.
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
I think what's wanted here is to expose this value through a pref, to ease switching the value for testing. Updating the HTML files by hand is definitely possible, but we could probably improve developer & tester experience a bit here.
James, you originally set this to qa+. Is there anything left to verify here?
Flags: qe-verify+
Flags: needinfo?(jbonacci)
QA Contact: jbonacci
Whiteboard: [qa+]
Comment 6•11 years ago
|
||
:ashughes
For the server-side we are good. But based on Commment 4, I can't really tell if this is done or not.
Flags: needinfo?(jbonacci) → needinfo?(anthony.s.hughes)
(In reply to James Bonacci [:jbonacci] from comment #6)
> :ashughes
> For the server-side we are good. But based on Commment 4, I can't really
> tell if this is done or not.
Niko, can you please confirm if all the testing you need is done here?
Flags: needinfo?(anthony.s.hughes) → needinfo?(nperriault)
(In reply to Anthony Hughes, QA Mentor (:ashughes) from comment #7)
> (In reply to James Bonacci [:jbonacci] from comment #6)
> > :ashughes
> > For the server-side we are good. But based on Commment 4, I can't really
> > tell if this is done or not.
>
> Niko, can you please confirm if all the testing you need is done here?
This was just a suggestion, I think we implicetely decided not to implement the pref thing; so we're good to go I guess.
Flags: needinfo?(nperriault)
| Reporter | ||
Comment 9•11 years ago
|
||
What Niko says is correct, we need a way to expose that at the browser level. I'm reopening.
This starts to be blocking since we don't have any way to test staging with a real browser so far.
| Reporter | ||
Comment 10•11 years ago
|
||
I don't understand: what's the way to deal with this if we don't have a pref?
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
| Reporter | ||
Updated•11 years ago
|
Flags: needinfo?(nperriault)
I remember an IRC conversation with :abr about this, but I don't quite remember its outcome. NI :abr here.
I personally agree this is still a good idea though.
Flags: needinfo?(nperriault) → needinfo?(adam)
Comment 12•11 years ago
|
||
(In reply to Alexis Metaireau (:alexis) from comment #10)
> I don't understand: what's the way to deal with this if we don't have a pref?
To make sure I understand what you're proposing -- are you planning to mock out the unpublished, unstable, proprietary, undocumented, internal, http-and-wss API that is used between the TokBox SDK and their back-end infrastructure? The one they didn't want us touching because it changes with every library release?
That may be inadvisable.
Flags: needinfo?(adam) → needinfo?(alexis+bugs)
| Reporter | ||
Comment 13•11 years ago
|
||
We need a way to have a firefox client able to talk with the tokbox staging infrastructure, in order to test everything is working as expected without using the production settings (that's part of the QA workflow, and why :jbo is in cc here).
The way we're currently doing that (server-side) is to generate the session tokens with the staging environment and to have the work okay on a firefox client.
In order to do that we would need a way to change the URL they're using to talk with the server (because this is not the prod server but their stage server).
Flags: needinfo?(alexis+bugs)
Comment 14•11 years ago
|
||
Okay, I have an email in to TB engineering asking how they want us to configure the client to point at the staging server.
To be clear, the SDK configuration parameter that we need to change is "apiURLSSL", which is not in the list of five configuration parameters we currently have the ability to change.
Comment 15•11 years ago
|
||
A little clarification about what you are trying to achieve would be helpful. If you are looking to do some end to end testing or performance testing, is there a reason not to use the 44667562 apiKey and have the sessions hosted by the Tokbox environment that is designed to host the Nightly and Aurora traffic? If you really want to use a separate set of server(s) for this testing we could create a new apiKey and create a "staging" environment that maps to that apiKey.
Comment 17•11 years ago
|
||
Hmmmm I just talked to TokBox QA rep about this. I said we use (will continue to use) Prod.
I am unclear why Loop Staging to TokBox Staging for client and/or E2E is needed...
| Reporter | ||
Comment 18•11 years ago
|
||
What we are trying to achieve is to do an end to end testing using our staging environment, which is configured to use tokbox's staging servers (Anvil).
We currently don't rely on tokbox production for our staging environment (but use tokbox staging as well).
The solutions we have here are:
1. Use tokbox production for our staging environment (we don't want that since that would generate load on tokbox's servers);
2. Have tokbox production accept tokens generated by their staging;
3. Have a way to configure the tokbox client to use a different server than prod.
Flags: needinfo?(alexis+bugs)
Comment 19•11 years ago
|
||
TL;DR: we're going with option 2 from Comment 18.
After a discussion this morning, the conclusion is: (a) We will continue to use anvil.tokbox.com as the client's first point of contact for the API (anvil serves as a redirector, and can dispatch clients to different clusters based on the API key in use); (b) TokBox will add the API key we've been using on the staging server to the production cluster, so that we can use staging tokens via the client API on the production servers.
Consequently, no action is required on the Loop client, so I'm closing this bug. Marking [qa-] because there's no code change to test. (James/Anthony -- let me know if I'm misunderstanding how this flag is to be used).
Status: REOPENED → RESOLVED
Closed: 11 years ago → 11 years ago
Resolution: --- → FIXED
Whiteboard: [qa-]
Comment 20•11 years ago
|
||
That sounds correct to me. No testing needed.
FYI: my [qa-] is now being replaced by the flag "qe-verify" with a value of "-"
Comment 21•11 years ago
|
||
(In reply to James Bonacci [:jbonacci] from comment #20)
> That sounds correct to me. No testing needed.
> FYI: my [qa-] is now being replaced by the flag "qe-verify" with a value of
> "-"
Aha! Thanks for pointing that out. Fixing. :)
Flags: qe-verify+ → qe-verify-
Whiteboard: [qa-]
Comment 22•11 years ago
|
||
Just to be clear, our recommended approach is that you use the 44667562 key for all testing but we will also make the 347819 key work for more than just sessionId creation. Either way, as Adam mentions, there is no need for any action in the Loop client.
You need to log in
before you can comment on or make changes to this bug.
Description
•