I’ve just deployed 0.1.8 of the plugin onto openfire. My experience was mostly positive, though I noticed a few things that should be fixed, and have a few questions.
- If i specify a room name in mixed case (e.g. ?r=FooBar) the room is created on OpenFire as its lowercase analogue (e.g. foobar), and the focus user joins, but the conference never starts - the invite button is perpetually listed as “Conference is being created”.
Nothing interesting is written to the debug log when this happens. Entirely lowercase room names work absolutely fine.
-
The ephemeral users (ofmeetXXXX@) are queried against my AD. While this doesn’t cause a problem, it does slow things down quite a bit and causes unnecessary load on my directory (stack trace follows at the end of this message).
-
Specifying the resolution as 1080 in the admin console causes my client to be unable to start:
failed to obtain audio/video stream - trying audio only NavigatorUserMediaError {} @ strophe.jingle.adapter.js?v=3:766
constraintName: "minWidth"
message: ""
name: "ConstraintNotSatisfiedError"
I suspect this may be because my camera is only 720p capable.
- With no clear pattern, it will sometimes take a user an inordinately long time to join a room - the delay is between the users browser loading and a nickname being requested. Sometimes it will take up to a minute for the nickname prompt.
With “require nicknames” disabled, users join rooms almost instantaneously.
Questions:
The video quality is very very low, even on a high bandwidth (gigabit) network - I estimate it to be ~260p. No loss is recorded, and changing the bandwidth setting in the admin console doesn’t seem to change this. Is this expected?
What is candy.html supposed to look like/do? When I load the page all I see is a flicker of a “loading” box, and then a grey screen. Nothing is logged at all on the client, and there are no errors in the server logs.
If you need any more information to assist fixing/diagnosing these, please let me know.
2015.06.18 14:37:58 org.jivesoftware.openfire.ldap.LdapManager - LdapManager: Trying to find a user's DN based on their username. sAMAccountName: ofmeet6262, Base DN: OU="Humans,"...
2015.06.18 14:37:58 org.jivesoftware.openfire.ldap.LdapManager - LdapManager: Creating a DirContext in LdapManager.getContext()...
2015.06.18 14:37:58 org.jivesoftware.openfire.ldap.LdapManager - LdapManager: Created hashtable with context values, attempting to create context...
2015.06.18 14:37:58 org.jivesoftware.openfire.ldap.LdapManager - LdapManager: ... context created successfully, returning.
2015.06.18 14:37:58 org.jivesoftware.openfire.ldap.LdapManager - LdapManager: Starting LDAP search...
2015.06.18 14:37:58 org.jivesoftware.openfire.ldap.LdapManager - LdapManager: ... search finished
2015.06.18 14:37:58 org.jivesoftware.openfire.ldap.LdapManager - LdapManager: User DN based on username 'ofmeet6262' not found.
2015.06.18 14:37:58 org.jivesoftware.openfire.ldap.LdapManager - LdapManager: Exception thrown when searching for userDN based on username 'ofmeet6262'
org.jivesoftware.openfire.user.UserNotFoundException: Username ofmeet6262 not found
at org.jivesoftware.openfire.ldap.LdapManager.findUserDN(LdapManager.java:988)
at org.jivesoftware.openfire.ldap.LdapManager.findUserDN(LdapManager.java:912)
at org.jivesoftware.openfire.ldap.LdapUserProvider.loadUser(LdapUserProvider.java:106)
at org.jivesoftware.openfire.user.UserManager.getUser(UserManager.java:240)
at org.jivesoftware.openfire.user.UserManager.isRegisteredUser(UserManager.java:371)
at org.jivesoftware.openfire.spi.PresenceManagerImpl.userAvailable(PresenceManagerImpl.java:195)
at org.jivesoftware.openfire.handler.PresenceUpdateHandler.process(PresenceUpdateHandler.java:159)
at org.jivesoftware.openfire.handler.PresenceUpdateHandler.process(PresenceUpdateHandler.java:137)
at org.jivesoftware.openfire.handler.PresenceUpdateHandler.process(PresenceUpdateHandler.java:201)
at org.jivesoftware.openfire.PresenceRouter.handle(PresenceRouter.java:148)
at org.jivesoftware.openfire.PresenceRouter.route(PresenceRouter.java:84)
at org.jivesoftware.openfire.spi.PacketRouterImpl.route(PacketRouterImpl.java:84)
at org.jivesoftware.openfire.SessionPacketRouter.route(SessionPacketRouter.java:120)
at org.jivesoftware.openfire.SessionPacketRouter.route(SessionPacketRouter.java:75)
at org.ifsoft.websockets.XMPPServlet$XMPPWebSocket.onTextMethod(XMPPServlet.java:321)
at sun.reflect.GeneratedMethodAccessor16.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.eclipse.jetty.websocket.common.events.annotated.CallableMethod.call(CallableMethod.java:70)
at org.eclipse.jetty.websocket.common.events.annotated.OptionalSessionCallableMethod.call(OptionalSessionCallableMethod.java:72)
at org.eclipse.jetty.websocket.common.events.JettyAnnotatedEventDriver.onTextMessage(JettyAnnotatedEventDriver.java:225)
at org.eclipse.jetty.websocket.common.message.SimpleTextMessage.messageComplete(SimpleTextMessage.java:69)
at org.eclipse.jetty.websocket.common.events.AbstractEventDriver.appendMessage(AbstractEventDriver.java:64)
at org.eclipse.jetty.websocket.common.events.JettyAnnotatedEventDriver.onTextFrame(JettyAnnotatedEventDriver.java:217)
at org.eclipse.jetty.websocket.common.events.AbstractEventDriver.incomingFrame(AbstractEventDriver.java:160)
at org.eclipse.jetty.websocket.common.WebSocketSession.incomingFrame(WebSocketSession.java:309)
at org.eclipse.jetty.websocket.common.extensions.ExtensionStack.incomingFrame(ExtensionStack.java:214)
at org.eclipse.jetty.websocket.common.Parser.notifyFrame(Parser.java:220)
at org.eclipse.jetty.websocket.common.Parser.parse(Parser.java:258)
at org.eclipse.jetty.websocket.common.io.AbstractWebSocketConnection.readParse(AbstractWebSocketConnection.java:628)
at org.eclipse.jetty.websocket.common.io.AbstractWebSocketConnection.onFillable(AbstractWebSocketConnection.java:476)
at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
at java.lang.Thread.run(Thread.java:745)